Daniel Campbell posted on Mon, 04 Nov 2013 02:50:27 -0600 as excerpted:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On 11/03/2013 10:15 PM, yac wrote:
>> On Sun, 03 Nov 2013 11:02:31 +0200 Alan McKinnon
>> <alan.mckin...@gmail.com> wrote:
>> 
>> [snip]
>>>> 
>>>> Afaik there is no official way to update gentoo, is there?
>>> 
>>> It's always been "emerge -avuND world"
>> [snip]
>> 
>> Is this documented annywhere? I have a hard time finding it. I can see
>> it mentioned eg. in man emerge in -c option but that's not good enough.

Read the handbook lately? =:^)

Handbook, part 2, Working with Gentoo, Chapter 1, A Portage Introduction, 
Doc_chapter 3, Maintaining Software (this is the amd64 link):

http://www.gentoo.org/doc/en/handbook/handbook-amd64.xml?
part=2&chap=1#doc_chap3

Look under the heading Updating your System.  That starts with...

emerge --update --ask world

... then discusses --deep, --withbdeps=y, and --newuse, so the example 
full update is ...

emerge --update --deep --with-bdeps=y --newuse world

--ask and --pretend are discussed in the same doc_chapter as well, as is 
-v (tho inconsistently, I don't see the long-option --verbose discussed, 
as it is for the others).

--depclean, --search and --unmerge are discussed in that chapter too, as 
is gentoolkit with equery and revdep-rebuild.  About the only thing 
missing is sets, and they're missing from working with portage (part 3) 
AFAICT as well, most likely because the handbooks simply haven't been 
updated for sets yet.

>> Even if it is documented, I think it would be very helpfull to have
>> such a way implemented as "kind of option" to emerge like `emerge
>> --standard-ugrade` that would just alias to -uaNDv or possibly leverage
>> sets like `emerge @upgrade`


This has been discussed before.  Zac could give you a summary and 
possibly point you at the thread, I'm sure.

I believe the reason it wasn't done is because the default options 
setting was added instead.  Well that and the fact that (as covered 
below), I guess most users setup their own scripts/aliases at some point, 
at which point the existence of something that general-purpose default 
built-in becomes moot.

> You could emulate this yourself by setting up an environment variable to
> pass to emerge, or use an alias like I do:
> 
> alias sysupdate='emerge -avuDN --with-bdeps=y @world'
> 
> (Note: I should probably extend this to accept $1 args, in case I want
> to add `-t` or something)
> 
> If you wanted something to cover more bases, you could make a script to
> do the above in addition to revdep-rebuild, python-updater, etc-update,
> and so on. Given the power and flexibility of portage/emerge and the
> extremely broad variety of needs that Gentoo meets, I believe it would
> be somewhat wasted work to add the option when users are already
> expected to read manpages and the Handbook. Perhaps -avuND should be
> made more obvious in a place or two in the documentation as a sort of
> compromise.

++

FWIW, I have a whole set of short, often 2-4 letter aliases/scripts that 
take care of the various options, as I'm lazy and find reaching for the 
"-" key difficult.  Most of them are broken down into ea* and ep* 
variants, for ask and pretend, and the default is oneshot so as not to 
pollute the world file (which is normally empty anyway, as is @system for 
that matter as I negated it in my profile, everything's in sets, tho I 
sometimes use the worldfile as a sort of "package purgatory" when I want 
to try something out and keep it updated, but am not sure I want it in 
one of my permanent sets yet).

Then there's esyn, which syncs both the gentoo tree and layman, as well 
as automatically handling ebuild patching and redigesting using a tree 
similar to the /etc/portage/patches/ tree, and does an automatic fetch 
deep world before its done.

Then there's the ead (depclean) and ear (revdep-rebuild) variants, as 
well as epc to lookup changelogs, ept* for tree, and eal for @smart-live-
rebuild.

Completing the set are eup (etc-update) and envup (env-update).

I have a similar set, but starting with k* instead of e*, for automatic 
mainline kernel fetching, building, etc.  There are git-kernel commands 
and tarball-kernel commands, tho I've not used the latter in a few years 
so it could well be bitrotted.

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman


Reply via email to