Bug#798347: fdisk-udeb: not installable, depends on libtinfo5
Package: fdisk-udeb Version: 2.27-1 Severity: grave Justification: renders package unusable Hi, Your package gained a dependency on libtinfo5, which makes it no longer installable, along with lilo-installer and rescue-mode, which both depend on it. Example on mips: Depends: libblkid1-udeb (>= 2.25), libc6-udeb (>= 2.19), libfdisk1-udeb (>= 2.26), libsmartcols1-udeb (>= 2.25), libtinfo5 (>= 6), libuuid1-udeb (>= 2.20.1) Mraw, KiBi.
Bug#798347: fdisk-udeb: not installable, depends on libtinfo5
(Adding -boot@ for further discussion.) Hi, Andreas Henriksson(2015-09-08): > Hello Cyril Brulebois. > > Thanks for your bug report. > > On Tue, Sep 08, 2015 at 01:13:58PM +0200, Cyril Brulebois wrote: > > Package: fdisk-udeb > > Version: 2.27-1 > > Severity: grave > > Justification: renders package unusable > > > > Hi, > > > > Your package gained a dependency on libtinfo5, which makes it no longer > > installable, along with lilo-installer and rescue-mode, which both > > depend on it. > [...] > > Sorry for screwing up the udebs (again!). Would be nice to have lintian > catch this... > > I'm pondering just building static versions of fdisk,sfdisk,blkid > to put in the udebs instead to avoid current and future dependency > issues. Would that be acceptable? > > (That would also mean I can remove lib*-udeb.) Assuming nothing else using the lib*-udeb (I didn't check), I don't think there are compelling reasons for keeping those around. Having everything shipped into a single udeb doesn't seem crazy (if nothing else from other sources is expected toever depend on those features) and if that makes things easier for you, great! Historically, we've had a bunch of udebs built with specific options, be it to reduce size, dependencies/features, and I suppose (again, not going to check) static bits. I'm currently (this week, probably next) to give your updated package a look/try, I'm sorry. > The result would look like this: > > root@mbpah:~/util-linux-2.27# dpkg -c ../fdisk-udeb_2.27-2_amd64.udeb > drwxr-xr-x root/root 0 2015-09-08 15:17 ./ > drwxr-xr-x root/root 0 2015-09-08 15:17 ./usr/ > drwxr-xr-x root/root 0 2015-09-08 15:17 ./usr/sbin/ > -rwxr-xr-x root/root 1385224 2015-09-08 15:17 ./usr/sbin/fdisk > -rwxr-xr-x root/root 1378376 2015-09-08 15:17 ./usr/sbin/sfdisk > root@mbpah:~/util-linux-2.27# dpkg -I ../fdisk-udeb_2.27-2_amd64.udeb > new debian package, version 2.0. > size 972626 bytes: control archive=329 bytes. > 287 bytes,10 lines control > Package: fdisk-udeb > Source: util-linux > Version: 2.27-2 > Architecture: amd64 > Installer-Menu-Item: 9 > Maintainer: Debian util-linux Maintainers > Installed-Size: 2704 > Section: debian-installer > Priority: extra > Description: Manually partition a hard drive (fdisk) > > root@mbpah:~/util-linux-2.27# dpkg -c ../util-linux-udeb_2.27-2_amd64.udeb > drwxr-xr-x root/root 0 2015-09-08 15:17 ./ > drwxr-xr-x root/root 0 2015-09-08 15:17 ./sbin/ > -rwxr-xr-x root/root993064 2015-09-08 15:17 ./sbin/blkid > root@mbpah:~/util-linux-2.27# dpkg -I ../util-linux-udeb_2.27-2_amd64.udeb > new debian package, version 2.0. > size 347790 bytes: control archive=378 bytes. > 407 bytes,11 lines control > Package: util-linux-udeb > Source: util-linux > Version: 2.27-2 > Architecture: amd64 > Maintainer: Debian util-linux Maintainers > Installed-Size: 973 > Section: debian-installer > Priority: optional > Description: stripped down miscellaneous system utilities, for > debian-installer > This is a minimal version of util-linux for debian-installer. It only > contains the blkid binary at the moment. > > > Patch attached to accomplish this (which should be extended with > lib*-udeb removal). > > Regards, > Andreas Henriksson > diff --git a/debian/changelog b/debian/changelog > index f1af685..6b915af 100644 > --- a/debian/changelog > +++ b/debian/changelog > @@ -1,3 +1,10 @@ > +util-linux (2.27-2) UNRELEASED; urgency=medium > + > + * Build static binaries for fdisk-udeb and util-linux-udeb (Closes: > #798347) > +- this avoids udeb collecting invalid dependencies on non-udebs > + > + -- Andreas Henriksson Tue, 08 Sep 2015 17:00:05 +0200 > + > util-linux (2.27-1) unstable; urgency=medium > >[ Andreas Henriksson ] > diff --git a/debian/fdisk-udeb.install b/debian/fdisk-udeb.install > index 9cbe2fb..3aaf029 100755 > --- a/debian/fdisk-udeb.install > +++ b/debian/fdisk-udeb.install > @@ -1,3 +1,3 @@ > #!/usr/bin/dh-exec > -sbin/fdisk usr/sbin > -sbin/sfdisk usr/sbin > +./fdisk.static => /usr/sbin/fdisk > +./sfdisk.static => /usr/sbin/sfdisk > diff --git a/debian/rules b/debian/rules > index 660d55f..4f36861 100755 > --- a/debian/rules > +++ b/debian/rules > @@ -19,6 +19,9 @@ endif > CONFOPTS += --enable-tunelp > endif > > +# build static versions of programs used in fdisk-udeb and util-linux-udeb > +CONFOPTS += --enable-static-programs=fdisk,sfdisk,blkid > + > CONFOPTS += --localstatedir=/run > CONFOPTS += --disable-silent-rules > CONFOPTS += --without-python > diff --git a/debian/util-linux-udeb.install b/debian/util-linux-udeb.install > old mode 100644 > new mode 100755 > index 022f38d..9a089cf > --- a/debian/util-linux-udeb.install > +++ b/debian/util-linux-udeb.install > @@ -1 +1,2 @@ > -sbin/blkid > +#!/usr/bin/dh-exec
Bug#798347: fdisk-udeb: not installable, depends on libtinfo5
Hello Cyril Brulebois. Thanks for your bug report. On Tue, Sep 08, 2015 at 01:13:58PM +0200, Cyril Brulebois wrote: > Package: fdisk-udeb > Version: 2.27-1 > Severity: grave > Justification: renders package unusable > > Hi, > > Your package gained a dependency on libtinfo5, which makes it no longer > installable, along with lilo-installer and rescue-mode, which both > depend on it. [...] Sorry for screwing up the udebs (again!). Would be nice to have lintian catch this... I'm pondering just building static versions of fdisk,sfdisk,blkid to put in the udebs instead to avoid current and future dependency issues. Would that be acceptable? (That would also mean I can remove lib*-udeb.) The result would look like this: root@mbpah:~/util-linux-2.27# dpkg -c ../fdisk-udeb_2.27-2_amd64.udeb drwxr-xr-x root/root 0 2015-09-08 15:17 ./ drwxr-xr-x root/root 0 2015-09-08 15:17 ./usr/ drwxr-xr-x root/root 0 2015-09-08 15:17 ./usr/sbin/ -rwxr-xr-x root/root 1385224 2015-09-08 15:17 ./usr/sbin/fdisk -rwxr-xr-x root/root 1378376 2015-09-08 15:17 ./usr/sbin/sfdisk root@mbpah:~/util-linux-2.27# dpkg -I ../fdisk-udeb_2.27-2_amd64.udeb new debian package, version 2.0. size 972626 bytes: control archive=329 bytes. 287 bytes,10 lines control Package: fdisk-udeb Source: util-linux Version: 2.27-2 Architecture: amd64 Installer-Menu-Item: 9 Maintainer: Debian util-linux MaintainersInstalled-Size: 2704 Section: debian-installer Priority: extra Description: Manually partition a hard drive (fdisk) root@mbpah:~/util-linux-2.27# dpkg -c ../util-linux-udeb_2.27-2_amd64.udeb drwxr-xr-x root/root 0 2015-09-08 15:17 ./ drwxr-xr-x root/root 0 2015-09-08 15:17 ./sbin/ -rwxr-xr-x root/root993064 2015-09-08 15:17 ./sbin/blkid root@mbpah:~/util-linux-2.27# dpkg -I ../util-linux-udeb_2.27-2_amd64.udeb new debian package, version 2.0. size 347790 bytes: control archive=378 bytes. 407 bytes,11 lines control Package: util-linux-udeb Source: util-linux Version: 2.27-2 Architecture: amd64 Maintainer: Debian util-linux Maintainers Installed-Size: 973 Section: debian-installer Priority: optional Description: stripped down miscellaneous system utilities, for debian-installer This is a minimal version of util-linux for debian-installer. It only contains the blkid binary at the moment. Patch attached to accomplish this (which should be extended with lib*-udeb removal). Regards, Andreas Henriksson diff --git a/debian/changelog b/debian/changelog index f1af685..6b915af 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +util-linux (2.27-2) UNRELEASED; urgency=medium + + * Build static binaries for fdisk-udeb and util-linux-udeb (Closes: #798347) +- this avoids udeb collecting invalid dependencies on non-udebs + + -- Andreas Henriksson Tue, 08 Sep 2015 17:00:05 +0200 + util-linux (2.27-1) unstable; urgency=medium [ Andreas Henriksson ] diff --git a/debian/fdisk-udeb.install b/debian/fdisk-udeb.install index 9cbe2fb..3aaf029 100755 --- a/debian/fdisk-udeb.install +++ b/debian/fdisk-udeb.install @@ -1,3 +1,3 @@ #!/usr/bin/dh-exec -sbin/fdisk usr/sbin -sbin/sfdisk usr/sbin +./fdisk.static => /usr/sbin/fdisk +./sfdisk.static => /usr/sbin/sfdisk diff --git a/debian/rules b/debian/rules index 660d55f..4f36861 100755 --- a/debian/rules +++ b/debian/rules @@ -19,6 +19,9 @@ endif CONFOPTS += --enable-tunelp endif +# build static versions of programs used in fdisk-udeb and util-linux-udeb +CONFOPTS += --enable-static-programs=fdisk,sfdisk,blkid + CONFOPTS += --localstatedir=/run CONFOPTS += --disable-silent-rules CONFOPTS += --without-python diff --git a/debian/util-linux-udeb.install b/debian/util-linux-udeb.install old mode 100644 new mode 100755 index 022f38d..9a089cf --- a/debian/util-linux-udeb.install +++ b/debian/util-linux-udeb.install @@ -1 +1,2 @@ -sbin/blkid +#!/usr/bin/dh-exec +./blkid.static => /sbin/blkid
Bug#798347: fdisk-udeb: not installable, depends on libtinfo5
Cyril Brulebois, le Tue 08 Sep 2015 17:39:24 +0200, a écrit : > (Adding -boot@ for further discussion.) > > I'm pondering just building static versions of fdisk,sfdisk,blkid > > to put in the udebs instead to avoid current and future dependency > > issues. Would that be acceptable? > > > > (That would also mean I can remove lib*-udeb.) You could link just libtinfo.a statically. Samuel
Bug#798347: fdisk-udeb: not installable, depends on libtinfo5
Hello. On Tue, Sep 08, 2015 at 05:47:13PM +0200, Samuel Thibault wrote: > Cyril Brulebois, le Tue 08 Sep 2015 17:39:24 +0200, a écrit : > > (Adding -boot@ for further discussion.) > > > I'm pondering just building static versions of fdisk,sfdisk,blkid > > > to put in the udebs instead to avoid current and future dependency > > > issues. Would that be acceptable? > > > > > > (That would also mean I can remove lib*-udeb.) > > You could link just libtinfo.a statically. Another option would probably also be to work out how to get rid of the dependency on libtinfo (for udebs atleast). (There's a configure switch to disable tinfo already, but I guess we want it enabled for regular builds and would like to avoid double builds.) This would probably mean I walk into the same trap again in the future with some other library. Building it completely static is really simple for me and makes sure no (non-udeb or other) dependencies gets picked up in the future and avoids me reintroducing grave bugs. Any issues would be noticed at build-time (eg. if something does not provide a static lib). I'd feel best if I can just forget about udeb existance and building static version of fdisk,sfdisk,blkid seems like it could take away the most common pitfall for me. Are there any issues I should be aware of that would outweigh the benefits mentioned above? (I'm aware it's not perfectly optimal to build staticly, but can anyone forsee any actual practical or policy issue with doing so?) Regards, Andreas Henriksson
Bug#798347: fdisk-udeb: not installable, depends on libtinfo5
Andreas Henriksson, le Tue 08 Sep 2015 18:01:08 +0200, a écrit : > Are there any issues I should be aware of that would outweigh the > benefits mentioned above? (I'm aware it's not perfectly optimal > to build staticly, but can anyone forsee any actual practical or > policy issue with doing so?) The static binary will carry possibly outdated copies of the library (potentially with bugs etc.). The size may also matter for embedded archs. Samuel