The MIME system in GNOME 2.8 has been changed to match the freedesktop.org standard. In order for an application to register itself with the new MIME system it must install a .desktop file into
/usr/share/applications with a
MimeType= key containing a semicolon-delimited list of supported MIME types. For instance, a typical .desktop file might look like:
[Desktop Entry] Name=Cool Image Viewer Encoding=UTF-8 Exec=cool-image-viewer %f MimeType=image/png;image/jpeg;
Exec= key can contain a substitution variable specifying the type of parameter the application can take. If the application expects a file path to be passed to it then
%f should be used. If the application expects a URI then
%u should be used. If the application can accept multiple file paths or URIs then the uppercase variants,
%U should be used instead, respectively.
In order to refresh the MIME-type/application mapping cache (mimeinfo.cache), the update-desktop-database program must be run after the .desktop file is installed. When packaging programs that register with the new MIME system, it is best to call update-desktop-database from the
%postun sections of the RPM's .spec file. Example:
%post update-desktop-database &> /dev/null || : %postun update-desktop-database &> /dev/null || :
The spec file should not Require desktop-file-utils for this (it used to be required in old Fedora Core releases).