On 2016-05-28(01:49:22PM-0500), Dale wrote:
> Dale wrote:
> > Gregory Woodbury wrote:
> >> Has Alan ever posted his "jackhammer" script for some experts to look
> >> at?
> >>
> >> I get by really well with a small script that reads the eix outputs,
> >> finds the "[U]"
> >> tagged packages, and then runs "emerge -u1" on that list.
> >>
> >> Doing anything more than that will be a cause of pain and suffering.
> >>
> >> If a package needs patches for something special, it is better to
> >> make a local
> >> repository with modified ebuilds and distfiles, rather than try to
> >> force the gentoo repo
> >> into your own mess. I do this for a few tthings that Gentoo doesn't
> >> ship. Portage
> >> is actuallly quite flexible underneath, itt just takes a bit of learning.
> >>
> >> --
> >> G.Wolfe Woodbury
> >> redwo...@gmail.com <mailto:redwo...@gmail.com>
> >
> >
> > He did a while back.  Some very experienced Gentoo users here
> > explained to him that his script was the problem.  From memory which
> > isn't all that good, it syncs the tree which is fine.  After that, it
> > gets bad.  I think it did the updates and then repeated that several
> > times within the script.  That is done without him looking to see if
> > anything needs to be changed, USE flags etc, or if something shouldn't
> > be updated at all.  I'm pretty sure that it then deletes all the logs
> > of what was done, which means anything broken is broke and no record
> > of what or even why.
> >
> > Yes, some things can be done with a script.  However, there needs to
> > be a point in there where the user, the real brain of what is wanted,
> > looks at the list of what will be updated.  Only a human can look and
> > see if there is USE flag changes or other issues that need a config
> > file to be edited.   Alan skips all that.
> >
> > If you want, I can go dig it out and post it.  I should have a copy of
> > the script in my local email.  I keep them for like 2 years or
> > something then it deletes the old stuff.  I'm not sure if you will
> > laugh your head off or cry tho.
> >
> > Dale
> >
> > :-)  :-)
>
>
> What the heck.  I went back and found it.  It only took a few minutes.
> The rest of this message is the email where he has his script.  I'll do
> my usual sign off at the bottom, rest is his post.   For those who have
> already seen it, you might want to skip past the rest.  No need
> torturing yourself again.
>
>
> > I use two scripts for all emerge use, the goal is to run one command and
> > then walk away:
> >
> > Standard general update script:
> > #######################
> > tortoise ~ # cat sysupdate
> >
> > #they must have moved or removed the logs, might have to track them down
> > again...
> > #rm /var/log/emerge*
> >
> > # cache /usr/portage
> > echo "caching /usr/portage.  This will take a long time."
> > time ls -R /usr/portage > /dev/null
> >
> > emerge --sync
> > layman --sync ALL
> >
> > emerge --update --verbose portage
> > emerge --update --newuse --deep --with-bdeps=y system --keep-going
> > emerge --update --newuse --deep --with-bdeps=y world --keep-going
> >
> > rm -f /var/cache/revdep-rebuild/*.rr
> > revdep-rebuild
> > emerge --skipfirst --resume
> > emerge --skipfirst --resume
> > etc-update
> > eclean-dist
> > ########################
> >
> > The eclean line was added just a few days ago from this thread...
> >
> > This one is intended to be a nice gentle update script.
> > It caches the portage tree, then syncs everything, then updates
> > everything starting with critical system packages, then all world
> > packages...
> >
> > Then it cleans stuff up, it jcakhammers the revdep-rebuild but not too
> > hard....
> >
> >
> > This next script is what I use when emerge starts giving me shit:
> >
> > ##################
> > tortoise ~ # cat keepgoing
> > emerge --update --newuse --deep --with-bdeps=y system
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> >
> > emerge --update --newuse --deep --with-bdeps=y world
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> >
> > rm /var/cache/revdep-rebuild/*.rr
> > revdep-rebuild
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> > emerge --skipfirst --resume --nodeps
> >
> > etc-update
> > ###################
> >
> > It's basically the same as the working section of the above but instead
> > of letting emerge do it's thing, it jackhammers that bitch as hard as
> > possible to get as much updated as possible, but it requires emerge to
> > do something and not error out for no good reason... I expect prune and
> > depclean to be useless but I kinda need update to basically work every
> > time. =\
> > Whatever fails on this script, I just live with until next week/month.
> >
> > ###################
> > tortoise ~ # ./pretendupdate
> >
> > These are the packages that would be merged, in order:
> >
> > Calculating dependencies /
> >
> > !!! Problem resolving dependencies for sys-apps/util-linux from @system
> > ... done!
> >
> > !!! The ebuild selected to satisfy "sys-apps/util-linux" has unmet
> > requirements.
> > - sys-apps/util-linux-2.27.1::gentoo USE="caps cramfs ncurses nls pam
> > python readline suid udev unicode -build -fdformat -kill (-selinux)
> > -slang -static-libs -systemd -test -tty-helpers" ABI_X86="32 64 -x32"
> > PYTHON_SINGLE_TARGET="-python2_7 -python3_3 -python3_4"
> > PYTHON_TARGETS="python2_7 python3_4 -python3_3"
> >
> >   The following REQUIRED_USE flag constraints are unsatisfied:
> >     python? ( exactly-one-of ( python_single_target_python2_7
> > python_single_target_python3_3 python_single_target_python3_4 ) )
> >
> >   The above constraints are a subset of the following complete expression:
> >     python? ( exactly-one-of ( python_single_target_python2_7
> > python_single_target_python3_3 python_single_target_python3_4 )
> > python_single_target_python2_7? ( python_targets_python2_7 )
> > python_single_target_python3_3? ( python_targets_python3_3 )
> > python_single_target_python3_4? ( python_targets_python3_4 ) )
> >
> > (dependency required by "@system" [set])
> > (dependency required by "@world" [argument])
> >
> > tortoise ~ # cat ./pretendupdate
> > emerge --update --newuse --deep --with-bdeps=y world --verbose --pretend
> > tortoise ~ #
> >
> > ###########
> >
> > Google is not being helpful with this... =(
>
> Dale
>
> :-)  :-)

Wow. This could be much shorter and is even very unnecessary when you pay 
attention..

I hate to have very short replies on very long posts,
but this script... just wow.

--
♥Ⓐ ng0 | http://www.n0.is/u/n
4096R/13212A27975AF07677A29F7002A296150C201823

Attachment: signature.asc
Description: Digital signature

Reply via email to