public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
From: Alan Mackenzie <acm@muc.de>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] --depclean and openrc [Was: Wayland! Beware of!]
Date: Fri, 25 Oct 2024 19:22:01 +0000	[thread overview]
Message-ID: <Zxvv2SzoADjBLwkE@MAC.fritz.box> (raw)
In-Reply-To: <de69e36b-5179-4179-bdb9-730d51b5ae82@gentoo.org>

Hello, Eli.

On Tue, Sep 24, 2024 at 15:36:43 -0400, Eli Schwartz wrote:
> On 9/24/24 2:53 PM, Alan Mackenzie wrote:
> >> Regarding the daemontools situation:

> >> """
> >> for example with --depclean preserving packages in system, as well as world
> >> """

> >> Is not a valid suggestion, since --depclean already does precisely this,
> >> but openrc isn't a package in system, it is a package that satisfies a
> >> recursive dependency of system.

> > I think that's a rather obscure distinction.  Do users actually perceive
> > virtual packages this way?  I certainly don't.

> >> As far as portage knows, it is already doing exactly what you want it
> >> to do, as described in the Package Manager Specification.

> > My machine would have become unbootable long before I got around to
> > reading that spec.


> Indeed, you are correct, but I am not sure why you'd need to read the
> spec anyway.

> That is why I am correct too -- since I am pointing out that things like
> requesting specific portage / PMS behavior when interacting with virtual
> packages is not how one should perceive the end-user problem.

> (A virtual package is "just" a package with no installed files. How
> virtual packages are used is a matter of Gentoo policy, not a matter of
> how portage works. And PMS only mentions virtual packages once, and that
> one time is to state that the old way was removed from the spec and that
> new style virtuals are "just packages, and have no special treatment".)

> Since it is "just a package", the solution should lie in fixing
> ::gentoo, not in fixing the "emerge" command. That's what the re-opened
> bug is about. :)

What is getting fixed are the data.  That leaves the same problem in the
emerge code to bite again the next time there are faulty data.

> >> This would break a whole lot of use cases, as then one would no longer
> >> be able to change their system to suit themselves using the intended
> >> power of virtuals.

> > What is wrong with # emerge --unmerge?  I fail to see why that isn't
> > entirely satisfactory.


> Recommending an option that can break your system is a workaround, not a
> solution. Surely we want to end up in a good state of affairs, eventually?

We've already established that --depclean can break one's system, not
just theoretically but in real world use.  --unmerge is surely safer -
you're unmerging specific packages which, presumably, you've already
checked for safety.

There doesn't appear to be anything better in emerge - I've looked but
not found an emerge action to unmerge specific packages only, apart from
--unmerge.  Why is there not a version of --unmerge which does safety
checks first?

The envisaged work flow seems to be doing things like --deselect,
followed by --depclean, praying that the latter isn't going to break the
system.  Given how much safer --unmerge is than --depclean, I don't
understand why the emerge man page puts a bold face warning right at the
start of --unmerge, but not on --depclean.

> The emerge manpage warns you against using --unmerge for good reason.

But doesn't state that reason or give a workable alternative.  Saying it
can remove important packages is unhelpful if it doesn't give an
alternative which can't.

My current workflow for clearing out orphaned packages is to do emerge
-p --depclean, then use emerge --unmerge on those packages listed which
aren't critical system packages or needed application programs.

> >> (It would also be impossible to install vim or emacs, then uninstall
> >> nano. For that matter, it would be impossible for an emacs user to
> >> install vim, try it out for a day, decide they don't like it, and
> >> uninstall vim. Vim would be there to stay: forever.)

> > What about the users, who can't be all that rare, who wish all of
> > nano, vim, and emacs to be installed?  They're application programs,
> > not system services.


> If you want all 3, then virtual/editor isn't an appropriate way to
> install a large collection of apps. Add them to your world file.

virtual/editor is an obscure internal mechanism of portage.  If I emerge
vim, and emerge Emacs, I expect portage to respect my intentions, as
well as not assuming I want rid of nano or anything else in @system.

> virtual/editor doesn't restrict how many editors you have installed, it
> simply requires you have at least one.

> And it shouldn't require that any editors you install, cannot be
> uninstalled with --depclean

--depclean is too clumsy.  It assumes I want to unmerge nano, for reasons
which are surely not intended UI, but just because that's the way it was
implemented.  I think a --ask flag only asks whether to delete all listed
packages or none, not each package individually.  What I would prefer is
an interface by which _I_ specify which packages are to be removed.

> -- 
> Eli Schwartz

-- 
Alan Mackenzie (Nuremberg, Germany).


  reply	other threads:[~2024-10-25 19:22 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-23 20:14 [gentoo-user] Wayland! Beware of! Alan Mackenzie
2024-09-23 21:11 ` Eli Schwartz
2024-09-23 22:08   ` Alan Mackenzie
2024-09-23 22:54     ` Eli Schwartz
2024-09-24 11:30       ` [gentoo-user] --depclean and openrc [Was: Wayland! Beware of!] Alan Mackenzie
2024-09-24 11:40         ` Arsen Arsenović
2024-09-24 12:34           ` [gentoo-user] --depclean and openrc Alan Mackenzie
2024-09-24 15:24             ` Eli Schwartz
2024-09-24 18:15               ` Alan Mackenzie
2024-09-27  0:09           ` [gentoo-user] --depclean and openrc [Was: Wayland! Beware of!] Mitchell Dorrell
2024-09-24 15:15         ` Eli Schwartz
2024-09-24 18:53           ` Alan Mackenzie
2024-09-24 19:36             ` Eli Schwartz
2024-10-25 19:22               ` Alan Mackenzie [this message]
2024-10-26  3:10                 ` Walter Dnes
2024-10-27  1:53                 ` Eli Schwartz
2024-10-27 22:52                   ` Alan Mackenzie
2024-10-27 23:14                     ` Eli Schwartz
2024-09-25  0:32             ` Matt Jolly
2024-09-24  0:43     ` [gentoo-user] Wayland! Beware of! Michael Orlitzky
2024-09-24  0:52       ` Mitchell Dorrell
2024-09-24  1:13         ` Matt Jolly
2024-09-24  1:52         ` Eli Schwartz
2024-09-24  9:46           ` Mitchell Dorrell
2024-09-25  0:14             ` Matt Jolly
2024-09-24 10:05     ` Dr Rainer Woitok
2024-09-24 22:00   ` Walter Dnes
2024-09-25  1:42     ` Eli Schwartz
2024-09-25 10:00       ` Walter Dnes
2024-09-25 11:53         ` Arsen Arsenović
2024-09-25 22:21           ` Walter Dnes
2024-09-26  0:25             ` Eli Schwartz
2024-09-26  5:08               ` Walter Dnes
2024-09-26 19:18             ` James Cloos
2024-09-25 14:26         ` Eli Schwartz
2024-09-25 14:40           ` jay
2024-09-26  0:19       ` Michael Orlitzky
2024-09-23 21:12 ` Arsen Arsenović
2024-09-23 21:20 ` Wol
2024-09-23 22:53   ` karl
2024-09-24  7:10     ` Wols Lists
2024-09-24 18:32       ` What is what (Re: [gentoo-user] Wayland! Beware of!) karl
2024-09-24 23:44         ` Wols Lists

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Zxvv2SzoADjBLwkE@MAC.fritz.box \
    --to=acm@muc.de \
    --cc=gentoo-user@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox