Have a way to dynamically change software associations at distribution level
sbrabec at suse.cz
Tue Sep 1 08:37:03 PDT 2009
> On Windows, upstream applications usually ask the users whether they
> want to use this application as default for some file types upon
> installation or first-time execution. Unless the file type is their
> own private file formats and their applications are the only ones
> supporting this format, few of them unconditionally set themselves as
> the default by modifying system configurations.
On Linux, we have standard software packages. A good practice says:
Don't touch files that your package doesn't own, unless is is necessary
for its function (ldconfig, update icon cache, update mime database,
register info file, register gconf keys...).
Packages must be installable without user interaction.
But it is possible to create a system administration tool for simple and
effective default associations.
(Well, even my proposal allows MIME system abuse: Application can
install its own /etc/desktop-defaults.conf.d/thebestplayer.conf and
steal default association in all desktops to self.)
> So, maybe we should
> only set some sensible defaults for each distributions, but let the
> users choose their own favorite apps easily instead of develop a way
> to 'generate' a default list.
As I wrote in previous mail, we have bad experience with a manually
created defaults.list. Default installation of openSUSE currently
supports about 400 MIME types. Even with a care, it's easy to forget to
keep defaults.list up to date. It causes ugly errors: It defaults to
random (e. g. KDE) applications in GNOME for forgotten MIME types. For
example, instead of file-roller, obscure archives are opened via KDE
So I would prefer two speed solution:
1. Define important things manually and provide good hints for the
heuristic (see the example configuration in my last mail).
2. Let automatic heuristic use these hints and automatically do best the
rest. Information inside desktop files should be rich enough to not
> If I'm the user, I won't be happy if my favorite default application
> for some file formats get changed automatically after I installed some
> packages, and I don't know how to change them back.
I think, that it should. It is the basic idea of the heuristic: Find the
best (desktop specific) application. It will always depend on a running
desktop and currently available applications.
Here is no regression to the current situation. If you have a cut-down
GNOME distribution and the only image viewer is display, you will get it
by default. If EOG is installed later, the system default will switch to
EOG (as it was probably manually added to defaults.list). If you like
display a lot, you can configure it locally "via Properties/Open With"
and your choice will be always preferred.
> Maybe it's the responsibility of package management tools to ask the
system administrator, not user
> whether the newly installed application should be associated with
> the file types they support after the packages are installed.
Yes, such feature may may be an optional extension of package management
> Or, the file manager should prompt the users to choose one application
> for the file to be opened when there was no default value provided by
> distribution makers.
Is it better than trying to guess best using a smart heuristic? Imagine
an user that knows nothing about GNOME desktop that gets a dialog:
File type "Sigma Digital Camera RAW Image" does not have associated any
default application. Please select proper one:
Krita | Ark | Geeqie | EOG | UFRAW | GIMP
What the newbie do? Probably: "I don't know. Let's try the first."
Best Regards / S pozdravem,
SUSE LINUX, s. r. o. e-mail: sbrabec at suse.cz
Lihovarská 1060/12 tel: +420 284 028 966, +49 911 740538747
190 00 Praha 9 fax: +420 284 028 951
Czech Republic http://www.suse.cz/
More information about the xdg