From: Ian Stakenvicius <axs@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] new profile layout with flavors and mix-ins
Date: Thu, 03 Jul 2014 12:06:26 -0400 [thread overview]
Message-ID: <53B57F82.4070303@gentoo.org> (raw)
In-Reply-To: <53B518A5.7030605@gentoo.org>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 03/07/14 04:47 AM, Joshua Kinard wrote:
> On 07/03/2014 03:00, Michael Haubenwallner wrote:
>>
>> On 07/03/2014 08:18 AM, Joshua Kinard wrote:
>>> On 07/02/2014 13:54, Michał Górny wrote:
>>>> Dnia 2014-07-02, o godz. 10:44:16
>>> [snip]
>>>>
>>>> I don't feel like we ought to vote on something like this
>>>> without understanding most of the current profiles. And I'm
>>>> afraid there are only few people who have any idea about the
>>>> current profile structure...
>>>>
>>>
>>> I am going to throw this out there and see what people think.
>>> Maybe it's insane, maybe it's not, maybe it's a mix of insane
>>> and not-insane.
>>>
>>> Years ago, before we had the current stacking profile design
>>> (we were discussing the current design, actually), I kinda
>>> conjured up this "building blocks" like approach for a profile
>>> design.
>>
>>> The idea being that, in /etc/make.conf (or wherever that file
>>> is now), you'd define $PROFILE like this:
>>>
>>> linux-mips o32 uclibc server:
>>> PROFILE="base:kernel/linux:arch/mips:subarch/mips-o32:libc/uclibc:roles/server:releases/13.0"
>>
>>
>>>
What about making /etc/portage/make.profile a directory rather than a
symlink,
>> having /etc/portage/make.profile/parent to reference all the
>> flavours?
>>
>> Tools that need to respect the /current/ profile should work
>> without any change, and tools that need to respect the
>> /available/ profiles (repoman) already do have a list of profiles
>> to respect (profiles/profiles.desc).
>>
>> So the only missing thing would be the eselect profile module to
>> manage entries of /etc/portage/make.profile/parent, maybe using
>> /usr/portage/profiles/profiles.desc as the source for available
>> flavours.
>>
>> my 2 cents /haubi/
>
> That's the thing, make.profile technically *is* a directory -- a
> symlink to one. The original design of make.profile was to specify
> generic, base settings for a given profile and keep that in the
> tree. Things like default CHOST, default ARCH, default <VARIABLE>,
> etc. make.conf then overrides in-tree settings with settings
> specific to your system. So making /etc/make.profile an actual
> directory disconnects it from the tree, which I don't think will
> work very well for Portage, since it won't know what your
> currently-chosen profile is.
>
I did a test where I dropped my make.profile symlink, made a directory
of the same name, and populated a 'parent' file in that directory with
paths to various /usr/portage/profiles/ bits which made up my previous
main profile. Everything continued to work as expected.
I expect for portage proper, we could accomodate mixins or whatever
new structure method we want simply by adjusting 'eselect profile' to
list the various possible combinations and adjust an
/etc/make.profile/parent file accordingly.
(We probably also need to ensure portage warns or errors appropriately
when one of these inherit lines in the parent file no longer points to
a directory, the same as it does now with the symlink points to
nothing; I didn't test but I expect that error would not be pretty or
easily understood right now)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
iF4EAREIAAYFAlO1f4IACgkQ2ugaI38ACPB1wgEApznnssegz2ImYIq6fAeR2oGa
RX0TNT6bThDcypkn0skA/j/w33cWekomOQanCKIspuOWxXgOAeMxMWlnhsORZfj7
=Qwj0
-----END PGP SIGNATURE-----
next prev parent reply other threads:[~2014-07-03 16:06 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-02 15:44 [gentoo-dev] new profile layout with flavors and mix-ins William Hubbs
2014-07-02 17:54 ` Michał Górny
2014-07-02 18:10 ` Rich Freeman
2014-07-02 18:32 ` Anthony G. Basile
2014-07-02 18:35 ` Rich Freeman
2014-07-02 18:41 ` Rick "Zero_Chaos" Farina
2014-07-02 19:07 ` Anthony G. Basile
2014-07-02 19:19 ` Rick "Zero_Chaos" Farina
2014-07-02 19:30 ` Rich Freeman
2014-07-03 14:55 ` Andreas K. Huettel
2014-07-03 23:09 ` Tom Wijsman
2014-07-03 23:35 ` Rich Freeman
2014-07-03 6:18 ` Joshua Kinard
2014-07-03 7:00 ` Michael Haubenwallner
2014-07-03 8:47 ` Joshua Kinard
2014-07-03 16:06 ` Ian Stakenvicius [this message]
2014-07-03 8:53 ` [gentoo-dev] " Duncan
2014-07-03 9:01 ` Martin Vaeth
2014-07-03 7:32 ` [gentoo-dev] " Michał Górny
2014-07-03 8:21 ` Joshua Kinard
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=53B57F82.4070303@gentoo.org \
--to=axs@gentoo.org \
--cc=gentoo-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