* [gentoo-hardened] Re: [gentoo-dev] profiles/features/64bit-native/package.use.mask contents redundancy
[not found] <20120211173807.4d1a47ae@sf.home>
@ 2012-02-11 18:48 ` Sergei Trofimovich
2012-02-11 19:41 ` Sergei Trofimovich
0 siblings, 1 reply; 4+ messages in thread
From: Sergei Trofimovich @ 2012-02-11 18:48 UTC (permalink / raw
To: gentoo-dev; +Cc: gentoo-hardened
[-- Attachment #1: Type: text/plain, Size: 1714 bytes --]
[ CCed gentoo-hardened@lists.gentoo.org
to warn against possible breakage. Touching
profiles make me nervous.
TS: http://archives.gentoo.org/gentoo-dev/msg_7c41ab6653426048c2e8b0f271637bf3.xml ]
> Looks like 'arch/amd64/no-multilib' profile inclusion is kept in
> sync with 'features/64bit-native' one: [1]. Exception is
> 'hardened/linux/amd64/no-multilib' profile. Looks like a bug.
Synced this bit with a fix:
| 11 Feb 2012; Sergei Trofimovich <slyfox@gentoo.org>
| hardened/linux/amd64/no-multilib/parent:
| Make hardened/linux/amd64/no-multilib include arch/amd64/no-multilib
| (http://archives.gentoo.org/gentoo-dev/msg_7c41ab6653426048c2e8b0f271637bf3.x
| ml). Approved by Zorry.
Thanks!
> [1]:
>
> $ portage/gentoo-x86/profiles: fgrep -R amd64/no-multilib . | grep -v ChangeLog | grep -v '$Header' | grep -v /CVS/
> ./default/linux/amd64/10.0/no-multilib/parent:../../../../../arch/amd64/no-multilib
> ./default/linux/amd64/2008.0/no-multilib/parent:../../../../../arch/amd64/no-multilib
> ./hardened/linux/amd64/10.0/no-multilib/deprecated:hardened/linux/amd64/no-multilib
> $ portage/gentoo-x86/profiles: fgrep -R features/64bit-native . | grep -v ChangeLog | grep -v '$Header' | grep -v /CVS/
> ./arch/powerpc/ppc64/64ul/parent:../../../../features/64bit-native
> ./default/linux/amd64/10.0/no-multilib/parent:../../../../../features/64bit-native
> ./default/linux/amd64/2008.0/no-multilib/parent:../../../../../features/64bit-native
> ./hardened/linux/amd64/no-multilib/parent:../../../../features/64bit-native
> ./hardened/linux/powerpc/ppc64/64bit-userland/parent:../../../../../features/64bit-native
--
Sergei
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* [gentoo-hardened] Re: [gentoo-dev] profiles/features/64bit-native/package.use.mask contents redundancy
2012-02-11 18:48 ` [gentoo-hardened] Re: [gentoo-dev] profiles/features/64bit-native/package.use.mask contents redundancy Sergei Trofimovich
@ 2012-02-11 19:41 ` Sergei Trofimovich
2012-02-12 18:15 ` Sergei Trofimovich
0 siblings, 1 reply; 4+ messages in thread
From: Sergei Trofimovich @ 2012-02-11 19:41 UTC (permalink / raw
To: gentoo-dev; +Cc: gentoo-hardened
[-- Attachment #1: Type: text/plain, Size: 827 bytes --]
> > Looks like 'arch/amd64/no-multilib' profile inclusion is kept in
> > sync with 'features/64bit-native' one: [1]. Exception is
> > 'hardened/linux/amd64/no-multilib' profile. Looks like a bug.
>
> Synced this bit with a fix:
>
> | 11 Feb 2012; Sergei Trofimovich <slyfox@gentoo.org>
> | hardened/linux/amd64/no-multilib/parent:
> | Make hardened/linux/amd64/no-multilib include arch/amd64/no-multilib
> | (http://archives.gentoo.org/gentoo-dev/msg_7c41ab6653426048c2e8b0f271637bf3.x
> | ml).
And the change brought the breakage:
New profiles popped up:
| /usr/portage/profiles/arch/base
| /usr/portage/profiles/features/multilib
| /usr/portage/profiles/features/multilib/lib32
Likely because of double inclusion of some suspicious
parent profiles.
Reverted the change :[
--
Sergei
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* [gentoo-hardened] Re: [gentoo-dev] profiles/features/64bit-native/package.use.mask contents redundancy
2012-02-11 19:41 ` Sergei Trofimovich
@ 2012-02-12 18:15 ` Sergei Trofimovich
[not found] ` <4F3823A4.7010008@gentoo.org>
0 siblings, 1 reply; 4+ messages in thread
From: Sergei Trofimovich @ 2012-02-12 18:15 UTC (permalink / raw
To: gentoo-dev; +Cc: gentoo-hardened
[-- Attachment #1: Type: text/plain, Size: 3761 bytes --]
> > > Looks like 'arch/amd64/no-multilib' profile inclusion is kept in
> > > sync with 'features/64bit-native' one: [1]. Exception is
> > > 'hardened/linux/amd64/no-multilib' profile. Looks like a bug.
> >
> > Synced this bit with a fix:
> >
> > | 11 Feb 2012; Sergei Trofimovich <slyfox@gentoo.org>
> > | hardened/linux/amd64/no-multilib/parent:
> > | Make hardened/linux/amd64/no-multilib include arch/amd64/no-multilib
> > | (http://archives.gentoo.org/gentoo-dev/msg_7c41ab6653426048c2e8b0f271637bf3.x
> > | ml).
>
> And the change brought the breakage:
>
> New profiles popped up:
> | /usr/portage/profiles/arch/base
> | /usr/portage/profiles/features/multilib
> | /usr/portage/profiles/features/multilib/lib32
>
> Likely because of double inclusion of some suspicious
> parent profiles.
>
> Reverted the change :[
Zorry and blueness helped me to investigated the issue further.
'default/linux/amd64/10.0/no-multilib' contains duplicate inheritance chain:
Simple script [1] shows us profile loading order:
/subvolumes/gentoo-portage/profiles/base
/subvolumes/gentoo-portage/profiles/default/linux
/subvolumes/gentoo-portage/profiles/arch/base
/subvolumes/gentoo-portage/profiles/features/multilib
/subvolumes/gentoo-portage/profiles/features/multilib/lib32
/subvolumes/gentoo-portage/profiles/arch/amd64
/subvolumes/gentoo-portage/profiles/default/linux/amd64
/subvolumes/gentoo-portage/profiles/releases
/subvolumes/gentoo-portage/profiles/releases/10.0
/subvolumes/gentoo-portage/profiles/default/linux/amd64/10.0
/subvolumes/gentoo-portage/profiles/arch/base
/subvolumes/gentoo-portage/profiles/features/multilib
/subvolumes/gentoo-portage/profiles/features/multilib/lib32
/subvolumes/gentoo-portage/profiles/arch/amd64
/subvolumes/gentoo-portage/profiles/arch/amd64/no-multilib
/subvolumes/gentoo-portage/profiles/features/64bit-native
/subvolumes/gentoo-portage/profiles/default/linux/amd64/10.0/no-multilib
What we see here is repeating block:
/subvolumes/gentoo-portage/profiles/arch/base
/subvolumes/gentoo-portage/profiles/features/multilib
/subvolumes/gentoo-portage/profiles/features/multilib/lib32
/subvolumes/gentoo-portage/profiles/arch/amd64
/subvolumes/gentoo-portage/profiles/default/linux/amd64
which can rollback all changes introduced by the profiles:
/subvolumes/gentoo-portage/profiles/releases
/subvolumes/gentoo-portage/profiles/releases/10.0
/subvolumes/gentoo-portage/profiles/default/linux/amd64/10.0
Does not sound like a good thing.
For those who can't read:
http://dev.gentoo.org/~slyfox/profiles_default.png
Notice the 'arch/amd64' inheritance both by
'arch/amd64/no-multilib'
'default/linux/amd64'
I think 'arch/amd64/no-multilib' does not need any parents as any profile
belongs to some arch, so pulls it explicitely.
Even thing like prefix (has the same double-inclusion "feature" as well):
http://dev.gentoo.org/~slyfox/profiles_prefix.png
I suggest to:
- drop 'parents' for 'profiles/arch/amd64/no-multilib'
- [optionally] move 'profiles/arch/amd64/no-multilib' to 'features/amd64-no-multilib'
- and 'profiles/arch/amd64/no-multilib' back to 'hardened/linux/amd64/no-multilib'
It would state explicitely that it does not inherit anything.
[ Another option would be to simplify 'default/linux/amd64' thing not to include 'profiles/arch' ]
Thoughts?
Feature request:
Can we add a double-inclusion detector for profiles to repoman?
Thanks for your patience!
[1]
#!/usr/bin/env python
import portage
for p in portage.settings.profiles:
print "%s" % p
--
Sergei
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* [gentoo-hardened] Re: [gentoo-dev] profiles/features/64bit-native/package.use.mask contents redundancy
[not found] ` <4F3823A4.7010008@gentoo.org>
@ 2012-02-13 16:16 ` Sergei Trofimovich
0 siblings, 0 replies; 4+ messages in thread
From: Sergei Trofimovich @ 2012-02-13 16:16 UTC (permalink / raw
To: gentoo-dev; +Cc: gentoo-hardened
[-- Attachment #1: Type: text/plain, Size: 877 bytes --]
On Sun, 12 Feb 2012 12:40:04 -0800
Zac Medico <zmedico@gentoo.org> wrote:
> On 02/12/2012 10:15 AM, Sergei Trofimovich wrote:
> > Feature request:
> > Can we add a double-inclusion detector for profiles to repoman?
>
> If it's not too noisy. Right now, profiles.desc contains 83 profiles
> with double inclusions like this. See attached data and scripts.
Looks nice!
'desktop/*' thing needs serious effort to restructure that.
If teams are willing to make things saner, I would go for
warning addition (maybe, guarded by --include-dev option).
some mips profiles are scary too:
http://dev.gentoo.org/~slyfox/profiles_mips.png
Another alternative would be to skip double-inclusion of identical profiles at
the portage level, but it sounds very fragile and counterintuitive.
Maybe, a bit less fragile, than current state.
--
Sergei
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-02-13 17:02 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20120211173807.4d1a47ae@sf.home>
2012-02-11 18:48 ` [gentoo-hardened] Re: [gentoo-dev] profiles/features/64bit-native/package.use.mask contents redundancy Sergei Trofimovich
2012-02-11 19:41 ` Sergei Trofimovich
2012-02-12 18:15 ` Sergei Trofimovich
[not found] ` <4F3823A4.7010008@gentoo.org>
2012-02-13 16:16 ` Sergei Trofimovich
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox