[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Live-build's handling of live packages



Live-build installs several packages intended for live systems only, eg live-boot, live-configs, and allows custom live-only packages to be listed in config/package-lists/*list.chroot_live

If there are no custom live packages, then the live-* packages are removed at installation time by
    live-installer/finish-install.d/14remove-live-packages[1]

Unfortunately, if there are custom packages listed in some list with the _live suffix, then they are added to live/filesystem.packages-remove created on the iso, and correctly removed by [1], but the live-* packages are left on the installed system, because the installer drops its manual removal mode if it finds filesystem.packages-remove.

This is because the live-* packages, defined in config/package-lists/live.list.chroot, are being treated as ordinary files to be installed on the system. No distinction is made between live.list.chroot and any other *list.chroot file. Up till now, they were being successfully removed only by default.

There is a simple fix though. In scripts/build/config[2] around line 1373 find the line:

LIVE_PKG_LIST="config/package-lists/live.list.chroot"

and rename live.list.chroot:

LIVE_PKG_LIST="config/package-lists/live.list.chroot_live"

(or possibly change the initial 'live.' in the filename)

If this is done, filesystem.packages-remove is always created and the unwanted live-* packages are removed on install.

Should this be considered a bug? If so, should I file a bug report, or just - since the edit is so simple - send in an MR?

[1] https://salsa.debian.org/installer-team/live-installer/-/blob/master/finish-install.d/14remove-live-packages
[2] https://salsa.debian.org/live-team/live-build/-/blob/master/scripts/build/config

--
John


Reply to: