My Unofficial Guide to a Stable System World Update

Anything that pertains to Portage

Moderator: Moderators

My Unofficial Guide to a Stable System World Update

Postby wolfden » Fri Mar 23, 2007 3:30

First let me say that there is a several ways to doing things on SL. I am not saying that my way is the best way by any means. This is simply my way of how I do things with a fresh install to make a stable system.

First thing - I alway buy my hardware that I know is linux supported and has good drivers. So get to know your hardware, I can't say that enough as it will save you a lot of headaches.

DO NOTE - I can not tell you what you can safely remove from your system as you need to know your hardware and what is safe to uninstall, remove from config files and remove from kernel. I am going to try and stay very basic here so you can get the idea.

Fresh install and everything is working great so now what?
----Well I head to the /etc/make.conf file and edit that thing to my liking and double checking things over. I remove any unnecessary things. Remember to edit these files you must be root. If you like nano you can simple go into Konsole and punch in su than enter your password. You can edit the file by doing
Code: Select all
nano -w /etc/make.conf
or if you simply must have a GUI you can go to konsole and enter
Code: Select all
kdesu konqueror
and when the box pops up, enter your password, wait a bit and a new window will come up. In that window you are root to everything and can edit anything. Pretty simple so far right? If you need help figuring out what options are available in the make.conf than refer to the Gentoo Handbook and Wiki often.

----Ok, so now that I got that set I like to head to the kernel and add to it and remove things I don't need by doing in konsole:
Code: Select all
# zcat /proc/config.gz > /usr/src/config

Code: Select all
# genkernel --kernel-config=/usr/src/config --menuconfig --bootloader=grub --splash=sabayon all

or if you use lvm do: - noted for waltercool
Code: Select all
# genkernel --kernel-config=/usr/src/config --menuconfig --bootloader=grub --splash=sabayon --lvm2 all

note the # means you must be root, don't actually use the #
This step is not necessary if you don't care that your kernel is big. I always need to enable some sound stuff and you may need to enable drivers, again, this is where knowing where your hardware is very important. You remove the wrong thing and your puter will not boot. Skip this step if you have a funny look on your face at this time.

----Now some of you may totally think I am crazy here but as far as software removal I do that later. Yes I know I can remove software at this time that I will never use and save time when I recompile the system, but this is my unofficial stable system and I know it will work cause I have done it several times. So with that being said I want to now recompile just the system. Now I prefer to do :

Code: Select all
# emerge -e system || until emerge --resume --skipfirst; do emerge --resume --skipfirst; done

If you notice I have not done an emerge --sync yet and I don't want to do that yet, that will come later. So now several hours are going to go by. This a great thing to do when you are about to go to bed. After that is done, I like to do the world recompile:
Code: Select all
# emerge -e world || until emerge --resume --skipfirst; do emerge --resume --skipfirst; done

do note once again that I have not emerge --sync yet and this is going to be another lengthy process. You may do both commands at once by simply doing:
Code: Select all
# emerge -e system || until emerge --resume --skipfirst; do emerge --resume --skipfirst; done && emerge -e world || until emerge --resume --skipfirst; do emerge --resume --skipfirst; done

I just like to break it up.

----So now I have finished recompiling everything and my processor is going Dude! Well now I punch in:
Code: Select all
# emerge --sync && layman -S

to update my portage tree and overlays. First time syncs on SL are slow, I promise they will get faster after the first time. Once that is done I punch in:
Code: Select all
# emerge -upDN --world

this will pull up just under 400 packages, WOW!! Well lets get the show on the road.
Code: Select all
# emerge -uN --world

now you look at that and go what happened to the D ?, again this is my guide and that will come later, but if you want you may leave the D in there. Now you are probably sitting there thinking I thought SL doesn't recommend a world update. My feelings are this: no you don't need to, but SL 3.3 makes it a piece of cake to world update. Pre 3.3 I don't recommend, as you will be forever swamped with recompiling. Now with the world update you are going to run into bumps and this is where reading the ERROR MESSAGES is going to come to be Very Important. If you listen to what portage is telling you and use the gentoo bugzilla and gentoo forums for searching you can usually find the solution. Once a package fails I simply:
Code: Select all
# emerge --resume --skipfirst

to continue on. I like to do this method to see what packages are failing. If you don't care:
Code: Select all
# emerge -uN world || until emerge --resume --skipfirst; do emerge --resume --skipfirst; done

than it will auto skip and keep on going till finished. Now I don't try and fix any packages till it is completely done. Once it is done I look look at
Code: Select all
#emerge -upN --world

and go thru each package and install it with the fix needed to get it to install. At this time I will simple remove any packages that have failed that I know I don't need. So now we are done and
Code: Select all
# emerge -upN --world

shows no packages left in it, time I fire up
Code: Select all
# emerge -upDN --world

YAY more packages to compile! The amount of packages won't be that much. So we wait for that to finish and I usually fix the errors as it goes along since it isn't very many packages. Now we have the entire system rebuilt, well almost. It's time to run:
Code: Select all
# revdep-rebuild

and if that fails do:
Code: Select all
# revdep-rebuild -X

It will find more packages to recompile! Your processor is probably plotting some sort of revenge against you at this time. So now what? Well, you are gonna have some config files that are screaming for an update. Now I like to use:
Code: Select all
# etc-update

There is several ways to update config files, this is my way of doing it. So I punch in etc-update and many will auto merge, which is great with me. I look over the remaining ones left and determine if they are safe or not to update. Off the top of my head I believe all changes in 3.3 are safe, but look and if you are unsure, don't do it. So we have recompiled everything after making changes to system, updated the config files. Are we done? Do we dare reboot? Let's live dangerously and reboot, I mean a reinstall is only 40 minutes to do anyway right?

----So we rebooted, prayed and we made it back to our Desktop!! So now, I like all the multimedia features the web has to offer, so I want to experience it all, so I open up my konsole again and punch in:
Code: Select all
USE="divx gmedia gtk nls quicktime realmedia wmp" emerge mplayerplug-in

Yes, I know you can add this to your package.use file, but this is my guide and you should add it to your /etc/portage/package.use file for future use. Now I can sit back and view all the goodness of web multimedia! I hate totem handeling the web plugins cause it sucks at doing so. I don't uninstall totem I simply move all the totem plugins out of the plugins folder:
/usr/lib/nsbrowser/plugins
and put em in
/usr/lib/nsbrowser
Just incase I ever want to put them back.

----Alrighty than, we are world updated now. You can continue to stay world update and SL updated with the overlay by:
Code: Select all
# emerge --sync && layman -S && emerge -uDN --world


A handy automated script for this can be found here:
viewtopic.php?f=54&t=11870

----Conclusion - my systems are rock solid no matter what I throw at it. It's a long process which is fine with me cause the results are worth it. Do keep in mind that it will take less time with the mini as there is less to deal with. It will require thinking and deciphering and good abilities of effective searching. No I can not help you world update your system as I have no idea what hardware you use or what you use your computer for. Is there a chance you may hose your system? Of course there is! It shouldn't happen if you pay attention. I can't stress enough to read the Gentoo Handbook, look at the Gentoo Wiki, look at the Gentoo Forum, look at the SL Wiki, look at the SL Forum and don't forget Google, bookmark them all!

That's it in a nutshell and I take NO and I mean NO Responsibilities for a hosed system You milage is going to vary of course to hardware and software you use. All typos and grammer mistakes are mine, ehehehehhe

Input is welcomed and I will answer questions if I know the answers


HAPPY COMPILING!
Last edited by wolfden on Sun Jun 24, 2007 20:23, edited 9 times in total.
wolfden
Sharecropper
 
Posts: 9050
Joined: Sat Jan 14, 2006 0:55
Location: Midwest USA

Postby thecdn » Fri Mar 23, 2007 15:14

wolfden,

Good writeup, will give it a go this weekend - loooong weekend? :wink:

You base this on using a new, fresh installation. What if you've already done the 'things to do with a new install?', ie
emerge --sync
layman -s
glsa-check -f all
dispatch-conf

Can you still proceed with this or is it only good for a clean install?
thecdn
Simple Hen
 
Posts: 62
Joined: Sat Aug 19, 2006 23:43
Location: North Lauderdale, FL

Postby schivmeister » Fri Mar 23, 2007 15:16

Great type-up! Many would love this..you probably should add this in the SL wiki. And also put in a disclaimer's :)
schivmeister
Simple Hen
 
Posts: 83
Joined: Fri Feb 02, 2007 17:02

Postby wolfden » Fri Mar 23, 2007 15:21

thecdn wrote:wolfden,

Good writeup, will give it a go this weekend - loooong weekend? :wink:

You base this on using a new, fresh installation. What if you've already done the 'things to do with a new install?', ie
emerge --sync
layman -s
glsa-check -f all
dispatch-conf

Can you still proceed with this or is it only good for a clean install?


It should all be good to go because I ran 3.26 a while before I took it to world update.
wolfden
Sharecropper
 
Posts: 9050
Joined: Sat Jan 14, 2006 0:55
Location: Midwest USA

Postby voxiac » Fri Mar 23, 2007 19:51

Have you tried update-world script? http://www.gentoo.org/news/en/gwn/20061 ... #doc_chap3

Now if anyone would write a good update world guide for paludis... :roll: (fighting with it now)
voxiac
Advanced Hen
 
Posts: 218
Joined: Sat Feb 10, 2007 17:05
Location: Denmark

Postby wolfden » Fri Mar 23, 2007 21:58

Tried it, didn't care for it - don't see the point of it.
wolfden
Sharecropper
 
Posts: 9050
Joined: Sat Jan 14, 2006 0:55
Location: Midwest USA

Postby davemc » Sat Mar 24, 2007 5:11

Excellent writeup wolf!

Please note that world update is totally and completely unnecessary in Sabayon. There really is no "good" or logical reason to do it except to satisfy your geek side IMO. SL comes with everything the average user will/would ever need and 3.3 is pretty dern stable as installed. Upgrade/update individual packages as needed, like I do, and you will not run into any difficulties. SL release cycle's are so often that the best thing to do is just stick with base install and update individual packages as needed until the next release cycle, again IMO. You can update world and spend 2-3 days doing it, weeding through failed package updates, etc.. pull your hair out and spend all kinds of time weeding through wiki's and "my X wont work WAAA!" posts, but I guess whatever trips your trigger lol! Each his own.
davemc
Sharecropper
 
Posts: 680
Joined: Tue Jan 02, 2007 17:08
Location: Virginia, usa

Postby davemc » Mon Mar 26, 2007 0:38

Just for giggles, I tried this on my older system that I installed the x86 mini on and this is what I got.

1) zcat..... "cannot find kernel in /usr/src/linux"

2) emerge -e world.....

emerge -e world || until emerge --resume --skipfirst; do emerge --resume --skipfirst; done && emerge -e world || until emerge --resume --skipfirst; do emerge --resume --skipfirst; done
Calculating world dependencies /
!!! Multiple versions within a single package slot have been
!!! pulled into the dependency graph:

('ebuild', '/', 'sys-kernel/linux-headers-2.6.19.2-r2', 'merge') pulled in by
('ebuild', '/', 'media-video/mplayer-1.0_rc2_pre20070321-r4', 'merge')

