From: "Michał Górny" <mgorny@gentoo.org>
To: Joshua Kinard <kumba@gentoo.org>
Cc: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] new profile layout with flavors and mix-ins
Date: Thu, 3 Jul 2014 09:32:13 +0200 [thread overview]
Message-ID: <20140703093213.7ff896af@pomiot.lan> (raw)
In-Reply-To: <53B4F5AF.9020600@gentoo.org>
[-- Attachment #1: Type: text/plain, Size: 3519 bytes --]
Dnia 2014-07-03, o godz. 02:18:23
Joshua Kinard <kumba@gentoo.org> napisał(a):
> [...]
>
> And so on. The goal was to have profiles/ be extremely flat, with limited
> nesting only for categorization purposes. Each component would contain all
> of the information specific to that component, and rely on OOP-like
> inheritance to override parent-level variables only within that component
> (although, <arch> and <kernel> would have to be a little bit more broad in
> scope).
Another sub-thread, the same question: how do you handle information
that needs to be applied to the intersection of the profiles? CHOST for
amd64 FreeBSD, for example.
> PROFILE also had a set order for the first few pieces, if only to make
> parsing and building the profile stack saner for the Portage developers:
> PROFILE="base:<KERNEL>:<ARCH>[:<SUBARCH>]:<LIBC>:<EVERYTHING_ELSE>"
>
> base - Core Gentoo/Portage/whatever information/vars/foobar/kittens
I'm against plain 'base' since it quickly becomes a mess. I would
prefer having flavor-specific bases, like for example arch/base to mask
stuff available only in 1/2 arches and revert it in another arch/.
> kernel - Specifies the OS kernel. At the time, only Linux existed, but
> I *think* Debian was eyeballing kFreeBSD at the time. So I *think*
> I accounted for it back then.
What about kernel-ABI intersection? What about Prefix?
> arch - Machine arch-specific generic information -- doesn't handle
> lower-level things like ISAs/ABIs/Endian, etc.
>
> subarch - Defines items specific given to given subarch of a main arch.
> Items under this directory would carry their parent arch's
> name for clarity only. Again, at the time, MIPS would have been
> the only real user of this, and, back then, it would've dealt
> with SGI-machine-specific packages and USE flags, such as
> differentiating an ip32 machine from an ip27 machine or a
> cobalt. Now that amd64/x86_64 is considering its own form of
> n32 (x32), that would go here, and I imagine arm would
> make heavy use of it as well.
This is a no-go for multilib support. We need to work on a consistent
arch profile tree, not more splitting.
> libc - Defines the main C library used. A bit redundant for *BSD, because
> they really only have one, but might help if we ever add k*BSD
> support (such as freebsd/glibc-based or such). For Linux...could be
> tricky, since there are so many libc possibilities there. I feel it
> fits better getting defined after <SUBARCH>, especially in the case
> of MIPS.
I think you need to handle kernel & libc in the same group.
> eapi - EAPI didn't exist back when this topic was visited. Basically,
> everything was EAPI=0 and there was only Portage (Paludis nor
> pkgcore had been invented yet).
And what is this supposed to do?
> releases - I don't think this existed back then. How it'd operate
> nowadays, I have no idea. Probably would contain
> version-specific maskings for specific @system packages
> to facilitate upgrading, and help us if we ever tried to cut
> actual, fixed release points again (like what FreeBSD does
> w/ -RELEASE-x.y)
I don't think releases would make any sense without heavy intersection
with other profiles.
--
Best regards,
Michał Górny
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 949 bytes --]
next prev parent reply other threads:[~2014-07-03 7:32 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
2014-07-03 8:53 ` [gentoo-dev] " Duncan
2014-07-03 9:01 ` Martin Vaeth
2014-07-03 7:32 ` Michał Górny [this message]
2014-07-03 8:21 ` [gentoo-dev] " 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=20140703093213.7ff896af@pomiot.lan \
--to=mgorny@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
--cc=kumba@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