Category Archives: Gentoo

Package World for Reinstall

In you would like to rid the cruft on your system, or if you system has a virus (unlikely) or even if you want to install the system again at a later day a good way to do this is to package all your installed emerges. This can be done with a slightly-modified version of holla’s bash script:

#!/bin/bash
# pkg-world

emerge -peq world | sed -n ‘s|^\[ebuild[^]]*\] \([^ $]\+\).*$|\1|p’ | \
sed -r ‘s/-[^-]+(-r[0-9]+)*$//’ | sort -u | while read pkg; do
for p in “${pkg}”; do
quickpkg –include-config=y –include-unmodified-config=y “$p”;
done;
done

Once this is done you can backup your Gentoo system by:

tar –exclude=gentoo-backup.tgz -cvpzf gentoo-backup.tgz /etc /usr/portage /var/lib/portage/world

Obviously you might want to do more like /home and /root. Then you can extract the tar on a new stage3 and emerge -K --deep world. I’d recommend not trying this if too much time has passed between backup and reinstall as portage configurations may have changed, but otherwise it can save you alot of compiling time.

Please read the comments for other (easier) ways to do this.

Kernel 2.6.28 Notes and Upgrade to Ext4

Normally you don’t update the kernel at every release unless hardware doesn’t work as expected or you really need the slight performance enhancements you may get from new kernel technologies. But… if you have a new module you need to add you may as-well.

A great site that posts about kernel upgrades is kernel newbies, you’ll need to understand the options for updating and while you’re at it you can upgrade to ext4 – don’t worry, it’s easy.

Dog the Kernel

So you don’t download upteen kernel source between kernel update you may as well just unmask the version you need:

echo “sys-kernel/gentoo-sources” >> /etc/portage/package.mask
echo “sys-kernel/gentoo-sources-2.6.28″ >> /etc/portage/package.unmask

To have /usr/src/linux link to your the new kernel sources:

echo “sys-kernel/gentoo-sources symlink” >> /etc/portage/package.use

Emerge it:

emerge gentoo-sources
cd /usr/src/linux
cp /usr/src/linux-2.6.27-r2/.config .
make oldconfig

Here’s a few options answers:

If you want to find out if you BIOS is corrupted or if someone has been tampering with it:

X86_CHECK_BIOS_CORRUPTION=y
X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y

2.6.28 can also Reserve low 64k of ram on AMI/Phoenix BIOS’s that as some developer that I lost a link to said, “This might as well solve a wide range of suspend/resume breakages under Linux.”

X86_RESERVE_LOW_64K=y

LRU List Y

Write ELF core dumps with partial segments N

Distrubuted Switch Architecture N

Phonet (for cellular phones) N

Integrated Circuits No

Voltage and Current Regulator Support No # Could be useful on laptops

PID device support No

# Say Y here if you have a PID-compliant device and wish to enable force feedback for it. Microsoft Sidewinder Force Feedback 2 is one of such devices.

Load all HID drivers… Yes

Extended 4 (ext4) filesystem (EXT4-FS) Y

Enable ext4dev compatibility N

Ext4 extended attributes (EXT4_FS_XATTR) N

RCU N

CRC32C hardware acceleration N

People may have heard about the new GEM Memory Manager for GPU memory that can help improve draw-speeds dramtically. GEM is a modern GPU memory manager and is already built into the kernel so it doesn’t need configuring. Only the intel 915 driver has this support yet but others will eventually follow.

Now build and install the kernel:

make clean bzImage modules modules_install install

Edit /boot/grub/grub.conf to add the new kernel:

title Debian heh 2.6.28
root (hd0, e.g 4)
kernel /boot/vmlinuz-2.6.28-gentoo-r2 root=/dev/

Rebuild the driver packages that attach to the kernel (tell me if has to be done after reinstalling, cause I forgot to do it :) ):

module-rebuild list
module-rebuild populate
module-rebuild rebuild

Upgrading to Ext4

Ext4 is the evolution of ext3 and provides tons of enhancements. Ext4 looks to be a real good modern filesystem. Linux is good.

Edit /etc/fstab and change filesystems from ext3 to ext4.

If you have a seperate boot partition, it’s best to leave it as ext2 or ext3. If /boot is part of your root filesystem, you’ll need to install a patched version of grub that understands ext4. In Gentoo versions of grub greater than 0.97-r9 have the patch built-in.

grub-install –no-floppy /dev/sda

Or whatever you hard-disk is.

Next you’ll need to boot from an installCD as converting partitions should not be done on mounted media. I used the Sabayon DVD. This step take like a nanosecond.

tune2fs -O extents,uninit_bg,dir_index /dev/device

And you’ll need to fsck to fix the nodes.

fsck -pf /dev/device

All is good in the world. Adio!

Gentoo Proud

Just about two weeks back, the article “ The Decline of Gentoo Linux” created an rippling avalance of Gentoo scantiness that caromed into an an awkwardly tied Cnet article of Gentoo vs. Ubuntu.

Distrowatch Weekly recalled attention to the original article several days later and amplified the lightly trolling post. The past two weeks Gentoo has taken a beating.

First Thomas Capricelli (a Gentoo user) voiced his disappointment that KDE-4.1 is not in the tree yet.

This has become a big issue because 4.1 essentially marks KDE out of beta and because it has been more than a month of KDE-4.1’s official release. Marcus Hanwell (part of Gentoo’s KDE team) noted three weeks ago that the KDE-4.1 delay is partly do to Portage’s new EAPI 2 standard and how KDE-4.1 can be multi-slotted. Jan Kundrát, another Gentoo KDE team member, points out the new spec as well as that several of Gentoo’s KDE team left recently.

The gong really sounded on an article last week not because of it’s content but rather it’s title. This article generated alot of unwanted buzz and stopped a few hearts (including yours truely). “Gentoo Linux Cancels Distribution” the article was largely optimistic though, and was probably just written by someone new to Linux definitions.

Justin Dugger also pondered “Is Gentoo Dying? and Loren Bandiera asks “What happened to Gentoo?

The “ The Decline of Gentoo Linux” loosely posited Gentoo’s decline by three criteria: long delay of installation media releases, KDE-4.1 not being in the portage tree yet, and the project’s fewer developers. Criteria hardly indicating his assertion that Gentoo is barely holding it together.

I’ve used Gentoo for one and a half years now and I have no evidence that Gentoo is declining. Gentoo’s package system almost always has the newest version of a package I need in the portage tree. Gentoo recently has changed it’s voting method so it is more likely the most experienced, most active developers make the decisions as part of the Council that best influence Gentoo. I also still see a good volume of postings in Gentoo’s forums, and the Gentoo-wiki.

Gentoo is in a change of flux more than usual (I believe) because of the new leadership structure. And I think you can argue here that there is a warning signal going off on Gentoo’s decentralization. Many people choose to create their own projects. But is this decentralization going to cause an unraveling of Gentoo? I don’t think so.

Gentoo is a hobbyist’s distrobution so fluxes are expected, to predict it’s demise by those three criteria is a loose exposition at best. The Gentoo Council seems to be more homegenous than I have known it for the last year and a half. So I look to a greater Gentoo later. Gentoo is a great distrobution and I plan to use it for a long time.

Firefox 3 Quick Review and Setup Guide

After a few library dependency checks and a Firefox beta 5 build later, my update is 1.0 final, six day later and… phew! It’s good though since I haven’t touched my system with an update for six months.

Those that are regular viewers of this blog know that I’m a regular Epiphany user. Firefox 2 is a good browser but on my older laptop, I just found it too sluggish and resource greedy. Epiphany took alot of the fat that is the Firefox 2 frontend and put it in a lightweight GTK interface. Firefox 3 beta 5 would really need a good show for me to replace it, and it did and more. This is more of a setup guide than a review though I tossed in some pretty pictures. I’ll let the viewers decided how good Firefox 3 is.

Setting fonts

A good way to setup fonts is to use the css font value “medium” tag. The default font size set in the browser will reflect this value. I like to look at an array of font sizes to get an understanding of what font size to set. Take a look at these css samples to get a good idea of font and minimum font sizes to set.

For LCDs below 100 dpi I pretty much forget about setting a serif font. Serif fonts have many details and just aren’t easily readable unless there are enough dpi available.

Preferred Applications

I prefer to open new windows in tabs. As long as this is set in Firefox and the Preffered Applications control panel is set to use Firefox’s default, other applications opening a web page in Firefox will also use a new tab. I prefer to have the behavior of all new tabs open in the same manner though – in the background. This can be done in “about:config”(type in location bar), use the filter to find “browser.tabs.loadDivertedInBackground” and set this to true.

“about:config” yarn. I thought was pretty funny. :)

Epiphany Bookmarks Import

