Fixing the shared-mime-info debacle

Francesco P. Lovergine frankie at debian.org
Sun Mar 8 11:23:20 UTC 2009


On Sun, Mar 08, 2009 at 03:27:23AM +0100, Josselin Mouette wrote:
> Hi,
> 
> in case you didn’t already know, since version 0.60, the format of the
> cache file provided by shared-mime-info has changed. The new package
> removes the old cache file (/usr/share/mime/mime.cache) to generate one
> with a new format, and has versioned conflicts with the packages this
> upgrade breaks - the new cache format being understood by newer
> versions.
> 
> However, this has tragic consequences. Not only it breaks the running
> instances of file managers that monitor the changes of the system
> mime.cache file, but the per-user cache (~/.local/share/mime/mime.cache)
> stays at the old format and completely breaks the implementations.
> 
> I feel that upstream made a strong mistake to not rename the cache file
> when changing its format. Even if this means diverging from the
> specification, we should rename the filename, for example to
> "mime.cache2".
> 
> The affected packages are:
>       * glib2.0
>       * gnome-vfs
>       * libcitadel
>       * pcmanfm
>       * rox
>       * thunar
>       * and of course, shared-mime-info itself.
> 
> If someone can think of a better way to fix this, please speak up now.
> Otherwise, if you agree with this course of action, I suggest we
> synchronize an upload of these packages (using DELAYED) and add proper
> versioned conflicts in shared-mime-info.
> 

Diverging from upstream and from standard names is not something I like.
To do that it is required patching rox forever with a Debian-specific
patch, to use the new name at per-user and system level. It would be much better
patching rox (and other programs) to avoid using the old per-user format 
if the system-wide format is newer, and possibly warn the user about that/regenerate
the cache. _Those_ kind of patches could also be forwarded upstream and accepted,
because they solve a general problem in a general way. Note that AFAIK the cache
format is versioned (current is 1.0), so checking for formats and at least ignoring
the local file is easy. 

Cheers

-- 
Francesco P. Lovergine



More information about the pkg-gnome-maintainers mailing list