Control: tags 838116 + patch

On Sun, 29 Jan 2017 at 18:52:58 +0000, Simon McVittie wrote:
> I am probably not going to NMU this, because I can't test this package
> (I don't have an iPod); but I'm build-testing a patch.

See attached (based on pkg-gtkpod git). It seems to work: I was able
to upgrade a stretch system from libgpod4-nogtk:amd64/0.8.3-8 to this
version.

    S
>From 993f5832f72100d4ca8dca9a5b459701055fdcd7 Mon Sep 17 00:00:00 2001
From: Simon McVittie <[email protected]>
Date: Sun, 29 Jan 2017 18:36:39 +0000
Subject: [PATCH] Drop "no GTK" packages.

They were requested in #386715 to avoid a GTK dependency, but now the only
thing they avoid is gdk-pixbuf, and there is no user of libgpod in Debian
that does not already depend on gdk-pixbuf anyway. The extra complexity
caused the binary packages to be non-reproducible, and sometimes made
Recommends uninstallable. (Closes: 838116)
---
 debian/changelog                        | 12 ++++++++++
 debian/control                          | 32 +++++++++++---------------
 debian/libgpod-nogtk-dev.links          |  1 -
 debian/libgpod4-nogtk.docs              |  3 ---
 debian/libgpod4-nogtk.lintian-overrides |  2 --
 debian/libgpod4-nogtk.symbols           |  2 --
 debian/rules                            | 40 +++++----------------------------
 7 files changed, 30 insertions(+), 62 deletions(-)
 delete mode 100644 debian/libgpod-nogtk-dev.links
 delete mode 100644 debian/libgpod4-nogtk.docs
 delete mode 100644 debian/libgpod4-nogtk.lintian-overrides
 delete mode 100644 debian/libgpod4-nogtk.symbols

diff --git a/debian/changelog b/debian/changelog
index 9f2b908..486a4cd 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,15 @@
+libgpod (0.8.3-8.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Drop "no GTK" packages. They were requested in #386715 to avoid a GTK
+    dependency, but now the only thing they avoid is gdk-pixbuf, and
+    there is no user of libgpod in Debian that does not already depend
+    on gdk-pixbuf anyway. The extra complexity caused the binary packages
+    to be non-reproducible, and sometimes made Recommends uninstallable.
+    (Closes: 838116)
+
+ -- Simon McVittie <[email protected]>  Sun, 29 Jan 2017 18:34:44 +0000
+
 libgpod (0.8.3-8) unstable; urgency=medium
 
   * [1c62c0c] Update -cil binary packages arch list.
diff --git a/debian/control b/debian/control
index 26759cb..9d7f34e 100644
--- a/debian/control
+++ b/debian/control
@@ -35,38 +35,30 @@ Vcs-Git: git://git.debian.org/git/pkg-gtkpod/packages/libgpod.git
 Vcs-Browser: http://git.debian.org/?p=pkg-gtkpod/packages/libgpod.git
 
 Package: libgpod-nogtk-dev
-Section: libdevel
+Section: oldlibs
 Priority: extra
 Architecture: any
-Depends: libgpod4-nogtk (= ${binary:Version}), libglib2.0-dev,
-         libimobiledevice-dev, ${misc:Depends}
-Suggests: libgpod-doc
-Conflicts: libgpod-dev
-Description: development files for libgpod (version without artwork support)
+Depends: libgpod4-dev (= ${binary:Version})
+Description: development files for libgpod - transitional package
  libgpod is a library meant to abstract access to an iPod's content. It
  provides an easy to use API to retrieve the list of files and playlist
  stored on an iPod, to modify them and to save them back to the iPod.
  .
- This version does not include artwork support.
- .
- This package contains the include files and static library.
+ This transitional package ensures that libgpod-nogtk-dev is replaced
+ by libgpod-dev on upgrade.
 
 Package: libgpod4-nogtk
 Priority: extra
 Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}
-Pre-Depends: ${misc:Pre-Depends}
-Recommends: libgpod-common
-Conflicts: libgpod4
+Depends: libgpod4 (= ${binary:Version})
 Multi-Arch: same
-Description: library to read and write songs to an iPod
+Description: library to read and write songs to an iPod - transitional package
  libgpod is a library meant to abstract access to an iPod's content. It
  provides an easy to use API to retrieve the list of files and playlist
  stored on an iPod, to modify them and to save them back to the iPod.
  .
- This version does not include artwork support.
- .
- This package contains the shared library.
+ This transitional package ensures that libgpod4-nogtk is replaced
+ by libgpod4 on upgrade.
 
 Package: libgpod-dev
 Section: libdevel
@@ -74,7 +66,8 @@ Architecture: any
 Depends: libgpod4 (= ${binary:Version}), libgtk2.0-dev, libglib2.0-dev,
          libgdk-pixbuf2.0-dev, libimobiledevice-dev, ${misc:Depends}
 Suggests: libgpod-doc
-Conflicts: libgpod-nogtk-dev
+Breaks: libgpod-nogtk-dev (<< 0.8.3-8.1~)
+Replaces: libgpod-nogtk-dev (<< 0.8.3-8.1~)
 Description: development files for libgpod
  libgpod is a library meant to abstract access to an iPod's content. It
  provides an easy to use API to retrieve the list of files and playlist
@@ -87,7 +80,8 @@ Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Pre-Depends: ${misc:Pre-Depends}
 Recommends: libgpod-common
-Conflicts: libgpod4-nogtk
+Breaks: libgpod4-nogtk (<< 0.8.3-8.1~)
+Replaces: libgpod4-nogtk (<< 0.8.3-8.1~)
 Multi-Arch: same
 Description: library to read and write songs and artwork to an iPod
  libgpod is a library meant to abstract access to an iPod's content. It
diff --git a/debian/libgpod-nogtk-dev.links b/debian/libgpod-nogtk-dev.links
deleted file mode 100644
index cd3fe09..0000000
--- a/debian/libgpod-nogtk-dev.links
+++ /dev/null
@@ -1 +0,0 @@
-usr/share/doc/libgpod4-nogtk	usr/share/doc/libgpod-nogtk-dev
diff --git a/debian/libgpod4-nogtk.docs b/debian/libgpod4-nogtk.docs
deleted file mode 100644
index b4a74d6..0000000
--- a/debian/libgpod4-nogtk.docs
+++ /dev/null
@@ -1,3 +0,0 @@
-AUTHORS
-README
-README.SysInfo
diff --git a/debian/libgpod4-nogtk.lintian-overrides b/debian/libgpod4-nogtk.lintian-overrides
deleted file mode 100644
index 9663475..0000000
--- a/debian/libgpod4-nogtk.lintian-overrides
+++ /dev/null
@@ -1,2 +0,0 @@
-libgpod4-nogtk: package-name-doesnt-match-sonames libgpod4
-libgpod4-nogtk: symbols-declares-dependency-on-other-package libgpod4 #MINVER#
diff --git a/debian/libgpod4-nogtk.symbols b/debian/libgpod4-nogtk.symbols
deleted file mode 100644
index 2b9579f..0000000
--- a/debian/libgpod4-nogtk.symbols
+++ /dev/null
@@ -1,2 +0,0 @@
-libgpod.so.4 libgpod4-nogtk #MINVER# | libgpod4 #MINVER#
-#include "symbols.common"
diff --git a/debian/rules b/debian/rules
index a462427..f8d9856 100755
--- a/debian/rules
+++ b/debian/rules
@@ -11,7 +11,7 @@ PYVERS = $(shell pyversions -v -r ./debian/control)
 confflags += --without-hal --enable-udev --disable-silent-rules
 
 # targets are appended to $(BASE) to get the build directory
-targets_arch = gtk nogtk $(foreach i, $(PYVERS), python$(i))
+targets_arch = gtk $(foreach i, $(PYVERS), python$(i))
 targets_indep = doc
 
 ifneq (,$(findstring -cil,$(shell dh_listpackages)))
@@ -30,14 +30,6 @@ $(BASE)/gtk/config.status:
 		--disable-gtk-doc \
 		$(confflags)
 
-$(BASE)/nogtk/config.status:
-	dh_auto_configure -B$(dir $@) -- \
-		--with-python=no \
-		--with-mono=no \
-		--disable-gtk-doc \
-		--disable-gdk-pixbuf \
-		$(confflags)
-
 $(BASE)/mono/config.status:
 	dh_auto_configure -B$(dir $@) -- \
 		--with-python=no \
@@ -88,11 +80,6 @@ $(BASE)/python%/install-stamp: $(BASE)/python%/build-stamp \
 	dh_auto_install -B$(dir $@)/bindings/python
 	touch $@
 
-$(BASE)/nogtk/install-stamp: $(BASE)/nogtk/build-stamp
-	dh_auto_install -B$(dir $@) -- \
-		DESTDIR=$(CURDIR)/debian/tmp-nogtk
-	touch $@
-
 $(BASE)/doc/install-stamp: $(BASE)/doc/build-stamp
 	dh_auto_install -B$(dir $@)/docs
 	touch $@
@@ -117,45 +104,28 @@ override_dh_auto_install-arch: $(foreach i, $(targets_arch), $(BASE)/$(i)/instal
 
 override_dh_auto_install-indep: $(foreach i, $(targets_indep), $(BASE)/$(i)/install-stamp)
 
-# autogenerate *-nogtk*.install files
-debian/libgpod$(SONAME)-nogtk.install: debian/libgpod$(SONAME).install
-	cp $< $@
-
-debian/libgpod-nogtk-dev.install: debian/libgpod-dev.install
-	cp $< $@
-
-override_dh_install: debian/libgpod$(SONAME)-nogtk.install \
-                     debian/libgpod-nogtk-dev.install
-	dh_install -Nlibgpod$(SONAME)-nogtk -Nlibgpod-nogtk-dev
-	dh_install \
-		--sourcedir=debian/tmp-nogtk \
-		-plibgpod$(SONAME)-nogtk \
-		-plibgpod-nogtk-dev
-
+override_dh_install:
+	dh_install
 	# Needed for syncing with ubuntu: launchpad needs .pot files
 	cd po; intltool-update --pot
 
-# don't install things to /usr/share/doc/libgpod(-nogtk)-dev, as they're
+# don't install things to /usr/share/doc/libgpod-dev, as they're
 # symlinked
 override_dh_installdocs override_dh_installchangelogs:
-	$(subst override_,,$@) -Nlibgpod-dev -Nlibgpod-nogtk-dev
+	$(subst override_,,$@) -Nlibgpod-dev
 
 # cleaning rules
 clean:
 	$(call DH, $@)
-	rm -f debian/libgpod-nogtk-dev.install debian/libgpod$(SONAME)-nogtk.install
 	rm -rf debian/tmp-*
 
 override_dh_auto_clean:
 	rm -rf build/
 
 override_dh_makeshlibs:
-	dpkg-gensymbols -c4 -Pdebian/libgpod$(SONAME)-nogtk -plibgpod$(SONAME)-nogtk
 	dpkg-gensymbols -c4 -Pdebian/libgpod$(SONAME) -plibgpod$(SONAME)
 	dh_makeshlibs -plibgpod$(SONAME) \
 		-V 'libgpod$(SONAME) (>= $(VERSION))'
-	dh_makeshlibs -plibgpod$(SONAME)-nogtk \
-		-V 'libgpod$(SONAME)-nogtk (>= $(VERSION)) | libgpod$(SONAME) (>= $(VERSION))'
 
 override_dh_python2:
 	dh_python2 --depends=mutagen --depends=gobject
-- 
2.11.0

Reply via email to