r17025 - in /packages/experimental/gnome-app-install/debian: changelog control.in links patches/06_remove-codec-installation.patch

slomo at users.alioth.debian.org slomo at users.alioth.debian.org
Sun Sep 21 13:49:16 UTC 2008


Author: slomo
Date: Sun Sep 21 13:49:16 2008
New Revision: 17025

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=17025
Log:
* debian/patches/06_remove-codec-installation.patch,
  debian/links,
  debian/control.in:
  + Remove gstreamer codec installation from gnome-app-install. This is now
    handled by gnome-codec-install.

Added:
    packages/experimental/gnome-app-install/debian/patches/06_remove-codec-installation.patch
Modified:
    packages/experimental/gnome-app-install/debian/changelog
    packages/experimental/gnome-app-install/debian/control.in
    packages/experimental/gnome-app-install/debian/links

Modified: packages/experimental/gnome-app-install/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gnome-app-install/debian/changelog?rev=17025&op=diff
==============================================================================
--- packages/experimental/gnome-app-install/debian/changelog (original)
+++ packages/experimental/gnome-app-install/debian/changelog Sun Sep 21 13:49:16 2008
@@ -1,3 +1,13 @@
+gnome-app-install (0.5.5.1-2) experimental; urgency=low
+
+  * debian/patches/06_remove-codec-installation.patch,
+    debian/links,
+    debian/control.in:
+    + Remove gstreamer codec installation from gnome-app-install. This is now
+      handled by gnome-codec-install.
+
+ -- Sebastian Dröge <slomo at debian.org>  Mon, 11 Aug 2008 19:27:25 +0200
+
 gnome-app-install (0.5.5.1-1) unstable; urgency=low
 
   [ Josselin Mouette ]

Modified: packages/experimental/gnome-app-install/debian/control.in
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gnome-app-install/debian/control.in?rev=17025&op=diff
==============================================================================
--- packages/experimental/gnome-app-install/debian/control.in (original)
+++ packages/experimental/gnome-app-install/debian/control.in Sun Sep 21 13:49:16 2008
@@ -30,7 +30,6 @@
          python-gnome2,
          python-gtkhtml2,
          python-gtkmozembed,
-         python-gst0.10,
          python-gtk2 (>= 2.10.1),
          python-sexy,
          python-xdg (>= 0.8),
@@ -38,4 +37,4 @@
 XB-Python-Version: ${python:Versions}
 Description: GNOME Application Installer
  A pretty application installer for GNOME. It can also search for mime
- types or GStreamer codecs.
+ types.

Modified: packages/experimental/gnome-app-install/debian/links
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gnome-app-install/debian/links?rev=17025&op=diff
==============================================================================
--- packages/experimental/gnome-app-install/debian/links (original)
+++ packages/experimental/gnome-app-install/debian/links Sun Sep 21 13:49:16 2008
@@ -1,2 +1,0 @@
-usr/bin/gnome-app-install usr/bin/gnome-codec-install
-usr/share/man/man1/gnome-app-install.1.gz usr/share/man/man1/gnome-codec-install.1.gz

