group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #46667
[Bug 2036195] Re: Any packages installed in binary hooks are marked as manually installed - even dependencies
This bug was fixed in the package livecd-rootfs - 2.664.52
---------------
livecd-rootfs (2.664.52) focal; urgency=medium
* fix: use correct sshd_config.d/ ordering. (LP: #2049860)
livecd-rootfs (2.664.51) focal; urgency=medium
[ Steve Langasek ]
* The chroot tmpfs mount should only be /var/lib/apt/lists, not
/var/lib/apt; the latter breaks changes to /var/lib/apt/extended_states.
(LP: #2036195).
livecd-rootfs (2.664.50) focal; urgency=medium
* Do not modify /etc/ssh/sshd_config for ubuntu-cpc
project builds. (LP: #1968873)
-- Thomas Bechtold <thomas.bechtold@xxxxxxxxxxxxx> Mon, 22 Jan 2024
17:08:05 +0530
** Changed in: livecd-rootfs (Ubuntu Focal)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/2036195
Title:
Any packages installed in binary hooks are marked as manually
installed - even dependencies
Status in livecd-rootfs package in Ubuntu:
Fix Released
Status in livecd-rootfs source package in Xenial:
Fix Released
Status in livecd-rootfs source package in Bionic:
Fix Released
Status in livecd-rootfs source package in Focal:
Fix Released
Status in livecd-rootfs source package in Jammy:
Fix Released
Status in livecd-rootfs source package in Lunar:
Fix Released
Bug description:
After much debugging trying to understand why `apt-get autoremove` was
not working in a binary hook I realised that all packages installed in
a binary hook are marked as manually installed - even the dependencies
of packages. This is a bug.
Another side affect of this is that any dependency of a package in the
base chroot that is removed in a binary hook is not autoremovable in
the binary hook.
It is autoremovable once the image is created and launched though.
This is due to how the `setup_mountpoint` function works (see
https://git.launchpad.net/livecd-rootfs/tree/live-
build/functions#n123) specifically
```
mount -t tmpfs none "$mountpoint/var/lib/apt"
```
Which means that inside the chroot that the binary hook works on, the
`/var/lib/apt` directory is empty... including the
`/var/lib/apt/extended_states` file which is used to store whether a
package was auto installed or not.
The same goes the other way - any changes to the
`/var/lib/apt/extended_states` file inside chroot that the binary
hook is changing are not reflected in the final image due to the
`teardown_mountpoint` (see https://git.launchpad.net/livecd-
rootfs/tree/live-build/functions#n152) not persisting any of those
changes.
The end result being.
* If a package is removed in the binary hook then the resulting image will likely have autoremovable packages at first launch
* Any package and their dependencies installed in a binary hook will all be marked as manually installed.
SRU
====
[ Impact ]
* Packages installed in a binary hook are marked as manually
installed - even the dependencies of packages
[ Test Plan ]
* Build test images and remove a package with dependencies.
* Confirm that the dependencies are marked as autoremovable.
* Confirm there are packages marked as auto installed
[ Where problems could occur ]
* Is any dependent packages are not marked as autremovable.
* If no packages are marked as auto installed
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/livecd-rootfs/+bug/2036195/+subscriptions