Gentoo Archives: gentoo-portage-dev

From: Marius Mauch <genone@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] Re: About "system" and "world"
Date: Tue, 23 Oct 2007 21:27:11
Message-Id: 20071023232438.3aa99dca@sheridan.genone.homeip.net
In Reply to: Re: [gentoo-portage-dev] Re: About "system" and "world" by Thomas de Grenier de Latour
1 On Tue, 23 Oct 2007 21:11:48 +0200
2 Thomas de Grenier de Latour <degrenier@×××××××××××.fr> wrote:
3
4 > On 2007/10/23, Marius Mauch <genone@g.o> wrote:
5 >
6 > > On Mon, 22 Oct 2007 21:29:02 -0700
7 > > Zac Medico <zmedico@g.o> wrote:
8 > >
9 > > > Well, you can already use SLOT atoms in your world file if you
10 > > > don't want the highest available. Packages that pull in >=foo are
11 > > > a different story though. I suppose we can add something like a
12 > > > - --upgrade=minimal option that prevents pulling in new slots if
13 > > > they aren't required.
14 > >
15 > > Don't restrict it to SLOTs though. "minimal" implies that only
16 > > upgrades required to satisfy the depgraph are performed.
17 >
18 > Couldn't this "minimal" behavior just be triggered by lack of the
19 > --upgrade option ("emerge -D <set>")?
20
21 --upgrade != the current --update (at least that's what I assumed)
22
23 > Actually, the current --upgrade behavior (with or without --deep)
24 > is a bit weird imho, i would prefer something like this (with foo
25 > being either a set or an atom):
26
27 Yes, --update has a history of being a mess of random behavior.
28 Personally I'd drop it completely, or alias it to --noreplace.
29
30 > * "emerge foo": do the minimum upgrades or new installs required to
31 > get foo satisfied. Only its direct deps are checked (and direct
32 > deps of the unsatisfied ones, etc.), with the "minimal" heuristic
33 > (upgrade them only if stricly required).
34 >
35 > * "emerge -u foo": do all required new installs and possible upgrades
36 > of foo. Only its direct deps are checked (and direct deps of the
37 > unsatisfied ones, etc.), with the "minimal" heuristic (upgrade them
38 > only if strictly needed).
39 >
40 > * "emerge -D foo": do the minimal upgrades or new installs required
41 > to get foo satisfied. Also, check all of its direct and indirect
42 > deps, with the "minimal" heuristic (upgrade only if strictly needed).
43 >
44 > * "emerge -uD foo": do all required new installs and possible
45 > upgrades of foo. Also, all its direct and indirect deps are checked,
46 > and upgraded where possible.
47
48 Maybe --upgrade as name was an unfortunate choice, --resolver might be
49 better. What I'd like ideally (as a user) is to replace --update,
50 --deep, --noreplace and --emptytree with the following options:
51
52 --resolver={minimal,noslotchange,leastchange,default}
53 minimal: select the lowest possible version
54 noslotchange: like default, but try to avoid slotchanges
55 leastchange: select the version with the smallest version delta
56 compared to the installed version, otherwise like default
57 default: current behavior
58
59 --rebuild={never,always,changeduse,newuse,changeddeps,selected}
60 never: never rebuild packages
61 always: always rebuild packages (like current --emtpytree)
62 changeduse: rebuild packages if $USE has changed
63 newuse: rebuild packages if $USE or $IUSE has changed
64 changeddeps: rebuild packages if any of its direct dependencies were
65 updated
66 selected: rebuild the selected arguments (root nodes)
67
68 --deplevel=<n>
69 check n level of dependencies for updates (with -1 == infinite)
70 of course all dependencies have to be satisfied, this controls only
71 what deps should be checked for optional updates
72
73 current defaults would be --resolver=default --rebuild=selected
74 --deplevel=0
75
76 --update would be --rebuild=never --deplevel=1
77 --deep would be --deplevel=-1
78 --emptytree would be --rebuild=always --deplevel=-1
79
80 But that's just me dreaming of a better world, where we don't have
81 to deal with legacies ;)
82
83 Marius
84
85 --
86 Public Key at http://www.genone.de/info/gpg-key.pub
87
88 In the beginning, there was nothing. And God said, 'Let there be
89 Light.' And there was still nothing, but you could see a bit better.

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-portage-dev] Re: About "system" and "world" Thomas de Grenier de Latour <degrenier@×××××××××××.fr>