Added: packages/experimental/gnome-app-install/debian/patches/06_remove-codec-installation.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gnome-app-install/debian/patches/06_remove-codec-installation.patch?rev=17025&op=file
==============================================================================
--- packages/experimental/gnome-app-install/debian/patches/06_remove-codec-installation.patch (added)
+++ packages/experimental/gnome-app-install/debian/patches/06_remove-codec-installation.patch Sun Sep 21 13:49:16 2008
@@ -1,0 +1,547 @@
+diff -Naur gnome-app-install-0.5.5.1.old/AppInstall/activation.py gnome-app-install-0.5.5.1/AppInstall/activation.py
+--- gnome-app-install-0.5.5.1.old/AppInstall/activation.py	2008-06-13 17:37:17.000000000 +0200
++++ gnome-app-install-0.5.5.1/AppInstall/activation.py	2008-09-21 15:37:27.000000000 +0200
+@@ -40,9 +40,6 @@
+         return False
+     def menuCacheName(self):
+         """ Each activation-mode can have a different cached menu
+-            This is useful for e.g. codec activation style because
+-            there are only very few codecs so it makes sense to read
+-            only the subset of the menu with codec information
+         """
+         return "menu.p"
+     def searchTerms(self):
+@@ -141,112 +138,6 @@
+                                        _("Please wait. This might take a "
+                                          "minute or two.")))
+ 
+-class CodecSearchActivationStyle(SearchActivationStyle):
+-    def __init__(self, options, args):
+-       SearchActivationStyle.__init__(self, 'codec', options)
+-       self._codecs = []
+-       self._args = args
+-       self.options = options
+-       # Points to the SHOW_ALL filter, importing Menu would take too much time
+-       self.menuFilter = 0
+-       self.isInstallerOnly = True
+-
+-    def _parseArgs(self):
+-        " helper that tries to decode the commandline"
+-        for arg in self._args:
+-            # we get a string like this:
+-            #gstreamer.net|0.10|totem|DivX MPEG-4 Version 5 decoder|decoder-video/x-divx, divxversion=(int)5 (DivX MPEG-4 Version 5 decoder)
+-            try:
+-                (origin,version,app,descr,search_token) = arg.split("|")
+-            except ValueError, e:
+-                sys.stderr.write("invalid commandline '%s' (%s)\n" % (arg, e))
+-                return False
+-            self.addSearchTerm("%s:%s" % (version, search_token))
+-        return True
+-    
+-    def preRun(self):
+-        if self._parseArgs():
+-            if not askConfirmation(_("Search for suitable codec?"),
+-                            _("The required software to play this "
+-                              "file is not installed. You need to install "
+-                              "suitable codecs to play "
+-                              "media files. Do you want to search for a codec "
+-                              "that supports the selected file?\n\n"
+-                              "The search will also include software which is not "
+-                              "officially supported."),
+-                            self.options.transient_for):
+-                sys.exit(4)
+-        else:
+-            import gtk
+-            abbrev = _("Invalid commandline")
+-            msg = _("'%s' does not understand the commandline argument '%s'" % (sys.argv[0], self._args))
+-            dlg = gtk.MessageDialog(None,
+-                                    gtk.DIALOG_MODAL,
+-                                    gtk.MESSAGE_ERROR, gtk.BUTTONS_OK,
+-                                    abbrev)
+-            dlg.format_secondary_text(msg)
+-            dlg.run()
+-            dlg.destroy()
+-            sys.exit(1)
+-        return True
+-
+-    def modifyUserInterface(self, app):
+-        import gtk
+-        SearchActivationStyle.modifyUserInterface(self, app)
+-        #FIXME: second message needs some love
+-        app.label_progress.set_markup("<big><b>%s</b></big>\n\n%s" %
+-                                      (_("Searching for appropriate "
+-                                         "codecs"),
+-                                       _("Please wait. This might take a "
+-                                         "minute or two.")))
+-        app.hbox_search_show.hide()
+-        app.button_ok.set_label(_("_Install"))
+-        app.window_main.set_title(_("Install multimedia codecs"))
+-        app.window_main.set_property("default_width", 500)
+-        app.window_main.set_property("default_height", 400)
+-        col = app.treeview_packages.get_column(1)
+-        col.set_title(_("Codec"))
+-        model = app.treeview_packages.get_model()
+-        model.set_sort_column_id(2, gtk.SORT_DESCENDING)
+-
+-    def menuCacheName(self):
+-        return "codec_menu.p"
+-
+-    def addSearchTerm(self, string):
+-        #print "addSearchTerm: ", string
+-        # we split the string here for the gstreamer caps support
+-        # we get something like:
+-        #  'decoder-video/x-indeo, indeoversion=(int)3'
+-        # and we will only compare the first bit as the later requires
+-        # more python-gst support and that is slow. but we want to
+-        # give the user fast results (even if we sometimes come up
+-        # with a window saying "no applications found"
+-        string = string.replace(", ",",")
+-        #Skip the description from the search token
+-        string = string.split(" ")[0]
+-        self._codecs.append(string)
+-        (ok,unapproved,abbrev,msg) = self.lookup(string.split(",")[0])
+-        if ok: return
+-        print >>sys.stderr, abbrev
+-        #sys.exit(9 - unapproved)
+-        sys.exit(1)
+-        
+-    def searchTerms(self): return self._codecs
+-    def selectFilter(self, menu): return menu._codecMatch
+-
+-    def quitHook(self):
+-       if not self._userapproved:
+-               print >>sys.stderr, _("additional codec installation declined")
+-               #sys.exit(3)
+-               sys.exit(4)
+-       if not self._changessuccessful:
+-               print >>sys.stderr, _("additional codec installation failed")
+-               sys.exit(2)
+-
+-    def autoClose(self):
+-        " auto close the app on successful codec installs "
+-        return True
+-
+ class MimeSearchActivationStyle(SearchActivationStyle):
+     def __init__(self, options, uri, duri):
+         SearchActivationStyle.__init__(self, 'mime', options)
+@@ -425,9 +316,7 @@
+             app.applyChanges([item], [])
+ 
+     # activation style
+-    if sys.argv[0].split("/")[-1] == "gnome-codec-install":
+-        style = CodecSearchActivationStyle(options, args)
+-    elif options.mime_type:
++    if options.mime_type:
+         #FIXME: What is an uri, duri?
+         uri = None
+         duri = None
+diff -Naur gnome-app-install-0.5.5.1.old/AppInstall/AppInstall.py gnome-app-install-0.5.5.1/AppInstall/AppInstall.py
+--- gnome-app-install-0.5.5.1.old/AppInstall/AppInstall.py	2008-06-13 17:37:16.000000000 +0200
++++ gnome-app-install-0.5.5.1/AppInstall/AppInstall.py	2008-09-21 15:40:57.000000000 +0200
+@@ -656,7 +656,7 @@
+ 
+     def _ensureUnsupportedOrLegalWarning(self, item):
+         """ warn:
+-            - on potential legal problems (codecs) always
++            - on potential legal problems always
+             - when a universe or multiverse package is installed for
+               the first time
+         """
+diff -Naur gnome-app-install-0.5.5.1.old/AppInstall/CoreMenu.py gnome-app-install-0.5.5.1/AppInstall/CoreMenu.py
+--- gnome-app-install-0.5.5.1.old/AppInstall/CoreMenu.py	2008-06-13 17:37:16.000000000 +0200
++++ gnome-app-install-0.5.5.1/AppInstall/CoreMenu.py	2008-09-21 15:42:27.000000000 +0200
+@@ -109,7 +109,6 @@
+                     	item.iconname = item.iconname[:-4]
+                     item.comment = entry.DesktopEntry.getComment()
+                     item.mime = entry.DesktopEntry.get('MimeType', list=True)
+-                    item.codecs = entry.DesktopEntry.get("X-AppInstall-Codecs").split(';')
+                     item.patentBadness = entry.DesktopEntry.get("X-AppInstall-PatentBadness", type='boolean')
+                     # popcon data
+                     popcon_str = entry.DesktopEntry.get("X-AppInstall-Popcon")
+diff -Naur gnome-app-install-0.5.5.1.old/AppInstall/Menu.py gnome-app-install-0.5.5.1/AppInstall/Menu.py
+--- gnome-app-install-0.5.5.1.old/AppInstall/Menu.py	2008-06-13 17:37:17.000000000 +0200
++++ gnome-app-install-0.5.5.1/AppInstall/Menu.py	2008-09-21 15:45:54.000000000 +0200
+@@ -13,7 +13,6 @@
+ import sys
+ import os
+ import gettext
+-import gst
+ 
+ from warnings import warn
+ from gettext import gettext as _
+@@ -35,9 +34,7 @@
+   SHOW_ONLY_PROPRIETARY,
+  ) = range(9)
+ 
+-PIMP_APPS = ["gstreamer0.10-plugins-ugly",
+-             "gstreamer0.10-ffmpeg",
+-             "sun-java5-plugin",
++PIMP_APPS = ["sun-java5-plugin",
+              "flashplugin-nonfree",
+              "ubuntu-restricted-extras"]
+ 
+@@ -223,10 +220,6 @@
+                 rank += 25
+                 trigger += " mime"
+                 hit = True
+-            if self._codecMatch(item, term, fuzzy=True):
+-                rank += 15
+-                trigger += " codec"
+-                hit = True
+             if self.cache.has_key(item.pkgname) and \
+                  term in self.cache[item.pkgname].description.lower():
+                 rank += 10
+@@ -247,26 +240,6 @@
+                 return True
+         return False
+ 
+-    def _codecMatch(self, item, term, fuzzy=False):
+-        #print "_codecMatch for pkg '%s' (term: %s) " % (item.pkgname, term)
+-        if ":" in term:
+-            term = term.split(":")[1]
+-        search_cap = gst.caps_from_string(term)
+-        #print "search_cap: ", search_cap
+-        for codec in item.codecs:
+-            if ":" in codec:
+-                codec = codec.split(":")[1]
+-            if fuzzy and term in codec:
+-                return True
+-            else:
+-                cap = gst.caps_from_string(codec)
+-                #print "codec: ",codec
+-                #print "cap: ",cap
+-                if (cap and search_cap and
+-                    (search_cap & cap)):
+-                    return True
+-        return False
+-
+     def _activationStyleFilter(self, item):
+         #print "_activationStyleFilter(): ",item
+         filter = self.activationStyle.selectFilter(self)
+diff -Naur gnome-app-install-0.5.5.1.old/AppInstall/update.py gnome-app-install-0.5.5.1/AppInstall/update.py
+--- gnome-app-install-0.5.5.1.old/AppInstall/update.py	2008-06-13 17:37:17.000000000 +0200
++++ gnome-app-install-0.5.5.1/AppInstall/update.py	2008-09-21 15:43:20.000000000 +0200
+@@ -25,7 +25,7 @@
+ 
+ 
+ def generate_mime_map(desktop_dir, cache_dir):
+-    dicts = { 'mime':{}, 'codec':{} }
++    dicts = { 'mime':{} }
+ 
+     def record_provider(de, cp, defield,dictname):
+ 	try: keys = de.get(defield, list=True)
+@@ -33,9 +33,6 @@
+ 	if not keys: return
+ 	dict = dicts[dictname]
+ 	for key in keys:
+-            # gst-caps support
+-            if dictname == 'codec' and ',' in key:
+-                key = key.split(",")[0]
+ 	    try:
+                 l = dict[key]
+             except KeyError:
+@@ -54,7 +51,6 @@
+             continue
+ 	cp = component+"/"+package
+ 	record_provider(de, cp, 'MimeType','mime')
+-	record_provider(de, cp, 'X-AppInstall-Codecs','codec')
+ 
+     for (dictname,dict) in dicts.iteritems():
+ 	g = gdbm.open(os.path.join(cache_dir,
+@@ -68,21 +64,14 @@
+     # the regular menu cache
+     menu = CoreApplicationMenu(desktop_dir)
+     menu.createMenuCache(cache_dir)
+-    # now the codec/mime menu_cache
+-    codec_pickle = {}
+     mime_pickle = {}
+     for cat in menu.pickle:
+         for item in menu.pickle[cat]:
+-            if item.codecs != ['']:
+-                if not codec_pickle.has_key(cat):
+-                    codec_pickle[cat] = []
+-                codec_pickle[cat].append(item)
+             if item.mime != []:
+                 if not mime_pickle.has_key(cat):
+                     mime_pickle[cat] = []
+                 mime_pickle[cat].append(item)
+     pickle.dump(mime_pickle, open('%s/mime_menu.p' % cache_dir,'w'), 2)
+-    pickle.dump(codec_pickle, open('%s/codec_menu.p' % cache_dir,'w'), 2)
+ 
+ def main():
+  	parser = OptionParser()
+@@ -102,5 +91,5 @@
+ 			sys.exit(1)
+ 	print "Caching application data..."
+ 	generate_menu_cache(options.desktop_dir, options.cache_dir)
+-	print "Generating mime/codec maps..."
++	print "Generating mime maps..."
+ 	generate_mime_map(options.desktop_dir, options.cache_dir)
+diff -Naur gnome-app-install-0.5.5.1.old/README.codecs gnome-app-install-0.5.5.1/README.codecs
+--- gnome-app-install-0.5.5.1.old/README.codecs	2008-06-13 17:37:17.000000000 +0200
++++ gnome-app-install-0.5.5.1/README.codecs	1970-01-01 01:00:00.000000000 +0100
+@@ -1,19 +0,0 @@
+-if gnome-app-install is called as "gnome-codec-install" it will expect
+-a argument like:
+-
+-gstreamer.net|0.10|totem|DivX MPEG-4 Version 5 decoder|decoder-video/x-divx, divxversion=(int)5 (DivX MPEG-4 Version 5 decoder)
+-
+-For testing run:
+-$ ./gnome-codec-install 'gstreamer.net|0.10|totem|DivX MPEG-4 Version 5 decoder|decoder-video/mpeg'
+-
+-and search if it finds a matching codec (codecs need to be encoded
+-via X-AppInstall-Codecs= field).
+-
+-Example codec desktop file:
+-/usr/share/app-install/desktop/gstreamer-ffmepg.desktop
+-
+-Some example files are here:
+-http://samples.mplayerhq.hu/
+-
+-General multimedia codec information:
+-http://wiki.multimedia.cx/index.php?title=Main_Page
+diff -Naur gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-bad.desktop gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-bad.desktop
+--- gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-bad.desktop	2008-06-13 17:37:18.000000000 +0200
++++ gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-bad.desktop	1970-01-01 01:00:00.000000000 +0100
+@@ -1,11 +0,0 @@
+-[Desktop Entry]
+-Comment=Codecs to play
+-Name=GStreamer plugins for mms, wavpack, quicktime, musepack, aac, xvid, mpeg2, faad
+-Encoding=UTF-8
+-Terminal=false
+-Type=Application
+-Categories=GNOME;Application;Multimedia;AudioVideo
+-X-AppInstall-Package=gstreamer0.10-plugins-bad
+-X-AppInstall-Popcon=84
+-X-AppInstall-Section=main
+-X-AppInstall-Codecs=0.10:decoder-video/x-nuv;0.10:element-wavpackdec;0.10:element-realaudiodec;0.10:decoder-audio/x-musepack;0.10:element-interleave;0.10:element-speed;0.10:element-multifilesrc;0.10:encoder-video/x-mve;0.10:element-lpwsinc;0.10:element-spectrum;0.10:decoder-video/x-mve;0.10:decoder-audio/x-ttafile;0.10:decoder-application/x-rtp, payload=(int)[ 96, 127 ], media=(string){ audio, video }, encoding-name=(string){ X-QT, X-QUICKTIME };0.10:element-multifilesink;0.10:encoder-audio/x-wavpack, framed=(boolean)true;0.10:element-freeze;0.10:urisource-mmst;0.10:decoder-video/x-cdxa;0.10:decoder-audio/x-mod;0.10:decoder-audio/x-pn-realaudio;0.10:element-mvemux;0.10:decoder-video/x-vmnc, version=(int)1;0.10:element-rfbsrc;0.10:decoder-application/x-3gp;0.10:decoder-audio/x-tta;0.10:element-mvedemux;0.10:element-deinterleave;0.10:element-modplug;0.10:element-xingmux;0.10:element-mpegvideoparse;0.10:decoder-audio/x-wavpack, framed=(boolean)true;0.10:element-vmncdec;0.10:element-cdxaparse;0.10:decoder-video/x-h264;0.10:encoder-application/x-yuv4mpeg, y4mversion=(int)2;0.10:element-sdlaudiosink;0.10:element-dvbsrc;0.10:element-qtdemux;0.10:element-ttadec;0.10:element-nuvdemux;0.10:urisource-mms;0.10:decoder-audio/x-sipro;0.10:element-bpwsinc;0.10:decoder-audio/x-nsf;0.10:element-wavpackenc;0.10:element-sdlvideosink;0.10:element-y4menc;0.10:element-iir;0.10:element-rtpxqtdepay;0.10:element-faad;0.10:decoder-audio/mpeg, mpegversion=(int){ 2, 4 };0.10:element-videocrop;0.10:decoder-audio/x-wavpack, framed=(boolean)false;0.10:decoder-audio/x-wavpack-correction, framed=(boolean)false;0.10:urisource-mmsu;0.10:element-h264parse;0.10:element-appsink;0.10:decoder-video/mpeg, mpegversion=(int)[ 1, 2 ], parsed=(boolean)false, systemstream=(boolean)false;0.10:element-appsrc;0.10:element-ttaparse;0.10:element-rganalysis;0.10:element-deinterlace;0.10:element-mmssrc;0.10:urisource-mmsh;0.10:element-nsfdec;0.10:element-videoparse;0.10:element-wavpackparse;0.10:decoder-audio/x-m4a;0.10:element-jackaudiosink;0.10:element-musepackdec;0.10:decoder-video/quicktime;0.10:element-realvideodec;0.10:decoder-video/x-pn-realvideo, rmversion=(int)[ 2, 4 ]
+diff -Naur gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-ffmpeg.desktop gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-ffmpeg.desktop
+--- gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-ffmpeg.desktop	2008-06-13 17:37:18.000000000 +0200
++++ gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-ffmpeg.desktop	1970-01-01 01:00:00.000000000 +0100
+@@ -1,13 +0,0 @@
+-[Desktop Entry]
+-Version=1.0
+-Encoding=UTF-8
+-Name=GStreamer ffmpeg video plugin
+-Comment=Codecs to play mpeg, divx, mpeg4, ac3, wmv and asf files
+-Terminal=false
+-Type=Application
+-Categories=GNOME;Application;Multimedia;AudioVideo;
+-X-AppInstall-Package=gstreamer0.10-ffmpeg
+-X-AppInstall-Popcon=0
+-X-AppInstall-Section=main
+-
+-X-AppInstall-Codecs=0.10:decoder-video/x-asus, asusversion=(int)1;0.10:element-ffdec_adpcm_sbpro_4;0.10:decoder-application/x-gst_ff-vmd;0.10:decoder-video/x-asus, asusversion=(int)2;0.10:element-ffdemux_amr;0.10:element-ffdemux_gxf;0.10:element-ffdec_xan_wc3;0.10:element-ffdec_adpcm_sbpro_3;0.10:decoder-audio/x-adpcm, layout=(string)microsoft;0.10:decoder-audio/x-au;0.10:element-ffdemux_ingenient;0.10:decoder-application/x-shockwave-flash;0.10:element-ffdec_dvvideo;0.10:decoder-audio/x-adpcm, layout=(string)yamaha;0.10:element-ffdec_asv1;0.10:element-ffdec_mp3adu;0.10:decoder-image/bmp;0.10:element-ffdemux_gif;0.10:element-postproc_linipoldeint;0.10:decoder-video/x-vp5;0.10:decoder-application/x-id3;0.10:decoder-video/x-4xm;0.10:decoder-video/x-vp6;0.10:element-ffdec_huffyuv;0.10:decoder-video/x-vp3;0.10:element-postproc_autolevels;0.10:element-ffdec_adpcm_sbpro_2;0.10:element-ffdemux_RoQ;0.10:decoder-audio/x-adpcm, layout=(string)4xm;0.10:decoder-video/x-cirrus-logic-accupak;0.10:decoder-audio/x-tta;0.10:element-ffdemux_aiff;0.10:decoder-application/x-gst_ff-sol;0.10:decoder-video/x-cinepak;0.10:element-ffdemux_flv;0.10:decoder-application/x-pn-realmedia, systemstream=(boolean)true;0.10:decoder-application/x-gst_ff-nut;0.10:element-ffdec_qtrle;0.10:decoder-audio/x-qdm2;0.10:element-ffdec_ffvhuff;0.10:element-ffdec_snow;0.10:element-postproc_hdeblock;0.10:decoder-video/x-gst_ff-cavs;0.10:element-ffdemux_wc3movie;0.10:decoder-audio/x-gst_ff-vmdaudio;0.10:decoder-application/x-gst_ff-daud;0.10:decoder-application/x-gst_ff-nsv;0.10:decoder-application/x-gst_ff-psxstr;0.10:element-postproc_default;0.10:decoder-application/x-yuv4mpeg, y4mversion=(int)1;0.10:element-ffdec_rpza;0.10:element-ffdec_vcr1;0.10:decoder-audio/x-adpcm, layout=(string)dk3;0.10:element-postproc_x1vdeblock;0.10:element-ffdec_wmv1;0.10:decoder-video/x-gst_ff-loco;0.10:element-ffdec_sol_dpcm;0.10:decoder-audio/x-dpcm, layout=(string)roq;0.10:decoder-audio/x-adpcm, layout=(string)dk4;0.10:decoder-audio/x-adpcm, layout=(string)ct;0.10:decoder-audio/x-ttafile;0.10:element-postproc_avdeblock;0.10:decoder-video/x-gst_ff-fraps;0.10:element-ffdec_loco;0.10:element-ffdec_adpcm_adx;0.10:decoder-video/x-dv, systemstream=(boolean)true;0.10:decoder-audio/x-alac;0.10:decoder-video/x-zlib;0.10:decoder-video/mpegts, systemstream=(boolean)true;0.10:decoder-audio/x-wav;0.10:decoder-audio/x-adpcm, layout=(string)smjpeg;0.10:element-ffdec_roq_dpcm;0.10:element-ffdec_interplay_dpcm;0.10:element-ffdec_zlib;0.10:decoder-video/x-gst_ff-xl;0.10:element-ffdec_qdm2;0.10:element-ffdec_cyuv;0.10:element-ffdec_sp5x;0.10:decoder-video/x-gst_ff-ffvhuff;0.10:element-ffdec_mp3on4;0.10:element-ffdec_shorten;0.10:decoder-application/x-gst_ff-RoQ;0.10:element-ffdemux_yuv4mpegpipe;0.10:decoder-audio/x-adpcm, layout=(string)quicktime;0.10:decoder-video/x-gst_ff-idcinvideo;0.10:decoder-video/x-msmpeg, msmpegversion=(int)42;0.10:decoder-video/x-msmpeg, msmpegversion=(int)43;0.10:decoder-video/x-msmpeg, msmpegversion=(int)41;0.10:element-ffdec_qdraw;0.10:element-postproc_forcequant;0.10:decoder-video/x-msvideocodec, msvideoversion=(int)1;0.10:decoder-video/x-ms-asf;0.10:element-ffdemux_mov_mp4_m4a_3gp_3g2_mj2;0.10:decoder-video/x-indeo, indeoversion=(int)3;0.10:decoder-video/mpeg, mpegversion=(int)[ 1, 2 ], systemstream=(boolean)false;0.10:decoder-video/sp5x;0.10:element-postproc_cubicipoldeint;0.10:element-ffdec_mdec;0.10:element-ffdemux_wsaud;0.10:decoder-video/x-gst_ff-interplayvideo;0.10:element-ffdec_h261;0.10:element-ffdec_h263;0.10:element-ffdec_h264;0.10:decoder-audio/x-adpcm, layout=(string)swf;0.10:element-ffdemux_mxf;0.10:element-ffdec_msrle;0.10:decoder-application/x-gst_ff-avs;0.10:decoder-application/x-gst_ff-smk;0.10:element-postproc_vdeblock;0.10:element-ffdec_wnv1;0.10:decoder-audio/x-adpcm, layout=(string)xa;0.10:decoder-video/x-compressed-yuv;0.10:decoder-video/x-rle, layout=(string)microsoft;0.10:decoder-video/x-apple-video;0.10:element-ffdec_tta;0.10:decoder-video/x-xvid;0.10:decoder-audio/x-gst_ff-sonic;0.10:element-ffdec_g726;0.10:element-ffdec_ffv1;0.10:element-ffdemux_wav;0.10:decoder-video/x-mszh;0.10:element-postproc_ffmpegdeint;0.10:decoder-application/mxf;0.10:decoder-video/x-gst_ff-avs;0.10:decoder-application/x-gst_ff-ea;0.10:element-postproc_linblenddeint;0.10:decoder-application/x-gst_ff-amr;0.10:element-ffdemux_mm;0.10:element-ffdec_adpcm_xa;0.10:decoder-video/x-ffv, ffvversion=(int)1;0.10:decoder-audio/x-gst_ff-mp3on4;0.10:element-ffdec_truespeech;0.10:decoder-audio/x-adpcm, layout=(string)ea;0.10:element-ffdec_png;0.10:decoder-audio/x-shorten;0.10:decoder-video/x-truemotion, trueversion=(int)1;0.10:element-ffdemux_voc;0.10:element-ffdec_vp3;0.10:decoder-audio/x-wma, wmaversion=(int)1, block_align=(int)[ 0, 2147483647 ], bitrate=(int)[ 0, 2147483647 ];0.10:element-ffdec_vp5;0.10:element-ffdec_h263i;0.10:element-ffdec_vp6;0.10:element-ffdemux_tta;0.10:element-postproc_ahdeblock;0.10:element-ffdec_mszh;0.10:decoder-video/x-gst_ff-snow;0.10:element-ffdec_svq1;0.10:element-ffdec_svq3;0.10:element-ffdec_mpeg4;0.10:element-ffdec_cljr;0.10:element-ffdec_rv20;0.10:decoder-application/x-gst_ff-wc3movie;0.10:element-ffdec_truemotion1;0.10:decoder-application/x-gst_ff-mov_mp4_m4a_3gp_3g2_mj2;0.10:element-ffdec_truemotion2;0.10:decoder-video/x-theora;0.10:element-ffdec_zmbv;0.10:element-postproc_mediandeint;0.10:element-ffdemux_asf;0.10:element-ffdemux_ipmovie;0.10:element-ffdec_vp6f;0.10:decoder-video/x-dv, systemstream=(boolean)false;0.10:decoder-image/gif;0.10:element-ffdemux_dv;0.10:decoder-audio/x-gst_ff-ws_snd1;0.10:decoder-video/x-matroska;0.10:element-ffdemux_mpegts;0.10:decoder-application/gxf;0.10:element-ffdemux_ea;0.10:decoder-audio/x-dpcm, layout=(string)xan;0.10:decoder-video/x-intel-h263, variant=(string)intel;0.10:decoder-application/x-gst_ff-nuv;0.10:decoder-audio/x-gst_ff-mp3adu;0.10:element-ffdec_smc;0.10:element-ffdec_camstudio;0.10:element-ffdec_real_144;0.10:element-ffdec_mpegvideo;0.10:element-ffdec_flv;0.10:decoder-video/x-smc;0.10:decoder-video/x-divx, divxversion=(int)3;0.10:decoder-video/x-ultimotion;0.10:element-ffdec_fraps;0.10:element-postproc_dering;0.10:decoder-application/x-gst_ff-mmf;0.10:element-ffdec_indeo3;0.10:element-ffdec_indeo2;0.10:decoder-video/x-ati-vcr, vcrversion=(int)1;0.10:element-ffdec_mace3;0.10:element-ffdec_adpcm_ea;0.10:element-ffdec_mace6;0.10:decoder-application/x-gst_ff-ffm;0.10:element-ffdec_adpcm_ms;0.10:element-ffdec_adpcm_ima_wav;0.10:decoder-audio/x-mace, maceversion=(int)3;0.10:element-ffdec_vc1;0.10:decoder-audio/x-mace, maceversion=(int)6;0.10:decoder-video/x-gst_ff-flic;0.10:element-ffdemux_swf;0.10:decoder-video/x-gst_ff-camstudio;0.10:element-ffdec_bmp;0.10:element-ffvideoscale;0.10:decoder-audio/x-pn-realaudio, raversion=(int)2;0.10:decoder-video/x-3ivx;0.10:decoder-video/x-msvideo;0.10:decoder-audio/x-pn-realaudio, raversion=(int)1;0.10:decoder-video/x-h264;0.10:decoder-application/x-gst_ff-mm;0.10:element-ffdemux_matroska;0.10:decoder-audio/x-aiff;0.10:decoder-audio/x-wma, wmaversion=(int)2, block_align=(int)[ 0, 2147483647 ], bitrate=(int)[ 0, 2147483647 ];0.10:decoder-video/x-h261;0.10:decoder-audio/x-pn-realaudio, raversion=(int)8;0.10:element-ffdec_cavs;0.10:element-ffdemux_sol;0.10:decoder-video/x-huffyuv;0.10:decoder-audio/x-dpcm, layout=(string)sol;0.10:decoder-image/png;0.10:element-ffdec_mjpeg;0.10:element-ffdemux_nsv;0.10:element-ffdec_vmdaudio;0.10:decoder-audio/x-adpcm, layout=(string)adx;0.10:decoder-audio/x-adpcm, layout=(string)g726;0.10:decoder-video/x-gst_ff-vmdvideo;0.10:element-ffdec_cook;0.10:element-ffdec_camtasia;0.10:element-ffdemux_ffm;0.10:decoder-video/x-indeo, indeoversion=(int)2;0.10:element-postproc_x1hdeblock;0.10:element-ffdemux_vmd;0.10:decoder-video/x-flash-screen;0.10:element-ffdemux_nut;0.10:element-ffdec_msmpeg4;0.10:element-ffdemux_nuv;0.10:element-ffdec_adpcm_4xm;0.10:decoder-application/x-gst_ff-ipmovie;0.10:element-ffdec_wmv2;0.10:element-ffdec_wmv3;0.10:decoder-audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ];0.10:decoder-video/x-rle, layout=(string)quicktime;0.10:decoder-video/x-gst_ff-zmbv;0.10:decoder-audio/x-flac;0.10:decoder-video/x-vp6-flash;0.10:decoder-audio/x-gst_ff-truespeech;0.10:element-ffdec_vqavideo;0.10:element-ffdemux_4xm;0.10:element-ffdemux_mpeg;0.10:decoder-video/x-gst_ff-aasc;0.10:element-ffdec_cinepak;0.10:element-ffdec_avs;0.10:element-ffdec_sonic;0.10:element-ffdec_ultimotion;0.10:decoder-application/x-gst_ff-film_cpk;0.10:decoder-video/mpeg, mpegversion=(int)4, systemstream=(boolean)false;0.10:element-ffdec_asv2;0.10:element-ffdemux_avs;0.10:decoder-video/x-qdrw;0.10:element-ffdemux_flic;0.10:element-ffdec_ws_snd1;0.10:decoder-video/x-divx, divxversion=(int)[ 4, 5 ];0.10:element-postproc_lowpass5;0.10:decoder-video/x-xan, wcversion=(int)3;0.10:element-ffdemux_avi;0.10:decoder-video/x-truemotion, trueversion=(int)2;0.10:element-ffdec_8bps;0.10:element-ffdemux_daud;0.10:element-postproc_tmpnoise;0.10:decoder-video/x-camtasia;0.10:element-ffdec_idcinvideo;0.10:element-ffdeinterlace;0.10:element-ffdec_mmvideo;0.10:element-ffdec_adpcm_ima_dk3;0.10:decoder-video/x-gst_ff-mdec;0.10:decoder-video/x-wmv, wmvversion=(int)3;0.10:decoder-video/x-wmv, wmvversion=(int)2;0.10:decoder-video/x-wmv, wmvversion=(int)1;0.10:decoder-video/x-h263, variant=(string)itu;0.10:element-ffdec_msmpeg4v1;0.10:decoder-video/x-pn-realvideo, systemstream=(boolean)false, rmversion=(int)2;0.10:decoder-video/x-pn-realvideo, systemstream=(boolean)false, rmversion=(int)1;0.10:decoder-video/x-gst_ff-vqavideo;0.10:element-ffdec_adpcm_yamaha;0.10:element-ffdec_alac;0.10:decoder-video/x-gst_ff-8bps;0.10:element-ffdec_adpcm_ima_ws;0.10:element-ffdec_mpeg2video;0.10:decoder-audio/x-adpcm, layout=(string)sbpro4;0.10:element-ffdec_flic;0.10:decoder-video/x-gst_ff-mmvideo;0.10:decoder-application/x-gst_ff-voc;0.10:decoder-audio/x-adpcm, layout=(string)sbpro3;0.10:decoder-audio/x-adpcm, layout=(string)sbpro2;0.10:decoder-application/x-gst_ff-ingenient;0.10:element-ffdec_flac;0.10:element-ffdec_real_288;0.10:element-ffdemux_psxstr;0.10:element-ffdec_4xm;0.10:element-ffdec_xan_dpcm;0.10:element-ffdemux_mp3;0.10:element-ffdec_roqvideo;0.10:element-ffdec_aasc;0.10:element-ffdemux_film_cpk;0.10:element-ffdec_msvideo1;0.10:decoder-video/x-flv;0.10:decoder-video/x-fli;0.10:decoder-video/x-gst_ff-wnv1;0.10:element-ffdec_vmdvideo;0.10:decoder-audio/x-adpcm, layout=(string)westwood;0.10:element-ffdemux_wsvqa;0.10:element-ffdemux_mmf;0.10:element-ffdec_xl;0.10:element-ffdec_rv10;0.10:decoder-video/x-svq, svqversion=(int)3;0.10:element-ffdec_theora;0.10:decoder-video/x-svq, svqversion=(int)1;0.10:element-ffdec_mp3;0.10:element-ffdemux_rm;0.10:element-ffdec_adpcm_ima_dk4;0.10:element-ffdemux_smk;0.10:decoder-audio/x-adpcm, layout=(string)dvi;0.10:element-ffdec_adpcm_ima_qt;0.10:decoder-video/x-flash-video, flvversion=(int)1;0.10:decoder-image/jpeg;0.10:element-ffdec_adpcm_ima_smjpeg;0.10:decoder-video/x-gst_ff-roqvideo;0.10:decoder-application/x-gst_ff-wsaud;0.10:element-ffdec_adpcm_ct;0.10:element-ffdec_msmpeg4v2;0.10:element-ffdec_interplayvideo;0.10:element-ffdec_wmav2;0.10:element-ffdemux_au;0.10:decoder-application/x-gst_ff-idcin;0.10:element-ffdec_wmav1;0.10:element-ffdemux_idcin;0.10:decoder-application/x-gst_ff-wsvqa;0.10:decoder-audio/x-dpcm, layout=(string)interplay;0.10:element-ffdec_adpcm_swf;0.10:element-ffdec_flashsv;0.10:decoder-video/mpeg, systemstream=(boolean)true
+diff -Naur gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-fluendo-mp3.desktop gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-fluendo-mp3.desktop
+--- gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-fluendo-mp3.desktop	2008-06-13 17:37:18.000000000 +0200
++++ gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-fluendo-mp3.desktop	1970-01-01 01:00:00.000000000 +0100
+@@ -1,11 +0,0 @@
+-[Desktop Entry]
+-Comment=Codecs to play MP3 Files
+-Name=GStreamer Fluendo MP3 Plugin
+-Encoding=UTF-8
+-Terminal=false
+-Type=Application
+-Categories=GNOME;Application;Multimedia;AudioVideo;
+-X-AppInstall-Package=gstreamer0.10-fluendo-mp3
+-X-AppInstall-Popcon=0
+-X-AppInstall-Section=main
+-X-AppInstall-Codecs=0.10:element-flump3dec;0.10:decoder-audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ]
+diff -Naur gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-schoedinger.desktop gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-schoedinger.desktop
+--- gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-schoedinger.desktop	2008-06-13 17:37:18.000000000 +0200
++++ gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-schoedinger.desktop	1970-01-01 01:00:00.000000000 +0100
+@@ -1,11 +0,0 @@
+-[Desktop Entry]
+-Comment=Codecs to play Dirac video streams
+-Name=GStreamer Dirac video plugin
+-Encoding=UTF-8
+-Terminal=false
+-Type=Application
+-Categories=GNOME;Application;Multimedia;AudioVideo;
+-X-AppInstall-Package=gstreamer0.10-schroedinger
+-X-AppInstall-Popcon=0
+-X-AppInstall-Section=main
+-X-AppInstall-Codecs=0.10:element-schrotoy;0.10:encoder-video/x-dirac;0.10:decoder-video/x-dirac;0.10:element-schrodec;0.10:element-schroenc;0.10:element-schroparse
+diff -Naur gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-ugly.desktop gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-ugly.desktop
+--- gnome-app-install-0.5.5.1.old/test/data/desktop/gstreamer-ugly.desktop	2008-06-13 17:37:18.000000000 +0200
++++ gnome-app-install-0.5.5.1/test/data/desktop/gstreamer-ugly.desktop	1970-01-01 01:00:00.000000000 +0100
+@@ -1,11 +0,0 @@
+-[Desktop Entry]
+-Comment=Codecs to play mp3, sid, mpeg1, mpeg2, AC-3, DVD (without encryption)
+-Name=GStreamer extra plugins
+-Encoding=UTF-8
+-Terminal=false
+-Type=Application
+-Categories=GNOME;Application;Multimedia;AudioVideo
+-X-AppInstall-Package=gstreamer0.10-plugins-ugly
+-X-AppInstall-Popcon=233
+-X-AppInstall-Section=main
+-X-AppInstall-Codecs=0.10:element-mpegdemux;0.10:decoder-video/x-dvd-subpicture;0.10:encoder-application/x-id3;0.10:element-dvdlpcmdec;0.10:element-asfdemux;0.10:decoder-video/x-ms-asf;0.10:decoder-video/mpeg, mpegversion=(int)[ 1, 2 ], systemstream=(boolean)false;0.10:element-rdtdepay;0.10:element-ac3iec958;0.10:element-a52dec;0.10:decoder-audio/x-private1-lpcm;0.10:element-mpegparse;0.10:decoder-audio/x-private1-ac3;0.10:encoder-audio/x-iec958;0.10:decoder-video/mpeg, mpegversion=(int){ 1, 2 }, systemstream=(boolean)true;0.10:decoder-audio/x-ac3;0.10:element-dvddemux;0.10:encoder-audio/x-raw-int, endianness=(int)4321, signed=(boolean)true;0.10:decoder-audio/x-lpcm, dynamic_range=(int)[ 0, 255 ], emphasis=(boolean){ true, false }, mute=(boolean){ true, false };0.10:decoder-audio/mpeg, mpegversion=(int)1;0.10:element-mad;0.10:decoder-application/vnd.rn-realmedia;0.10:element-mp3parse;0.10:element-mpeg2dec;0.10:decoder-video/mpeg, mpegversion=(int)2, systemstream=(boolean)true;0.10:decoder-audio/ac3;0.10:element-id3mux;0.10:urisource-dvd;0.10:decoder-audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ];0.10:decoder-video/mpeg, mpegversion=(int)[ 1, 2 ], systemstream=(boolean)true;0.10:element-dvdsubdec;0.10:element-dvdreadsrc;0.10:decoder-application/x-rdt, media=(string)application, encoding-name=(string)x-real-rdt;0.10:element-rmdemux
+diff -Naur gnome-app-install-0.5.5.1.old/test/testCodecSearch.py gnome-app-install-0.5.5.1/test/testCodecSearch.py
+--- gnome-app-install-0.5.5.1.old/test/testCodecSearch.py	2008-06-13 17:37:18.000000000 +0200
++++ gnome-app-install-0.5.5.1/test/testCodecSearch.py	1970-01-01 01:00:00.000000000 +0100
+@@ -1,49 +0,0 @@
+-#!/usr/bin/python
+-
+-import sys
+-sys.path.insert(0, '../')
+-
+-import gobject
+-import gtk
+-import unittest
+-from AppInstall.activation import *
+-from AppInstall.AppInstall import AppInstall
+-
+-class FakeOptions(object):
+-    def __init__(self):
+-        self.datadir = "data/"
+-        self.desktopdir = "test/data/desktop"
+-        self.cachedir = "test/data/cache"
+-        self.transient_for = None
+-        self.addon_cd = None
+-        self.mime_type = "text/plain"
+-        self.test_mode = True
+-
+-class TestCodecSearch(unittest.TestCase):
+-    def setUp(self):
+-        options = FakeOptions()
+-        args = ['gstreamer|0.10|<unknown>|MPEG-1 Layer 3 (MP3) decoder|'
+-                'decoder-audio/mpeg, mpegversion=(int)1, layer=(int)3']
+-        #args = ['gstreamer|0.10|<unknown>|Flash Video decoder|'
+-        #       'decoder-video/x-flash-video, flvversion=(int)1']
+-        style = CodecSearchActivationStyle(options, args)
+-        style.isInstallerOnly = False
+-        style._parseArgs()
+-        self.app = AppInstall(options, style)
+-
+-    def testHasItems(self):
+-        model = self.app.menu.treeview_packages.get_model()
+-        self.assert_(len(model) > 0,
+-                     "no codecs found")
+-
+-    def testRun(self):
+-        gobject.timeout_add(100, gtk.main_quit)
+-        self.app.run()
+-
+-    def tearDown(self):
+-        self.app.window_main.destroy()
+-        del(self.app)
+-
+-if __name__ == '__main__':
+-    unittest.main()
+-
+diff -Naur gnome-app-install-0.5.5.1.old/util/getMenuData.py gnome-app-install-0.5.5.1/util/getMenuData.py
+--- gnome-app-install-0.5.5.1.old/util/getMenuData.py	2008-06-13 17:37:18.000000000 +0200
++++ gnome-app-install-0.5.5.1/util/getMenuData.py	2008-08-11 19:50:08.000000000 +0200
+@@ -46,7 +46,6 @@
+ blacklist_desktop = "blacklist_desktop.cfg"
+ renamecfg = "rename.cfg"
+ annotatecfg = "annotate.cfg"
+-codecs_foradditional = { }
+ 
+ # packages we have already seen 
+ pkgs_seen = set()
+@@ -164,11 +163,9 @@
+     return None
+   return file
+ 
+-def writeMetaData(outfile, pkgname, section, codecs):
++def writeMetaData(outfile, pkgname, section):
+   outfile.write("X-AppInstall-Package=%s\n" % pkgname)
+   outfile.write("X-AppInstall-Section=%s\n" % section)
+-  if codecs:
+-    outfile.write("X-AppInstall-Codecs=%s\n" % ';'.join(codecs))
+   outfile.write("\n")
+   return True
+ 
+@@ -198,22 +195,6 @@
+     logging.error("Choked on tarball. Package: '%s'" % package)
+     return # too many bad debs. take this line out if you fix that
+ 
+-  # and look for any codec support list
+-  codecs = set()
+-  for filename in dataFile.getnames():
+-    if not (fnmatch.fnmatch(filename, 'usr/share/gstreamer-*/plugin-info/*.supported') or fnmatch.fnmatch(filename, './usr/share/gstreamer-*/plugin-info/*.supported')): continue
+-    codecsfile = tarfile_extract_orlog(dataFile,filename);
+-    if not codecsfile:
+-      continue
+-    logging.debug("reading codec list file %s" % filename)
+-    for line in codecsfile.readlines():
+-      line = string.strip(line)
+-      if ';' in line:
+-        logging.warning("Codec string '%s' from '%s' in '%s' contains ';'" %
+-                        (line, filename, dataFile.name))
+-        continue
+-      codecs.add(line)
+-
+   # look at the desktop files
+   for path in desktopPaths:
+     desktopfile = tarfile_extract_orlog(dataFile, path)
+@@ -257,13 +238,13 @@
+         line += "\n"
+       # if a new section starts, write the metadata now
+       if desktop_section == "[Desktop Entry]" and not written:
+-        writeMetaData(outfile, pkgname, section, codecs)
++        writeMetaData(outfile, pkgname, section)
+         written=True
+       outfile.write(line)
+       if line.startswith("["):
+         desktop_section = line.strip()
+     if not written:
+-      writeMetaData(outfile, pkgname, section, codecs)
++      writeMetaData(outfile, pkgname, section)
+       
+     desktopfile_name = os.path.basename(desktopfile.name)
+     if desktop_annotate.has_key(desktopfile_name):
+@@ -278,10 +259,6 @@
+     # close the desktop file
+     desktopfile.close()
+ 
+-  if codecs:
+-    try: codecs_foradditional[pkgname] &= codecs
+-    except KeyError: codecs_foradditional[pkgname] = codecs
+-
+ def processDeb(debPath, pkgname, section,
+                outputdir=os.path.join(os.getcwd(), "menu-data")):
+   """ extract the desktop file and the icons from a deb """
+@@ -471,40 +448,6 @@
+         else:
+           logging.error("can't find desktopfile for: %s (%s)" % (pkg,dfile))
+ 
+-  # edit the codec lists into the entries in menu-data-additional
+-  logging.debug("adding codecs: '%s'", codecs_foradditional)
+-  seen = set()
+-  for filename in glob.glob('menu-data-additional/*.desktop'):
+-    lines = []
+-    file = open(filename)
+-    pkgname = None
+-    for line in file:
+-      line = string.strip(line)
+-      if re.match("^X-AppInstall-Codecs\s*=", line): continue
+-      lines.append(line)
+-      m = re.match("^X-AppInstall-Package\s*=\s*(\S+)\s*$", line)
+-      if m: pkgname = m.group(1)
+-    file.close()
+-    if not pkgname:
+-      logging.warning("file '%s' doesn't specify an X-AppInstall-Package" %
+-                      filename)
+-      continue
+-    try:
+-      codecs = codecs_foradditional[pkgname]
+-    except KeyError:
+-      continue
+-    logging.debug("adding codec info to '%s' " % pkgname)
+-    lines.append("X-AppInstall-Codecs=%s" % ';'.join(codecs))
+-    seen.add(pkgname)
+-    new_file = open(filename+'.tmp', 'w');
+-    for line in lines: print >>new_file, line
+-    new_file.close()
+-    os.rename(filename+'.tmp', filename)
+-
+-  missing = set(codecs_foradditional.keys())-seen
+-  if len(missing) > 0:
+-    logging.warning("Packages with codecs but no data in menu-data-additonal: %s" % missing)
+-      
+   # be nice, clean-up
+   if tmpdir != None and tmpdir != "":
+     shutil.rmtree(tmpdir)




More information about the pkg-gnome-commits mailing list