Hey Tristan, I've taken the liberty to prepare and upload QuodLibet 2.0 into experimental (adding myself to the package's Uploaders), as I've been poked on numerous occasions about its status. I've used the 7-day delayed queue so as to avoid stepping on anyone's toes. If you have a problem with this, please let me know and I can cancel the upload.
The diff the debian/ directosy for QuodLibet 1.0 -> QuodLibet 2.0 is attached. I may also look into updating Mutagen as it supposedly fixes a critical bug in its FLAC support. Regards, Christine
diff -urN quodlibet-1.0.ds1/debian/changelog quodlibet-2.0/debian/changelog --- quodlibet-1.0.ds1/debian/changelog 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/changelog 2009-01-28 16:02:48.000000000 -0500 @@ -1,11 +1,20 @@ -quodlibet (1.0.ds1-2) unstable; urgency=low +quodlibet (2.0-1) experimental; urgency=low - * Alter README.Debian note so as to avoid mentioning the problematic line of - code. + * Add myself to Uploaders and upload to the 7-day delayed queue. + * New upstream release (closes: #494392). Thanks Bastian Kleineidam + <cal...@debian.org> for his work on packaging it. + * Drop 20-ellipsize-middle.patch and 30-lyricwiki.patch as they are now + upstream. + * Update 40-no-po-update.patch for new build system. + * We no longer need to modify the upstream tarball, drop README.Debian. + * Update to standards-version 3.8.0. + * Use compat level 7. + * Bump depends in debian/control based on the quodlibet website. + * Drop exfalso dependency on quodlibet-plugins. - -- Tristan Seligmann <mithra...@mithrandi.net> Wed, 04 Jun 2008 03:40:37 +0200 + -- Christine Spang <christ...@debian.org> Wed, 28 Jan 2009 16:02:26 -0500 -quodlibet (1.0.ds1-1) unstable; urgency=high +quodlibet (1.0.ds1-1) unstable; urgency=low * Ship modified upstream tarball, removing insulting source code, and put a note in README.Debian to explain why we're doing this (closes: #477454). diff -urN quodlibet-1.0.ds1/debian/compat quodlibet-2.0/debian/compat --- quodlibet-1.0.ds1/debian/compat 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/compat 2009-01-11 11:00:15.000000000 -0500 @@ -1 +1 @@ -5 +7 diff -urN quodlibet-1.0.ds1/debian/control quodlibet-2.0/debian/control --- quodlibet-1.0.ds1/debian/control 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/control 2009-01-28 16:02:24.000000000 -0500 @@ -2,19 +2,20 @@ Section: sound Priority: optional Maintainer: Tristan Seligmann <mithra...@mithrandi.net> +Uploaders: Christine Spang <christ...@debian.org> Build-Depends: debhelper (>= 5.0.37.3), python-dev, cdbs (>= 0.4.42), - python-gtk2-dev (>= 2.8), pkg-config, libgtk2.0-dev, intltool, + python-gtk2-dev (>= 2.12), pkg-config, libgtk2.0-dev, intltool, python-central (>= 0.5.2) -Standards-Version: 3.7.3 +Standards-Version: 3.8.0 XS-Python-Version: current, >= 2.4 Vcs-Darcs: http://slipgate.za.net/~mithrandi/darcs/debian/quodlibet/quodlibet/ Homepage: http://www.sacredchao.net/quodlibet/ Package: exfalso Architecture: all -Depends: ${python:Depends}, python-mutagen (>= 1.8), - python-gtk2 (>= 2.8), libgtk2.0-0 (>= 2.8.8-1), python-pyvorbis, libmpcdec3 -Suggests: libmp4v2-0, python-ctypes, libmodplug0c2, quodlibet-plugins +Depends: ${python:Depends}, python-mutagen (>= 1.14), + python-gtk2 (>= 2.10), libgtk2.0-0 (>= 2.10), python-pyvorbis, libmpcdec3 +Suggests: libmp4v2-0, python-ctypes, libmodplug0c2 Conflicts: quodlibet-plugins (<< 20060401), quodlibet (<< 0.18) XB-Python-Version: ${python:Versions} Description: audio tag editor for GTK+ @@ -31,7 +32,7 @@ Package: quodlibet Architecture: all Depends: ${python:Depends}, exfalso (= ${source:Version}), - gstreamer0.10-plugins-base (>= 0.10.3), python-gst0.10, + gstreamer0.10-plugins-base (>= 0.10.3), python-gst0.10 (>= 0.10.1), gstreamer0.10-plugins-good, gstreamer0.10-plugins-ugly Recommends: quodlibet-ext (>= ${source:Version}), gstreamer0.10-alsa, gstreamer0.10-gnomevfs, python-feedparser @@ -48,7 +49,7 @@ Package: quodlibet-ext Architecture: any -Depends: ${shlibs:Depends}, quodlibet (= ${source:Version}), quodlibet-plugins +Depends: ${shlibs:Depends}, quodlibet (= ${source:Version}), quodlibet-plugins (>= 20090127) XB-Python-Version: ${python:Versions} Description: extensions for the Quod Libet audio player This package contains architecture-dependent extensions to Quod diff -urN quodlibet-1.0.ds1/debian/exfalso.dirs quodlibet-2.0/debian/exfalso.dirs --- quodlibet-1.0.ds1/debian/exfalso.dirs 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/exfalso.dirs 2009-01-28 15:56:46.000000000 -0500 @@ -1,4 +1,4 @@ usr/bin usr/share usr/share/man/man1 -usr/share/quodlibet +usr/share/pixmaps diff -urN quodlibet-1.0.ds1/debian/exfalso.install quodlibet-2.0/debian/exfalso.install --- quodlibet-1.0.ds1/debian/exfalso.install 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/exfalso.install 2009-01-11 11:35:17.000000000 -0500 @@ -1,6 +1,5 @@ usr/bin/exfalso -usr/share/quodlibet/* +usr/lib usr/share/man/man1/exfalso.1 -usr/share/pixmaps/exfalso.png usr/share/applications/exfalso.desktop usr/share/locale diff -urN quodlibet-1.0.ds1/debian/patches/20-ellipsize-middle.patch quodlibet-2.0/debian/patches/20-ellipsize-middle.patch --- quodlibet-1.0.ds1/debian/patches/20-ellipsize-middle.patch 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/patches/20-ellipsize-middle.patch 1969-12-31 19:00:00.000000000 -0500 @@ -1,12 +0,0 @@ -diff -Nur quodlibet-1.0/qltk/info.py quodlibet-1.0.new/qltk/info.py ---- quodlibet-1.0/qltk/info.py 2006-08-18 01:26:50.000000000 +0200 -+++ quodlibet-1.0.new/qltk/info.py 2008-01-26 02:19:32.350201268 +0200 -@@ -36,7 +36,7 @@ - - def __init__(self, library, player): - super(SongInfo, self).__init__() -- self.set_ellipsize(pango.ELLIPSIZE_END) -+ self.set_ellipsize(pango.ELLIPSIZE_MIDDLE) - self.set_selectable(True) - self.set_alignment(0.0, 0.0) - library.connect_object('changed', self.__check_change, player) diff -urN quodlibet-1.0.ds1/debian/patches/20-install-paths.patch quodlibet-2.0/debian/patches/20-install-paths.patch --- quodlibet-1.0.ds1/debian/patches/20-install-paths.patch 1969-12-31 19:00:00.000000000 -0500 +++ quodlibet-2.0/debian/patches/20-install-paths.patch 2009-01-11 11:00:15.000000000 -0500 @@ -0,0 +1,33 @@ +--- quodlibet-2.0.orig/gdist/po.py ++++ quodlibet-2.0/gdist/po.py +@@ -83,7 +83,7 @@ + self.set_undefined_options('build', ('build_base', 'build_base')) + self.set_undefined_options( + 'install', +- ('install_base', 'install_base'), ++ ('install_data', 'install_base'), + ('skip_build', 'skip_build')) + + def run(self): +--- quodlibet-2.0.orig/gdist/shortcuts.py ++++ quodlibet-2.0/gdist/shortcuts.py +@@ -59,7 +59,7 @@ + self.set_undefined_options('build', ('build_base', 'build_base')) + self.set_undefined_options( + 'install', +- ('install_base', 'prefix'), ++ ('install_data', 'prefix'), + ('skip_build', 'skip_build')) + + self.set_undefined_options( +--- quodlibet-2.0.orig/gdist/man.py ++++ quodlibet-2.0/gdist/man.py +@@ -27,7 +27,7 @@ + + def finalize_options(self): + GCommand.finalize_options(self) +- self.set_undefined_options('install', ('install_base', 'prefix')) ++ self.set_undefined_options('install', ('install_data', 'prefix')) + self.man_pages = self.distribution.man_pages + for man_page in self.man_pages: + if not man_page[-1].isdigit(): diff -urN quodlibet-1.0.ds1/debian/patches/30-lyricwiki.patch quodlibet-2.0/debian/patches/30-lyricwiki.patch --- quodlibet-1.0.ds1/debian/patches/30-lyricwiki.patch 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/patches/30-lyricwiki.patch 1969-12-31 19:00:00.000000000 -0500 @@ -1,107 +0,0 @@ -diff -Nur quodlibet-1.0/qltk/lyrics.py quodlibet-1.0.new/qltk/lyrics.py ---- quodlibet-1.0/qltk/lyrics.py 2006-07-10 01:30:12.000000000 +0200 -+++ quodlibet-1.0.new/qltk/lyrics.py 2008-01-26 02:28:08.272559496 +0200 -@@ -22,8 +22,6 @@ - import qltk - import util - --from xml.dom import minidom -- - class LyricsPane(gtk.VBox): - def __init__(self, song): - super(LyricsPane, self).__init__(spacing=12) -@@ -50,7 +48,7 @@ - self.pack_start(sw, expand=True) - - self.pack_start(gtk.Label(_("Lyrics provided by %s.") %( -- "http://www.leoslyrics.com")), expand=False) -+ "http://lyricwiki.org")), expand=False) - - bbox = gtk.HButtonBox() - bbox.pack_start(save) -@@ -74,11 +72,7 @@ - title = song.comma('title').encode('utf-8') - album = song.comma('album').encode('utf-8') - -- util.website( -- "http://leoslyrics.com/submit.php?song=%s&artist=%s&album=%s" % ( -- urllib.quote(title), -- urllib.quote(artist), -- urllib.quote(album))) -+ util.website("http://lyricwiki.org/%s" % (urllib.quote(artist))) - add.set_sensitive(False) - - def __refresh(self, refresh, add, buffer, song): -@@ -95,11 +89,11 @@ - - try: - sock = urllib.urlopen( -- "http://api.leoslyrics.com/api_search.php?auth=" -- "QuodLibet&artist=%s&songtitle=%s"%( -+ "http://lyricwiki.org/api.php?" -+ "client=QuodLibet&func=getSong&artist=%s&song=%s&fmt=text"%( - urllib.quote(artist.encode('utf-8')), - urllib.quote(title.encode('utf-8')))) -- xmldoc = minidom.parse(sock).documentElement -+ text = sock.read() - except Exception, err: - try: err = err.strerror.decode(const.ENCODING, 'replace') - except: err = _("Unable to download lyrics.") -@@ -107,51 +101,17 @@ - return - - sock.close() -- result_code = xmldoc.getElementsByTagName( -- 'response')[0].getAttribute('code') -- -- if result_code == '0': # This is success even if there are no matches. -- # Grab the first 10 results. -- matches = xmldoc.getElementsByTagName('result')[:10] -- hids = map(lambda x: x.getAttribute('hid'), matches) -- exacts = map(lambda x: x.getAttribute('exactMatch'), matches) -- -- if len(hids) == 0: -- gobject.idle_add( -- buffer.set_text, _("No lyrics found for this song.")) -- add.set_sensitive(True) -- return -- -- songlist = zip(hids, exacts) -- -- xmldoc.unlink() -- -- # Show the first match -- try: -- sock = urllib.urlopen( -- "http://api.leoslyrics.com/api_lyrics.php?auth=" -- "QuodLibet&hid=%s"%( -- urllib.quote(songlist[0][0].encode('utf-8')))) -- xmldoc = minidom.parse(sock).documentElement -- except Exception, err: -- try: err = err.strerror.decode(const.ENCODING, 'replace') -- except: err = _("Unable to download lyrics.") -- gobject.idle_add(buffer.set_text, err) -- return -- sock.close() -- -- text = xmldoc.getElementsByTagName('text')[0].firstChild.nodeValue -- xmldoc.unlink() - -+ if text == 'Not found': -+ gobject.idle_add( -+ buffer.set_text, _("No lyrics found for this song.")) -+ add.set_sensitive(True) -+ return -+ else: - gobject.idle_add(buffer.set_text, text) - gobject.idle_add(refresh.set_sensitive, True) - gobject.idle_add(add.set_sensitive, songlist[0][1] == 'false') - -- else: -- gobject.idle_add(buffer.set_text, _("Unable to download lyrics.")) -- xmldoc.unlink() -- return -- - def __save(self, save, lyricname, buffer, delete): - try: os.makedirs(os.path.dirname(lyricname)) - except EnvironmentError, err: pass diff -urN quodlibet-1.0.ds1/debian/patches/40-no-po-update.patch quodlibet-2.0/debian/patches/40-no-po-update.patch --- quodlibet-1.0.ds1/debian/patches/40-no-po-update.patch 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/patches/40-no-po-update.patch 2009-01-11 11:00:15.000000000 -0500 @@ -1,13 +1,13 @@ -diff -Nur -x '*.orig' -x '*~' trunk/po/Makefile trunk.new/po/Makefile ---- trunk/po/Makefile 2008-06-03 21:55:28.000000000 +0200 -+++ trunk.new/po/Makefile 2008-06-03 21:56:19.112752976 +0200 -@@ -12,9 +12,6 @@ - quodlibet.pot: POTFILES.in ../*.py ../formats/*.py ../browsers/*.py ../qltk/*.py ../plugins/*.py tag-names.py ../util/*.py ../library/*.py ../devices/*.py - intltool-update --pot --gettext-package=$(NAME) - --%.po: quodlibet.pot -- intltool-update --dist --gettext-package=$(NAME) $* -- - %.mo: %.po - msgfmt -o $@ $< - +--- quodlibet-2.0/gdist/po.py 2009-01-11 10:40:53.000000000 -0500 ++++ quodlibet-2.0.new/gdist/po.py 2009-01-11 10:47:13.000000000 -0500 +@@ -52,10 +52,6 @@ + os.chdir(self.po_directory) + self.spawn(["intltool-update", "--pot", + "--gettext-package", self.po_package]) +- for po in self.po_files: +- self.spawn(["intltool-update", "--dist", +- "--gettext-package", self.po_package, +- os.path.basename(po[:-3])]) + os.chdir(oldpath) + for po in self.po_files: + language = os.path.basename(po).split(".")[0] diff -urN quodlibet-1.0.ds1/debian/quodlibet.dirs quodlibet-2.0/debian/quodlibet.dirs --- quodlibet-1.0.ds1/debian/quodlibet.dirs 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/quodlibet.dirs 2009-01-28 15:56:30.000000000 -0500 @@ -1,5 +1,4 @@ usr/bin usr/share usr/share/pixmaps -usr/share/quodlibet usr/share/man/man1 diff -urN quodlibet-1.0.ds1/debian/quodlibet-ext.install quodlibet-2.0/debian/quodlibet-ext.install --- quodlibet-1.0.ds1/debian/quodlibet-ext.install 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/quodlibet-ext.install 2009-01-11 11:00:15.000000000 -0500 @@ -1 +1 @@ -usr/lib/quodlibet/*.so +usr/lib/python2.5/site-packages/quodlibet/*.so diff -urN quodlibet-1.0.ds1/debian/quodlibet.install quodlibet-2.0/debian/quodlibet.install --- quodlibet-1.0.ds1/debian/quodlibet.install 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/quodlibet.install 2009-01-11 11:34:59.000000000 -0500 @@ -1,6 +1,3 @@ -usr/share/quodlibet/quodlibet.py -usr/share/quodlibet/quodlibet.svg -usr/share/pixmaps/quodlibet.png usr/share/man/man1/quodlibet.1 usr/share/applications/quodlibet.desktop usr/bin/quodlibet diff -urN quodlibet-1.0.ds1/debian/quodlibet.README.Debian quodlibet-2.0/debian/quodlibet.README.Debian --- quodlibet-1.0.ds1/debian/quodlibet.README.Debian 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/quodlibet.README.Debian 1969-12-31 19:00:00.000000000 -0500 @@ -1,3 +0,0 @@ -The upstream tarball for quodlibet in Debian does not match the one distributed -by upstream, as a minor change has been made to it. The only difference between -the two should be a single line in player.py. diff -urN quodlibet-1.0.ds1/debian/rules quodlibet-2.0/debian/rules --- quodlibet-1.0.ds1/debian/rules 2009-01-27 14:53:12.000000000 -0500 +++ quodlibet-2.0/debian/rules 2009-01-28 15:57:56.000000000 -0500 @@ -1,29 +1,23 @@ #!/usr/bin/make -f -include /usr/share/cdbs/1/rules/debhelper.mk -include /usr/share/cdbs/1/rules/simple-patchsys.mk -include /usr/share/cdbs/1/class/makefile.mk - -DEB_MAKE_CLEAN_TARGET = superclean -DEB_MAKE_BUILD_TARGET = extensions -DEB_MAKE_INSTALL_TARGET = install DESTDIR=$(DEB_DESTDIR) PREFIX=/usr -DEB_MAKE_CHECK_TARGET = - +DEB_PYTHON_SYSTEM = pycentral DEB_INSTALL_DOCS_ALL = DEB_INSTALL_CHANGELOGS_ALL = NEWS - DEB_DH_INSTALL_SOURCEDIR = $(DEB_DESTDIR) -binary-install/quodlibet:: - dh_pycentral -p$(cdbs_curpkg) +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/python-distutils.mk +include /usr/share/cdbs/1/rules/simple-patchsys.mk -binary-install/exfalso:: - rm debian/exfalso/usr/share/quodlibet/quodlibet.py - rm debian/exfalso/usr/share/quodlibet/quodlibet.svg - dh_pycentral -p$(cdbs_curpkg) +DEFAULT_PYTHON = `pyversions -d` +IMAGES_DIR = debian/tmp/usr/lib/${DEFAULT_PYTHON}/site-packages/quodlibet/images +EXFALSO_ICON = ${IMAGES_DIR}/exfalso.png +QUODLIBET_ICON = ${IMAGES_DIR}/quodlibet.png +PIXMAPS_DIR = usr/share/pixmaps -binary-install/quodlibet-ext:: - dh_pycentral -p$(cdbs_curpkg) +binary-install/exfalso:: + cp ${EXFALSO_ICON} debian/exfalso/${PIXMAPS_DIR} + rm debian/exfalso/usr/lib/${DEFAULT_PYTHON}/site-packages/quodlibet/*.so -clean:: - -rm -f po/quodlibet.pot +binary-install/quodlibet:: + cp ${QUODLIBET_ICON} debian/quodlibet/${PIXMAPS_DIR}