Control: tags 838116 + pending

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.

It looks as though nobody else is going to test this either,
so I'm going to upload anyway. The attached patch is a slightly
better version which fixes some Lintian warnings.

I've prepared an NMU for libgpod (versioned as 0.8.3-8.1) and
uploaded it to DELAYED/2. Please feel free to tell me if I
should delay it longer.

Thanks,
    S
diffstat for libgpod-0.8.3 libgpod-0.8.3

 changelog                        |   14 +++++++++++++
 control                          |   34 ++++++++++++++-------------------
 libgpod-nogtk-dev.links          |    1 
 libgpod4-nogtk.docs              |    3 --
 libgpod4-nogtk.lintian-overrides |    2 -
 libgpod4-nogtk.symbols           |    2 -
 rules                            |   40 ++++-----------------------------------
 7 files changed, 34 insertions(+), 62 deletions(-)

diff -Nru libgpod-0.8.3/debian/changelog libgpod-0.8.3/debian/changelog
--- libgpod-0.8.3/debian/changelog	2016-06-08 07:03:36.000000000 +0100
+++ libgpod-0.8.3/debian/changelog	2017-03-31 11:18:06.000000000 +0100
@@ -1,3 +1,17 @@
+libgpod (0.8.3-8.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Convert "no GTK" packages into transitional packages that depend on
+    the full version. 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)
+  * Add missing build-dependency on dh-python (for dh_python2)
+
+ -- Simon McVittie <[email protected]>  Fri, 31 Mar 2017 11:18:06 +0100
+
 libgpod (0.8.3-8) unstable; urgency=medium
 
   * [1c62c0c] Update -cil binary packages arch list.
diff -Nru libgpod-0.8.3/debian/control libgpod-0.8.3/debian/control
--- libgpod-0.8.3/debian/control	2016-06-08 07:03:36.000000000 +0100
+++ libgpod-0.8.3/debian/control	2017-03-31 11:18:06.000000000 +0100
@@ -5,6 +5,7 @@
 Uploaders: Chow Loong Jin <[email protected]>
 Build-Depends: debhelper (>= 9),
                dh-autoreconf,
+               dh-python,
                autotools-dev,
                intltool,
                pkg-config,
@@ -35,38 +36,31 @@
 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: libgpod-dev (= ${binary:Version}), ${misc:Depends}
+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
+Section: oldlibs
 Priority: extra
 Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}
-Pre-Depends: ${misc:Pre-Depends}
-Recommends: libgpod-common
-Conflicts: libgpod4
+Depends: libgpod4 (= ${binary:Version}), ${misc:Depends}
 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 +68,8 @@
 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 +82,8 @@
 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 -Nru libgpod-0.8.3/debian/libgpod4-nogtk.docs libgpod-0.8.3/debian/libgpod4-nogtk.docs
--- libgpod-0.8.3/debian/libgpod4-nogtk.docs	2016-06-08 07:03:36.000000000 +0100
+++ libgpod-0.8.3/debian/libgpod4-nogtk.docs	1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
-AUTHORS
-README
-README.SysInfo
diff -Nru libgpod-0.8.3/debian/libgpod4-nogtk.lintian-overrides libgpod-0.8.3/debian/libgpod4-nogtk.lintian-overrides
--- libgpod-0.8.3/debian/libgpod4-nogtk.lintian-overrides	2016-06-08 07:03:36.000000000 +0100
+++ libgpod-0.8.3/debian/libgpod4-nogtk.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-libgpod4-nogtk: package-name-doesnt-match-sonames libgpod4
-libgpod4-nogtk: symbols-declares-dependency-on-other-package libgpod4 #MINVER#
diff -Nru libgpod-0.8.3/debian/libgpod4-nogtk.symbols libgpod-0.8.3/debian/libgpod4-nogtk.symbols
--- libgpod-0.8.3/debian/libgpod4-nogtk.symbols	2016-06-08 07:03:36.000000000 +0100
+++ libgpod-0.8.3/debian/libgpod4-nogtk.symbols	1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-libgpod.so.4 libgpod4-nogtk #MINVER# | libgpod4 #MINVER#
-#include "symbols.common"
diff -Nru libgpod-0.8.3/debian/libgpod-nogtk-dev.links libgpod-0.8.3/debian/libgpod-nogtk-dev.links
--- libgpod-0.8.3/debian/libgpod-nogtk-dev.links	2016-06-08 07:03:36.000000000 +0100
+++ libgpod-0.8.3/debian/libgpod-nogtk-dev.links	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/share/doc/libgpod4-nogtk	usr/share/doc/libgpod-nogtk-dev
diff -Nru libgpod-0.8.3/debian/rules libgpod-0.8.3/debian/rules
--- libgpod-0.8.3/debian/rules	2016-06-08 07:03:36.000000000 +0100
+++ libgpod-0.8.3/debian/rules	2017-03-31 11:18:06.000000000 +0100
@@ -11,7 +11,7 @@
 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 @@
 		--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 @@
 	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-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

Reply via email to