1 |
On 10/22/2015 01:54 PM, Joakim Tjernlund wrote: |
2 |
> On Thu, 2015-10-22 at 12:25 -0700, Zac Medico wrote: |
3 |
>> On 10/22/2015 12:16 PM, Joakim Tjernlund wrote: |
4 |
>>> On Thu, 2015-10-22 at 11:54 -0700, Zac Medico wrote: |
5 |
>>>> On 10/22/2015 11:29 AM, Joakim Tjernlund wrote: |
6 |
>>>>> On Thu, 2015-10-22 at 08:54 -0700, Zac Medico wrote: |
7 |
>>>>>> On 10/22/2015 12:05 AM, Joakim Tjernlund wrote: |
8 |
>>>>>>> I don't use world_sets, I have in my profile(/my/new/root/usr/local/portage/tmv3-target-overlay): |
9 |
>>>>>>> # > cat sets.conf |
10 |
>>>>>>> [CUSFPv3 sets] |
11 |
>>>>>>> class = portage.sets.files.StaticFileSet |
12 |
>>>>>>> multiset = true |
13 |
>>>>>>> directory = ${repository:tmv3-target-overlay}/sets/ |
14 |
>>>>>>> |
15 |
>>>>>>> [world] |
16 |
>>>>>>> class = portage.sets.base.DummyPackageSet |
17 |
>>>>>>> packages = @cusfpv3 @profile @selected @system |
18 |
>>>>>>> |
19 |
>>>>>>> and in sets/: |
20 |
>>>>>>> # > cat sets/cusfpv3 |
21 |
>>>>>>> net-ftp/ftp |
22 |
>>>>>>> net-ftp/tftp-hpa |
23 |
>>>>>>> net-ftp/vsftpd |
24 |
>>>>>>> .... |
25 |
>>>>>>> |
26 |
>>>>>>> and now it hits me, this line: |
27 |
>>>>>>> directory = ${repository:tmv3-target-overlay}/sets/ |
28 |
>>>>>>> does it always refer too ROOT=/ ? |
29 |
>>>>>> |
30 |
>>>>>> You need to use %(ROOT)s${repository:tmv3-target-overlay}/sets to |
31 |
>>>>>> substitute $ROOT into the set configuration. For example, the default |
32 |
>>>>>> set configuration located at /usr/share/portage/config/sets/portage.conf |
33 |
>>>>>> does something similar with %(PORTAGE_CONFIGROOT)s. |
34 |
>>>>> |
35 |
>>>>> Nice! I am a bit puzzled over the trailing s in ..)s, is that a typo? if not |
36 |
>>>>> what does it mean? |
37 |
>>>> |
38 |
>>>> The trailing s is required. It's python configparser interpolation syntax: |
39 |
>>>> |
40 |
>>>> https://docs.python.org/3/library/configparser.html#interpolation-of-values |
41 |
>>>> |
42 |
>>>>> Can I use %(PORTAGE_CONFIGROOT) in repos.conf too? or is it not needed? |
43 |
>>>> |
44 |
>>>> Yes you can use it (but you need the trailing s). It's needed for any |
45 |
>>>> absolute paths that refer to /etc/portage. |
46 |
>>> |
47 |
>>> hmm, not /etc/portage but /usr/portage: |
48 |
>>> [gentoo] |
49 |
>>> location = %(PORTAGE_CONFIGROOT)s/usr/portage |
50 |
>>> |
51 |
>>> but then portage throws: |
52 |
>>> emerge -aNDuv world |
53 |
>>> !!! Error while reading repo config file: Bad value substitution: |
54 |
>>> section: [gentoo] |
55 |
>>> option : location |
56 |
>>> key : portage_configroot |
57 |
>>> rawval : /usr/portage |
58 |
>>> |
59 |
>>> !!! Unable to parse profile: '/etc/portage/make.profile' |
60 |
>>> !!! ParseError: Parent 'gentoo:default/linux/powerpc/ppc32/13.0' not found: '/usr/local/portage/tmv3 |
61 |
>>> -target |
62 |
>>> -overlay/profiles/cusfpv3/parent' |
63 |
>>> |
64 |
>> |
65 |
>> Oh, repos.conf does not populate those variable, but we can easily add |
66 |
>> support for it. |
67 |
> |
68 |
> That would be nice, this will make PORTAGE_CONFIGROOT=/my/new/root emerge --sync update |
69 |
> the repos in /my/new/root, right? |
70 |
|
71 |
Right. |
72 |
-- |
73 |
Thanks, |
74 |
Zac |