Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
23.0 profile migration: power outage / reboot proof?[solved]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3628

PostPosted: Thu Mar 28, 2024 12:29 pm    Post subject: 23.0 profile migration: power outage / reboot proof?[solved] Reply with quote

Talking openrc here.

Since unplanned power outage happen here,
it is important to know how migration is expected to be reboot proof, especially during emerge -e world which is expected to last 4+ days ?

Maybe the profile selection once achieved is expected to reconfigure accordingly? [noob here].

Because lowend system here, although most packages build faster with kernel configured for SMT a few favor duration wise to be build with kernel nosmt.
Another reason to know if system is supposed to support reboot during that lengthy process.

Thks 4 ur attention, interest & support.
_________________
USE="-* ..." in /etc/portage/make.conf here.
LT: "I've been doing a passable imitation of the Fontana di Trevi, except my medium is mucus. Sooo much mucus. "


Last edited by CaptainBlood on Thu Mar 28, 2024 3:28 pm; edited 1 time in total
Back to top
View user's profile Send private message
eeckwrk99
Apprentice
Apprentice


Joined: 14 Mar 2021
Posts: 163
Location: Gentoo forums

PostPosted: Thu Mar 28, 2024 1:10 pm    Post subject: Re: 23.0 profile migration: power outage / reboot proof? Reply with quote

CaptainBlood wrote:
especially during emerge -e world which is expected to last 4+ days ?

With or without --getbinpkg?
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3628

PostPosted: Thu Mar 28, 2024 1:17 pm    Post subject: Re: 23.0 profile migration: power outage / reboot proof? Reply with quote

eeckwrk99 wrote:
With or without --getbinpkg?
Without as far as I understand.

Required packages: 3267

Thks 4 ur attention, interest & support.
_________________
USE="-* ..." in /etc/portage/make.conf here.
LT: "I've been doing a passable imitation of the Fontana di Trevi, except my medium is mucus. Sooo much mucus. "
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1539

PostPosted: Thu Mar 28, 2024 2:20 pm    Post subject: Reply with quote

Somebody mentioned the exact list of packages needing a rebuild could be derived by grepping the database but didn't say how. If you feel adventurous, you could check what's the difference between the two profiles and figure out what to grep for. Regarding me, that goes beyond my knowledge and abilities so I just went with --getbinpkg. It took like 6 hours even with that as apparently the merging phase of binary packages takes quite some time too.

Otherwise if you want to be on the safer side, try --getbinkg first and then emerge again from source.

p.s. 3267 packages are quite a few, even my bloated system has only half that number.

Best Regards,
Georgi
Back to top
View user's profile Send private message
eeckwrk99
Apprentice
Apprentice


Joined: 14 Mar 2021
Posts: 163
Location: Gentoo forums

PostPosted: Thu Mar 28, 2024 2:23 pm    Post subject: Re: 23.0 profile migration: power outage / reboot proof? Reply with quote

CaptainBlood wrote:
eeckwrk99 wrote:
With or without --getbinpkg?
Without as far as I understand.
Required packages: 3267

Using --getbinpkg as suggested in the news item would really help then:
News Item wrote:
Note 2: In case you are already familiar with binary packages, you should be
able to add "--getbinpkg" to the emerge calls to speed things up.
The use of binary packages is completely optional though, and also not
as much tested as the source-based upgrade path yet.

I upgraded to 23.0 profile on an old laptop with binary packages, didn't have any issue.
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3628

PostPosted: Thu Mar 28, 2024 2:29 pm    Post subject: Reply with quote

Thks 4 ur advice.
Unsure how this would go along with /etc/portage/package.use/* constraints?

Thks 4 ur attention, interest & support.
_________________
USE="-* ..." in /etc/portage/make.conf here.
LT: "I've been doing a passable imitation of the Fontana di Trevi, except my medium is mucus. Sooo much mucus. "
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1539

PostPosted: Thu Mar 28, 2024 2:32 pm    Post subject: Reply with quote

CaptainBlood wrote:
Thks 4 ur advice.
Unsure how this would go along with /etc/portage/package.use/* constraints?

Thks 4 ur attention, interest & support.


At the end of emerge verbose output you'll get a report on USE incompatibilities along with possibly more than one suggestion per package on how to change them. You then decide whether you want to proceed or what and if you will change it.

p.s. If I understand sam_ correctly, termination of the emerge session should not be a problem. The system should still run.

Best Regards,
Georgi
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3628

PostPosted: Thu Mar 28, 2024 3:27 pm    Post subject: Reply with quote

Giving it a dive :roll:

Thks 4 ur attention, interest & support.
_________________
USE="-* ..." in /etc/portage/make.conf here.
LT: "I've been doing a passable imitation of the Fontana di Trevi, except my medium is mucus. Sooo much mucus. "
Back to top
View user's profile Send private message
mkyral
Apprentice
Apprentice


Joined: 06 May 2007
Posts: 185
Location: Czech Republic

PostPosted: Thu Mar 28, 2024 3:39 pm    Post subject: Reply with quote

The issue with
Code:
emerge --emptytree
is that the progress is not saved, so if something fails, you have to start from beginning.

For me, emerge failed on some packages and continue failed on some multiple packaged in the list (was not an issue with an initial command). So at the end I've generated a list of packages to emerge and used
Code:
cat list|xargs emerge -1 --nodeps
to process. That way I have full control what was merged and what is still in the queue.
Back to top
View user's profile Send private message
CaptainBlood
Advocate
Advocate


Joined: 24 Jan 2010
Posts: 3628

PostPosted: Thu Mar 28, 2024 3:43 pm    Post subject: Reply with quote

Didn't u tried to resume with
Code:
emerge --resume
or
Code:
emerge --resume --exclude ....

Did it failed?

Thks 4 ur attention, interest & support.
_________________
USE="-* ..." in /etc/portage/make.conf here.
LT: "I've been doing a passable imitation of the Fontana di Trevi, except my medium is mucus. Sooo much mucus. "


Last edited by CaptainBlood on Thu Mar 28, 2024 3:45 pm; edited 1 time in total
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1539

PostPosted: Thu Mar 28, 2024 3:45 pm    Post subject: Reply with quote

mkyral wrote:
The issue with
Code:
emerge --emptytree
is that the progress is not saved, so if something fails, you have to start from beginning.


Code:
emerge --resume


https://forums.gentoo.org/viewtopic-p-8821469.html#8821469

Best Regards,
Georgi
Back to top
View user's profile Send private message
mkyral
Apprentice
Apprentice


Joined: 06 May 2007
Posts: 185
Location: Czech Republic

PostPosted: Fri Mar 29, 2024 7:15 am    Post subject: Reply with quote

CaptainBlood wrote:
Didn't u tried to resume with
Code:
emerge --resume
or
Code:
emerge --resume --exclude ....

Did it failed?

Thks 4 ur attention, interest & support.


I have --keep-going enabled and it didn't continue. I also tried --resume --skipfirst and it didn't continue. At the end I've forced continue by generating a full list for emerge --empty-tree, remove completed packages and rest emerge via
Code:
cat packages.list| xargs emerge -1 --nodeps


Later on more packages failed due to issue with autotools bin packages. I also have more issues with my configuration: mixed amd64/~amd64, openRC, split-usr and plasma6. Not all are not solved yet - e.g. I can't reboot or poweroff directly from KDE. It worked in 17.1, so probably caused by binpkg and split-usr conbination.
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1539

PostPosted: Fri Mar 29, 2024 8:12 am    Post subject: Reply with quote

mkyral wrote:
CaptainBlood wrote:
Didn't u tried to resume with
Code:
emerge --resume
or
Code:
emerge --resume --exclude ....

Did it failed?

Thks 4 ur attention, interest & support.


I have --keep-going enabled and it didn't continue. I also tried --resume --skipfirst and it didn't continue. At the end I've forced continue by generating a full list for emerge --empty-tree, remove completed packages and rest emerge via
Code:
cat packages.list| xargs emerge -1 --nodeps


Later on more packages failed due to issue with autotools bin packages. I also have more issues with my configuration: mixed amd64/~amd64, openRC, split-usr and plasma6. Not all are not solved yet - e.g. I can't reboot or poweroff directly from KDE. It worked in 17.1, so probably caused by binpkg and split-usr conbination.


// edited out something I was wrong about.

Emerge --resume --exclude doesn't make sense too. The only option you can pass, aside from --verbose --pretend --ask to emerge --resume that makes sense is --skipfirst.

Best Regards,
Georgi


Last edited by logrusx on Sat Mar 30, 2024 4:49 pm; edited 2 times in total
Back to top
View user's profile Send private message
pietinger
Moderator
Moderator


Joined: 17 Oct 2006
Posts: 4160
Location: Bavaria

PostPosted: Fri Mar 29, 2024 8:31 am    Post subject: Reply with quote

logrusx wrote:
[...] I'm not sure if you read that in another thread where I explained that numerous times, but that misconception is getting out of hand [...]

Many users do not read the other posts ... but the more links we put between our posts, the more likely users are to come across the original post ... ;-)
_________________
https://wiki.gentoo.org/wiki/User:Pietinger
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1539

PostPosted: Fri Mar 29, 2024 8:47 am    Post subject: Reply with quote

pietinger wrote:
logrusx wrote:
[...] I'm not sure if you read that in another thread where I explained that numerous times, but that misconception is getting out of hand [...]

Many users do not read the other posts ... but the more links we put between our posts, the more likely users are to come across the original post ... ;-)


I edited my responses with colored, bold and underlined text in that other thread as I doubted back then they were understood or even noticed. With the above statement I only wanted to find out if my suspicion is right.

Best Regards,
Georgi
Back to top
View user's profile Send private message
mkyral
Apprentice
Apprentice


Joined: 06 May 2007
Posts: 185
Location: Czech Republic

PostPosted: Fri Mar 29, 2024 9:49 am    Post subject: Reply with quote

Sorry, I can't remember everything. Especially when I do --emptytree emerge occasionally. I've solved it by my way, but I would like to see something similar to git stash command. Easy store current state, allow to fix issue e.g. by emerging missing dependency and then restore state and continue with emerge.

This is valid only for the --emptytree option, in any other cases is portage able to continue from point of fail.
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1539

PostPosted: Fri Mar 29, 2024 9:53 am    Post subject: Reply with quote

Try this:

https://forums.gentoo.org/viewtopic-p-8821469.html#8821469

p.s.

mkyral wrote:
Sorry, I can't remember everything.


Me too. That's why I create cheat sheets, bookmarks, add comments and so on. Especially with the age advancing, that becomes more and more important.

Best Regards,
Georgi
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21639

PostPosted: Fri Mar 29, 2024 2:59 pm    Post subject: Reply with quote

logrusx wrote:
--keep-going only affects the dependency resolution phase causing portage to continue after the first error and find and report as many of them as it can. It has no relationship to whatever happens during emerging phase.
My understanding is that emerge --keep-going is primarily about the emerging phase. When a package fails, Portage removes it from the plan, removes from the plan everything which depended on the failed package, and then tries to rebuild anything still in the plan. In some cases, Portage can decide that the dependency tree is impossible and will just give up without building anything else, but at least some of the time, this does automatically continue building other packages. This is based on the documentation in man emerge:
man emerge:
       --keep-going [ y | n ]
              Continue as much as possible after an error. When an  error  occurs,  dependencies  are recalculated for remaining packages and any with unsatisfied  dependencies  are  automatically  dropped.
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1539

PostPosted: Fri Mar 29, 2024 4:31 pm    Post subject: Reply with quote

EDITED: nvm, I was wrong the whole time.

Best Regards,
Georgi


Last edited by logrusx on Sat Mar 30, 2024 4:47 pm; edited 1 time in total
Back to top
View user's profile Send private message
mkyral
Apprentice
Apprentice


Joined: 06 May 2007
Posts: 185
Location: Czech Republic

PostPosted: Sat Mar 30, 2024 8:27 am    Post subject: Reply with quote

I just finished switch to new profile on my second (and last) laptop. This time it was smoother but even it --keep-going skipped two binary packages due to missing dependency on systemd. But I'm on openrc with USE=-systemd. So there is some inconsistency in dependencies calculation.

Code:

 * Messages for package app-misc/solaar-9999:

 * ERROR: app-misc/solaar-9999::gentoo failed (install phase):
 *   dodoc failed
 *
 * If you need support, post the output of `emerge --info '=app-misc/solaar-9999::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=app-misc/solaar-9999::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/app-misc/solaar-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-misc/solaar-9999/temp/environment'.
 * Working directory: '/var/tmp/portage/app-misc/solaar-9999/work/solaar-9999'
 * S: '/var/tmp/portage/app-misc/solaar-9999/work/solaar-9999'

 * Messages for package media-video/wireplumber-0.4.17-r1:

 * emerge --keep-going: media-video/wireplumber-0.4.17-r1 dropped because it
 * requires sys-apps/systemd

 * Messages for package sys-apps/xdg-desktop-portal-1.18.2:

 * emerge --keep-going: sys-apps/xdg-desktop-portal-1.18.2 dropped because it
 * requires sys-apps/systemd

 * Messages for package app-office/libreoffice-24.2.2.2:

 * If you plan to use Base application you must enable USE base.
 * Without USE java, several wizards are not going to be available.
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1539

PostPosted: Sat Mar 30, 2024 4:46 pm    Post subject: Reply with quote

So after all I was wrong about --keep-going behavior.

Anyways, open a new thread on your issue, do not hijack other threads. First, because it's impolite and second, because you have better chance of somebody helping you.

Best Regards,
Georgi
Back to top
View user's profile Send private message
paulj
Guru
Guru


Joined: 30 Sep 2004
Posts: 513
Location: Wales, UK

PostPosted: Mon Apr 01, 2024 9:25 am    Post subject: Reply with quote

I haven't used it this time round, but a long time back Gunther Brunthaler wrote a perl script to manage exactly this situation. It calculates the required rebuild files, and generates a script which has a state file associated with it and builds each package one by one, so you can fix issues encountered and restart the script where you left off. The original post is here: https://forums.gentoo.org/viewtopic-t-494331-highlight-.html
As I said, I haven't tried it recently, but it did still work a few years back. Of course it might rely on features no longer present in portage, so might need tinkering to get it going. If I start running into issues with my world build, then I will probably give it a go and see what it shows.
I can also say that I need to have a look at pruning my world set - I have a rebuild of 2217 packages to do!!! Maybe it would have been prudent to look at this first before triggering the rebuild!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum