Is it a good practise to update @system first?

I always update @world almost every seven days and I only get into package conflicts, if I do not update for more than 60 days or so. Last time was 99 days ago and I had to resolve circular package dependencies and so forth manually.

I wrote this update script[1] for my weekly update routine, where I am still testing "--changed-use", instead of "--newuse":

   [...]
   no_tmpfs_file="/etc/portage/package.env/no_tmpfs.conf"
   [...]
   large_package_list=$(/bin/grep --extended-regexp --only-matching
   "[0-9a-zA-Z]+-[0-9a-zA-Z]+\/[-0-9a-zA-Z]+" "${no_tmpfs_file}")
   [...]
   /usr/bin/eix-sync
   if /usr/bin/eix --upgrade sys-apps/portage >/dev/null
   then
        /bin/echo -e "\e[01;31mA new version of 'sys-apps/portage' was
   found. Updating it first...\e[0m"
        /usr/bin/emerge --ask --oneshot sys-apps/portage
   fi
   /usr/bin/emerge --ask --update --deep --changed-use --tree --verbose
   --exclude="${large_package_list//$'\n'/ }" @world
   # always compile large packages as last packages
   /usr/bin/emerge --update --deep --changed-use --tree --verbose @world
   /usr/sbin/etc-update
   /usr/bin/emerge --ask --depclean --verbose
   /usr/bin/glsa-check --test all
   /usr/bin/glsa-check --list
   /usr/bin/glsa-check --fix --quiet all
   /usr/bin/revdep-rebuild --verbose -- --ask
   /usr/bin/eclean --deep --time-limit="1m" distfiles
   /usr/bin/eclean --deep --time-limit="1m" packages
   /usr/bin/eix-test-obsolete
   /usr/bin/elogv
   /usr/bin/eselect news read

-Ramon

[1] https://codeberg.org/keks24/dotfiles/src/branch/master/root/bin/update.sh

On 22/02/2022 07:24, hitachi303 wrote:

Am 22.02.2022 um 06:27 schrieb Andreas Fink:
On Mon, 21 Feb 2022 22:26:30 +0100
hitachi303 <gentoo-u...@konstantinhansen.de> wrote:



emerge -av --depclean <every huge program which will be updated anyway.
Stuff like firefox, thunderbird, etc.>

emerge -a --depclean --with-bdeps=n

only then when there are as few programs installed as possible I run
emerge --sync

emerge -Dua --reinstall changed-use @world
I think what you really are doing can be simplified by:
emerge -auvDN @system
emerge -auvDN @world

Once @system is updated it is much simpler to get @world to update too.
Maybe you have to help with a couple of `--exclude ATOM` when updating
world.

From time to time I ran into trouble with @system where emerge couldn't resolve blocks but using @world did not have this problems and went fine.


--
GPG public key: 5983 98DA 5F4D A464 38FD CF87 155B E264 13E6 99BF

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to