In my last post, I’d mentioned that I planned on reinstalling Gentoo to fix several dependency issues that had made upgrading packages an impossibility. I chose to use the Funtoo variant and have since become an expert with the install process.
My first attempt was an installation of Funtoo unstable, which included packages that are normally masked out for stability reasons. This particular installation went fine and worked properly, until the hard drive I’d installed it on decided that it had better things to do than spin up when booting the computer. The end result was a kernel panic on boot and inability to mount the drive. One thing that I did notice under GNOME 2.28 is that “alacarte”, the menu editor, is not installed as a default package or chained as a dependency. As a result, the “Edit Menus” option in GNOME merely displayed a list of installed applications, with no way to add new ones or edit the properties of existing ones.
The latest and most current version I’m running now is Funtoo stable. It’s a very snappy and responsive environment, and I haven’t yet run into package conflicts or dependency problems. Unfortunately, two of my most-used apps (Songbird and VLC) have problems running – VLC refuses to display a user interface (but runs in a terminal seemingly properly), and Songbird insists that my request to play a song should be met with a core media error. I may end up trying the mailing list or IRC channel to see what the level of support is for VLC at least, or the appropriate process for migrating a “stable” release to the “unstable” one.
Update: I’m apparently plagued with the “didn’t read the documentation” curse. Here’s what VLC says when I try to reinstall it:
* Messages for package media-video/vlc-1.0.3:
* You have disabled the qt4 useflag, vlc will not have any
* graphical interface. Maybe that is not what you want...
I’m not sure if I really want to build it with QT support… but in the meantime, I’ve added “media-video/vlc qt4” to the /etc/portage/package.use file and it seems to work fine.
I haven’t needed to reinstall my system nearly as many times as Jon or Tyler, which is a good thing – Linux is supposed to be reasonably stable once it’s up and running, right? My first reinstall of Gentoo was based on a circular dependency with portage, but left me with a stable system that was running GNOME until I tried emerging world. (This is the Gentoo equivalent of “apt-get update && apt-get upgrade”.)
This morning’s fiasco involved the system still thinking that QT3 was installed, even though I’d specifically removed the “kde” flag from my make.conf file. After repeatedly trying to unmerge and purge the unwanted KDE packages from my system, I ran “revdep-rebuild” (suggested on bugs.gentoo.org for the particular OGG library that was refusing to compile) which threw all the KDE packages back in place – and worse, suggested a dependency on GNOME!
There are too many issues that can occur when your system won’t update. I have a client’s Windows machine rebuilding because FakeXPA and “Windows Antivirus Pro” snuck past Symantec AntiVirus – and with new remote exploits coming out all the time, I don’t need my SSH server compromised by a script kiddie.
As a result, I’m currently installing a variant of Gentoo called Funtoo Linux, which uses the same portage package management system but differs in its use of source control, initialization scripts and core overlays. It uses the Gentoo LiveCD to install, and appears to have a more liberal approach as to which packages are available at any point in time. I also agree with Daniel Robbins’ approach to blockers and blocked packages, which has been hashed out on the Gentoo bug tracker in great detail. Wish me luck!
In the process of migrating to KDE as my desktop environment (selected as I have no experience with the newest versions, and I want an entire desktop environment as opposed to just a window manager) I decided to use the fateful eselect profile utility.
Gentoo has a system profile selector, where you can choose the Portage profile that best suits your environment and needs for the computer. My existing profile was default/linux/amd64/2008.0, and I decided to switch to default/linux/amd64/10.0/desktop. I then ran emerge –update –deep –newuse world to completely rebuild and update packages accordingly.
Portage indicated that I had hundreds of dependency conflicts and refused to update or install additional packages, no doubt aggravated by my use of “autounmask” and Portato’s dependency resolver. The most visible problem was Ekiga depending on GTK+ 2.6, which depends on GNOME 2.26, which itself depends on Ekiga. It was a giant circular mess that left me unable to resolve dependencies. I tried all the traditional fixes, including depclean and trying to reset my package.keywords file.
Faced with an intermittently working desktop, I flattened and reinstalled the system last night and am continuing to get things back up in working order, this time with the QT libraries enabled. (KDE is currently compiling – I’m using twm, the default X window manager, to run a web browser.) A few things I noticed this time around:
- Don’t necessarily put a whole ton of USE flags in your /etc/make.conf file at first. Portage is pretty good at telling you if a flag is required for a package, and you can always recompile something if you need to.
- In the latest amd64/10.0/desktop profile, X.org comes with version 1.6. I had no end of difficulty getting an xorg.conf file created with X -configure – it would start and load with only a black screen. I ended up running X.org using startx, then using nvidia-config to generate a base file.
- evdev (for input device support) works great, provided you have hal and dbus USE flags and the appropriate daemons are started. I didn’t even have to touch the input device section of xorg.conf.
- Select your system profile first, before changing it will cause grief!