Firefox 3 won’t understand Epiphany’s bookmark file if imported directly. Therefore the rdf (bookmarks.rdf in ~/.gnome2/epiphany/) file will need to be converted. Thankfully the good people at Epiphany have created a translator.

Then I had select Bookmarks > Organize Bookmarks in the menu and then click the import-button. It may take a minute for the information to enter the database and may even need a restart before the bookmarks are recognized.

New Bookmarks and Location Bar

It’s going to be interesting to see just what people think of Firefox’s new location/bookmark/tag bar. The folks at Firefox are calling it the “Amazing Bar” and it is pretty cool. The tagging feature of Firefox three looks like it would be beneficial though I have no idea how to use it. I also like this idea of quick bookmarks:

Firefox 3 Quick Review and Setup Guide

Clicking the star on the right side of the location bar will bookmark the site. Unfortunately, the bookmark will not show up in the drop-down Bookmarks Menu, it’s put in a different category and isn’t seen unless the bookmarks are reorganized. I wonder if Firefox 3 is complicating bookmarking by adding this extra level.

Already a few posts I have seen had say that they don’t like the expanded all-in-one location bar. No problem and easy enough to disable: in “about:config” preference name “browser.urlbar.maxRichResults”. Also an original location bar plugin is available.

GTK Scrolling… Held back a year

Firefox developers did a good deed and implemented a scrolling system into Firefox. Mousewheel scrolling can be adjusted in “about:config”. First flip “mousewheel.withnokey.sysnumlines” to false and then tell “mousewheel.withnokey.numlines” how many lines to scroll with each click.

Prefetching

I turn fetching off because it uses fewer resources. Flip “network.prefetch-next” to false.

Final Thoughts

“Parting is such sweet sorrow”
– Shakespeare Romeo And Juliet Act 2, scene 2, 176–185

Bye-bye Epiphany, at least for… now. Sounds funny but I’m going to miss it. Epiphany is a good browser but in almost every area Firefox 3 bests it. Firefox 3 looks to be a heck of a browser: it’s fast, uses less resources, and I do like it location bar function. Though, I am going to miss Epiphany’s integrated location bar/search bar. Why there are different bars for location and search I’m just not sure. Otherwise, I think I’m good for awhile.

  • + fast, and light
  • + very very compatible on all the websites I tested
  • + location location location – location bar rocks
  • – bookmark layout
  • ? Is addons.mozilla.org run my the president of Firefox’s nephew?
  • Related Links

coreutils and mktemp a dangerous pair

coreutils and mktemp a dangerous pairYikes, road bump. I just got done with my “emerge world” (yes 5 days later [overnights a slow pc]) and did a –depclean. I got hit bad by this block on day two:

[blocks B     ] sys-apps/mktemp (is blocking sys-apps/coreutils-6.10-r1)
[blocks B     ] >=sys-apps/coreutils-6.10 (is blocking sys-apps/mktemp-1.5)

Unemerging coreutils to let in mktemp was a bad idea. Bye bye ls, mv, mkdir… oh boy. Thank god the net was still up and I was able search, discover and extract what I needed from a stage3 to be able to build coreutils. Fast forward to today and –depclean removed “mktemp“. This took down my network connection. I had to encourage a librarian to burn mktemp source to a disk, and had thank the lord emerge didn’t fail. It didn’t. I blame udept for the –depclean fiasco. But now my pc is up to date… almost almost.

Gentoo Type A – An Update to Gnome 2.22

Gnome 2.20 is a great desktop, I carefully thought though of just leaving it be. As Ben talked about couple days ago, there comes a day where we question, “Is my current Gnome the last in line?” For those of us with older pc’s we have to think of this. Then I wake up and get head back on and think I have to update it! *** slaps forehead *** what am I doing? So after working on it yesterday I’ve updated to Gnome 2.22. It was grueling work – work that I really loath. ;)

First I had to unmask Gnome 2.22 in Portage which is as easy moving the Great Gnome 2.22 Mask contents form /usr/portage/profiles/package.mask and placing them in /etc/portage/package.unmask. For PPC some of these packages still need to be keyworded.

flagedit dev-libs/libgweather-2.21.2 -- +**
flagedit gnome-base/gvfs-0.2.1 -- +**
flagedit sys-apps/hal-0.5.10 -- +**
flagedit app-misc/hal-info-20071030 -- +**
flagedit sys-power/pm-utils-0.99.4 -- +**

