Note that Subversion ebuilds should not generally be added to the tree for much the same reasons that live CVS ebuilds should not (see Disadvantages of CVS Sources). Indeed, there should be even less impetus to add a live Subversion ebuild than a live CVS ebuild, as Subversion checkouts are roughly a factor of five larger than an equivalent CVS checkout.
It is safer (and better for the user) to make a snapshot instead. For
gentoo-syntax snapshots could be made using:
$ svn export svn://svn.berlios.de/svnroot/repos/gentoo-syntax -r HEAD gentoo-syntax
KEYWORDSor package.masked (but not both). Empty
KEYWORDSare strongly preferred. This applies to "live" ebuilds (
-9999) and to ebuilds that extract a static revision but still use Subversion for fetching.
To use a Subversion source,
subversion.eclass must be
inherited, and then at least
ESVN_REPO_URI must be set. The
following variables are also noteworthy:
||Server and path (http, https, svn)||
||Project name of ebuild||
||Bootstrap command or script||
||Patches to apply during bootstrap||
See the eclass itself and subversion.eclass
for the full range of options. To perform the actual checkout, use
subversion_src_unpack function, which calls
Here is a simple example, based upon the Subversion options in
litu-svn-20040902.ebuild; this approach is sufficient for most
inherit subversion ESVN_REPO_URI="https://tao.uab.es/ion/svn/libtu/trunk" ESVN_PROJECT="libtu-snapshot"