Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 220725

Summary: Absolute path required in per-repo sets.conf (makes specifying per-repo sets close to impossible)
Product: Portage Development Reporter: Manuel Nickschas <sputnick>
Component: Enhancement/Feature RequestsAssignee: Portage team <dev-portage>
Status: RESOLVED FIXED    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Manuel Nickschas 2008-05-07 10:40:48 UTC
It often makes sense to be able to specify per-repo sets, for example an overlay could specify sets that cover its ebuilds (current example: the genkdesvn overlay contains set definitions for Paludis).

Portage allows to put a sets.conf in the overlay's root. Unfortunately, the directory directive seems to require an absolute path to the sets dir. Since we don't know where the overlay is located, this makes it impossible to correctly specify a repo-local sets directory.

Allowing the directory directive in sets.conf to contain a path relative to the location of said sets.conf would probably fix that problem.

If that is already possible and I just didn't figure out how to do this, please tell me :)

Reproducible: Always

Steps to Reproduce:
Comment 1 Marius Mauch (RETIRED) gentoo-dev 2008-05-07 14:59:52 UTC
Since 2.2_pre6 you can use the following syntax for sets based on StaticFileSet:

[foo]
class = portage.sets.files.StaticFileSet
filename = ${repository:gentoo}/sets/foo

Replace 'gentoo' with the name (as listed in profiles/repo_name) of the repository/overlay that contains sets/foo. Same syntax also works for the 'directory' option. Relative paths aren't possible due to restrictions of the underlying parser.