gensync has been 'deprecated', and officially replaced by layman. But layman as a dep on subversion. having to install subversion on all the machines to be able to deploy customized or home-grown ebuild seems like an overkill.
Reassigning to the layman maintainer since it is his decision if he wants to modify layman to not have a hard dependency on subversion.
If you really don't want to use layman, you can continue to use gensync. It is still installed in /usr/share/doc/gentoolkit-dev-0.2.6.2/deprecated/gensync/
Additionally all of the source code is available at http://sources.gentoo.org/viewcvs.py/gentoolkit/trunk/src/gensync/
I have seen the 'alternate location'.
I'm fine with doing an alternate ebuild to be able to continue to install it at the 'right' place (there will be some interesting boostrapping issue for new machines :-) )
I was concerned about doing that because the code of gensync rely on portage (I no nothing about python and therefore nothing about portage's internal), so the deprecation may have been an indication that change in portage are coming that would break that gensync code, and the maintainer has decided he will not maintain it when that happen - since layman is better/faster/... which is fine with me. I, nominally, would not mind using layman.
Maybe I don't need either of them at all, maybe a simple rsync between the /usr/local/portage directories will do ? (but again to deploy cleanly a script to do that, I would 'need' a custom ebuild... catch 22)
Just to explain more clearly: I use ebuilds to deploy few home-grown scripts/little appli/CA-certificates/ on my gentoo-based machines (two dozen of desktops and quite few servers), these ebuilds have no interest for anybody but me. Except for these nobody-care-but-me ebuilds, I use only vanilla 'official' gentoo ebuilds. So really I have 1 and only 1 syncsource defined.
To use layman I would have to deploy subversion on all desktops and all servers... Not an option in my case.
I fail to see why do you need layman to "deploy few home-grown
scripts"; nor do you need gensync or anything like that for it. You can export the overlay dir via NFS or whatever else.
Layman needs subversion for 95% of the overlays out there and killing the dependency flat out doesn't make sense. You are using wrong tool for your stuff, I'm afraid.
"You are using wrong tool for your
stuff, I'm afraid."
You are probably right.
I didn't think I could simply 'nfs-mount' the overlay... I, apparently wrongly, though that there was more to gensync than just rsync'ing the overlay. I will probably do that then.
Still I tried something:
>emerge -Ca subversion
... works, expect that subversion rep are not flagged with a red star
>layman -a zugaina (a random non subversion rep)
>layman -d ALL
>layman -a wrobel
* Failed to add overlay "wrobel".
* Error was: Binary /usr/bin/svn seems to be missing! Overlay type "svn" not supported. Did you emerge dev-util/subversion?
Looks to me that the subversion dependency is already optional, in the sens that the layman code deal gracefully with subversion not being there.
So the only thing is why does the dependency hard coded in the ebuild, when the dependency is really optional ?
Isn't that what use flag are for ?
I tested with the following patch:
--- /usr/portage/app-portage/layman/layman-1.0.6.ebuild 2006-10-15 05:35:30.000000000 -0400
+++ layman-1.0.6.ebuild 2007-02-24 14:03:42.000000000 -0500
@@ -11,10 +11,10 @@
KEYWORDS="alpha amd64 ia64 ppc sparc x86"
and it seems to work fine.
subversion is not needed to build layman, and subversion could indeed be emerged afterward.
Isn't that the very definition of RDEPEND ?
It is true. This is actually no hard dependency anymore and I can remove it. The newer layman versions should be able to tell the user the required emerge command if a subversion overlay is needed and it is not installed. I'll remove the dependency next time I'm working on layman (the RDEPEND comment is also correct).
Fixed in layman-1.0.99
*** Bug 175330 has been marked as a duplicate of this bug. ***
*** Bug 202674 has been marked as a duplicate of this bug. ***
*** Bug 203600 has been marked as a duplicate of this bug. ***
*** Bug 208172 has been marked as a duplicate of this bug. ***
Can we please add:
RDEPEND="darcs? ( dev-util/darcs )
git? ( dev-util/git )
subversion? ( dev-util/subversion )"
I did not add darcs as the package does not exist on arm and there is only a single overlay in the layman list running on darcs. The other two are supported by the layman-1.2.0 ebuild now.