Progress Update On My Linux From Scratch Project

What does ‘core’ include?

What I have been doing is what you originally taught me
eix-update
eix-sync
emerge --ask --oneshot portage
emerge -avuND world

Is there a better way?

1 Like

the Gentoo core are the apps that make up the Gentoo build!! So when I update Gentoo, usually once a week if I can, I start with “emerge-webrsync” after that has finished I run “emerge --sync”. That, sometimes, will advise about a “emerge --oneshot sys-apps/portage” update, if it does, then do it. After that I run “emerge -a -uD @system” this will update all the core apps, at times this can take awhile.
I then use “emerge -avuND @world” and this will pull in updates, that are not part of the core apps.
If after that, you get a “CONFIGURATION FILES” need updating, run “dispatch-conf”, be very careful, or Gentoo may not boot. I usually have a look-see and hit z for zap.
You now need to look at “emerge -a --depclean” and if it is posting any kind of warning, hit n for no and run this,
“emerge --update --deep --newuse --with-bdeps=y @world” this will also at times pull in a few more updates, you can then run "emerge -a --depclean.

2 Likes

So that is equivalent to the ‘build tools’ package in Debian?

1 Like

You know more about that than I do, have not used Debian, in a long time.

3 Likes

Daniel’s way is fine but now Gentoo wiki recommends to use emaint -a sync instead of other sync options. I follow the wiki in all my concerns/trouble shooting. It’s always updated.

2 Likes

@ihasama
I will not dispute that, but emaint -a sync will indeed work, and I have used the command!!! I, myself, prefer to update the core apps with the emerge -a -uD command, that doesn’t pull in world or @world packages.
All emaint -a sync does is pull in emerge-webrsync and emerge --sync, where as eix-sync will run emaint -a sync and which pulls in emerge-webrsync and emerge --sync.
The important thing here is that, when updating Gentoo, emerge-webrsync should be the first command to run, regardlee if emerge --sync is ran.

3 Likes

So do I need to change what I am doing
or
is this all about alternatives and preferences?

2 Likes

I’d say so. The important thing is to update regularly.

My opinion is that this is not needed. Emaint -a sync syncs all. Webrsync is a snapshot of the system but you’ll already get it with the sync command.

Wiki says

Next step is to install a snapshot of the Gentoo ebuild repository. This snapshot contains a collection of files that informs Portage about available software titles (for installation), which profiles the system administrator can select, package or profile specific news items, etc.

The use of emerge-webrsync is recommended for those who are behind restrictive firewalls (it uses HTTP/FTP protocols for downloading the snapshot) and saves network bandwidth. Readers who have no network or bandwidth restrictions can happily skip down to the next section.

This will fetch the latest snapshot (which is released on a daily basis) from one of Gentoo’s mirrors and install it onto the system:

1 Like

I am old-school Gentoo and Gentoo is about choices, I respect your decision but emaint -a sync is not needed for keeping Gentoo updated.

3 Likes

I this particular area of update methods, there seem go be too many alternatives to choose from.

2 Likes

I totally agree with you. Both ways are ok. It’s just what you are used to!

Just use one you prefer. Old school or wiki are both fine

2 Likes

So far so good.
I switched profiles, recompiled gcc and glibc, did a few other recommended things, and now have running
emerge --ask --emptytree @world.
There are 913 packages to update, it has done 170 so far.
Will let you know tomorrow how/if it fails.

You may be right. We shall see tomorrow.

2 Likes

A lot happened with Gentoo between profile 17.1 and 23.1, most notable was binary package use. Just changing the profile, if you are able, does not really help to a great extent, except leave you with a lot of rubbish files to get rid of, that is what happened, in my case!!
So I saved my files and did a clean install for profile 23.1.

3 Likes

I am told that profile 17.1 is losing support soon.
I have to do something.
The only binary packages I have are firefox and thunderbird.

I am doing more than just changing the profile. It is like a full rebuild against the new profile. That is essentially the same as a new install with the new profile… except I dont bother with the kernel.

2 Likes

The Firefox-bin and Thunderbird-bin packages are not from Gentoo binaries, they are upstream so you are ok.

If you check the emerge process there is ebuild or binary text before the package. You probably don’t have binaries.

If the update fails save
°etc/portage/*
°world file
°make.conf
°home folder
And keep you partition layout. You need to get the stage3, and continue with handbook from there. Reinstall grub. I assume you have /boot ? Switch it to /efi

Good luck!

2 Likes

Looks like I have good luck.
The emerge of 913 packages completed successfully.
There were 555 lines of messages at the end

>>> Completed (913 of 913) x11-misc/lightdm-gtk-greeter-2.0.9-r1::gentoo

 * Messages for package sci-libs/openblas-0.3.29:

 * This software has a massive number of options that
 * are configurable and it is *impossible* for all of
 * those to fit inside any manageable ebuild.
 * The Gentoo provided package has enough to build
 * a fully optimized library for your targeted CPU.
 * You can set the CPU target using the environment
 * variable - OPENBLAS_TARGET or it will be detected
 * automatically from the target toolchain (supports
 * cross compilation toolchains).
 * You can control the maximum number of threads
 * using OPENBLAS_NTHREAD, default=64 and number of 
 * parallel calls to allow before further calls wait
 * using OPENBLAS_NPARALLEL, default=8.

 * Messages for package net-libs/libpsl-0.21.5:

 * "icu" and "idn" USE flags are enabled. Using "idn".

 * Messages for package acct-group/video-0-r3:

 * Group video already exists
 
.......
 * IMPORTANT: 13 config files in '/etc' need updating.
 * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
 * sections of the emerge man page to learn how to update config files.
 * After world updates, it is important to remove obsolete packages with
 * emerge --depclean. Refer to `man emerge` for more information.

I know about the openblas package … it is setup for R

Probably most messages can be ignored… except the last… I need to update 13 config files … Iprefer to hand edit those, rather than use the tools.
and
I need to use emerge --depclean
I probably should compile a newer kernel.

Other than that, I think I am there… that is all the message about profile update told me to do.

So I assume all that is unnecessary. ?
My /boot is on the same partition as /
Why reinstall grub ??? Gentoo does not control grub in my machine. It is legacy boot and Debian controls grub.

Thanks @Daniel_Phillips and @ihasama for help

2 Likes

Well done! I always use dispatch-conf to automatically fix the configs.

Yes, depclean every time after world update. I use gentoo-kernel-bin which get automatically updated (it updates also initrafms with dracut). If you like to compile kernel it is fine, I just don’t see the point with my computers.

Yes! These were if you need to reinstall.

Enjoy!

2 Likes

Just do a clean install using either gentoo-kernel or gentoo-kernel-bin and setup make conf for binary packages.
Although with your setup, you would, and if your machine could handle one more drive, slap a spinner or a small ssd in and put Gentoo on a separate drive, or forget Gentoo!!! Just saying!!!

1 Like

I dont see the need to move Gentoo?
Whaypt I would like to do is learn how to make ebuild files, so I can install other software, eg stuff from github.c

1 Like

I know you don’t, but if you want a trouble free Gentoo or PC put Gentoo on a drive by itself. Your dual boot or whatever you have makes no sense, and learning Gentoo requires you use Gentoo. Dual booting any linux distros make no sense to me, for what, you wind up with the very same packages, just ./configured in different ways.
I use Gentoo, simply because it runs my old hardware, without to much fuss.
As for as I know, git clone or download zip packages, and use unzip and cd to the package, works as well with Gentoo, as it does with LFS.
So chose your distro and stick with it.

1 Like