Bug#834093: guile-2.0: leaves alternatives after purge: /usr/bin/guile, /usr/share/man/man1/guile.1.gz
Control: found -1 2.0.13+1-3 On 2016-12-07 23:52, Rob Browning wrote: > Andreas Beckmannwrites: > >> I'd like to see this fixed in stretch. > > Hopefully -3 did it. If not, please shout. guile-2.0.postinst is missing # remove the pre-multiarch alternative update-alternatives --remove guile /usr/bin/guile-2.0 to clean up the alternative that was used in jessie (this is a silent no-op if it doesn't exist, no guards needed) (installing the new alternative in the multiarch location does not remove the existing one - a different path is a different alternative) Andreas
Bug#834093: guile-2.0: leaves alternatives after purge: /usr/bin/guile, /usr/share/man/man1/guile.1.gz
Andreas Beckmannwrites: > I'd like to see this fixed in stretch. Hopefully -3 did it. If not, please shout. Thanks -- Rob Browning rlb @defaultvalue.org and @debian.org GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
Bug#834093: guile-2.0: leaves alternatives after purge: /usr/bin/guile, /usr/share/man/man1/guile.1.gz
On Sun, 11 Sep 2016 16:47:32 -0500 Rob Browningwrote: > Rob Browning writes: > > > Hmm, was that test upgrading from jessie to stretch and then purging the > > newer version? If so, then offhand I'd guess that the jessie version > > doesn't clean up properly during the transition. > > Nevermind, I've got it. Think I just got the postinst "wrong". Ping? I'd like to see this fixed in stretch. Andreas
Bug#834093: guile-2.0: leaves alternatives after purge: /usr/bin/guile, /usr/share/man/man1/guile.1.gz
Rob Browningwrites: > Hmm, was that test upgrading from jessie to stretch and then purging the > newer version? If so, then offhand I'd guess that the jessie version > doesn't clean up properly during the transition. Nevermind, I've got it. Think I just got the postinst "wrong". Thanks -- Rob Browning rlb @defaultvalue.org and @debian.org GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
Bug#834093: guile-2.0: leaves alternatives after purge: /usr/bin/guile, /usr/share/man/man1/guile.1.gz
Andreas Beckmannwrites: > while stretch and sid are now fixed, upgrades from jessie to stretch > still leave alternatives in the system: > > 1m30.2s INFO: Warning: Package purging left files on system: > /etc/alternatives/guile -> /usr/bin/guile-2.0not owned > /etc/alternatives/guile.1.gz -> /usr/share/man/man1/guile-2.0.1.gz not > owned > /usr/bin/guile -> /etc/alternatives/guilenot owned > /usr/share/man/man1/guile.1.gz -> /etc/alternatives/guile.1.gz not > owned > > Looks like there is some migration code missing in the postinst that > switches from jessie-style alternatives (/usr/bin/guile-2.0) to > stretch-style alternatives (/usr/lib/x86_64-linux-gnu/guile-2.0/bin/guile) Hmm, was that test upgrading from jessie to stretch and then purging the newer version? If so, then offhand I'd guess that the jessie version doesn't clean up properly during the transition. If so, I suppose I'll need to handle that in the stretch preinst (or similar). Thanks -- Rob Browning rlb @defaultvalue.org and @debian.org GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
Bug#834093: guile-2.0: leaves alternatives after purge: /usr/bin/guile, /usr/share/man/man1/guile.1.gz
Followup-For: Bug #834093 Control: found -1 2.0.11+1-12 Hi, while stretch and sid are now fixed, upgrades from jessie to stretch still leave alternatives in the system: 1m30.2s INFO: Warning: Package purging left files on system: /etc/alternatives/guile -> /usr/bin/guile-2.0 not owned /etc/alternatives/guile.1.gz -> /usr/share/man/man1/guile-2.0.1.gz not owned /usr/bin/guile -> /etc/alternatives/guile not owned /usr/share/man/man1/guile.1.gz -> /etc/alternatives/guile.1.gz not owned Looks like there is some migration code missing in the postinst that switches from jessie-style alternatives (/usr/bin/guile-2.0) to stretch-style alternatives (/usr/lib/x86_64-linux-gnu/guile-2.0/bin/guile) Andreas guile-2.0_2.0.11+1-12.log.gz Description: application/gzip
Bug#834093: guile-2.0: leaves alternatives after purge: /usr/bin/guile, /usr/share/man/man1/guile.1.gz
Andreas Beckmannwrites: > 0m38.2s INFO: Warning: Package purging left files on system: > /etc/alternatives/guile -> /usr/lib/x86_64-linux-gnu/guile-2.0/bin/guile > not owned > /etc/alternatives/guile.1.gz -> /usr/share/man/man1/guile-2.0.1.gz not > owned > /usr/bin/guile -> /etc/alternatives/guilenot owned > /usr/share/man/man1/guile.1.gz -> /etc/alternatives/guile.1.gz not > owned Ahh, right. That's just an oversight. I moved the binary, but forgot to update the prerm. I'll fix it in the next upload. Thanks -- Rob Browning rlb @defaultvalue.org and @debian.org GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
Bug#834093: guile-2.0: leaves alternatives after purge: /usr/bin/guile, /usr/share/man/man1/guile.1.gz
Package: guile-2.0 Version: 2.0.11+1-11 Severity: important User: debian...@lists.debian.org Usertags: piuparts Hi, during a test with piuparts I noticed your package left unowned files on the system after purge, which is a violation of policy 6.8: https://www.debian.org/doc/debian-policy/ch-maintainerscripts.html#s-removedetails The leftover files are actually alternatives that were installed by the package but have not been properly removed. While there is ongoing discussion how to remove alternatives correctly (see https://bugs.debian.org/71621 for details) the following strategy should work for regular cases: * 'postinst configure' always installs the alternative * 'prerm remove' removes the alternative * 'postrm remove' and 'postrm disappear' remove the alternative In all other cases a maintainer script is invoked (e.g. upgrade, deconfigure) the alternatives are not modified to preserve user configuration. Removing the alternative in 'prerm remove' avoids having a dangling link once the actual file gets removed, but 'prerm remove' is not called in all cases (e.g. unpacked but not configured packages or disappearing packages) so the postrm must remove the alternative again (update-alternatives gracefully handles removal of non-existing alternatives). Note that the arguments for adding and removing alternatives differ, for removal it's 'update-alternatives --remove '. Filing this as important as having a piuparts clean archive is a release goal since lenny. >From the attached log (scroll to the bottom...): 0m38.2s INFO: Warning: Package purging left files on system: /etc/alternatives/guile -> /usr/lib/x86_64-linux-gnu/guile-2.0/bin/guile not owned /etc/alternatives/guile.1.gz -> /usr/share/man/man1/guile-2.0.1.gz not owned /usr/bin/guile -> /etc/alternatives/guile not owned /usr/share/man/man1/guile.1.gz -> /etc/alternatives/guile.1.gz not owned cheers, Andreas guile-2.0_2.0.11+1-11.log.gz Description: application/gzip