On Tuesday 04 November 2008 15:42:21 Hazen Valliant-Saunders wrote:
> Good Day all;
>
> Sorry to sound like a luddite;
>
> Where would I create my own user overlay? (so I may go about fiddling with
> the settings?)

It's in the handbook somewhere :-) But I can't be bothered finding it, so I'll 
type it.

All it really is, is a directory somewhere and you tell portage where it is. 
In that directory you have a sub-directory structure that looks the same as 
the portage tree, but with just the categories you have ebuilds for.

I have my portage tree at /var/portage (yes, I'm a stickler for detail and the 
tree is a database so it should not go into /usr/ per LFS and in case I 
mount /usr/ read-only....). The normal place for overlays is 
thus /var/portage/local:

$ ls -l /var/portage/local/
total 3
drwxrwsr-x 15 root portage 1024 Oct 28 10:31 alan
drwxr-sr-x  8 alan portage 1024 Sep 25 10:28 e17
drwxrwsr-x  5 root portage 1024 Oct 12 18:27 layman

Ignore layman, that's a gentoo tool to make it easy to use gentoo dev's own 
overlays that they publish. My private overlays are alan and e17. Inside alan 
I have:

$ ls -l /var/portage/local/alan/
total 23
-rw-rw-r--   1 root portage 1161 Jun  6 17:51 TODO
drwxr-sr-x   3 root portage 1024 Oct 28 10:31 app-doc
drwxrwsr-x   3 root portage 1024 Jun  4 10:49 app-misc
drwxrwsr-x   2 root portage 1024 Mar 16  2008 app-text
drwxrwsr-x   3 root portage 1024 Jan  3  2008 dev-util
drwxrwsr-x   2 root portage 1024 Aug 29 14:58 eclass
-rw-rw-r--   1 alan portage    0 Feb 27  2008 manifest1_obsolete
drwxr-sr-x   4 root portage 1024 Sep 15 16:36 net-libs
drwxrwsr-x   3 root portage 1024 May  3  2008 net-mail
drwxr-sr-x   5 root portage 1024 Sep 15 21:16 net-misc
drwxrwsr-x   2 root portage 1024 Jun 26 13:13 profiles
drwxrwsr-x   2 alan portage 1024 Sep  9 14:24 x11-libs
drwxrwsr-x   3 alan portage 1024 Apr 27  2008 x11-misc
drwxrwsr-x   8 root portage 1024 Sep 15 16:37 x11-plugins
drwxrwsr-x 146 root portage 9216 Nov  2 18:38 x11-themes

It looks just like a piece of a portage tree. Tell portage where the overlay 
is with an edit to make.conf:

$ grep -i overlay /etc/make.conf
PORTDIR_OVERLAY="$PORTDIR_OVERLAY /var/portage/local/e17 
/var/portage/local/alan"

and you are all set. Put ebuilds in the obvious place in the directory. The 
only extra step before you can use them is to build a manifest for each 
package with an ebuild:

ebuild /path/to/your/ebuild/<package>-<version>.ebuild manifest

Do this once per package (it manifests all files in the directory, not just 
that one ebuild) and emerge.


-- 
alan dot mckinnon at gmail dot com

Reply via email to