How to install Subversion 1.7 from WanDisco repository on Debian Wheezy

Because my working copies have been migrated to 1.7, I really need this Subversion version even after Debian upgrade to Wheezy. And of course, I am lasy, I have no time to waste in compiling and want my Debian system to be clean – so I just want a debian package. WanDisco provides one… but for Squeeze.

Here is the way to install latest Subversion 1.7.x from WanDisco repository on Debian:

wget -q -O - http://opensource.wandisco.com/wandisco-debian.gpg | sudo apt-key add -

echo "deb http://opensource.wandisco.com/debian/ squeeze svn17" > /etc/apt/sources.list.d/wandisco-subversion.list
apt-get update
apt-get install subversion subversion-tools

But this fails on Wheezy because Berkeley DB package (that no Subversion users use since years…) libdb4.8 has been renamed into db4.8-util and is declared as dependency for libsvn1. I consider that dependency should be declared as recommended instead of mandatary… By the way, how to get it installed on Wheezy ?

Thanks to equivs package, we will create an empty configuration package called libdb4.8 to satisfy WanDisco libsvn1 squeeze package.


apt-get install equivs

cat > libdb4.8-control-wheezy <<EOF
### Commented entries have reasonable defaults.
### Uncomment to edit them.
# Source: <source package name; defaults to package name>
Section: misc
Priority: optional
# Homepage: <enter URL here; no default>
Standards-Version: 3.9.2

Package: libdb4.8
Version: 4.8.30-fake
Maintainer: Yves Martin <guess@free.fr>
# Pre-Depends: <comma-separated list of packages>
Depends: db4.8-util
# Recommends: <comma-separated list of packages>
# Suggests: <comma-separated list of packages>
# Provides: <comma-separated list of packages>
# Replaces: <comma-separated list of packages>
Architecture: all
# Copyright: <copyright file; defaults to GPL2>
# Changelog: <changelog file; defaults to a generic changelog>
# Readme: <README.Debian file; defaults to a generic one>
# Extra-Files: <comma-separated list of additional files for the doc directory>
# Files: <pair of space-separated paths; First is file to include, second is destination>
#  <more pairs, if there's more than one file to include. Notice the starting space>
Description: Link to new package name db4.8-util
EOF

equivs-build libdb4.8-control-wheezy
apt-get install db4.8-util
dpkg -i libdb4.8_4.8.30-fake_all.deb

Of course the control file may be improved with more relevant information, but it does the job. Subversion 1.7 is now installed properly and running on Wheezy without compilation.

If you have a StackExchange account, please vote for the question « How to tell apt that dependencies are resolved manually » which was a great help to create this procedure.

Hope this help.

Remark: if your APT configuration uses pinning, you may get troubles with libserf1. To avoid it, you shoud restrict pinning from WanDisco repository to subversion packages with patterns. Here is my /etc/apt/preferences.d/wandisco-subversion.pref, you probably will have to tune it to your system.


Package: *subversion* *svn*
Pin: origin opensource.wandisco.com
Pin-Priority: 950