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

How to make a meta package unremovable?



Hi mentors,

hope this is the right list for it, I wouldn't abuse debian-devel for it.

[please keep me on CC, I'm not subscribed]

I maintain a custom Debian installation on Clients without any user
interaction during upgrade, so everything has to go automatically.

I created a meta package to define dependencies to all packages I need
on the clients and I'd like to make this meta package unremovable during
dist-upgrade.

An automatic removal by accident during
"$ apt-get -y --force-yes dist-upgrade"
because of missing depends or conflicts must be prevented. It`s better
to aboard the upgrade then.

I see this possibilities:
* Set "Essential: Yes" in debian/control of meta package:
  + works as expected, even "apt-get remove <metapackage>" askes for
    additional user input that will not happen on the clients.
  - Upgrade process hangs waiting for the user input
  - If I build a PBuilder environment from this repository, it will
    load this "Essential" package and install a bunch of packages
    I do not want in PBuilder. (OK, I could try to exclude this package
    PBuilder command line, but ugly anyway)

* Set "APT::Get::Remove false" in apt.conf:
  - affects all packages and prevents removal of obsolete packages
    I want to be removed.

* APT pinning seems not to do it (as I tried).

Does anybody have an additionally idea how to solve this, to prevent the
removal of one package without hanging on user input and prevent
automatic inclusion in PBuilder installation?


Best regards,

Erik


Reply to: