Joe wrote:
>
>
> On 9/1/24 16:56, Dale wrote:
>> Joe wrote:
>>> Hello,
>>>
>>>
>>> I'm looking for some tips and tricks regarding emerge. I know there is
>>> a cheat sheet on what stuff you can do. But i would like emerge
>>> exclusively .
>>>
>>> Normally i run emerge -uavDU --with-bdeps=y @world when i don't want a
>>> reinstall of everything after a emerge --sync
>>>
>>> I run emerge -uavDN --with-bdeps=y @world when i want to reinstall or
>>> like the manual says if there is a use flag that has been changed by
>>> me or the dev.
>>>
>>>
>>> Am i doing it right or what should i do that can help me and newer
>>> people
>>>
>>>
>>> Thanks
>>>
>>>
>>> Joe
>>
>> I been using Gentoo since 2003.  The emerge program has come a LONG way
>> since then.  Over the years tho, I've refined my update process until I
>> got to a point where it won't get any better.  You will still run into
>> the occasional update that requires the use of a hammer but for the most
>> part, this does well.  First thing.  I have a set of options in
>> make.conf to cover most options.  That line looks like this.
>>
>>
>> EMERGE_DEFAULT_OPTS="--with-bdeps y --backtrack=500 --keep-going -v
>> --quiet-build=y -1 --unordered-display --jobs=16 --load-average 8"
>>
>>
>> A couple of those are either personal preference or machine dependent.
>> The bdeps option will cause extra rebuilds on occasion but it is rare
>> that I get a seg fault or programs that just crash because the versions
>> don't work well together.  Before that option was available, I used to
>> do a emerge -e world to fix problems with programs not starting or
>> crashing with a seg fault.  The bdeps options seems to have improved
>> that a LOT.  The backtrack option just makes sure you only have to run
>> emerge -a<whatever> once.  It takes a while sometimes but it digs deep,
>> real deep.  If a update can be done, it will find a way.  Honestly, 100
>> is likely more than enough in most all cases.  The keep-going option is
>> good for when a packages fails, especially early on, and it stops the
>> update.  On most occasions, emerge can regroup and continue on skipping
>> only one or a very few packages.  It saves time in the long run if you
>> start a update and don't monitor it.  The -1 option is the same as
>> oneshot.  This prevents you from accidentally cluttering up the world
>> file.  Something gives you problems and you are emerging by hand, if you
>> forget to add the -1 as you work to fix it, it adds all those to the
>> world file, including version if you specify one.  I'm not sure on the
>> display option.  I added it for some reason, ages ago.  The job and load
>> is different for each machine.  The line above is for a 16 core, 32
>> thread CPU with 64GBs of ram.  My old 8 core with 32GBs of ram was set
>> to jobs 8 and load 3 I think.  Memory is one limiting factor there.
>> LOo, that qt package and a couple others can fail from lack of memory if
>> set higher.
>>
>> Second thing.  My usual update process.  I sync first.  I run emerge
>> -auDN world and check what it plans to do.  I mostly check USE flags.
>> Sometimes a USE flag will change and I have to adjust them a bit.
>> Sometimes on a per package basis, sometimes global.  Once I'm happy with
>> what it wants to do, I hit the 'y' key and turn her lose.
>>
>> On both my old rig and new rig, I have a second install that is in a
>> chroot.  When I have packages that take a long time to build, I do my
>> updates in the chroot first and then copy over the binaries.  Then I
>> just need to do a emerge -aukDN world to make the update faster since it
>> is already compiled.  This can be handy when you have some of the qt
>> packages and the software has different versions and it causes
>> problems.  Some updates midway can make it so certain programs won't
>> launch at all.  I've had that happen with Kwrite several times, Dolphin
>> a few times.  Once the update is done and you logou and back in,
>> everything works again.  You just may run into problems during the
>> update when some packages are old still and some are new.  This method
>> lessens the time of that problem.
>>
>> Once the update is done, I then run emerge -a --depclean and see if
>> anything needs to be removed or if I need to add something I want to
>> keep to the world file.  Oh, if you want to emerge something and add it
>> to the world file so it gets updated and saved, emerge --select y plus
>> your other options will override the oneshot option.  If you run a GUI,
>> you need to logout and back in.  I sometimes switch to the boot runlevel
>> and check for services that need to be restarted as well.  One could
>> reboot and achieve the same goal.  This is Linux tho.  ;-)
>>
>> Obviously, a news item can change that process.  If there is a news item
>> with a different process, follow that for sure.  Following the news item
>> to the letter is the best way.  The devs work out all the kinks and bugs
>> before they post the news item.
>>
>> Oh, this is another good line to have in make.conf.
>>
>>
>> FEATURES="-usersync userpriv usersandbox buildpkg sandbox parallel-fetch
>> parallel-install"
>>
>>
>> The ones I care about.  The buildpkg tells it to save binary copies.
>> This is a must if done in a chroot and you want to install elsewhere as
>> binaries but comes in handy if you accidentally remove something and
>> need it back fast or you need to restore something you removed and broke
>> portage.  The fetch option just tells it to fork the download part and
>> keep downloading until it has everything it needs to update.  The
>> install option I think tells it to do more than one install at a time
>> instead of one at a time.  I've never had a problem with this.  If
>> something is going to clash, emerge sets a lock file and waits until the
>> other package is installed.  I think the others were the default when I
>> installed.  Check the man page maybe????
>>
>> What you just read is from about 20 years of tweaking things on half a
>> dozen rigs.  It should get you off to a good start for sure.
>>
>> Dale
>>
>
> Thanks,
>
> This is more then i could have imagined. I've used Gentoo off and on
> for about a year. Sometimes i go to another distro like Debian but i
> keep coming back because of emerge use flags everything. i just like
> the control.
>
> This is my main distro from now on. The community is the best. hope
> this helps somebody else also
>
> Thanks
>
> Joe
>


