On 24 June 2011 20:14, Wyatt Epp <wyatt....@gmail.com> wrote: > On Fri, Jun 24, 2011 at 02:51, Ciaran McCreesh > <ciaran.mccre...@googlemail.com> wrote: >> If you abolish categories in favour of tags, but tags don't uniquely >> identify a package, how do you uniquely identify a package? >> >> Remember that your solution has to work with overlays and with tags >> being changed after a package is installed. >> > I seem to have misunderstood the thrust of your question? media-sound > is a category (tag); each package still has its name, URI, files > associated with it and their checksums. A combination of a tag or two > and package name is going to be plenty for such a small data set > excepting some pretty absurd circumstance where four projects all > choose the same name and do the same thing. Alternatively, we could > just make names unique in the first place and nip that problem in the > bud forever. Either way, tags changing isn't especially different > from categories changing. >
Not really, after all, files will always have 1 canonical path, and all the other paths will be some form of reference to that canonical path ( ie: symlinks, a text-file with the canonical name, etc ) Tags would only be used for user access, not for internal dependency cycles, and internals would ultimately use the canonical path for the ebuild in sourcing the ebuild and generating the respective folder in the VDB. As it stands, when something changes category, many things must happen. All the things that depend on it must change, the package must be relocated in the VDB, and all the things that depend on it in the VDB need to be patched to refer to the newly located category name. With tags, I'd expect none of this neccessary, all that would change is the metadata index that maps tags to package names. > I was more thinking that in the long term it's reduplication of effort > and annoying. I probably should have worded it as "tags deprecate > categories". You're right that practically speaking, once we figure I myself can't see tags immediately replacing categories, not without needing to do something asinine like putting all the ebuilds in a top-level directory with no parent categories, named by SHA1 Sum, as the "Canonical pool" of packages which all the tag "references" point to. Moving to that state of things seems like a /long/ way off, if ever. -- Kent perl -e "print substr( \"edrgmaM SPA NOcomil.ic\\@tfrken\", \$_ * 3, 3 ) for ( 9,8,0,7,1,6,5,4,3,2 );" http://kent-fredric.fox.geek.nz