Summary: | ion, ion2, ion3, ion3-svn ... is this proper organization? | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Eric Brown <eric.brown> |
Component: | New packages | Assignee: | Tom Payne (RETIRED) <twp> |
Status: | RESOLVED LATER | ||
Severity: | normal | CC: | desktop-wm+disabled, twp |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 4698 | ||
Bug Blocks: |
Description
Eric Brown
2004-04-22 13:30:54 UTC
OK, I maintain ion* on Gentoo. Portage does have a SLOT mechanism for handling muliple versions of the same package. The reasons that I haven't used the SLOT mechanism here are: 1) The configuration files are so different between different ion versions that they are effectively different window managers. It is my opinion that many people do emerge -u world without checking the output and I do not wish to break these user's configurations. ion is very stable, ion2 is now very stable but went through many, many, changes during development which meant it was desirable to keep it separate. ion3, well, who knows what's going to happen? The config file format has changed again! 2) I can't work out a graceful way to handle a transition from ion's versions (which are dates) to something like ion-1.20020207, ion-2.20040407, ion-3.20040316, etc. The problem is that version number 2.20040407 is less than 20020207, i.e. ion version 1 under the old numbering scheme appears newer than version 2 under the new numbering scheme. There may be a way around this. 3) ion3 is for "official" releases of ion3, ion3-svn is a live ebuild that checks out the sources from ion's subversion repository and is designed for users who want to track ion3's development (like me). Portage's handling of live CVS/Subversion ebuilds isn't great because of versioning issues. This isn't necessarily a bad thing since we don't want too many live ebuilds in the tree :-) Anyway, if we can work out a sensible version scheme that: 1) puts different ion versions in SLOTs 2) is compatible with the exisiting version numbers 3) allows the svn live ebuild to work correctly then I'll happily implement it. As a side note, Debian is using the same system as Gentoo here. There has been some dicussion on the ion mailing list about this, but no-one's come up with a good solution yet. Cheers, Tom I would just be disappointed if the trend kept going this way and we ended up with ion, ion2, ion3, ion4, ion5, ion-svn in portage all as separate packages. I think it's fair to assume the following: ion developers will use ion-svn, regular usuers will use ion2 or perhaps the less stable ion3 (the brave), nobody will use more than 1 version at a time? (why were you considering slots?) with that in mind, what is wrong with having: ion/ion-20010101.ebuild (really ion 1) ion/ion-20031012.ebuild (really ion 2) ion/ion-20040101.ebuild (really ion 3) (masked because of instability ~x86?) ion-svn/ion-svn Most people will really just want ion2, so the latest ion3 dated ebuilds would be masked ~x86, or in package.mask. In this scheme ion-svn and ion3 ebuilds would not be easily mistaken for stable packages. You could even mark some ion2 ebuilds as unstable in package.mask... The fact that ion devs totally changed the config formats is really just something users would have to deal with anyway, so warning could be given. Might it be possible to have an ion2 dated ebuild be blocked by ion1 dated ones? (blocking between different versions of the same application?). I suppose none of this will matter until we have too many ion packages though.. but it would be nice to make a transition sooner than later right? this is old.. i suppose the old ions will just get removed as time goes on anyway. No, the bug report is valid. I'm just being particularly slow at fixing it. Please leave open until fixed. Cheers, Tom sorry bout that :) For this to work, portage really needs to support upgrading within SLOTs, see bug # 4698. This is a long-requested feature... |