Hello!

I would like to breath some life into this bug report. I've been
collecting information/brainstorming-ideas about minimal debian
installation (debootstrap --variant=minbase) on
https://wiki.debian.org/BusterPriorityRequalification

The e2fsprogs was one of the packages that where questioned if
it really needs to be Essential: yes / Priority: required.
It is also one of the largest packages in the minbase set.

While making things non-essential is quite hard because there's
no obvious path to take, as already has been discussed in this
bug report I'd like to suggest starting with what I just did
to the (src:util-linux) mount package.

step 1: Switch from Essential: yes to Important: yes

This will not be much of a change in practise. Higher level tools
like apt etc will still not want to uninstall the package, but
you can now uninstall it using dpkg without getting the 
'are you really sure you know what you're doing' question.
I'd say the most important difference is that according to
debian-policy (which doesn't know anything about Important: yes)
the package is now no longer Essential and thus other packages
are now allowed to add dependencies where needed.

step 2: Dowgrade from Priority: required to Priority: important

This means e2fsprogs will still be part of every normal install,
just not part of 'debootstrap --variant=minbase' (e.g. buildd chroots
and other specialized systems).
Pitfalls with this change would be that every package who needs
something from e2fsprogs (eg. lsattr, chattr) during build phase
must have a build-dependency on e2fsprogs or they will FTBFS.
Given we're still early in the Buster development cycle, I would
personally think this change is pretty safe to do now but depends
on how much fuzz you're willing to stir up. I'd like to offer
my help in fixing this (by filing bug reports and doing non-maintainer
uploads where needed).

Bonus step: consider chattr/lsattr move to util-linux?

As I understand it, chattr and lsattr used to be ext-specific. Nowadays
more filesystems seems to have implemented the same interface and thus
made the tools useful in a broader scope.
If I'm not mistaken in the past some tools that has been developed as
e2fsprogs utilities has moved to util-linux once they've become generic
enough. The chattr and lsattr tools seems to be widely enough used
in debian (codesearch.debian.net says 133 packages match chattr for
example), that it might be useful to keep these two tools in the
Essential set while moving the rest out. Not sure how much work
it would be, but maybe the chattr and lsattr implementations could
move over to util-linux (upstream) and after we can transition in
Debian to ship these utils in the 'util-linux' binary package?
This is mostly just a thought on how 'step 2' could be simplified.


I'm very keen on seeing this move forward, so I'd like to hear your
opinion on it. I'm also willing to help out where needed so please
speak up if you have any work in mind that needs to be done.

Regards,
Andreas Henriksson

Reply via email to