On 14/08/2021 22:20, Ramon Fischer wrote:
Is there any way to tell "portage", that packages like "qtwebengine",
"(ungoogled-)chromium", "firefox" and so on are always compiled as
last package?
The simplest way is to exclude those packages in the first update, and
then allow them in the second:
emerge -uDU @world --exclude "qtwebengine firefox chromium" && emerge
-uDU @world
The dependency tracker of portage will of course also exclude packages
that depend on the excluded packages, unless they themselves have
updates pending. In that case, they *might* get built twice; once
against the current version of the excluded packages, and then perhaps
again on the second run, if there's rebuild triggers involved.
Most of the time though, you won't run into cases of redundant
rebuilds. Rebuild triggers are not very common.
Thank you for your ideas!
I was actually hoping for a neat hack with "/etc/portage/env/" and >"/etc/portage/package.env/", where you can set environment variables.
I will try out the following solution:
$ < "/etc/portage/package.env/no_tmpfs.conf
# custom - 20181121 - rfischer: list packages, which are too big for
tmpfs
#app-emulation/qemu-kv no_tmpfs.conf
#app-office/libreoffice no_tmpfs.conf
#dev-java/icedtea no_tmpfs.conf
#dev-lang/ghc no_tmpfs.conf
#dev-lang/rust no_tmpfs.conf
#mail-client/thunderbird no_tmpfs.conf
#sci-libs/tensorflow no_tmpfs.conf
#sys-devel/gcc no_tmpfs.conf
#www-client/firefox no_tmpfs.conf
#www-client/ungoogled-chromium no_tmpfs.conf #throttle_make_emerge.conf
$ < "${HOME}/bin/update.sh"
[...]
large_package_list=$(/bin/grep --extended-regexp --only-matching
"[a-z]+-[a-z]+\/[-0-9a-zA-Z]+" "/etc/portage/package.env/no_tmpfs.conf")
[...]
/usr/bin/emerge --ask --update --deep --newuse --tree --verbose
--exclude="${large_package_list//$'\n'/ }" @world
/usr/bin/emerge --ask --update --deep --newuse --tree --verbose @world
-Ramon
On 15/08/2021 17:48, Nikos Chantziaras wrote:
On 14/08/2021 22:20, Ramon Fischer wrote:
Is there any way to tell "portage", that packages like "qtwebengine",
"(ungoogled-)chromium", "firefox" and so on are always compiled as
last package?
The simplest way is to exclude those packages in the first update, and
then allow them in the second:
emerge -uDU @world --exclude "qtwebengine firefox chromium" && emerge
-uDU @world
The dependency tracker of portage will of course also exclude packages
that depend on the excluded packages, unless they themselves have
updates pending. In that case, they *might* get built twice; once
against the current version of the excluded packages, and then perhaps
again on the second run, if there's rebuild triggers involved.
Most of the time though, you won't run into cases of redundant
rebuilds. Rebuild triggers are not very common.
--
GPG public key: 5983 98DA 5F4D A464 38FD CF87 155B E264 13E6 99BF
application/pgp-signature attachment, name=OpenPGP_signature
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 285 |
Nodes: | 16 (2 / 14) |
Uptime: | 70:24:08 |
Calls: | 6,488 |
Calls today: | 1 |
Files: | 12,096 |
Messages: | 5,275,488 |