View previous topic :: View next topic |
Author |
Message |
hujuice Guru
Joined: 16 Oct 2007 Posts: 336 Location: Rome, Italy
|
Posted: Sat Mar 23, 2024 8:49 pm Post subject: change profile, save time and energy emerging @world |
|
|
For what I understand, following the instructions (https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_instructions), emerging the @world set can be lightened a bit.
Code: | emerge --ask --emptytree --exclude "sys-devel/gcc sys-devel/binutils sys-libs/glibc dev-build/libtool" @world |
Am I correct? _________________ Who hasn't a spine, should have a method.
Chi non ha carattere, deve pur avere un metodo.
Last edited by hujuice on Sat Mar 23, 2024 10:20 pm; edited 1 time in total |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5104 Location: Bavaria
|
Posted: Sat Mar 23, 2024 8:58 pm Post subject: Re: change profile, save time and energy emerging @world |
|
|
I did the same today and I had added also/additional to this command:
linux-firmware intel-microcode gentoo-sources linux-headers baselayout
because for these no compilation job has to be done (and baselayout leads to many updates of our etc-files). _________________ https://wiki.gentoo.org/wiki/User:Pietinger |
|
Back to top |
|
|
hujuice Guru
Joined: 16 Oct 2007 Posts: 336 Location: Rome, Italy
|
Posted: Sat Mar 23, 2024 9:07 pm Post subject: Re: change profile, save time and energy emerging @world |
|
|
pietinger wrote: | I did the same today and I had added also/additional to this command:
linux-firmware intel-microcode gentoo-sources linux-headers baselayout
because for these no compilation job has to be done (and baselayout leads to many updates of our etc-files). |
Good selection. _________________ Who hasn't a spine, should have a method.
Chi non ha carattere, deve pur avere un metodo. |
|
Back to top |
|
|
sublogic Apprentice
Joined: 21 Mar 2022 Posts: 269 Location: Pennsylvania, USA
|
Posted: Sat Mar 23, 2024 9:36 pm Post subject: Re: change profile, save time and energy emerging @world |
|
|
hujuice wrote: | Code: | emerge --ask --emptytree --exclude sys-devel/gcc sys-devel/binutils sys-libs/glibc dev-build/libtool @world |
| But you have to quote your exclude list since it contains embedded spaces. |
|
Back to top |
|
|
hujuice Guru
Joined: 16 Oct 2007 Posts: 336 Location: Rome, Italy
|
Posted: Sat Mar 23, 2024 10:21 pm Post subject: Re: change profile, save time and energy emerging @world |
|
|
sublogic wrote: | you have to quote your exclude list |
Yes, I wrote here before doing it.
Edited. _________________ Who hasn't a spine, should have a method.
Chi non ha carattere, deve pur avere un metodo. |
|
Back to top |
|
|
yzg Guru
Joined: 18 Jun 2005 Posts: 499
|
Posted: Sat Mar 23, 2024 10:43 pm Post subject: |
|
|
Do we need to emerge emptytree in one hit? Can we just rely on daily world update to do this on slower pace?
Full emptytree emerge will take:
Estimated update time: 3 days, 4 hours, 14 minutes |
|
Back to top |
|
|
hujuice Guru
Joined: 16 Oct 2007 Posts: 336 Location: Rome, Italy
|
Posted: Sun Mar 24, 2024 9:11 am Post subject: |
|
|
yzg wrote: | Estimated update time: 3 days, 4 hours, 14 minutes |
Ouch.
gcc is relevant, you can save relevant time excluding it.
Then, maybe, you can proceed with a clean up, and use distcc if you have more than one computer. _________________ Who hasn't a spine, should have a method.
Chi non ha carattere, deve pur avere un metodo. |
|
Back to top |
|
|
linux_os2 Apprentice
Joined: 29 Aug 2018 Posts: 251 Location: Zedelgem Belgium
|
Posted: Sun Mar 24, 2024 11:10 am Post subject: |
|
|
emerge --ask --emptytree @world took 22hr 1644 reemerges |
|
Back to top |
|
|
setan Tux's lil' helper
Joined: 21 Feb 2024 Posts: 86
|
Posted: Sun Mar 24, 2024 11:28 am Post subject: |
|
|
For my ~1500 merges it took under 24 hours.
Why aren't these the official instructions? GCC builds a loong time. |
|
Back to top |
|
|
hujuice Guru
Joined: 16 Oct 2007 Posts: 336 Location: Rome, Italy
|
Posted: Sun Mar 24, 2024 2:34 pm Post subject: |
|
|
setan wrote: | For my ~1500 merges it took under 24 hours.
Why aren't these the official instructions? GCC builds a loong time. |
The instructions propose:
Code: | emerge --ask --emptytree --getbinpkg @world |
Using binary packages it shouldn't be so long. The builds will be probably less optimized.
Then, with ordinary updates, it will be day by day 100% gentooish again.
If you don't want it, like I don't, you have to wait for build time. _________________ Who hasn't a spine, should have a method.
Chi non ha carattere, deve pur avere un metodo. |
|
Back to top |
|
|
yzg Guru
Joined: 18 Jun 2005 Posts: 499
|
Posted: Sun Mar 24, 2024 11:50 pm Post subject: |
|
|
Is there a problem of NOT doing --emptytree emerge and instead -uvDN emerge? |
|
Back to top |
|
|
Phoenix591 Guru
Joined: 17 Sep 2007 Posts: 493
|
Posted: Sun Mar 24, 2024 11:55 pm Post subject: |
|
|
yzg wrote: | Is there a problem of NOT doing --emptytree emerge and instead -uvDN emerge? |
Yes. The profile changed the settings used to compile things besides your cflags. Rebuilding everything is necessary to apply those changes. If you're worried about the time, you could use binpkgs. |
|
Back to top |
|
|
figueroa Advocate
Joined: 14 Aug 2005 Posts: 3005 Location: Edge of marsh USA
|
Posted: Mon Mar 25, 2024 3:35 am Post subject: |
|
|
yzg wrote: | Is there a problem of NOT doing --emptytree emerge and instead -uvDN emerge? |
Use the suggested excludes to avoid not compiling selected packages unnecessarily.
Choose the timing of your migration to the new profile for maximum convenience to you. There is no rush.
While the full rebuild is taking place, you should be able to continue to use your computer normally. Just push the window into the background and look in on it from time-to-time. Worst case, if trouble ensues sweat it out.
I'm in the process of doing this now on an x86 system, 8 GB RAM, AMD Phenom 8650 x3. It will take a long time, but I don't intend to watch the emerge window. _________________ Andy Figueroa
hp pavilion hpe h8-1260t/2AB5; spinning rust x3
i7-2600 @ 3.40GHz; 16 gb; Radeon HD 7570
amd64/23.0/split-usr/desktop (stable), OpenRC, -systemd -pulseaudio -uefi |
|
Back to top |
|
|
hujuice Guru
Joined: 16 Oct 2007 Posts: 336 Location: Rome, Italy
|
Posted: Mon Mar 25, 2024 10:31 am Post subject: |
|
|
Can I use distcc between two different profiles?
Same toolchain version.
I have two desktops (lots of UI heavy progs) and for some reason I prefer to proceed one by one. _________________ Who hasn't a spine, should have a method.
Chi non ha carattere, deve pur avere un metodo. |
|
Back to top |
|
|
tld Veteran
Joined: 09 Dec 2003 Posts: 1845
|
Posted: Tue Mar 26, 2024 10:31 pm Post subject: |
|
|
Thanks for this suggestion regarding the --exclude! Huge time saver.
Question: Is there any reason to NOT exclude virtual/*? I have to think there's no real compiling there(?).
Thanks!
Tom |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5104 Location: Bavaria
|
|
Back to top |
|
|
tld Veteran
Joined: 09 Dec 2003 Posts: 1845
|
Posted: Wed Mar 27, 2024 2:13 am Post subject: |
|
|
Thanks! (And thanks to Havin_it). That looks like a great approach. I was actually wondering about those acct-user/group ones too.
Tom |
|
Back to top |
|
|
figueroa Advocate
Joined: 14 Aug 2005 Posts: 3005 Location: Edge of marsh USA
|
Posted: Wed Mar 27, 2024 3:31 am Post subject: |
|
|
Before proceeding with migrating my x86 system, I made myself a short cheatsheet to follow. It went almost flawlessly, though it took about 26 hours doing the emerge --emptytree, and one program failed to install, media-sound/audacity, which I decided to depclean. With that migration under my belt, I updated the cheatsheet for my other similar x86_64 systems.
With the caution that this is MY cheatsheet and it may not (or probably won't) work for you, so if you like the idea, be sure to adapt it for your own use case:
Code: | https://www.gentoo.org/support/news-items/2024-03-22-new-23-profiles.html
1. Remove CHOST from make.conf
2. Select new profile [46] default/linux/amd64/23.0/split-usr/desktop (stable)
3. There are no binpkgs so proceed as follows:
emerge -1a sys-devel/binutils
emerge -1a --nodeps sys-devel/gcc
emerge -1a sys-libs/glibc
4. Doublecheck CHOST with "emerge --info | grep CHOST"
6. Run "env-update && source /etc/profile"
7. Run "emerge --ask --emptytree @world" as shown below to save electrons:
emerge --ask --emptytree --exclude "$(qlist -IC acct-) dev-build/libtool $(qlist -IC media-fonts/) sys-apps/baselayout sys-devel/binutils sys-devel/gcc sys-firmware/intel-microcode sys-kernel/gentoo-sources sys-kernel/linux-firmware sys-kernel/linux-headers sys-libs/glibc $(qlist -IC -- -bin) $(qlist -IC virtual/)" @world
8. Rebuild and install kernel
9. Reboot |
Your mileage may vary. Feel free to rain on my parade. _________________ Andy Figueroa
hp pavilion hpe h8-1260t/2AB5; spinning rust x3
i7-2600 @ 3.40GHz; 16 gb; Radeon HD 7570
amd64/23.0/split-usr/desktop (stable), OpenRC, -systemd -pulseaudio -uefi |
|
Back to top |
|
|
tld Veteran
Joined: 09 Dec 2003 Posts: 1845
|
Posted: Wed Mar 27, 2024 6:57 am Post subject: |
|
|
I plan to do something similar to the post by Havin_it referenced above. I'm unclear as to whether or not to use the --keep-going, ad what the ramifications are.
I was wondering in general as to what the options are if something fails etc, in terms of possibly needing to start over completely etc...a bit confused on that.
Tom |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2420
|
Posted: Wed Mar 27, 2024 7:26 am Post subject: |
|
|
// edited out something I was wrong about
tld wrote: | I was wondering in general as to what the options are if something fails etc, in terms of possibly needing to start over completely etc...a bit confused on that.
Tom |
You either emerge --resume or start completely over. Or have a list of packages to be rebuilt and pass the remaining ones to portage. Those are the options. There's no option to automatically continue. Portage does not see any reason to rebuild those packages so you can't rely on it detecting the remaining ones.
Best Regards,
Georgi
Last edited by logrusx on Sat Mar 30, 2024 4:50 pm; edited 4 times in total |
|
Back to top |
|
|
C5ace Guru
Joined: 23 Dec 2013 Posts: 484 Location: Brisbane, Australia
|
Posted: Wed Mar 27, 2024 7:42 am Post subject: |
|
|
Just finished 1 Desktop, 3 Laptops and 1 USB drive. All have Gentoo, XFce Libreoffice Thunderbird, Firefox, VLC and lots of other stuff installed.
1.) Changed profile from [12] default/linux/amd64/17.1/no-multilib (exp) to [49] default/linux/amd64/23.0/split-usr/no-multilib (stable) *
2.) Removed CHOST="x86_64-pc-linux-gnu" from /etc/portage/make.conf
3.) emerge -av --update --deep --with-bdeps=y --changed-use --newuse --backtrack=300 --tree --keep-going=y --verbose-conflicts @world
4.) emerge --depclean
5.) revdep-rebuild
Everything is working fine after updating about 250 packages. _________________ Observation after 30 years working with computers:
All software has known and unknown bugs and vulnerabilities. Especially software written in complex, unstable and object oriented languages such as perl, python, C++, C#, Rust and the likes. |
|
Back to top |
|
|
tld Veteran
Joined: 09 Dec 2003 Posts: 1845
|
Posted: Wed Mar 27, 2024 11:02 am Post subject: |
|
|
logrusx wrote: | You either emerge --resume or start completely over. Or have a list of packages to be rebuilt and pass the remaining ones to portage. | Thanks! I think I'm not going to use the --keep-going, and rely on the --resume (and possibly --skipfirst if there's some error I can't otherwise resolve). Thanks again.
Tom |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2420
|
Posted: Wed Mar 27, 2024 11:28 am Post subject: |
|
|
// I edited out something I was wrong about here
Best Regards,
Georgi
Last edited by logrusx on Sat Mar 30, 2024 4:51 pm; edited 2 times in total |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1918
|
Posted: Wed Mar 27, 2024 12:27 pm Post subject: |
|
|
figueroa wrote: | Code: | emerge --ask --emptytree --exclude "$(qlist -IC acct-) dev-build/libtool $(qlist -IC media-fonts/) sys-apps/baselayout sys-devel/binutils sys-devel/gcc sys-firmware/intel-microcode sys-kernel/gentoo-sources sys-kernel/linux-firmware sys-kernel/linux-headers sys-libs/glibc $(qlist -IC -- -bin) $(qlist -IC virtual/)" @world |
|
FWIW, you can replace most of those qlist commands with, e.g., virtual/* and the like in the exclude list. |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5104 Location: Bavaria
|
Posted: Wed Mar 27, 2024 12:37 pm Post subject: |
|
|
tld wrote: | [...] I'm unclear as to whether or not to use the --keep-going, ad what the ramifications are.
I was wondering in general as to what the options are if something fails etc, in terms of possibly needing to start over completely etc...a bit confused on that. |
I never recommend "--keep-going" ... because if there is an error it is better to find the reason for it and then correct the error before starting emerge again. If someone is afraid to start "emerge -e" again, then I want point to this brilliant solution from @Massimo B. =>
https://forums.gentoo.org/viewtopic-p-8821469.html#8821469 _________________ https://wiki.gentoo.org/wiki/User:Pietinger |
|
Back to top |
|
|
|