Gentoo

Mistakes

For a tech blog, I feel I write a lot of stories. And event though I want to share what I've learned, I also feel that including a little bit of background adds a nice layer of context to what information I'm trying to pass along. I definitely don't wanna write a novel, but I feel that a little backlog might add an extra element to what I'm trying to convey.

Like this story: A couple of months ago I saw an article posted by HowToGeek on video recording in VLC. After reading it I went home to try it out, and didn't get any luck, VLC didn't record for me. At which point I commented on the blog saying as much. (The date of my post is July 22, 2009 at 10:19 pm).

Here we are now, almost three months later and I have to eat those words. VLC record does work in linux. But if your using Gentoo you need to make sure you have the right USE variables set or else it won't record.

I came across this while trying to figure out how to get x264 encoding to work in ffmpeg. And in some random google link I came across this webpage hosted on VLC's website. It basically contained the “secret sauce” to build VLC properly in Gentoo to get VLC to record. So of course I see and follow through with the website of adding the line:

media-video/vlc wxwindows aac dts a52 ogg flac theora oggvorbis matroska freetype bidi xv svga gnutls stream vlm httpd cdda vcd cdio live

to my /etc/portage/packages.use, then recompiled. And VIOLA, the record button now functions properly. I admit to feeling a little sheepish for posting my comment so quickly. And of course now I feel compelled to post again to that article telling them I was wrong. Also, I feel like I should also post a comment to the gentoo forums because I was not able to find anything there regarding this problem, and hopefully I can help someone out before it becomes a three month problem for them.

Internet, I learned my lesson. From now on I will do better due diligence regarding my research before I post comments again. Can you forgive me? Thanks!

Gentoo to Funtoo Migration

I have a little confession to make. I've been using Linux for a long time now. Over ten years if you want to put a number to it. The last seven of which I've been a devout Gentoo user. And in being a fan all those years and trolling on the forums like I usually do. I've seen a lot of complaints over the slowness of portage (the package management system for gentoo) and numerous requests for it to be rewritten to no longer use rsync as its back end.

And while Sabayon has to change this in their own distribution, which is based on gentoo and uses subversion for the Sabayon packages above the regular gentoo packages. There are also various layouts hosted by other gentoo users that accomplish the same thing.Which is basically to use subversion above portage. So even though this is a little different the actual portage architecture hasn't really changed, its still done over rsync.

Recently it has come to my attention that the founder of Gentoo, Daniel Robbins, has started a new distro based on his old creation. Its called Funtoo. And one of the things about this that caught my eye was that its using Git to do the package updates. Well of course I had to try this out. So in a virtual machine I got funtoo up and running. And I enjoyed the speed up of using git over rsync. But of course the geek mind wanders, like it always does, and I began to wonder if I could take a regular Gentoo install and move it to Funtoo without having to reinstall everything. So out came the virtual machine again, installed Gentoo on it. And this is my recipe for moving a Gentoo box to a Funtoo box.

So, in order for someone to do this, they are going to need a couple of things:
1) a working install of gentoo (DUH) as well as:
1.1)have git emerged (installed)
1.2)have the 2.2 version of portage installed
2) a downloaded copy of the funtoo stage 3 build for your system

procedure:

(This part of the instructions where copied from the Funtoo quick install)
move /usr/portage to /usr/portage_old
download a copy of the current funtoo's portage snapshot from the website and decompress the file in the /usr directory:
cp portage*.tar.bz2 /usr
cd /usr
tar zxjif portage-*.tar.bz2

cd into the new portage directory and checkout the funtoo git repository:
cd /usr/portage
git checkout funtoo.org

update portage data:
emerge --sync

After that I just did a simple system update (being this was a barebones install of gentoo, system and world are the same. I can suspect that you will have more to rebuild if this is not the case.) :
emerge -u system

After this point, your going to be making the conversion from Gentoo to Funtoo. So things are of course going to go as smooth as sandpaper. Actually, it really wasn't that bad. There is just some loose ends regarding networking that you need to tie up.

Go to where you have your funtoo tarball, and extract the net.lo file like so:
tar xvjif state3-arch-current.tar.bz2 ./etc/init.d/net.lo

then copy it to your /etc like so:
cp net.lo /etc/init.d/net.lo

then delete net.eth0:
rm -f /etc/init.d/net.eth0

and the last part is to make sure your using a version of dhcpcd >= 4.x. If your running 5.x, then all you have to do is:
rc-update add dhcpcd default

and your done.

If your not running dhcpcd 5x and portage only tells you the latest version to install is in the 4x series, then you'll need to make a quick modification to the package.keywords file:
echo "net-misc/dhcpcd ~x86" >> /etc/portage/package.keywords

and then reemerge dhcpcd, afterwards you'll be able to do the rc-update command above.

And if your using a static IP for your new Funtoo box, then you can avoid all that hassle above and just follow the Funtoo Network guide here.

After this point your basically done. You might have to run a quick etc-update. And maybe rebuild various packages. But all things said and done, welcome to your new funtoo system. Now go enjoy those faster sync's. ;)

Thanks for sticking around this long, and happy emerging.

Syndicate content