('ebuild', '/', 'sys-kernel/linux-headers-2.6.20-r2', 'merge') pulled in by
('ebuild', '/', 'sys-apps/hal-0.5.9-r4', 'merge')
('ebuild', '/', 'sys-libs/libcap-1.10-r9', 'merge')
('ebuild', '/', 'kde-base/kopete-3.5.6', 'merge')
('ebuild', '/', 'sys-apps/util-linux-2.12r-r6', 'merge')
('ebuild', '/', 'sys-apps/iproute2-2.6.19.20061214', 'merge')
('ebuild', '/', 'app-mobilephone/gnokii-0.6.14-r2', 'merge')
('ebuild', '/', 'sys-apps/sysvinit-2.86-r8', 'merge')
('ebuild', '/', 'sys-apps/raidutils-0.0.6-r1', 'merge')
('ebuild', '/', 'sys-apps/baselayout-1.12.9', 'merge')
('ebuild', '/', 'kde-base/klaptopdaemon-3.5.6', 'merge')
('ebuild', '/', 'media-gfx/sane-backends-1.0.18-r2', 'merge')
('ebuild', '/', 'media-tv/linuxtv-dvb-headers-3.1', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-v4l2-0.8.12', 'merge')
('ebuild', '/', 'net-misc/iputils-20070202', 'merge')
('ebuild', '/', 'net-firewall/iptables-1.3.7', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-v4l2-0.10.5', 'merge')
('ebuild', '/', 'x11-drivers/xf86-input-evdev-1.1.5-r1', 'merge')
('ebuild', '/', 'x11-drivers/linuxwacom-0.7.4_p3', 'merge')
('ebuild', '/', 'media-video/transcode-1.0.3_rc2_p20070310-r1', 'merge')
('ebuild', '/', 'media-libs/xine-lib-1.1.4-r2', 'merge')
('ebuild', '/', 'net-misc/openssh-4.6_p1-r1', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-v4l-0.10.4', 'merge')
('ebuild', '/', 'sys-libs/glibc-2.5-r1', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-oss-0.10.5', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-oss-0.8.12', 'merge')

It may be possible to solve this problem by using package.mask to
prevent one of those packages from being selected. However, it is also
possible that conflicting dependencies exist such that they are
impossible to satisfy simultaneously. If such a conflict exists in the
dependencies of two different packages, then those packages can not be
installed simultaneously.

For more information, see MASKED PACKAGES section in the emerge man page
or refer to the Gentoo Handbook.

!!! Depgraph creation failed.
emerge: It seems we have nothing to resume...
Calculating world dependencies /
!!! Multiple versions within a single package slot have been
!!! pulled into the dependency graph:

('ebuild', '/', 'sys-kernel/linux-headers-2.6.19.2-r2', 'merge') pulled in by
('ebuild', '/', 'media-video/mplayer-1.0_rc2_pre20070321-r4', 'merge')

('ebuild', '/', 'sys-kernel/linux-headers-2.6.20-r2', 'merge') pulled in by
('ebuild', '/', 'sys-apps/hal-0.5.9-r4', 'merge')
('ebuild', '/', 'sys-libs/libcap-1.10-r9', 'merge')
('ebuild', '/', 'kde-base/kopete-3.5.6', 'merge')
('ebuild', '/', 'sys-apps/util-linux-2.12r-r6', 'merge')
('ebuild', '/', 'sys-apps/iproute2-2.6.19.20061214', 'merge')
('ebuild', '/', 'app-mobilephone/gnokii-0.6.14-r2', 'merge')
('ebuild', '/', 'sys-apps/sysvinit-2.86-r8', 'merge')
('ebuild', '/', 'sys-apps/raidutils-0.0.6-r1', 'merge')
('ebuild', '/', 'sys-apps/baselayout-1.12.9', 'merge')
('ebuild', '/', 'kde-base/klaptopdaemon-3.5.6', 'merge')
('ebuild', '/', 'media-gfx/sane-backends-1.0.18-r2', 'merge')
('ebuild', '/', 'media-tv/linuxtv-dvb-headers-3.1', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-v4l2-0.8.12', 'merge')
('ebuild', '/', 'net-misc/iputils-20070202', 'merge')
('ebuild', '/', 'net-firewall/iptables-1.3.7', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-v4l2-0.10.5', 'merge')
('ebuild', '/', 'x11-drivers/xf86-input-evdev-1.1.5-r1', 'merge')
('ebuild', '/', 'x11-drivers/linuxwacom-0.7.4_p3', 'merge')
('ebuild', '/', 'media-video/transcode-1.0.3_rc2_p20070310-r1', 'merge')
('ebuild', '/', 'media-libs/xine-lib-1.1.4-r2', 'merge')
('ebuild', '/', 'net-misc/openssh-4.6_p1-r1', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-v4l-0.10.4', 'merge')
('ebuild', '/', 'sys-libs/glibc-2.5-r1', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-oss-0.10.5', 'merge')
('ebuild', '/', 'media-plugins/gst-plugins-oss-0.8.12', 'merge')

It may be possible to solve this problem by using package.mask to
prevent one of those packages from being selected. However, it is also
possible that conflicting dependencies exist such that they are
impossible to satisfy simultaneously. If such a conflict exists in the
dependencies of two different packages, then those packages can not be
installed simultaneously.

For more information, see MASKED PACKAGES section in the emerge man page
or refer to the Gentoo Handbook.

!!! Depgraph creation failed.
emerge: It seems we have nothing to resume...


this method fails.
davemc
Sharecropper
 
Posts: 680
Joined: Tue Jan 02, 2007 17:08
Location: Virginia, usa

Postby wolfden » Mon Mar 26, 2007 1:04

listen to what portage is telling you and you can resolve that. It's not an automatic go when you throw the comands in, especially when working with something pre 3.3
wolfden
Sharecropper
 
Posts: 9050
Joined: Sat Jan 14, 2006 0:55
Location: Midwest USA

Postby davemc » Mon Mar 26, 2007 1:53

Wolf that is updating the 3.3 x86 mini and it comes up with all those errors. I know it can be done; you do it all the time, but it seems an awful lot of trouble and for what?
davemc
Sharecropper
 
Posts: 680
Joined: Tue Jan 02, 2007 17:08
Location: Virginia, usa

Next

Return to Portage|Emerge Package Managers

Who is online

Users browsing this forum: No registered users and 2 guests