From: Zac Medico <zmedico@gentoo.org>
To: gentoo-portage-dev@lists.gentoo.org
Subject: Re: [gentoo-portage-dev] @sets and @profile does not work when ROOT=PORTAGE_CONFIGROOT=/my/new/root
Date: Thu, 22 Oct 2015 14:08:38 -0700 [thread overview]
Message-ID: <56295056.8010802@gentoo.org> (raw)
In-Reply-To: <1445547297.31293.110.camel@transmode.se>
On 10/22/2015 01:54 PM, Joakim Tjernlund wrote:
> On Thu, 2015-10-22 at 12:25 -0700, Zac Medico wrote:
>> On 10/22/2015 12:16 PM, Joakim Tjernlund wrote:
>>> On Thu, 2015-10-22 at 11:54 -0700, Zac Medico wrote:
>>>> On 10/22/2015 11:29 AM, Joakim Tjernlund wrote:
>>>>> On Thu, 2015-10-22 at 08:54 -0700, Zac Medico wrote:
>>>>>> On 10/22/2015 12:05 AM, Joakim Tjernlund wrote:
>>>>>>> I don't use world_sets, I have in my profile(/my/new/root/usr/local/portage/tmv3-target-overlay):
>>>>>>> # > cat sets.conf
>>>>>>> [CUSFPv3 sets]
>>>>>>> class = portage.sets.files.StaticFileSet
>>>>>>> multiset = true
>>>>>>> directory = ${repository:tmv3-target-overlay}/sets/
>>>>>>>
>>>>>>> [world]
>>>>>>> class = portage.sets.base.DummyPackageSet
>>>>>>> packages = @cusfpv3 @profile @selected @system
>>>>>>>
>>>>>>> and in sets/:
>>>>>>> # > cat sets/cusfpv3
>>>>>>> net-ftp/ftp
>>>>>>> net-ftp/tftp-hpa
>>>>>>> net-ftp/vsftpd
>>>>>>> ....
>>>>>>>
>>>>>>> and now it hits me, this line:
>>>>>>> directory = ${repository:tmv3-target-overlay}/sets/
>>>>>>> does it always refer too ROOT=/ ?
>>>>>>
>>>>>> You need to use %(ROOT)s${repository:tmv3-target-overlay}/sets to
>>>>>> substitute $ROOT into the set configuration. For example, the default
>>>>>> set configuration located at /usr/share/portage/config/sets/portage.conf
>>>>>> does something similar with %(PORTAGE_CONFIGROOT)s.
>>>>>
>>>>> Nice! I am a bit puzzled over the trailing s in ..)s, is that a typo? if not
>>>>> what does it mean?
>>>>
>>>> The trailing s is required. It's python configparser interpolation syntax:
>>>>
>>>> https://docs.python.org/3/library/configparser.html#interpolation-of-values
>>>>
>>>>> Can I use %(PORTAGE_CONFIGROOT) in repos.conf too? or is it not needed?
>>>>
>>>> Yes you can use it (but you need the trailing s). It's needed for any
>>>> absolute paths that refer to /etc/portage.
>>>
>>> hmm, not /etc/portage but /usr/portage:
>>> [gentoo]
>>> location = %(PORTAGE_CONFIGROOT)s/usr/portage
>>>
>>> but then portage throws:
>>> emerge -aNDuv world
>>> !!! Error while reading repo config file: Bad value substitution:
>>> section: [gentoo]
>>> option : location
>>> key : portage_configroot
>>> rawval : /usr/portage
>>>
>>> !!! Unable to parse profile: '/etc/portage/make.profile'
>>> !!! ParseError: Parent 'gentoo:default/linux/powerpc/ppc32/13.0' not found: '/usr/local/portage/tmv3
>>> -target
>>> -overlay/profiles/cusfpv3/parent'
>>>
>>
>> Oh, repos.conf does not populate those variable, but we can easily add
>> support for it.
>
> That would be nice, this will make PORTAGE_CONFIGROOT=/my/new/root emerge --sync update
> the repos in /my/new/root, right?
Right.
--
Thanks,
Zac
next prev parent reply other threads:[~2015-10-22 21:08 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-21 16:47 [gentoo-portage-dev] @sets and @profile does not work when ROOT=PORTAGE_CONFIGROOT=/my/new/root Joakim Tjernlund
2015-10-22 4:35 ` Zac Medico
2015-10-22 7:05 ` Joakim Tjernlund
2015-10-22 15:54 ` Zac Medico
2015-10-22 18:29 ` Joakim Tjernlund
2015-10-22 18:54 ` Zac Medico
2015-10-22 19:16 ` Joakim Tjernlund
2015-10-22 19:25 ` Zac Medico
2015-10-22 20:54 ` Joakim Tjernlund
2015-10-22 21:08 ` Zac Medico [this message]
2015-10-23 5:03 ` [gentoo-portage-dev] " Duncan
2015-10-23 9:21 ` [gentoo-portage-dev] " Joakim Tjernlund
2015-10-24 20:49 ` Zac Medico
2015-10-23 1:36 ` [gentoo-portage-dev] [PATCH] RepoConfigLoader: allow subsitution of variables like ROOT in repos.conf Zac Medico
2015-10-28 13:28 ` Brian Dolbec
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56295056.8010802@gentoo.org \
--to=zmedico@gentoo.org \
--cc=gentoo-portage-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox