From 960a70c08c97fd31d011a07bbcdf75d65e15697f Mon Sep 17 00:00:00 2001 From: Richard Hughes Date: Fri, 2 May 2008 13:25:52 +0000 Subject: [PATCH] - Add desktop-mime-type.prov so that we can automatically generate mimetype provides for packages at build time. This lets us do some cool things with PackageKit in the future. --- desktop-file-utils.spec | 12 +++++++++++- desktop-mime-type.prov | 26 ++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 desktop-mime-type.prov diff --git a/desktop-file-utils.spec b/desktop-file-utils.spec index 68063cb..ea420bb 100644 --- a/desktop-file-utils.spec +++ b/desktop-file-utils.spec @@ -1,9 +1,10 @@ Summary: Utilities for manipulating .desktop files Name: desktop-file-utils Version: 0.15 -Release: 2%{?dist} +Release: 3%{?dist} URL: http://www.freedesktop.org/software/desktop-file-utils Source0: http://www.freedesktop.org/software/desktop-file-utils/releases/%{name}-%{version}.tar.gz +Source1: desktop-mime-type.prov # https://bugs.freedesktop.org/show_bug.cgi?id=12018 License: GPLv2+ Group: Development/Tools @@ -31,6 +32,9 @@ make rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT +# add the provides script +install -m0755 -D %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/rpm/desktop-mime-type.prov + %clean rm -rf $RPM_BUILD_ROOT @@ -39,8 +43,14 @@ rm -rf $RPM_BUILD_ROOT %doc AUTHORS COPYING README NEWS %{_bindir}/* %{_datadir}/emacs/site-lisp/ +%{_libdir}/rpm/desktop-mime-type.prov %changelog +* Fri May 02 2008 Richard Hughes - 0.15-3 +- Add desktop-mime-type.prov so that we can automatically + generate mimetype provides for packages at build time. + This lets us do some cool things with PackageKit in the future. + * Wed Mar 19 2008 Ray Strode - 0.15-2 - Drop old unneeded obsoletes on desktop-file-validator (bug 225681) diff --git a/desktop-mime-type.prov b/desktop-mime-type.prov new file mode 100644 index 0000000..da6291a --- /dev/null +++ b/desktop-mime-type.prov @@ -0,0 +1,26 @@ +#!/bin/sh +# +# Script to install in: +# /usr/lib/rpm/redhat/find-provides.d +# +# Transform desktop mimetype info into RPM provides +# +# Author: Richard Hughes +# Based on other provides scripts from RPM +# + +#!/bin/sh +OLD_IFS="$IFS" +while read instfile ; do + case "$instfile" in + *.desktop) + mime=`cat $instfile | grep MimeType | cut -d'=' -f2` + IFS=';' + for type in $mime ; do + echo 'mimetype('$type')' + done + ;; + esac +done +IFS=$OLD_IFS +