Archive for category sabayon linux
I came across a post made by Jeff Hoogland on his blog back in March. I never was much of a KDE user myself, but I recall how fast and stable it was in early Sabayon 3.
If you didn know it yet, KDE 3 has been removed from Gentoo Portage tree a while back. Same goes for Qt version 3 and the qt3 useflag.
Being removed from Portage tree does not mean it isn’t available anymore, actually, it still is and is being maintained too!
Everything got moved out tree into the sunset overlay.
I went ahead investigate what it would take to get it running on a current Sabayon 6 installation.
Sync Portage tree and add the sunset overlay:
layman -a kde-sunset
Now I noticed that so far the only “big” change would be that I needed avahi from kde-sunset overlay. Since kdelibs:3.5 has a dependency on avahi with qt3 useflag.
Look at /etc/portage/package.use and add the qt3 useflag to the avahi entry so it looks like this:
net-dns/avahi howl-compat mdnsresponder-compat dbus gdbm -gtk python autoipd -qt4 qt3
Now we can go ahead and merge kde-base/kdebase-startkde. I tend to always install this one instead of kde-meta. It makes a nice minimal KDE installation.
Remember that you can use Entropy to install additional build tools, to keep as much insync with Entropy.
emerge -av kdebase-startkde:3.5
And there you have it!
Notice the :3.5 I used here. This is NOT a version it is a SLOT.
If you later want to install additional KDE 3.5 programs, e.g. ksnapshot or konsole do it like this:
emerge -av konsole:3.5
emerge -av ksnapshot:3.5
For Entropy users:
Mask avahi, otherwise Entropy will pull in the Entropy version (without the qt3 flag enabeld/available)
equo mask avahi
Finally sync Entropy database, so it is aware of the changes you made:
equo rescue spmsync
If you experience a low download speed when upgrading your system with Entropy there are several things you can do to try speed it up.
Select the best mirror
equo repo mirrorsort sabayonlinux.org
This will do some tests and evaluate the results automatically. Then sets the mirrors in the correct priority and writes the changes in /etc/entropy/repositories.conf
If you do have a better internet connection, you can change the way how Entropy downloads the packages you need for installing.
Open /etc/entropy/client.conf and change multifetch as follows:
multifetch = 10
Don’t forget to remove the # comment char, otherwise the line would still be skipped over.
Use delta technology
When we create a new version of a package on the server, the REAL difference (delta) between them could be small. Sometimes we just need to recompile a package because it got broken because some library got a new API version or whatever. So on a 16MB package, that diff could be as little as 100kb!
In the Entropy package manager we’ve build in a feature that could actually download the difference and then patch the old package and use the newly created on on your machine. In order to have this working you should keep a copy of your downloaded packages. (So don’t run equo cleanup!)
If you are on lower bandwidth but have enough disk space on your system you might want to consider enable packages-delta.
Open /etc/entropy/client.conf and change packages-delta as follows:
packages-delta = enable
Don’t forget to remove the # comment char, otherwise the line would still be skipped over.
Allot of work was done recently to work down the reverse dependency list on HAL.
One of the bigger problems was Enlightenment. Some time ago we moved to using the EFL packages from Portage to base our Enlightenment version on. I wanted to move to a more maintainable and more “stable” Enlightenment so we could work out a spin for Enlightenment.
This all was just fine until it became an item on the todo list for HAL removal. After a short chitchat wit upstream developers I quickly realized it could take some time before I could actually be HAL independent if I wanted to maintain things like I did. So I cut the knot and
– moved the live ebuilds from Vapiers enlightenment overlay to ours
– key-worded them for ~amd64 and ~x86
– fixed some issues (automagic dependency on edb pulling in an old gtk+ version ZOMG!, make the ebuilds use virtual/jpeg)
And there I had it. The whole thing compiled pushed into our testing repository tested it and now we have it in our main repository!
If you already had Enlightenment installed, simply install the -9999 version updates. (-9999 in portage means this is a live ebuild, all sources are taken from the trunk directly and not taken from a released version tarball upstream created). After you installed the updates you want to get ridd of edb since it is not used anymore.
Simply run : equo remove edb --deep
This command removes edb and all its deps that are not needed anymore (most likely it will also remove the old gtk+ version)
About gtk+, I noticed that gtk apps in Enlightenment look a bit “ugly” at first. This is because the GNOME Settings Daemon is not running. You can make it run automatically when you enable it in the Enlightenment settings panel. -> Apps -> Startup Applications. Click on GNOME settings daemon -> Click add and click on apply. Then logout and login again and there you have it.
Last but not least. I noticed that some older themes I had laying around didn’t work that well. if you are looking for cool enlightenment themes go to this website: http://exchange.enlightenment.org/theme
Lately I’m getting really annoyed with the ATI drivers and the system instability it gave me. I posted my problems on our mailinglist but what can I do about it? Not much.
So I decided to take a look, once again, to the state of the Opensource ATI driver and made it work with the stock Entropy packages we have.
Let me warn you that if you are happy with current fglrx, don’t change it. If it ain’t broken don’t fix it!
Now if you are a bit of an experienced user and know how to revert some steps here is a small guide how to make things work for you.
Step 1: Get rid of ATI drivers
equo remove ati-drivers
Step 2: Let the kernel load the radeon module
Edit /etc/conf.d/modules and add modules=”radeon” at the end of the file
Step 3: Remove some kernel parameters from the grub menu
Edit /etc/default/sabayon-grub and remove the console=tty1 quiet splash= and vga= completely.
Step 4: Add a custom parameter that enables KMS (Kernel Mode Setting)
Edit /etc/default/grub and add radeon.modeset=1 to the GRUB_CMDLINE_LINUX_DEFAULT variable
Step 5: Regenerate your grub.cfg file:
grub-mkconfig -o /boot/grub/grub.cfg
Step 6: Use “ati” in /etc/X11/xorg.conf
Edit /etc/X11/xorg.conf and change “fglrx” to “ati” in the Driver section of the file
Optionally you can also play around with the new Gallium3d implementations. To change things to use gallium3d instead of the older mesa you can use the command: eselect mesa list to show how things are currently set.
In my case: eselect mesa set r600 2
Would set it to use gallium3d
If you for whatever reason managed to break Entropy (equo) and aren’t able to update / upgrade / install any program using Entropy, you are screwed most likely because you could not update Entropy or reinstall equo to fix it.
It is very unlikely that you get into a situation like this but I’ve seen the most weird problems people get into and it could happen to you too! You install upgrades on your laptop and the battery went down in the middle of process, the cat pushed a button in the powerbox and the lights went out..etc
The alternative to fix Entropy is to install it using Portage. Here are the steps to take:
1. Sync the sabayon overlay:
layman -s sabayon
OR simply add the overlay in case you didn’t have it yet
layman -a sabayon
2. Install Entropy directly from the overlay:
emerge entropy equo --nodeps
3. Inform Entropy about the changes you made:
equo rescue spmsync
5. Reinstall Entropy with Entropy
equo update && equo install entropy equo
Since the release of 5.4 many many things changed. As you might have noticed, the Sabayon Linux project is moving fast and many updates are generated every day.
Because we are now a rolling distro and moved some things into the maintenance scope, things that would normally ONLY get updated on a new branch, we had to resolve an issue that some Gnome users ran into. In fact the problem was not a specific Gnome issue but a distro wide problem.
When I bumped glibc because a security reason, Fabio already warned me about problems that could affect our users but we decided to go ahead.
What we learned is that in such a case, glibc on the user end should ALWAYS be installed first. And Fabio wouldn’t be Fabio if he didn’t foresee the need for such a feature and this was already possible to do for some time now. So we moved glibc to the special list and there you have it on a fresh install:
equo update && equo upgrade:
It now wants to first install glibc! You ofcourse should do this (you have no choice using upgrade)
When this is installed you want to install the latest entropy version first:
equo install entropy –relaxed
Finally you can install all the updates.
Remember that Sabayon 5.4 shipped with the 2.6.35 kernel version. If you want the 2.6.36 kernel version (or later whenever it is available in Entropy) you should manually install it. Please refer to our wiki on how to do this.
In my daily maintenance routine I tend to throw an emerge -uav world against the sabayon trees and see what packages can be bumped. I also check http://www.gentoo-portage.com to see what is new. In this routine 90% off all things I bump for Entropy it is done manually writing each emerge -av command by hand.
Since I trust Gentoo developers for doing a good job within their own little expertise and interest, I kinda trust each package bump makes sense. If it is either some revision bump because there was some LD flags to respect, a fix for –as-needed or simple another minor thing I just bump them. Even though on the binary end this would not make any difference for the user experience I just do it.
However this workflow sometimes leads to some stupid breakages because somebody thought it was a great idea to bump some lib that in fact is there for a reason. Some things in the Portage tree simply are there because some, or maybe one, of the atoms in the tree need them. There are numerous examples I ran into lately but here is one off them:
In my daily routine, some while back I bumped net-libs/enet. Not a big deal really. However this seemed to break games-action/supertuxkart and my tools could not detect this breakage. Otherwise I would obviously reverted this update. I went looking into some history and I realized that only games-action/supertuxkart ,games-rpg/egoboo and games-puzzle/enigma actually need net-libs/enet within the Portage tree, so why was this package bumped anyway? Not because it was needed for one of its parent atoms , no, because some user on the gentoo bugzilla requested this atom (remember only needed so far by 3 atoms) to be updated because “there was a newer version”. http://bugs.gentoo.org/325809 (just an example, do not shoot anybody for this!)
Somebody requested without any motivation this package to be updated and without question this was done. This all leads to atoms currently in Portage to mall function, fail to compile, etc. Later this all was corrected by Gentoo QA team where they slotted the enet version.
So what happens next is that users notice this when they install one off the games and it doesn’t work? They file a bug to Sabayon, or a Gentoo user files a bug to the Gentoo bugzilla. A bug wrangler needs to check the bug is valid enough and assign it to a herd/maintainer. The maintainer then discovers the unwanted enet bump and got to do all the work to block the newer version. All that kinda work because somebody thought it would be nice to bump a library/piece off software.
If users request such a version bump do not be scared to ask for a motivation.
It is nice to be bleeding edge, but really uncool to fall off the cliff just to look cool.