There will be a couple of blocked packages. Blocked packages I don’t quite get yet. Fixing them though is simple enough. First remove the bully package, let the lady in, and then put the beat-up bully back in place. What I don’t get is this:

[blocks B     ] <gnome-base/control-center-2.22 (is blocking gnome-base/gnome-settings-daemon-2.22.1)
[blocks B     ] <gnome-base/gnome-applets-2.22.0 (is blocking dev-libs/libgweather-2.22.0)

By some feat of inprobability Gnome 2.22 must magically appeared already on my system. I’m thinking that this is a quirk in Portage as I don’t remember this happening before. Why are blocked packages necessary? Best I can figure is that a package has internal-checks for required packages during the build process and if earler versions are installed, the build process can fail. There’s a nice script and the gentoo wiki that make unblocking packages pretty simple.

Gnome Volume Manager Spam?

Gnome volume manager just seems to get worse. I’ve had gripes with GVM since my previous computer. GVM has a very unconsistent upgrade cycle. Bugs that get fixed in one rev will often return the next. Now it just gets bad. I was happy with my PPC version until this recent verison. When I insert my removable media GVM opens it in nautilus though I have selected it not to.

Also when I insert my removable media I now get this:

The disk is loaded fine but with further investigation:

$ ls -l /media/U3\ System
autorun.inf
LaunchPad.zip
LaunchU3.exe

It looks like there must be a a hidden partition on my flash drive that I haven’t been able to see before. Worse, there’s no way to turn it off or have it not show on the desktop. This is perfectly unacceptable and I might go back to 2.20 if portage lets me, I also might look into other options for automatic-mounting.

A Couple Early Observations

Nautilus and Gnome Main Menu are faster. This is likely to removing the esd use flag I had set in 2.20. Having system sounds are nice but I think esd is dead and never worked that well anyway. I hear pulse-audio is working on this. I would be nice to have the feedback menu-clicks like there are in Wesnoth.

The weather in the time applet is a nice addition.

Gentoo Type A - An Update to Gnome 2.22

It also has some degree of locality support.

Also with 2.22 if not already done, remember consolekit support. “sudo rc-update add consolekit default”.

I’m happy with Gnome 2.22. Seems to run every bit as good as Gnome 2.20 and better in some places. Good job with the update Gnome team, my 1999 machine still survives.

Links Saturday

Links SaturdayWell springs nearly here and most the snow is gone. A record year hear in Wisconsin, we got a lot of snow (100.4 inches). The last week it snowed several inches, I didn’t bother to shovel. Dam stuff can just melt. :)

General Linux

Big Uncle Dave gave a nice roundup of distros on the horizon. I like keep an eye on what distros are doing but Dave knows some good inside outs of them.

Gentoo

LIP (Linux Install Podcast) has produced three episodes of a Gentoo Linux install. I have yet to check them out but I am definitely going to this afternoon.

Tux Training gives a brief look at emerge in:

Should Gentoo Ditch the LiveCD?

Should Gentoo Ditch the LiveCD?Just a quick thought: Should Gentoo ditch the LiveCD? 2007 was a bad year for Gentoo releases only getting one out for the first time in it’s short history. Gentoo 2007.0 tried to be a eight armed monster and supported most known arches, a couple package CDs, a LiveDVD and the Minimal CD.

The LiveCD was plagued with problems from slow unworkable desktops to X server and video card failures as noted in the forums. Writing a LiveCD is a monstrous task involving hundreds and thousands of different components. I not pointing blame as the CD worked fine for a certain group of people but I think many would agree the Gentoo LiveCD 2007.0 wasn’t ready for mass use. Often users users were pointed to or resorted to using the Gentoo 2007.0 Minimal CD.

Gentoo installation 2008.0 beta releases have been postponed temporarily from their planned release dates as developers have personal matters that need to be addressed. My best to them I do appreciate their hard work.

This said, the concern just recently stated by some users [1] [2] who have new machines don’t have a valid Gentoo CD to use for installation. Sure, their are alternatives like Ben talked about but your average user will never run across these solutions, never mind the curious Linux user from Ubuntu who was thinking of trying something different for his new HP.

Whither LiveCD?

Gentoo – Utilities tmpwatch and flagedit

Gentoo - Utilities tmpwatch and flageditGentoo users eventually branch out from the utilites Portage gives to do more advanced tasks, quicker. There are a good number of these utilites in the Portage tree including tmpwatch and flagedit.

tmpwatch

tmpwatch is just as it sounds and wipes specified directories. Baselayout does have the bootmisc that can wipe /tmp.