If you have a laptop where heat is a issue, you may want to do things
different but if you can, that will give you the most stable system for
updates.  Also, I tend to update once a week.  Sometimes I'll skip a
week.  I get emails about KDE releases and kinda go by that.  I usually
pick Saturday night or Sunday morning.  Lots of updates seem to hit late
in the week mostly, that I worry about anyway.  On a laptop, I'd go with
one month maybe six weeks, to avoid the extra builds.  With Gentoo,
going any further can have you hitting updates that may have a more
difficult update path.

I might also add, my NAS systems or my old rig that is a backup in case
new rig takes a break, I update those around the first of each month. 
The updates go smoothly even with that duration.  I didn't update a
system once for about six months, it got tricky.  If unable to update
often, once every couple months is about as far as I would want to go. 
Some update daily tho.  I just don't see the need for that myself.
Basically, three or four months would be the limit for me in any
situation.  Weekly is about the fastest I would update. 

Also, I run a mix of stable and unstable here.  Still, my rigs once set
up and running well, tend to be really solid and problem free.  Setting
up this new rig, I had a few issues to work through but my current
uptime is about 45 days.  Other than adding some cgroup drivers, my
kernel is solid.  No panics or anything.  I credit the awesome work of
the emerge devs, the devs of every ebuild I use and my process of
updating.  On the stable side, anything required to boot.  KDE and
friends tend to be unstable.  I suspect most of the upgrade issues I do
run into are because of that mix.  If you run stable and only stable, it
is likely even smoother.  A lot of problems are worked out during the
stabilization process. 

It seems you plan to stick around for a while.  I hope this info helps
you to have a smooth running system.  I do wish someone would take this
info and put it on the wiki for new users tho.  The best thing I ever
did, add -1 as a default option in make.conf. 

Dale

:-)  :-) 

P. S.  Dang, only a few typos this time.  O_O  Crap, make that four. 
Dang was 'da,g'.  Fixed it tho.  ROFL

Reply via email to