Hello, Martin.

On Sun, Jul 25, 2021 at 22:32:10 -0000, Martin Vaeth wrote:
> Alan Mackenzie <a...@muc.de> wrote:

> > On Sun, Jul 25, 2021 at 16:18:25 -0000, Martin Vaeth wrote:

> >> Portage *cannot* know unless you tell it. The way to tell portage that
> >> a package is crucial for *you* is to put it into the world file (or
> >> into some set which is in your world file).

> > OK, so you're clever and you know this. You know to do the
> > couter-intuitive thing of putting @system packages into @world.

> No, I am doing the intuitive thing, and put *that particular*
> service-manager(s) which is crucial for my system in world.

You're being clever again and, perhaps unconsciously, being disdainful of
the less clever or experienced.  It's a reasonable expectation that an
operating system won't delete itself.  Gentoo doesn't always meet that
expectation.  You don't seem to see anything wrong with that.  

> > Less clever people like me follow the handbook, and assume that
> > packages in @system are protected.

> And they are right to do so. And openrc is not in @system (at least not
> in the profile which you have chosen), and certainly the handbook does
> not claim the contrary.

Now you're getting legalistic.  By @system I meant "the operating
system", not what some legal text defines it to be.  That "the handbook
does not claim the contrary" is poor reasoning.  If anything surprising
and painful is liable to happen, the handbook should explicitly point it
out.

> Your assumption that all packages which are in stage3 are also in
> @system is just plain wrong. It would actually be horrible if that
> would be the case.

> > Putting init-systems into @world is an unnatural thing to do

> No. Putting the packages which *you* want to use into world is
> the most natural thing to do.

It is unnatural to regard the operating system as a package.  It is
natural to assume the OS won't delete itself.  I'm unaware of any other
non-joke OS's which delete themselves without being asked.

[ .... ]

> > No, I did not make that mistake.

> You did. You would have done the same mistake if you would have
> emerged systemd with the same profile without putting it into world,
> and have configured your boot-loader to always load systemd:
> In that case, systemd would be critical to your system and openrc is
> completely superfluous.

> Why should you expect that systemd will not get removed in the above
> situation if you have not put it into world?
> And if you do not expect that: Why should you expect that this is
> different for openrc?
> Well, you do, because you obviously falsely assumed that you are
> using an openrc profile or something similar which let openrc
> magically make a "special" package for you in contrast to systemd.

Now you're trying to win an argument because you know portage etc.,
better than me.  And you're being pedantic and legalistic.  Quite simply
I expect that an OS, including Gentoo, will not delete itself unless
specifically asked by the user.  I'm not getting involved in arguments
about details.

Gentoo is not perfect.

[ .... ]

> > Fine for a very clever person, not so much for the rest of us.  I
> > installed my Gentoo in accordance with the handbook (as of 2017), and
> > I don't recall any suggestion of putting critical system packages
> > into the world file.

> I am sure that there is written something that you should put all
> packages which you want to use into the world file. And BTW, I am also
> sure that there is nothing written like "do not do this for @system
> packges".

No reasonable user is going to assume the OS will delete itself.  Very
many will regard the OS as something into which one installs packages,
not as a package itself.  There was nothing in the handbook to contradict
this natural view.

[ .... ]

> >> Except for the warning that you should read *very carefully* through
> >> the list of packages which are going to be removed.

> > That looks more like a "cover your backside" warning than a real
> > warning

> This is gentoo - a distribution which explicitly never hinders you to
> shoot yourself in the foot. And you really think that if there is even
> an explicit warning you should ignore it?

The warning was not very explicit.  An explicit warning would have said
"--depclean is capable of removing critical system packages".  As it
happened I didn't ignore the warning.  But some people might.

You seem to see nothing wrong with an OS being one keypress away from
destroying itself.  I do.  So our discussion is bound to be somewhat at
cross purposes.

> > - one that transfers the responsibility from the perpetrators of an
> > unsafe system to the victims.

> Oh, come on: You have misconfigured your system by making wrong
> assumptions, and now you call yourself the victim.

I did not misconfigure my system.  I followed the handbook, which did
nothing to correct what you call "wrong assumptions".  I am not a victim,
thankfully, but might easily have become one.  I have taken steps to
protect myself in the future.

I would like Gentoo to change such that this particular mechanism won't
claim any victims in the future.  You seem to prefer that there be
victims rather than have Gentoo change.

> Of course, the person who *configured* the system and decides to
> execute a command which clearly penalizes any misconfiguration
> is the one who is responsible.

I'm glad you're not the person responsible for safety in the place I
work.  There, specific steps are taken to avoid injury to people who make
mistakes.  For example, there are bars to prevent people from falling out
of windows, there are non-slip floor surfaces, and so on.

> > There is no specific warning that --depclean can remove critical
> > system files.  Probably there should be.

> Probably everybody should know that practically *every* package
> can be a critical system file - it all depends on your setup.

Please don't be like that.  You know damn well that only a few packages
are critical, in the sense that if they are removed they can't (easily)
be brought back again.  Games are not critical.  Media programs aren't
critical.  Things like email programs, ssh, web browsers probably aren't
critical to most people.  The init system, whichever one, is most
definitely critical as is the kernel and the boot loader.

[ .... ]

> .... Exceptions are packages which are absolutely needed for *every*
> functioning system and have *no* alternative. ....

The init system is absolutely needed for *every* system.  That there are
alternatives is no excuse for Gentoo to delete it.

[ .... ]

> > Any system that comes within one keypress of destruction, when the user
> > hasn't specifically requested it, is a buggy system.  portage is buggy.

> alias ls="rm -rf /*"
> ls

Don't be so silly, please.

[ .... ]

> > Ordinary users like me wonder what is up on learning that
> > portage deletes critical packages (without being asked) under _any_
> > circumstances.

> Again, that the package is critical for *your* setup is a
> particularity of *your* system.

The init system is critical to every system, even yours.  Again, Gentoo
sometimes deletes the init system, leaving a machine unbootable.  You
think that's fine.  To me, it's unacceptable.

I think our discussion has come to its natural end.

[ .... ]

-- 
Alan Mackenzie (Nuremberg, Germany).

Reply via email to