File:/etc/conf.d/bootmisc

WIPE_TMP="yes"

To wipe other directories like portage’s temporary directory, tmpwatch can be used. Tmpwatch can wipe based on several different time criteria, most useful being -mtime and -atime. -mtime is the modification time and -atime is the access time. Most people have atime disabled in their /etc/fstab file which isn’t used much for desktop system. Access time writes are writes everytime a file is accessed a process that can really bottleneck I/O on busy systems. Tmpwatch is in portage:

emerge tmpwatch

Tmpwatch is a basic cronjob and will need to be edited.

sudo vim /etc/cron.daily/tmpwatch

The file is pretty well commented and provides examples to wipe /tmp, wipe package sources (distfiles), the portage tmp directory…

Like I said most people will probably want to change -atime to -mtime.

if [[ -d /tmp ]]; then
    ${TMPWATCH} --exclude-user username --mtime 24 /tmp
fi

Units are in hours measures.

flagedit

emerge flagedit

Flagedit hasn’t been developed for two years so “I hope you know what you’re doing” will be spit out everytime changing the USE flags. Yes, I know what I’m doing. That said add or subtracting USE flags works just fine.

Edit global USE flags:

flagedit +alsa
flagedit -alsa
flagedit %alsa

This adds, subtracts and prunes the alsa USE flag globally in Portage. Adding USE flags globally edits the /etc/make.conf while adding USE flags locally edits /etc/portage/package.use on a per package basis. To add flags locally:

flagedit www-servers/lighttpd php fastcgi

Links Saturday – Bens Bits and Local DNS

Links SaturdayGood weekend everybody. Well, springs almost here and I’m beginning to get ready to go outside and enjoy nature, in the meantime I’ve decided to switch layouts for the blog. There were a couple formatting oddities with Ocean Mist so the Blix layout should be better for CSS formatting. Tell me what you think. I’m not sure I’m thrilled about the header though. Hmm… We’ll see.

Gentoo Links

This week Ben de Groot wrote some useful articles on Gentoo. (the site is down now, but should be back soon.)

  • First Ben points out the Gentoo’s LiveCD beta is still a work in progress but for those with compatibility problems with the 2007.0 LiveCD can try the Gentoo-based SystemRescueCD. The Rescue CD has a lot of tools and includes the 2.6.24 kernel.
  • New users should like How to be a successful Gentoo User which gives good tips to the basic Gentoo user. These type of writtings, I would like to see become officially a part of the Gentoo project.
  • In Know your distro: Gentoo documentation sources, a lot of good documented sources are listed. Gentoo users really do have one of the best documented Linux distributions around. To find reference to doing anything with Gentoo, someone has likely already tried it, is trying it, or has a good idea where to begin.

Other Linux

In a largely prophesying look, Federkiel looks into possible and developing parts of GTK+ 3.0.

Local

I’ve updated Local DNS for Faster Browsing to clear up a few ambiguous bits and reorganized it for better reading.

Have a good weekend everybody.

Gentoo Linux Tidbits

I’ve been using Gentoo for about two years now and I took notes on managing my box. These are those notes. If you’re interested in installing Gentoo take a look at Gentoo Quick Install.

Update: bash script

This section is an addition. I’ve since created a bash script that does many of the functions and make reading the rest less necessary. The script is self-explanatory: link.

About Portage

Gentoo Linux uses a package management system called Portage. Portage offers one of the most extensible and customizable package systems available in Linux.

System Update

Update all packages on the computer. This process involves: syncing Portage, creating a text file to review updates, updating the system, merging new configuration files, remove orphaned dependencies.

Sync the portage tree

emerge --sync # or
eix-sync      # preferrable for faster searches (eix search)

Examine update before install

emerge --pretend --verbose --update --newuse --deep @world | less

If unexpected dependencies are being pull in, use the --tree option to track it down.

Complete update

emerge --update --newuse --deep --with-bdeps=y @world
dispatch-conf
revdep-rebuild  # ...
emerge --depclean
  • In the first command, portage wiil update all packages on the system
  • dispatch-conf is configuration updating and merge tool
  • revdep-rebuild will check that all programs and libraries are linked correctly and rebuild them if necessary.
  • emerge --depclean will remove orphaned dependencies
  • Additionaly a kernel update may need compiling again, distfiles may need to be cleaned up…

Failed package emerge in compilation string

