You can now start translating Ubuntu Saucy on Launchpad.Read more
We’re preparing a new release of Qreator, the QR code creator for Ubuntu, to be published in the next few days.
This release adds a few new strings and quite a bunch of new features, including a new design, new QR codes, and the ability to edit the QR codes you create.
Kudos to everyone who has contributed translations in the past: thanks to you the development release Qreator is already fully translated in 10 languages. There are other 26 languages that are nearly completed and are only missing the newly-added strings. A very special mention goes also to the unstoppable Stefan Schwarzburg, whose contributions have been invaluable in putting the upcoming release together.
If you find it useful, please help translating and making it available in your language here:Translate Qreator!
To get more context for the translation, you can also install the preview package. It’s for Ubuntu 13.04 only, but if someone needs an older version, let me know and I can create it too.
I’m thrilled to announce the availability of the Ubuntu 12.04 Online Tour for local community teams to localize and use on their websites. The tour has been the result of the stunning work done by Ant Dillon from the Canonical Web Design Team and should provide a web-based first impression of Ubuntu to new users, now in their language.
It’s a great opportunity to showcase Ubuntu to your local community to celebrate release day tomorrow.
First of all, you’ll need to get set up with the right tools before you start.
Getting set up:
If you’ve already translated the tour in Launchpad, you can build a localized version in 3 easy steps:
1. Get the code:
bzr branch lp:ubuntu-online-tour/12.04
2. Build the localized tour:
cd 12.04 cd translate-html/bin ./translate-html -t
3. Deploy the tour:
If you haven’t finished the translation for your language in Launchpad, you will need to complete the corresponding PO file before you run step 2. Just ask on the Ubuntu translators mailing list or on Launchpad in case you need help or are not familiar with PO files.
For any issues, suggestions or enhancement, use the Online Tour’s Launchpad project to report bugs or submit improvements.
If you follow the Ubuntu channels, and unless you’ve been living under a rock, you’ll have noticed that this coming weekend we’re organizing the Ubuntu Global Jam, a worldwide event where Ubuntu local community teams (LoCos) join in a get-together fest to have some fun while improving Ubuntu.
As we’re ramping up to a Long Term Support release, this is a particularly important UGJ and we need all hands on deck to ensure that it does not only meet, but exceeds the high quality standard of previous Ubuntu LTS releases. This is another article in the series of blog posts showcasing the events our community is organizing, brought to you by Rafael Carreras, from the Ubuntu Catalan LoCo team.
Our LoCo is language-oriented, and by language I mean Catalan (a Romanic one), not Perl or Python. In fact, the Catalan LoCo Team was the first language-oriented LoCo to be approved back in 2007. We manage our day-to-day in three mailing lists: technical doubts, team work and translations and do IRC meetings twice a month. We organise Ubuntu Global Jam events every 6 months (with some minor absences) and of course great release parties every 6 months along with some other little ones in between.
As always, we will translate some new packages, discuss translation items, a bug triage session, some install release work and even evangelization to some passing people, as we organise UGJ this time in a civic centre.
No, it’s not, we are running UGJs since the first one and I think we only missed last one.
It’s a great opportunity for meeting people you only know by email or chat. Also, as we sit down together, there is little room for procrastination. Well, more or less, anyway.
Yeah, definitely. It must be that.
Join the party by registering your event at the Ubuntu LoCo Portal!Read more
We have achieved a huge milestone in the development community. For years we wanted translatable packaging and development documentation. It’s there. If you head to http://developer.ubuntu.com/packaging/ you can see the following:
The Ubuntu Packaging Guide (Spanish) – would you like to learn how to package or become an Ubuntu Developer? Here’s a comprehensive, topic-base guide that explores and describes the main concepts of packaging. It is available as
This is absolutely awesome. From now on we will be able to add languages and have up-to-date Packaging and Development docs available whenever they are complete enough.
This work was brought to you by many people who worked very hard to get all the bits right, both on the packaging, integration, beautification and translations sides. You all know who you are. Be proud of your work. This will ease the steps of many people into helping out with Ubuntu!
As always this is ongoing work and the great thing is, you can help out:
This makes me a very happy man and it’s great we finally got there. Now let’s get all the other translations up to scratch!Read more
I am pleased to announce that our current development release, Ubuntu Precise, is now open for translation:Translate Ubuntu!
Some additional information that will be useful for translators:
Ubuntu 12.04 will be a Long Term Support release, so let’s rally around translations to provide the best translated OS around and go over the mark of nearly 40 languages in which Ubuntu is fully translated!Read more
Unless you’ve been living under a rock, you’ll have noticed that this coming weekend we’re organizing the Ubuntu Global Jam, a worldwide event where Ubuntu local community teams (LoCos) join in a get-together fest to have some fun while improving Ubuntu. As we’re ramping up to a Long Term Support release, this is a particularly important UGJ and we need every hand on deck to ensure it not only meets but exceeds the standard of previous Ubuntu LTS releases. This is another article in the series of blog posts showcasing the events our community is organizing, brought to you by Andrej Znidarsic, from the Ubuntu Slovenian LoCo team.
The post Upcoming Ubuntu Global Jam events: here’s how the Slovenian team rolls appeared first on David Planella.Read more
Just a heads up that in about 50 minutes, and as part of the Ubuntu Open Week, I’ll be talking again, this time about how to contribute translating Ubuntu.
So if you’re either interested in learning how to do it, or if you want to ask any questions, join me on IRC in the #ubuntu-classroom channel on Freenode.
See you there!
The post Upcoming Ubuntu Open Week session – how to contribute translating Ubuntu appeared first on David Planella.Read more
Suppose you install Ubuntu and select a language other than English (it’s known to happen!). This will install the general and the GNOME language packs, translated LibreOffice help, and so on. Now, install a KDE package or GIMP. You’ll notice that the new application is not translated and has no help available for your language. The next time you open the language selector from control-center it would tell you that you miss some language support and offer to install it, but this has been pretty indiscoverable, and we really can do better.
Today’s language-selector upload provides an aptdaemon plugin which automatically marks corresponding language support packages (translated help, dictionaries, spell checker modules, and translations themselves) for installation for any newly installed package, for all languages that are configured on your system.
For example, I have German and English locales on my system, and no KDE packages. Before, installing GIMP got me just that:
$ aptdcon -i gimp
The following NEW package will be installed (1):
Now it automatically installs the corresponding localized help:
$ aptdcon -i gimp
The following NEW packages will be installed (4):
gimp gimp-help-common gimp-help-de gimp-help-en
I am using
aptdcon here as it points out the effect better than software-center doing all this in the background, but both use aptdaemon, so the effect will be the same.
Likewise, installing the first KDE-ish package will automatically install the KDE language packs:
$ aptdcon -i kate
The following NEW packages will be installed (71):
kate kate-data [...] kdelibs5-data [...] language-pack-kde-de language-pack-kde-en [...]
This is now possible because I rewrote the check-language-support logic from scratch; the old code was very slow, hard to read and a nightmare to maintain, and also depended on a lot of data files. The new code is very fast (figuring out all missing language support packages for all installed packages for all available locales takes 8 ms on my system), and has full test coverage.
check-language-support program still works (I rewrote it using the new API), it is easier and probably a lot faster to just use the new API now, e. g. in our Ubiquity installer.
Say goodbye to this 2.5 year old bug!Read more
Launchpad translations will be unavailable for around one hour, starting 10.00 UTC, on Tuesday 2011-11-29, to allow us to open the translations for the next Ubuntu release, Precise Pangolin (to be 12.04 LTS).
We tried this last week but hit some problems. Rather than prolong the disruption, we decided to bring translations back online and delay the opening of Precise’s translations until after we’d fixed the issue.
While we’re opening Precise’s translations, Launchpad will not be importing translation files and the web interface for making and reviewing translations will be unavailable. This includes imports for translation uploads, but also imports from Bazaar branches.
Once this is done, imports will resume normally and any backlog should be processed quickly after that.Read more
Launchpad translations will be unavailable for around one hour, starting 10.00 UTC, on Tuesday 2011-11-22.
During this time Launchpad will not be importing translation files and the web interface for making and reviewing translations will be unavailable. This includes imports for translation uploads, but also imports from Bazaar branches.
We are suspending the service temporarily to allow us to set up translations for the next Ubuntu release, Precise Pangolin (to be 12.04 LTS). Once this is done, imports will resume normally and any backlog should be processed quickly after that.Read more
So now it’s the turn for the translations post!
For all of you interested in helping and being part of the effort of making Ubuntu available in any language, here’s a quick list with an overview of the Ubuntu Developer Summit sessions we’ve got in store this week.
Remember you can register your interest in sessions you want to attend or keep up to date with by using the Subscribe link on each session’s blueprint. The links in the list below will take you to the blueprints used to define the specifications for each feature or goal. You can also check out the full UDS schedule.
So, without further ado, here’s the list of translations sessions:
See you all there!
Just a heads up that this week is Ubuntu Open Week!
Ubuntu Open Week is a series of online workshops where you can:
I’ll be running two sessions for everyone wanting to learn more about either translating Ubuntu or writing apps for Ubuntu (or both!):
(*) Mark is on vacation this week, but we’ll schedule a separate IRC session with him, stay tuned!
Quoting the Ubuntu philosophy, one of our core values is to provide the ability for every computer user to use Ubuntu in their language of choice. This in turn is made possible by an army of volunteer translators, who throughout the development cycle and beyond, tirelessly put their translation skills to work in an outstanding feat to make a full operating system accessible to millions.
As we’re ramping up to the Ubuntu 11.10 release in a few day’s time, there’s another important milestone for ensuring Ubuntu is available in as many languages as possible: the translations deadline on the 6th of October.
Up until now, and considering the 80% coverage cut-off, Ubuntu 11.10, the Oneiric Ocelot, is translated in 38 languages, lead by the Slovenian team’s heroic effort of becoming the #1 team in the ranking.
Last cycle Ubuntu was fully translated in 43 languages. I think this cycle we should be able to aim for more, and I’m confident that with everyone’s help we could reach the 50 fully translated languages mark.
There are a few languages that are very close to reaching the 80% translation level:
Basque, Latvian, Hebrew, Uyghur, Albanian, Estonian, Bengali, Punjabi
And others which might need an extra push to climb up the 60% to 70% mark to reach 80%:
Serbian Latin, Hindi, Indonesian, Tamil, Thai, Telugu, Slovak, Arabic, Belarusian, Gujarati
So if you speak any of these or other languages, here’s what you can do to help yours reach the 80% level and make it to the list of supported languages:
Note: the translations statistics are updated daily at 12:00 UTC.
If there is any web guru out there who’d like to lend a hand, help with the CSS and the JS code for the stats page would be greatly appreciated.
One cool thing I’d like to do for instance is for translators to, once they’ve clicked on their language, be able to click on a package that needs attention and be taken to the corresponding Launchpad Translations page. This only needs the corresponding rows in the table to be linkified, which is something I’ve been struggling with and I’m sure would be a five-minute job for an experienced web developer.
So if you want to help translators with your web skills, drop a comment here or feel free to submit a bzr branch. Thanks!
Looking forward to the best translated Ubuntu release ever!
Continuing on from our earlier work of sending less but better mail and making it faster to import i18n translation templates: Launchpad will no longer send mail when it successfully imports a template. You can see in the web ui when the template was last imported, and you will still get mail if there’s a problem.
I could hardly put it better than Riddell:
Danilo asked for my reasoning. My reasoning is that pointless e-mails are a pain.
(I hope we’ll eventually have a more structured notification model, that will let you choose to see some notifications by mail and others in the web ui. One step at a time.)Read more
If you use Launchpad’s Translations feature, then as of today, you may notice a new kind of error for uploads in your translations import queue. Look for the “” icon next to your upload’s status, and click to unfold. The error message says “Can’t auto-approve upload: it’s not clear what template it belongs to.”
You may find this annoying, and as the person responsible, let me apologize. I hope when I’m done explaining, it won’t seem so bad.
To the right is an example of the error. Click it to see more.
Where does the error come from? Actually it’s a problem that’s always been there, but instead of telling you about it, we Launchpad developers tried to hide the complexity from you and take care of it all ourselves. And we weren’t keeping up. Some of your uploaded translations would just sit in the queue forever, with status Needs Review, for no clear reason. All that’s changing now is that Launchpad will tell you when this happens, so that you can deal with it without waiting for us.
Every translation you make in Launchpad has to go into a specific template and language. Usually it’s obvious where you want your translation to go: when you translate in Launchpad’s web UI, you’re already on the page for a specific template and language. If you have upload privileges for the project and language, you can follow the upload link from that same translation page and again it’s obvious which template you’re translating and to what language. If you always upload the same file with exactly the same name and path, new uploads of that file go to the same place as before. But what if you upload a new file from the release-series page, or the translation comes in from a Bazaar branch or an automated build?
Then it’s up to a script we call the Translations Import Queue Gardener. The Gardener periodically scans all waiting uploads—the ones marked Needs Review—and tries more advanced ways of matching them up with known templates and languages. When it finds a match, it approves the upload’s import to the template and language it has found.
One of the Gardener’s most important tools is a template’s ”translation domain.” This is a simple name; no slashes or weird characters allowed. Launchpad figures out a template’s domain when you first import the template, based on its directory path. In principle a template’s domain should identify the template uniquely on the end-user’s system, but Launchpad isn’t as strict about it. It just assumes that the domain name is tied to the template file’s path within a project’s source tree. You probably shouldn’t, but you can give your project two templates with the same domain if you want.
When you upload a translation, the Gardener tries to figure out its translation domain based on the file’s path, just like what happened when the template was created. The Gardener looks for a template with the right domain in the same release series. If it finds one, presto: it’s got the template that the upload is meant for. If not, then the Gardener tries a few other things and if nothing works, simply keeps the upload on the queue.
So the entry doesn’t get imported, but usually the Gardener can’t give any single reason: all it knows is that it tried many ways of matching the file to a template and none of them worked. Maybe it’s an error; maybe it’s just a matter of waiting for the right template to be created.
The new error message is about “approval conflicts.” You’ll see it when there is ”more than one” matching template for your upload. This can happen because your project’s directory structure is unusual and Launchpad can’t extract a meaningful domain from it. Or a template’s domain may have been changed, or an old deactivated template is reactivated when a new one has already taken its place.
Whatever the cause, the new error message tells you that this has happened, and what the matching templates are. It’s up to you to decide what needs to be done about it:
How much you can do, of course, depends on the permisisons you have. Only the project’s owners (and Launchpad’s administrators) can deactivate templates or change their domains. But you can always delete your own uploads if you want to upload your file differently: on the import-queue page, click on Needs Review and select Deleted instead.
There’s still plenty more we’d like to do to make imports easier and more efficient, if we can find the time. But I hope this small change will make your life a little easier.
Is this error message working for you? Is it helpful? Are you seeing a lot of these errors, or none at all where you were expecting them? Is the explanation unclear? Do you see something happen for lots of people that we could fix in the same way? Please get in touch:
Bug 83941 “bzr doesn’t speak my tongue” has been closed: bzr core can now be translated. (The qbzr and bzr-explorer guis have been internationalized for a couple of years.) If you want to help bring bzr to those who prefer to work in non-English languages please help translate at Launchpad.
The translation will involve quite a bit of specialist language (what is French for “colocated branch”?) and I expect there are strings yet that need to be added to the translation file. I also need to look at translations for plugins. Please send issues to either the Bazaar mailing list or as bugs on bzr on Launchpad.
Philippe Lhoste wrote a while ago about the issues of translating DVCS terminology.Read more
Another app developer day is over and we’re nearly halfway through the week. Here’s what happened yesterday:
In this session we learned how to link up an app that already has internationalization support to Launchpad Translations, so that it is exposed to Launchpad’s extensive community of translators who’ll effectively make your app speak almost any language. From setting up code hosting for a seamless integration, to setting up the translations settings to tips and tricks for best practices, the presentation should give developers a good grasp of how to start getting their apps translated and ready to reach a wider audience.
Check out the session log here.
An interactive and popular session, in which Florian started describing the main goal behind the Unity 2D project: to run on platforms that do not provide accelerated OpenGL. It essentially is an implementation of the main Unity user interface using the Qt toolkit and the QML declarative language, while reusing the backend technologies from Unity. From there he went on describing the Unity 2D architecture and the release policy, pointing out to the Unity 2D daily PPA, for those testers who want to be on the bleeding edge., and wrapped up answering the questions from the audience.
Check out the session log here.
By Curtis Hovey
Starting off with a description of Gedit plugins, their purpose and how to install them, Curtis delved into the general-purpose plugins and the developer plugins (click to install) plugins, explaining how to set them up and his recommended choice of plugins to convert Gedit in the perfect programming editor. The highlights included the GDP Bazaar integration plug in, which allows working with the bzr source revision control system and others (Subversion, Mercurial, Git), as well as the Source Code Browser plugin, a class and function browser based on Exuberant Ctags.
Check out the session log here.
In another session devoted to the app developer strategy, Anthony told us all about the MyApps webapp developers can use to submit their applications to the Software Center. Available on https://myapps.developer.ubuntu.com, it started off as the need to automate the submission of commercial apps to the Software Centre, expanding to a full-blown online portal that can now tackle any type of submission. He then walked the audience through the 5-step process to send an app for review, including all the necessary metadata and payment details. Once an app has been submitted, it needs to be packaged (if it wasn’t already) and reviewed before being published. Hinting to Jonathan Lange’s session on day 1, Anthony explained that they are looking at providing an automated process for packaging, with the intention of removing the last big remaining manual process.
Check out the session log here.
Complementing the previous session, Stéphane explained how libre+gratis apps can get into the Software Centre and what the App Review Board’s (ARB) role is in that process. He focused on how the Board reviews applications and how other types are distributed in Ubuntu. The types of apps reviewed by the ARB are small, lightweight apps, usually of the type created by Quickly (check out the sessions on Quickly on Thursday!). The next upcoming changes in the way this applications are reviewed will most probably include them being submitted through the MyApps online portal and them being made more secure by wrapping them in a container based on AppArmor or Arkose (or a combination of them).
Check out the session log here.
Check out today’s rocking lineup:
16.00 UTC – Unity Mail: Webmail Notification on Your Desktop
We’re starting to see more and more apps that integrate with Unity. Unity Mail is a cool app that allows you to stay up to date with your web mail directly from your desktop. It supports any IMAP server, but right now it works best with Gmail, along with notifications, message counts, quicklists and more. Dmitry Shachnev will tell us about its features and how he put the application together.
17:00 UTC – Launchpad Daily Builds and Rapid Feedback: Writing Recipe Builds
Launchpad has many awesome features. This time around Jelmer Vernooij will be explaininghow to set up recipe builds for your project in Launchpad, so that users can get the latest updates easily packaged on a daily basis, so that they can install them at a click of a button and can test them and make the feedback loop as short as possible.
18:00 UTC – Using the Ubuntu One APIs for Your Apps: An Overview
Ubuntu One is starting to be everywhere, and it even has its own developer programme. The Ubuntu One website already provides lots of information to developers, and to make it even more clear, Stuart Langridge will walk you through the available Ubuntu One APIs you can use to make your application cloud-ready.
19:00 UTC – Supercharging Your Apps with Unity Launcher Integration
One of the easiest and more visual ways for your apps to blend in with Unity is for it to integrate with the Launcher. Counts, progress indication, quicklists… are an elegant and simple wayto provide feedback to users. Jason Smith knows all about Launcher integration, and he’s really looking forward to share it with us!
20:00 UTC – Hello Vala: An Introduction to the Vala Language
Vala is a powerful programming language that allows modern programming techniques to be used to write applications that run on the GNOME runtime libraries, particularly GLib and GObject. Luca Bruno is part of the team that develops Vala itself, and will be introducing us to the first steps to get started with Vala with the universal “Hello world” app becoming “Hello Vala!”.
Looking forward to seeing you all there in a few hours!
Good news if you run a project’s translation effort in Launchpad!
Until today, when you imported a template or translation file into Launchpad for the first time, you’d have to wait for a member of the Canonical Launchpad team to review and then approve that file before your project’s translation community could make use of it.
Now, if you’re a project maintainer, you can manage your project’s translations import queue yourself. All you need do is follow the “import queue” link on your project’s translations overview page and you’ll see something like this:
Once you’ve approved a file, and it has been imported, subsequent changes will go through Launchpad’s automatic approval process.
Take a look at our guide to importing templates for more detail.
Road sign photo by Spixey. Licence: CC BY.Read more
© 2010 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd.