View previous topic :: View next topic |
Author |
Message |
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Thu Apr 22, 2021 10:46 am Post subject: [solved] help updating an old gentoo installation |
|
|
The system had gnome without systemd installed, and as the user of this box is used to plasma, I want to remove it, so I removed the overlay and switched to the default (non-systemd) plasma profile. Furthermore I see that the migration to 17.1 did not happen yet. And I also fear the transition in python. I also think it would be the perfect moment to remove cruft from accept-keywords and use flags, and /var/lib/portage/world, so I cleaned entries from those.
Remaining package.use: Code: | sys-kernel/gentoo-sources experimental symlink
dev-libs/xmlsec gcrypt nss
media-libs/libsdl2 gles2 haptic
>=net-dns/dnsmasq-2.83-r101 script
>=sys-apps/xdg-desktop-portal-1.8.0-r1 screencast
>=net-misc/spice-gtk-0.37-r2 usbredir |
Finally I'd like to change the big package to bin versions, in particular firefox, libreoffice and maybe thunderbird for decreasing compile times.
I feel a bit lost, so I'll post emerge info, emerge output, and so on and hope to get some help to upgrade said box step by step. Maybe it would be the better approach to do an emerge -e @system followed by an emerge -e @world ?
Here is the Output of an emerge world -uDNpv The paste does not look like the output on the console, as there I see all these blockers. Thats why I manually copied as much as the history of the console shows and pasted it to pastebin manually:
https://pastebin.com/mi1HugwS
I added the needed entries in package.license file, and removed adobe-flash with emerge -C.
emerge --info
This is the /var/lib/portage/world File
I proceeded to try emerge -eav @system and @world, and added the packages suggested by portage to package.use and to package.accept_keywords. As there were many usechanges suggested for ruby_targets_ruby_25 I (temporary?) added this to in make.conf. I then unmerged packages that portage reported not in tree anymore like driconf, vixie-cron (emerged cronie instead) pdfshuffler, porthole, cinelerra. I hesitate to remove playonlinux as its acrobat reader installation is a core app needed by the owner of that box. But will do as soon as everything else is solved. I tried on my actual box and was able to install newer playonlinux from overlay and install acrobat reader within.
Thanks in advance for guiding me through this. What are the steps to follow? I only have teamviewer access to this box at the moment.
Last edited by Elleni on Sat Apr 24, 2021 5:10 pm; edited 2 times in total |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Thu Apr 22, 2021 12:26 pm Post subject: |
|
|
Elleni,
You must update first and do the profile change when your system is in a self consistent state.
Your profile is Code: | default/linux/amd64/17.1/desktop/plasma | switch back to the /17.0/ version before you emerge anything.
The profile switch involves rearranging the on disk layout and rebuilding any 32 bit software you have installed.
Code: | Timestamp of repository gentoo: Thu, 22 Apr 2021 09:00:01 +0000 | That's today.
When did you last update the system?
There will be something towards the end oy /var/log/emerge.log
How big a gap you need to jump determines how to do it. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Thu Apr 22, 2021 12:35 pm Post subject: |
|
|
Switched back to 17.0. The last update seems to have been september 2019 according to emerge.log
Do I start with gcc update?
Code: | gcc-config -l
[1] x86_64-pc-linux-gnu-8.3.0 |
portage made me add some entries in package.accept_keywords, thus I list them here - just in case they are obsolete?
https://pastebin.com/dHNCrNyN
And package.use:
https://pastebin.com/fw9W7iLz (additionally added the following in USE variable in make.conf: ruby_targets_ruby25)
I think, I will have to remove playonlinux from world and emerge it when system is up to date from overlay?
I removed it from world file for now, but did not execute an emerge -C playonlinux yet.
Now portage seems to be able to proceed. I also removed the package.accept_keywords stuff, as it was obviously something only needed with some of the removed packages. Portage now does not suggest them anymore. Should I follow a specific order or just let portage do its magic with emerge world -uDNv --keep-going followed by emerge --depclean, revdep-rebuild, build a recent kernel and finally report here in case any package fails to build? Last step then would be to switch profile? I added -bin suffice in /var/lib/portage/world behind libreoffice, and have unmerged firefox and thunderbird, so I will emerge the two mozilla packages in bin version later once the system is up to date.
Edit to add that I now removed ruby_targets_ruby25 from make.conf again and also removed two other use flags that I had added for dantrell's gnome overlay: Code: | # dantrell gnome without systemd
#USE="${USE} -ck"
#USE="${USE} egl" |
And still no complaints from portage, so I guess, I am good to go but would love to hear if there is something specific to emerge first - like gcc update - before proceeding with the world update?
And - as a mental note for myself - I must not forget to replace xdm service with the new display-manager-init thingy in order to be able to reboot to sddm after everything is updated
Last edited by Elleni on Thu Apr 22, 2021 3:19 pm; edited 1 time in total |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Thu Apr 22, 2021 2:33 pm Post subject: |
|
|
By the way - what would you suggest as max. MAKEOPTS on this box? I had configured 9 but as there is not too much RAM (8GB) I thought, I maybe should go down to 6? It is a i7-4790S CPU @ 3.2 GHz. Or would 7 or 8 be ok too? |
|
Back to top |
|
|
Hu Moderator
Joined: 06 Mar 2007 Posts: 21633
|
Posted: Thu Apr 22, 2021 5:00 pm Post subject: |
|
|
I often see a suggestion to assume that big C++ jobs will need 2GB / job, which would suggest -j4 for you. If you're building packages that are not so RAM-hungry, then the traditional advice was jobs=cores or jobs=cores+1. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Thu Apr 22, 2021 5:39 pm Post subject: |
|
|
Elleni,
18 months is a big step. You may want to do one or two intermediate steps.
Try it. Code: | emerge -uDUav @world --backtrack=250 --keep-going | I don't think it will work but the portage output, all of it, will be interesting.
To run that in wgetpaste, change the a to p, or if it works, it will wait for user input that will never arrive. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Thu Apr 22, 2021 8:36 pm Post subject: |
|
|
Thanks for your replies guys.
In the meantime I first updated gcc and then portage compiled the first ~500 packages. It worked without backtrack to the following point. I had a problem compiling bundler. Solution was to eselect ruby -> ruby26 (with Rubygems) (it was set to ruby25) and emerge -C bundler.
Now I have two errors:
eselect python shows Code: | Available Python interpreters, in order of preference:
[1] python3.8 (uninstalled) |
I imagine this will be fixed once the updates finish. I can launch emerge by prepending /usr/lib/python-exec/python3.6/ so that's not a showstopper.
emerge world -uDNav now stuck with the following error trying to compile kde-frameworks/karchive-5.80.0::gentoo. Trying this to see if this fixes it. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Thu Apr 22, 2021 10:09 pm Post subject: |
|
|
Elleni,
python3.8 is the current stable, so that's a bad sign.
The python set in eselect python is only used by random python scripts that you install.
Everything that portage installs is managed by python-exec. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Thu Apr 22, 2021 11:42 pm Post subject: |
|
|
I had the same effect on my main gentoo box. During emerging world update I had to use the mentioned path, but after everything was updated the problem disapeared. I did not install anything outside portage. The qt update is still running. I will then try to proceed the world update and report back. |
|
Back to top |
|
|
figueroa Advocate
Joined: 14 Aug 2005 Posts: 2963 Location: Edge of marsh USA
|
Posted: Fri Apr 23, 2021 3:22 am Post subject: |
|
|
Hu wrote: | I often see a suggestion to assume that big C++ jobs will need 2GB / job, which would suggest -j4 for you. If you're building packages that are not so RAM-hungry, then the traditional advice was jobs=cores or jobs=cores+1. |
I've been using -j9 on my i7-2600 for a couple of years with no memory issues ever. I've got 16 GB RAM, and 8.5 GB swap that is very lightly used, i.e. 1-3 MB at most. -j9 may be pushing the theoretical envelope a bit, but I haven't been able to hit it. I'm usually using this system for other work during upgrades and it's always completely usable.
I also have an older AMD Athlon x3 system with 8 GB RAM where I use -j4, also with no RAM issues. I don't see any reason to push the envelope on -j setting and beg for trouble. _________________ 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 |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Fri Apr 23, 2021 7:56 am Post subject: |
|
|
While watching the emerge output I saw not too much memory consumption for most of the packages. The exception was qtwebkit or qtwebengine. I think emerge had died because of lack ressources. (I had set -j9, with 8 GB RAM and 8 GB swap) so I reduced to -j5. Would it work to put the makeopts variable in package.env for said package, so it only goes down to -j5 for this particular package?
Anyway - compiled some ~400 additional packages, I hit the next build error:
https://pastebin.com/xB2NRqpt
Any hint howto proceed?
Tried this and re-emerging glib-utils seems to help. emerge world -uDNv --keepgoing resumed/running. 410 package out of ~1374 remaining
Next error while trying to emerge dconf-0.36.0: Code: | Program gdbus-codegen found: NO
service/meson.build:25:0: ERROR: Program 'gdbus-codegen' not found |
https://dpaste.com/F3D8BAWUS
-> re-emerged gdbus-codegen -1 fixed this... continuing, 365 remaining |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Fri Apr 23, 2021 9:04 am Post subject: |
|
|
Elleni,
Yep package.env works well for per package MAKEOPTS.
Your Code: | meson.build:44:0: ERROR: Program 'glib-mkenums' not found | may be a missing dep in the ebuild.
Code: | $ equery b glib-mkenums
* Searching for glib-mkenums ...
dev-util/glib-utils-2.66.7 (/usr/bin/glib-mkenums) |
Try Code: | emerge dev-util/glib-utils -1av | which will install the missing file, then go back to your world update.
If that works, report a bug against Code: | gnome-base/gsettings-desktop-schemas-3.38.0 |
_________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Fri Apr 23, 2021 8:07 pm Post subject: |
|
|
What does this last conflict mean? There is no X useflag for gdk-pixbuf?
Code: | These are the packages that would be merged, in order:
Calculating dependencies ... done!
Total: 0 packages, Size of downloads: 0 KiB
WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict:
x11-libs/gdk-pixbuf:2
(x11-libs/gdk-pixbuf-2.42.4:2/2::gentoo, ebuild scheduled for merge) USE="introspection jpeg tiff -gtk-doc" ABI_X86="32 (64) (-x32)" conflicts with
x11-libs/gdk-pixbuf[X] required by (lxde-base/lxpanel-0.10.0:0/0::gentoo, installed) USE="alsa -wifi" ABI_X86="(64)"
^
Nothing to merge; quitting |
|
|
Back to top |
|
|
Hu Moderator
Joined: 06 Mar 2007 Posts: 21633
|
Posted: Fri Apr 23, 2021 9:35 pm Post subject: |
|
|
Correct. gdk-pixbuf does not have a USE-flag X. Your installed lxpanel is only compatible with a gdk-pixbuf that both has a USE-flag X and has that flag enabled. It looks like a newer version of lxpanel no longer requires that flag to be enabled. |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Sat Apr 24, 2021 6:26 am Post subject: |
|
|
Thanks Hu for the explanation. I finally decided to remove lxde as it was thought as backup DE but as gnome3 - never actually used.
So compiling last delta of packages from when I started this upgrade process. The last step will be switching the profile. One more question if I may. What about the make.conf of this box, I'm looking forward for comments just in case there are some depricated/obsolete/false/unneeded entries to cleanup too? |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Sat Apr 24, 2021 8:38 am Post subject: |
|
|
Elleni,
The flags that appear in CPU_FLAGS_X86= can be removed from USE=.
That's the new way and old way.
The only reason for having them in both places is if you use an overaly that has not been updated yet but if its that old, it will have other problems too.
will cost a lot of extra build time as you have the 64 bit and 32 bit versions of everything installed.
ABI_X86= should be unset in make.conf, so the default is 64 bit only and add in 32 bit support only for packages that must have it.
What you have is not wrong.
Code: | INPUT_DEVICES="evdev" | still works but libinput is the new way.
Code: | FEATURES="candy -collision-protect -protect-owned" | OK for a big messy upgrade but remove -collision-protect -protect-owned as soon as you can.
Code: | PORTDIR_OVERLAY=/usr/local/portage | is depreciated/no longer used.
in the new way with entries in /ectc/portage/repos.conf/ _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Sat Apr 24, 2021 4:56 pm Post subject: |
|
|
Thanks a lot for your input and support. This update went smother then I'd have thought. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Sat Apr 24, 2021 8:19 pm Post subject: |
|
|
Elleni,
The profile migration too? _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Elleni Veteran
Joined: 23 May 2006 Posts: 1270
|
Posted: Mon Apr 26, 2021 8:48 am Post subject: |
|
|
yes, after the system being up to date I follwed the steps, unsymlink-lib migration, profile switch, re-emerge gcc then emerge emerge -1v --deep /lib32 /usr/lib32 /usr/lib/llvm/*/lib32 and finally rm /lib32 /usr/lib32. Flawless.
Thanks to you all for your appreciated guidance! |
|
Back to top |
|
|
|