At times in a long list of package emerges (like a system update) a package will fail to emerge. The bug-tracker and the forums usually have information about known problems with the package. If not, it’s possible the package needs a newer version of a package that has not yet been installed in the compilation string. Skipping the problem package and emerging it again when the rest of the packages are compiled may fix the problem.

emerge --resume --skipfirst

Blocked packages

Packages that block other packages from being emerged can be fixed by removing the obstructing packages then reinstalling it after blocked package is emerged.

quickpkg $BLOCKER
emerge -C $BLOCKER
emerge $BLOCKED
emerge --usepkgonly $BLOCKER

Specify USE Flags per package

In /etc/portage/package.use add pkg-category/pkg useflag useflag2. To add a USE flag temporarily (not recommended):

USE="useflag" emerge package

Masked Packages (keyword)

The “missing keyword” mask states an ebuild doesn’t support or hasn’t been tested on the current architecture (x86, amd, ppc… ). Keywording can be added to /etc/portage/package.accept_keywords for example: media-libs/libquicktime ~ppc.

Masked Packages (hard)

Gentoo hards masks some packages for security concerns, collisions… Packages are hard masked in /usr/portage/profiles/package.mask. If liking to live on the edge packages can be unmasked in /etc/portage/package.unmask.

Emerge dependency of a package

Packages that are dependencies of other packages (i.e. have no use on their own) should be emerged as oneshot. This is because if the main package is removed so too will this package when emerge –depclean is run. Otherwise these dependent packages are added to the world file.

emerge --oneshot package

Freeze a Package

If a rebuild of a package is undesired a package can be frozen. This is useful for kernels and other such packages.

  • Mask the entire package (i.e. without version) in /etc/portage/package.mask with sys-kernel/gentoo-sources.
  • Add the specific version to /etc/portage/package.unmask with sys-kernel/gentoo-sources-version.

Create a Binary Package

If enough disk space is available its may be a good idea to create and archived-binary of a package so it is quicker to re-install:

emerge --buildpkg zim
emerge --usepkg zim    # to reinstall

Info About the Portage System

This information can be useful for reporting bugs:

emerge --info

Other Portage Tools

Info about USE flags (equery is part of gentoolkit):

equery uses package

Programs built with a specific USE flag:

equery hasuse useflag

View what files are installed by program:

equery files alsa-lib

View what packages install to a folder:

equery belongs /usr/share/fonts/misc

List all installed packages:

equery list

Select a new system profile (With each new revision (i.e. 2006.1 to 2007) new profiles are added. Profiles define basic system USE flags…):

eselect profile list
eselect profile set 4

Select new kernel:

eselect kernel list
eselect kernel set 2

Rebuild external modules (added from Portage). Drivers build against the kernel (video drivers, sound drivers…) and will need to be rebuilt with new kernels:

emerge --ask @module-rebuild

Compile with specific compiler version. Some packages require a specific version of the compiler. See installed GCC profiles and select one:

gcc-config -l
gcc-config 2
source /etc/profile

Clean portage world file:

Remove entries that are dependencies only in /var/lib/portage/world to help emerge times. Careful what to remove thought. For example, “epiphany-extensions” requires “epiphany” so if “epiphany” is removed and later its decided that “epiphany-extensions” are no longer needed than running `emerge –depclean’ will removed “epiphany”.

Layman / Overlays

Overlays are package repositories that can be added to the portage tree. A good number of third party overlays are available in necessary.

Local Overlay

Create a local overlay to create your own ebuilds or edit an existing one. If the later, it’s best to see if the program has an ebuild in bugzilla or is in one of the third party overlays.

To make a personal overlay create an overlay directory and let make.conf known to it (for example) mkdir /home/user/.portage-local and add to make.conf:

PORTDIR_OVERLAY="/home/username/.portage-local"

Ebuilds must be placed in a category that already exists in Portage

mv package.ebuild ~/.portage-local/media-plugins/

Keyword if necessary:

emerge gentoolkit-dev
ekeyword ~ppc package-1.2.1.2.ebuild

Create a manifest and build:

ebuild ~/.portage-local/category/program/program-version.ebuild digest
emerge package

Layman

Layman is a manager for third party overlays.

emerge layman subversion

Add to make.conf:

PORTDIR_OVERLAY="/home/username/.portage-local"
source source /var/lib/layman/make.conf

To add an overlay:

layman --list
layman --add overlay

Update layman overlays:

layman -S
Follow

Get every new post delivered to your Inbox.

Join 52 other followers