Mailing List Archive

[RFC - Moving categories around]
oops, sent with wrong address the first time.

---------- Forwarded message ----------
From: Alec Warner <antarus@scriptkitty.com>
Date: May 8, 2007 9:09 PM
Subject: [RFC - Moving categories around]
To: gentoo-dev@gentoo.org

So a random thought I had was 'lets move categories out of gentoo-x86/ and
into gentoo-x86/ebuilds/'

The existing layout is:

gentoo-x86/
- <category1>/<pn...>/<ebuilds + misc stuff>
- <category2>/<pn...>/<ebuilds + misc stuff>
.....
- <categoryN>/<pn...>/<ebuilds + misc stuff>
- profiles/
- scripts/
- metadata/
- eclass/
- distfiles/
- local/*
- licenses/*

The new layout would be:
gentoo-x86/
- profiles/
- scripts/
- metadata/
- eclass/
- licenses/
- ebuilds/<category...>/<pn...>/...and so forth
- local/*
- distfiles/*

(* indicates a common directory for rsync users).

The benefits include making the layout cleaner, obsoleting the categories
file.

The risks primarily include breaking a bunch of crappy old tools, as well as
all existing package managers and user installations for those users who
have not upgraded.

I would personally fix portage and anything in gentoolkit and
gentoolkit-dev.

This change would involve breaking all old installations of gentoo that
still sync the tree for updates such as GLSA's but don't upgrade their
package manager to a version that supports the new ebuild locations. I
don't really know how we support those users at present.

An upgrade path would need to be provided, particularly the user must be
able to use an older version of a package manager in conjunction with an
ebuild to upgrade itself to a version that supports the new tree format.

This seems to me that we should come up with a tree format scheme such that
when updating the tree, the package manager can then detect if it supports
the updated tree's format or not. The upgrade case is then solved by the
package manager refusing to fetch tree updates until the user upgrades the
package manager to a version that supports the new tree format. The corner
case here is where someone bumps the tree version but all available package
managers are not yet in the tree. This would prevent users from upgrading
to a version of their package manager that supports the new tree format
because the ebuilds would no longer be available in the old format.

An interesting solution to this would be to split the rsync data in to 2
trees, one 'old format tree' and one 'new format tree' and users can
configure their clients appropriately. eventually the old format tree would
be deprecated; tree changes would be replicated to both trees.

Flame on

-alec
Re: [RFC - Moving categories around] [ In reply to ]
Alec Warner wrote:
> The benefits include making the layout cleaner, obsoleting the
> categories file.

You talked a lot about how to do this, but I'd like to see you expand on
the reasoning for why. Balancing the breakage and extra work against the
reasons for making the change is hard to do without all the information.

Thanks,
Donnie
Re: [RFC - Moving categories around] [ In reply to ]
On Tue, 8 May 2007 23:04:44 -0700
"Alec Warner" <antarus@gentoo.org> wrote:
> So a random thought I had was 'lets move categories out of
> gentoo-x86/ and into gentoo-x86/ebuilds/'

If you're going to go and break everything, do it in style! Add in
support for packages belonging to multiple categories, multiple names
for a single package and so on too.

--
Ciaran McCreesh
Re: [RFC - Moving categories around] [ In reply to ]
On Wednesday 09 of May 2007 08:04:44 Alec Warner wrote:
> The new layout would be:
I would reserve the breakage for something more useful. Not that I don't like
the idea, just imho such a layout change alone is not worth it.

--
Best Regards,
Piotr Jaroszyński
--
gentoo-dev@gentoo.org mailing list
Re: [RFC - Moving categories around] [ In reply to ]
Piotr Jaroszy?ski wrote:

> On Wednesday 09 of May 2007 08:04:44 Alec Warner wrote:
>> The new layout would be:
> I would reserve the breakage for something more useful. Not that I don't
> like the idea, just imho such a layout change alone is not worth it.
>
If you were to have such a wide-ranging change, what else would you do?
So far we have tidying up categories and:
> support for packages belonging to multiple categories, multiple names
>for a single package

I seem to recall there were some other tree-wide changes discussed in
#-portage, but tbh they went over my head.


--
gentoo-dev@gentoo.org mailing list