After having reviewed this thread, there are a few things I'd like to highlight:
Language chooser ---------------- As regards the language chooser on the login screen, it basically serves two purposes: 1. For users who change display language once in a while - for whatever reason - it provides a more convenient way for doing so than doing it from the Language Support UI or its successor. There is a fresh bug report about it, btw: https://launchpad.net/bugs/803858 2. It gives the user of a newly created account an instant possibility, before first login, to set some other display language than the one that was inherited from the system language. In Oneiric the UI for adding a user will include a possibility for admin to select the initial user language, which feature might be considered to replace purpose #2, but not purpose #1. I for one think that purpose #1 justifies that Ubuntu keeps providing a language chooser on the login screen. Shared scripts -------------- A couple of entries in this thread have hold a perceived complexity of the code against a language chooser on the login screen. I agree that the code for handling certain language related bits and pieces is currently not very well organized. To avoid duplication and facilitate maintenance, I think that a few shared scripts should be written that can be be called from any package - at system installation, at user creation, from the dm, from Language Support, and even when launching a guest session. The package containing those scripts should be a dependency of the packages from which one or more of the scripts are called. It could be language-selector or a new separate package. I think this refactoring should be done irrespective of the conclusion with respect to the language chooser. The shared scripts would probably also facilitate the move from the Language Support UI to the applicable GNOME UI. Storing of language settings ---------------------------- As an input to the suggested code refactoring, I believe it's appropriate to talk about where the user language settings are stored. The primary place in Natty is /var/cache/gdm/$USER/dmrc, which file both GDM and language-selector read from and write to. language-selector also writes to ~/.profile, but as long as GDM is the dm, the language settings in ~/.profile are ignored. One advantage with using /var/cache/gdm/$USER/dmrc in this way is that the user language is dealt with correctly even if $HOME is not available, e.g. because it's stored on a separate device that is not mounted or because it's encrypted. -- Gunnar Hjalmarsson https://launchpad.net/~gunnarhj -- ubuntu-desktop mailing list ubuntu-desktop@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop