[Python-apps-team] Bug#857495: kupfer: Update debian package (proposed)

Ulrik ulrik.sverdrup at gmail.com
Sat Mar 11 21:42:05 UTC 2017


Package: kupfer
Version: 317-1
Severity: wishlist
Usertags: python3-patch-suggested

Dear Maintainer,

I've attempted to update the debian packaging to the new version which uses
Gtk 3 and Python 3.

Notable decisions:

1. Use upstream's version number as it is (317)
2. Remove the binary dance from the packaging and let it install binaries
   directly into /usr/bin (they are both shell scripts)

Feel free to remodel the changes as you wish and update the changelog
accordingly.

Patch: https://gist.github.com/c63e799a7e34bb6306b17d458df5e333

uscan should be able to download the tarball for you with the patch applied.
New releases are listed at https://github.com/kupferlauncher/kupfer/releases
in the current rendition of the project.

Best,
Ulrik

-- System Information:
Debian Release: 9.0
  APT prefers testing
  APT policy: (900, 'testing'), (300, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.9.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=sv_SE.utf8, LC_CTYPE=sv_SE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages kupfer depends on:
ii  dbus                  1.10.16-1
ii  gir1.2-keybinder-3.0  0.3.1-1
ii  gir1.2-wnck-3.0       3.20.1-3
ii  python3-dbus          1.2.4-1+b1
ii  python3-gi            3.22.0-2
ii  python3-xdg           0.25-4
pn  python3:any           <none>

kupfer recommends no packages.

kupfer suggests no packages.

-- no debconf information
-------------- next part --------------
Index: debian/changelog
===================================================================
--- debian/changelog	(revision 13918)
+++ debian/changelog	(arbetskopia)
@@ -1,3 +1,19 @@
+kupfer (317-1) unstable; urgency=medium
+
+  * New upstream release (Closes: #844153, #787094, #854297, #692351,
+    #778313, #827350)
+    - Use upstream version number
+    - New release uses Python 3 and has many changes. Some plugins are not
+      available in the new version, and existing custom plugins will need to
+      be ported. Some aspects of user configuration don't carry over to the
+      new version.
+  * debian/patches:
+    - Drop all, either integrated upstream or obsolete
+  * debian/watch
+    - Update to point to new github
+
+ -- Ulrik Sverdrup <ulrik.sverdrup at gmail.com>  Sat, 11 Mar 2017 21:20:57 +0100
+
 kupfer (0+v208-6) unstable; urgency=medium
 
   * Team upload.
Index: debian/control
===================================================================
--- debian/control	(revision 13918)
+++ debian/control	(arbetskopia)
@@ -3,15 +3,14 @@
 Priority: optional
 Maintainer: Python Applications Packaging Team <python-apps-team at lists.alioth.debian.org>
 Uploaders: Hugo Lefeuvre <hugo6390 at orange.fr>,
-Build-Depends: debhelper (>= 9)
+Build-Depends: debhelper (>= 9), python3 (>= 3.5)
 Build-Depends-Indep: gettext,
                      gnome-doc-utils,
                      intltool,
-                     python (>= 2.6.6-3~),
-                     python-docutils
-Standards-Version: 3.9.5
-X-Python-Version: >= 2.6
-Homepage: http://engla.github.io/kupfer/
+                     python3-docutils
+Standards-Version: 3.9.8
+X-Python3-Version: >= 3.5
+Homepage: https://kupferlauncher.github.io/
 Vcs-Svn: svn://anonscm.debian.org/python-apps/packages/kupfer/trunk/
 Vcs-Browser: http://anonscm.debian.org/viewvc/python-apps/packages/kupfer/trunk/
 
@@ -18,19 +17,16 @@
 Package: kupfer
 Architecture: all
 Depends: dbus,
-         python-dbus,
-         python-gobject (>= 2.18),
-         python-gtk2 (>= 2.16),
-         python-keybinder,
-         python-xdg,
+         python3-dbus,
+         python3-gi,
+         python3-xdg,
+         python3-dbus,
+         gir1.2-wnck-3.0,
+         gir1.2-keybinder-3.0,
          ${misc:Depends},
-         ${python:Depends}
-Recommends: python-keyring, python-wnck
-Suggests: python-cjson, python-gdata, python-qrencode
-Description: fast and lightweight desktop summoner/launcher
- Kupfer is a summoner/launcher in the style of Quicksilver or GNOME Do. It
- can search and browse your files, launch desired applications and object you
- need in a quicker way.
- .
- Kupfer is written in Python and has a flexible architecture based on plugins
- to extend its features.
+         ${python3:Depends}
+Description: fast keystroke launcher
+ Kupfer is a launcher in the style of Quicksilver or GNOME Do. The most
+ typical use is to find a specific application and launch it.
+ It can be extended with plugins so that the quick-access paradigm can be
+ used with more objects than just applications.
Index: debian/copyright
===================================================================
--- debian/copyright	(revision 13918)
+++ debian/copyright	(arbetskopia)
@@ -1,10 +1,10 @@
 Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 Upstream-Name: kupfer
 Upstream-Contact: Ulrik Sverdrup <ulrik.sverdrup at gmail.com>
-Source: http://engla.github.io/kupfer/
+Source: https://kupferlauncher.github.io/
 
 Files: *
-Copyright: 2007-2010, Ulrik Sverdrup <ulrik.sverdrup at gmail.com>
+Copyright: 2007-2017, Ulrik Sverdrup <ulrik.sverdrup at gmail.com>
 License: GPL-3+
 
 Files: auxdata/kupfer.svg:
@@ -11,29 +11,10 @@
 Copyright: 2010 Nasser Alshammari <designernasser at gmail.com>
 License: GPL-3+
 
-Files: contrib/twitter/*
-Copyright: 2010, Nasser Alshammari <designernasser at gmail.com>
-License: public-domain
+Files: kupfer/plugin/core/*.svg:
+Copyright: GNOME Project http://www.gnome.org
+License: CC-BY-SA-3.0
 
-Files: data/art/*:
-Copyright: 2002-2008, Ulisse Perusin <uli.peru at gmail.com>
-           2002-2008, Riccardo Buzzotta <raozuzu at yahoo.it>
-           2002-2008, Riccardo Buzzotta <raozuzu at yahoo.it>
-           2002-2008, Josef Vyb?ral <cornelius at vybiral.info>
-           2002-2008, Hylke Bons <h.bons at student.rug.nl>
-           2002-2008, Ricardo Gonz?lez <rick at jinlabs.com>
-           2002-2008, Lapo Calamandrei <calamandrei at gmail.com>
-           2002-2008, Rodney Dawes <dobey at novell.com>
-           2002-2008, Luca Ferretti <elle.uca at libero.it>
-           2002-2008, Tuomas Kuosmanen <tigert at gimp.org>
-           2002-2008, Andreas Nilsson <nisses.mail at home.se>
-           2002-2008, Jakub Steiner <jimmac at novell.com>
-License: GPL-2
-
-Files: extras/kupfer_provider.py
-Copyright: 2009, Ulrik Sverdrup <ulrik.sverdrup at gmail.com>
-License: GPL-2+
-
 Files: kupfer/core/relevance.py
 Copyright: 2009, Ulrik Sverdrup <ulrik.sverdrup at gmail.com>
            2008, Christian Hergert <chris at dronelabs.com>
@@ -44,26 +25,10 @@
                  Volker Braun, Jonathon Anderson
 License: GPL-3+
 
-Files: kupfer/plugin/gmail/* kupfer/plugin/google_picasa/*
-Copyright: Unit66
-License: CC-BY-SA-3.0
-
 Files: kupfer/plugin/qsicons/*
 Copyright: Quicksilver Developers
 License: Apache-2.0
 
-Files: kupfer/plugin/vim/vimcon.py
-Copyright: Ali Afshar
-License: MIT
-
-Files: kupfer/dbuscompat.py
-Copyright: 2009, Collabora Ltd.
-License: MIT
-
-Files: kupfer/datatools.py
-Copyright: 2009, Raymond Hettinger
-License: MIT
-
 Files: waf*
 Copyright: 2005-2010, Thomas Nagy
 License: BSD-3
Index: debian/install
===================================================================
--- debian/install	(revision 13918)
+++ debian/install	(arbetskopia)
@@ -1 +0,0 @@
-debian/kupfer.py	usr/share/kupfer
Index: debian/kupfer.py
===================================================================
--- debian/kupfer.py	(revision 13918)
+++ debian/kupfer.py	(nonexistent)
@@ -1,4 +0,0 @@
-#!/usr/bin/python
-
-from kupfer import main
-main.main()
Index: debian/links
===================================================================
--- debian/links	(revision 13918)
+++ debian/links	(arbetskopia)
@@ -1,3 +1 @@
-usr/share/kupfer/kupfer-activate.sh	usr/bin/kupfer
-usr/share/kupfer/kupfer-exec		usr/bin/kupfer-exec
 usr/share/man/man1/kupfer.1.gz		usr/share/man/man1/kupfer-exec.1.gz
Index: debian/menu
===================================================================
--- debian/menu	(revision 13918)
+++ debian/menu	(nonexistent)
@@ -1,2 +0,0 @@
-?package(kupfer):needs="X11" section="Applications/File Management"\
-  title="kupfer" command="/usr/bin/kupfer"
Index: debian/patches/bookmarks-places.sqlite.patch
===================================================================
--- debian/patches/bookmarks-places.sqlite.patch	(revision 13918)
+++ debian/patches/bookmarks-places.sqlite.patch	(nonexistent)
@@ -1,37 +0,0 @@
-From: Ita? BEN YAACOV <candeb at free.fr>
-Subject: Fix the error when reading firefox bookmark files
-   * Read firefox bookmarks from places.sqlite
-
-Bug-Debian: http://bugs.debian.org/749067
-Last-Update: 2014-06-07
-
---- kupfer-0+v208.orig/kupfer/plugin/firefox.py
-+++ kupfer-0+v208/kupfer/plugin/firefox.py
-@@ -65,12 +65,21 @@ class BookmarksSource (AppLeafContentMix
- 			self.output_exc()
- 
- 	def _get_ffx3_bookmarks(self, fpath):
--		"""Parse Firefox' .json bookmarks backups"""
--		from kupfer.plugin import firefox3_support
--		self.output_debug("Parsing", fpath)
--		bookmarks = firefox3_support.get_bookmarks(fpath)
--		for book in bookmarks:
--			yield UrlLeaf(book["uri"], book["title"])
-+		"""Query the firefox places bookmark database"""
-+		fpath = firefox_support.get_firefox_home_file("places.sqlite")
-+		if not (fpath and os.path.isfile(fpath)):
-+			return
-+		try:
-+			self.output_debug("Reading bookmarks from", fpath)
-+			with closing(sqlite3.connect(fpath, timeout=1)) as conn:
-+				c = conn.cursor()
-+				c.execute("""SELECT moz_places.url, moz_bookmarks.title
-+				             FROM moz_places, moz_bookmarks
-+                                             WHERE moz_places.id = moz_bookmarks.fk""")
-+				return [UrlLeaf(url, title) for url, title in c]
-+		except sqlite3.Error:
-+			# Something is wrong with the database
-+			self.output_exc()
- 
- 	def _get_ffx2_bookmarks(self, fpath):
- 		"""Parse Firefox' bookmarks.html"""
Index: debian/patches/dbus.patch
===================================================================
--- debian/patches/dbus.patch	(revision 13918)
+++ debian/patches/dbus.patch	(nonexistent)
@@ -1,17 +0,0 @@
-Description: Fix crash by initializing D-Bus
-Author: Karol B?dkowski
-Forwarded: https://launchpad.net/kupfer/+bug/1038434
-
-Index: kupfer-0+v208/kupfer/ui/listen.py
-===================================================================
---- kupfer-0+v208.orig/kupfer/ui/listen.py	2012-06-01 19:51:14.000000000 +0200
-+++ kupfer-0+v208/kupfer/ui/listen.py	2013-12-19 21:14:05.215868773 +0100
-@@ -11,6 +11,8 @@
- 	import dbus.service
- 	from kupfer.dbuscompat import ExportedGObject
- 
-+	dbus.glib.threads_init()
-+
- # if dbus unavailable print the exception here
- # but further actions (register) will fail without warning
- 	session_bus = dbus.Bus()
Index: debian/patches/help.patch
===================================================================
--- debian/patches/help.patch	(revision 13918)
+++ debian/patches/help.patch	(nonexistent)
@@ -1,16 +0,0 @@
-Description: Workaround missing xml file
-Author: Luca Falavigna <dktrkranz at debian.org>
-Forwarded: https://launchpad.net/kupfer/+bug/789628
-
-Index: kupfer-0+v208/help/C/index.page
-===================================================================
---- kupfer-0+v208.orig/help/C/index.page	2012-06-01 19:51:14.000000000 +0200
-+++ kupfer-0+v208/help/C/index.page	2013-12-19 20:59:35.843842139 +0100
-@@ -15,7 +15,6 @@
-     </copyright>
- 
-     <license>Creative Commons Share Alike 3.0</license>
--    <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" />
-   </info>
- 
-   <title>Kupfer Manual</title>
Index: debian/patches/keyring-3.patch
===================================================================
--- debian/patches/keyring-3.patch	(revision 13918)
+++ debian/patches/keyring-3.patch	(nonexistent)
@@ -1,56 +0,0 @@
-Description: Adopt to new keyring API
- Update Kupfer plugin support code to work with modern python-keyring versions:
- .
-  * Use priority property for a rough check if the keyring is encrypted.
-  * Use __doc__ to get the human-readable keyring name.
-  * Use filename attribute to set the filename for file-based backends.
-Author: Sebastian Ramacher <sramacher at debian.org>
-Author: Dmitry Shachnev <mitya57 at debian.org>
-Bug-Debian: http://bugs.debian.org/728468
-Last-Update: 2016-02-07
-
---- a/kupfer/plugin_support.py
-+++ b/kupfer/plugin_support.py
-@@ -160,21 +160,14 @@
- 
- 	@classmethod
- 	def is_backend_encrypted(cls):
--		import keyring.core
--		return keyring.core.get_keyring().supported() == 1
-+		import keyring
-+		# Plaintext keyring backend has priority 0.5, other ones have higher
-+		return keyring.get_keyring().priority > 0.5
- 
- 	@classmethod
- 	def get_backend_name(cls):
--		import keyring.core
--		import keyring.backend
--		keyring_map = {
--				keyring.backend.GnomeKeyring : _("GNOME Keyring"),
--				keyring.backend.KDEKWallet : _("KWallet"),
--				keyring.backend.UncryptedFileKeyring: _("Unencrypted File"),
--			}
--		kr = keyring.get_keyring()
--		keyring_name = keyring_map.get(type(kr), type(kr).__name__)
--		return keyring_name
-+		import keyring
-+		return keyring.get_keyring().__doc__
- 
- 	def load(self, plugin_id, key, username):
- 		self.password = keyring.get_password(plugin_id, username)
-@@ -209,13 +202,9 @@
- 		raise
- 	else:
- 		# Configure the fallback keyring's configuration file if used
--		import keyring.backend
- 		kr = keyring.get_keyring()
--		if hasattr(kr, "crypted_password"):
--			keyring.set_keyring(keyring.backend.UncryptedFileKeyring())
--			kr = keyring.get_keyring()
--		if hasattr(kr, "file_path"):
--			kr.file_path = config.save_config_file("keyring.cfg")
-+		if hasattr(kr, "filename"):
-+			kr.filename = config.save_config_file("keyring.cfg")
- 	finally:
- 		# now unblock kde libraries again
- 		if old_pykde4:
Index: debian/patches/locales.patch
===================================================================
--- debian/patches/locales.patch	(revision 13918)
+++ debian/patches/locales.patch	(nonexistent)
@@ -1,48 +0,0 @@
-Description: Fix crash with locales not supporting dot as decimal point separator
-Author: Petr Gajd??ek <gajdusek.petr at centrum.cz>
-Forwarded: https://launchpad.net/kupfer/+bug/1082469
-
-Index: kupfer-0+v208/kupfer/plugin/top.py
-===================================================================
---- kupfer-0+v208.orig/kupfer/plugin/top.py	2013-12-19 21:09:06.671859627 +0100
-+++ kupfer-0+v208/kupfer/plugin/top.py	2013-12-19 21:09:16.527859929 +0100
-@@ -126,7 +126,7 @@
- 	def _async_top_start(self):
- 		uid = os.getuid()
- 		utils.AsyncCommand(["top", "-b", "-n", "1", "-u", "%d" % uid],
--		                   self._async_top_finished, 60)
-+		                   self._async_top_finished, 60, env=["LC_NUMERIC=C"])
- 
- 	def get_items(self):
- 		for task in self._cache:
-Index: kupfer-0+v208/kupfer/utils.py
-===================================================================
---- kupfer-0+v208.orig/kupfer/utils.py	2013-12-19 21:09:06.671859627 +0100
-+++ kupfer-0+v208/kupfer/utils.py	2013-12-19 21:09:16.527859929 +0100
-@@ -96,6 +96,8 @@
- 
- 	If stdin is a byte string, it is supplied on the command's stdin.
- 
-+	If env is None, command will inherit the parent's environment.
-+
- 	finish_callback -> (AsyncCommand, stdout_output, stderr_output)
- 
- 	Attributes:
-@@ -106,7 +108,7 @@
- 	# the maximum input (bytes) we'll read in one shot (one io_callback)
- 	max_input_buf = 512 * 1024
- 
--	def __init__(self, argv, finish_callback, timeout_s, stdin=None):
-+	def __init__(self, argv, finish_callback, timeout_s, stdin=None, env=None):
- 		self.stdout = []
- 		self.stderr = []
- 		self.stdin = []
-@@ -121,7 +123,7 @@
- 		flags = (glib.SPAWN_SEARCH_PATH | glib.SPAWN_DO_NOT_REAP_CHILD)
- 		pid, stdin_fd, stdout_fd, stderr_fd = \
- 		     glib.spawn_async(argv, standard_output=True, standard_input=True,
--		                      standard_error=True, flags=flags)
-+		                      standard_error=True, flags=flags, envp=env)
- 
- 		if stdin:
- 			self.stdin[:] = self._split_string(stdin, self.max_input_buf)
Index: debian/patches/series
===================================================================
--- debian/patches/series	(revision 13918)
+++ debian/patches/series	(nonexistent)
@@ -1,7 +0,0 @@
-uses_fragment.patch
-keyring-3.patch
-help.patch
-tracker-needle.patch
-locales.patch
-dbus.patch
-bookmarks-places.sqlite.patch
Index: debian/patches/tracker-needle.patch
===================================================================
--- debian/patches/tracker-needle.patch	(revision 13918)
+++ debian/patches/tracker-needle.patch	(nonexistent)
@@ -1,18 +0,0 @@
-Description: Spawn tracker-needle instead of tracker-search-tool
-Author: Petr Gajd??ek <gajdusek.petr at centrum.cz>
-Forwarded: https://launchpad.net/kupfer/+bug/1082467
-
-Index: kupfer-0+v208/kupfer/plugin/tracker1.py
-===================================================================
---- kupfer-0+v208.orig/kupfer/plugin/tracker1.py	2012-06-01 19:51:14.000000000 +0200
-+++ kupfer-0+v208/kupfer/plugin/tracker1.py	2013-12-19 21:05:43.663853407 +0100
-@@ -49,7 +49,8 @@
- 		Action.__init__(self, _("Search in Tracker"))
- 
- 	def activate(self, leaf):
--		utils.spawn_async(["tracker-search-tool", leaf.object])
-+		search_tool = utils.lookup_exec_path("tracker-needle") or "tracker-search-tool"
-+		utils.spawn_async([search_tool, leaf.object])
- 	def get_description(self):
- 		return _("Open Tracker Search Tool and search for this term")
- 	def get_icon_name(self):
Index: debian/patches/uses_fragment.patch
===================================================================
--- debian/patches/uses_fragment.patch	(revision 13918)
+++ debian/patches/uses_fragment.patch	(nonexistent)
@@ -1,20 +0,0 @@
-Description: Do not die if urlparse doesn't have uses_fragment method anymore
-Author: Luca Falavigna <dktrkranz at debian.org>
-Forwarded: https://launchpad.net/kupfer/+bug/1014502
-
-Index: kupfer-0+v208/kupfer/core/qfurl.py
-===================================================================
---- kupfer-0+v208.orig/kupfer/core/qfurl.py	2012-06-01 19:51:14.000000000 +0200
-+++ kupfer-0+v208/kupfer/core/qfurl.py	2012-06-24 12:30:28.939788111 +0200
-@@ -8,7 +8,10 @@
- 
- # One would hope that there was a better way to do this
- urlparse.uses_netloc.append(QFURL_SCHEME)
--urlparse.uses_fragment.append(QFURL_SCHEME)
-+try:
-+    urlparse.uses_fragment.append(QFURL_SCHEME)
-+except AttributeError:
-+    pass
- 
- class QfurlError (Exception):
- 	pass
Index: debian/rules
===================================================================
--- debian/rules	(revision 13918)
+++ debian/rules	(arbetskopia)
@@ -1,10 +1,10 @@
 #!/usr/bin/make -f
 
 %:
-	dh $@ --with python2
+	dh $@ --with python3
 
 clean:
-	./waf distclean
+	python3 waf distclean
 	rm -fr build .lock-waf* po/.intlcache
 	find Documentation -name "*.html" -delete
 	find waflib -name "*.pyc" -delete
@@ -11,15 +11,11 @@
 	dh $@
 
 override_dh_auto_configure:
-	PYTHONDIR=/usr/share/kupfer ./waf configure --prefix=/usr --nopyc --nopyo \
-		--bindir=/usr/share/kupfer --no-runtime-deps --no-install-nautilus-extension
+	PYTHON=/usr/bin/python3 python3 waf configure --prefix=/usr --nopyc --nopyo \
+		--no-runtime-deps
 
 override_dh_auto_install:
-	./waf install --destdir=$(CURDIR)/debian/kupfer
-	install -m 0755 $(CURDIR)/build/bin/kupfer $(CURDIR)/debian/kupfer/usr/share/kupfer/kupfer-activate.sh
-	rm -f $(CURDIR)/debian/kupfer/usr/share/kupfer/kupfer/kupfer
-	rm -f $(CURDIR)/debian/kupfer/usr/share/gnome/help/kupfer/*/license.page
-	rm -f $(CURDIR)/debian/kupfer/usr/share/kupfer/art/COPYING
+	python3 waf install --destdir=$(CURDIR)/debian/kupfer
 	make -C Documentation
 	rst2man Documentation/Manpage.rst build/kupfer.1
 
@@ -28,4 +24,3 @@
 
 override_dh_fixperms:
 	dh_fixperms
-	chmod +x debian/kupfer/usr/share/kupfer/kupfer.py
Index: debian/upstream/signing-key.asc
===================================================================
--- debian/upstream/signing-key.asc	(nonexistent)
+++ debian/upstream/signing-key.asc	(arbetskopia)
@@ -0,0 +1,40 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+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
+=8PKC
+-----END PGP PUBLIC KEY BLOCK-----
Index: debian/watch
===================================================================
--- debian/watch	(revision 13918)
+++ debian/watch	(arbetskopia)
@@ -1,3 +1,4 @@
-version=3
-opts=uversionmangle=s/^/0\+/ \
-https://github.com/engla/kupfer/tags .*/(v\d[\d\.]+)
+version=4
+opts=pgpsigurlmangle=s/$/.sig/ \
+https://github.com/kupferlauncher/kupfer/releases \
+.*/download/v\d[\d.]+/kupfer-v(\d[\d.]+)\.tar\.xz


More information about the Python-apps-team mailing list