Debian VDR and DVB Packaging Project
How-to build our packages
First you need to install subversion and svn-buildpackage.
ssh
Now let's configure ssh to allways use the right username when
logging into svn.debian.org (Note: You only need this step if
have commit access to svn.debian.org in the pkg-vdr-dvb project,
if you just have read-only access, you can skip this step.)
You should put the following into your ~/.ssh/config:
Host svn.debian.org
Compression=yes
User=<your_Alioth_username>
IdentityFile=/home/<your_local_username>/.ssh/<name_of_you_sshkey>
(Of course you can skip the IdentityFile line and use password
authentication, but believe me, it is much more comfortable
this way.) ;-)
You should now add the public key to the keylist in the
"My account"-section on alioth to be able to login on
svn.debian.org with this key.
Another note: I can only recommend that you use a
ssh-key with passphrase together with the ssh-agent (ssh-add), but
it is up to you to decide this.
Directory layout
The recommended directory layout for you working copies looks
like this
basedir/build-area/
basedir/dvb/
basedir/dvb/linuxtv-dvb
basedir/dvb/linuxtv-dvb-apps
basedir/general/
basedir/tarballs/
basedir/vdr/
basedir/vdr/vdr/
basedir/vdr/vdr-plugin-mp3/
Please note that the package directories only contain the debian
subdirectory, the upstream sources will be merged with the debian
directory automatically by svn-buildpackage at build-time, the
upstream tarballs are located in the tarballs directory.
Every package directory in the repository contains 3 subdirectories,
trunk, branches and tags. Normal development will be done in the
trunk directory, branches should contain branches of the package
(for example, it is planned to add a sarge branch for packages in
sarge soon), the tags directory contains copies of all uploaded
version of the package (you should not edit anything inside the
tags directory: it should be used to get a specific version of a
package from the repository).
checking out and building
The next step is to checkout the necessary files from the subversion
repository (Note: It is recommended that you check out
only the trunk directories of the packages, because checking out every
module with the trunk, branches and tags directories would consume a
lot of space on your disk.)
OK, let's check out and build the vdr package as an example:
cd basedir
svn co svn+ssh://svn.debian.org/svn/pkg-vdr-dvb/tarballs
svn co svn+ssh://svn.debian.org/svn/pkg-vdr-dvb/vdr/vdr/trunk vdr/vdr
cd vdr/vdr
svn-buildpackage -rfakeroot -uc -us
If you only have read-only access to svn.debian.org, you just have
to use svn:// instead of svn+ssh:// when checking out the files.
My ~/.svn-buildpackage.conf contains just one line, similar to this one:
svn-override=buildArea=/basedir/build-area,origDir=/basedir/tarballs
This means that svn-buildpackage allways will build and place the
resulting packages in /basedir/build-area/ and that it will get
the upstream tarballs from /basedir/tarballs/.
Additional documentation on svn-buildpackage and the other related
tools can be found under /usr/share/doc/svn-buildpackage/.
Links
- Our project page
- Our subversion repository
- Developer page
for the Debian VDR Team
- Build status of our packages
- Subversion book