From Fedora Project Wiki
Line 1: Line 1:
 
{{Anchor|mimeinfo}}
 
{{Anchor|mimeinfo}}
 +
NOTE: This Draft would be for fedora 21 and newer (and possibly anywhere we could patch shared-mime-info package to accept the new -n option).  Anything else (like EPEL) would likely need to keep the old guideline.
 +
 +
 
== mimeinfo ==
 
== mimeinfo ==
 
Use this when a package drops an XML file in %{_datadir}/mime/packages.
 
Use this when a package drops an XML file in %{_datadir}/mime/packages.
Line 9: Line 12:
 
if [ $1 -eq 0 ] ; then
 
if [ $1 -eq 0 ] ; then
 
   touch --no-create %{_datadir}/mime/packages ||:
 
   touch --no-create %{_datadir}/mime/packages ||:
   /usr/bin/update-mime-database %{_datadir}/mime --some_new_option &> /dev/null || :
+
   /usr/bin/update-mime-database %{_datadir}/mime -n &> /dev/null || :
 
fi
 
fi
  
 
%posttrans
 
%posttrans
/usr/bin/update-mime-database %{_datadir}/mime --some_new_option &> /dev/null || :
+
/usr/bin/update-mime-database %{_datadir}/mime -n &> /dev/null || :
 
</pre>
 
</pre>
  

Revision as of 16:39, 27 June 2014

NOTE: This Draft would be for fedora 21 and newer (and possibly anywhere we could patch shared-mime-info package to accept the new -n option). Anything else (like EPEL) would likely need to keep the old guideline.


mimeinfo

Use this when a package drops an XML file in %{_datadir}/mime/packages.

%post
touch --no-create %{_datadir}/mime/packages ||:

%postun
if [ $1 -eq 0 ] ; then
  touch --no-create %{_datadir}/mime/packages ||:
  /usr/bin/update-mime-database %{_datadir}/mime -n &> /dev/null || :
fi

%posttrans
/usr/bin/update-mime-database %{_datadir}/mime -n &> /dev/null || :

Note that similarly to the gtk-update-icon-cache code, these scriptlets should be run only if the user has update-mime-info installed and without a specific Requires: shared-mime-info. If shared-mime-info is not installed, update-mime-database won't be run when this package is installed. This does not matter because it will be run when the shared-mime-info package is installed.