The kdesvn kio helper from kde 4.14.3 does not build with the newer subversion
1.9.x series. The attached patch restores the subversion 1.8.x to nixpkgs and
uses it with kde4.
>From b91c3d65902fb349569092d34296806b6ba521e0 Mon Sep 17 00:00:00 2001
From: Karn Kallio <[email protected]>
Date: Wed, 30 Sep 2015 10:43:14 -0430
Subject: [PATCH] Restore subversion 1.8.x because kdesvn does not build with
1.9.x
---
.../version-management/subversion/1.8.x.nix | 85 ++++++++++++++++++++++
pkgs/top-level/all-packages.nix | 11 ++-
2 files changed, 94 insertions(+), 2 deletions(-)
create mode 100644 pkgs/applications/version-management/subversion/1.8.x.nix
diff --git a/pkgs/applications/version-management/subversion/1.8.x.nix b/pkgs/applications/version-management/subversion/1.8.x.nix
new file mode 100644
index 0000000..ffe6883
--- /dev/null
+++ b/pkgs/applications/version-management/subversion/1.8.x.nix
@@ -0,0 +1,85 @@
+{ bdbSupport ? false # build support for Berkeley DB repositories
+, httpServer ? false # build Apache DAV module
+, httpSupport ? false # client must support http
+, pythonBindings ? false
+, perlBindings ? false
+, javahlBindings ? false
+, saslSupport ? false
+, stdenv, fetchurl, apr, aprutil, zlib, sqlite
+, apacheHttpd ? null, expat, swig ? null, jdk ? null, python ? null, perl ? null
+, sasl ? null, serf ? null
+}:
+
+assert bdbSupport -> aprutil.bdbSupport;
+assert httpServer -> apacheHttpd != null;
+assert pythonBindings -> swig != null && python != null;
+assert javahlBindings -> jdk != null && perl != null;
+
+stdenv.mkDerivation (rec {
+
+ version = "1.8.14";
+
+ name = "subversion-${version}";
+
+ src = fetchurl {
+ url = "mirror://apache/subversion/${name}.tar.bz2";
+ sha1 = "0698efc58373e7657f6dd3ce13cab7b002ffb497";
+ };
+
+ buildInputs = [ zlib apr aprutil sqlite ]
+ ++ stdenv.lib.optional httpSupport serf
+ ++ stdenv.lib.optional pythonBindings python
+ ++ stdenv.lib.optional perlBindings perl
+ ++ stdenv.lib.optional saslSupport sasl;
+
+ configureFlags = ''
+ ${if bdbSupport then "--with-berkeley-db" else "--without-berkeley-db"}
+ ${if httpServer then "--with-apxs=${apacheHttpd}/bin/apxs" else "--without-apxs"}
+ ${if pythonBindings || perlBindings then "--with-swig=${swig}" else "--without-swig"}
+ ${if javahlBindings then "--enable-javahl --with-jdk=${jdk}" else ""}
+ --disable-keychain
+ ${if saslSupport then "--with-sasl=${sasl}" else "--without-sasl"}
+ ${if httpSupport then "--with-serf=${serf}" else "--without-serf"}
+ --with-zlib=${zlib}
+ --with-sqlite=${sqlite}
+ '';
+
+ preBuild = ''
+ makeFlagsArray=(APACHE_LIBEXECDIR=$out/modules)
+ '';
+
+ postInstall = ''
+ if test -n "$pythonBindings"; then
+ make swig-py swig_pydir=$(toPythonPath $out)/libsvn swig_pydir_extra=$(toPythonPath $out)/svn
+ make install-swig-py swig_pydir=$(toPythonPath $out)/libsvn swig_pydir_extra=$(toPythonPath $out)/svn
+ fi
+
+ if test -n "$perlBindings"; then
+ make swig-pl-lib
+ make install-swig-pl-lib
+ cd subversion/bindings/swig/perl/native
+ perl Makefile.PL PREFIX=$out
+ make install
+ cd -
+ fi
+
+ mkdir -p $out/share/bash-completion/completions
+ cp tools/client-side/bash_completion $out/share/bash-completion/completions/subversion
+ '';
+
+ inherit perlBindings pythonBindings;
+
+ enableParallelBuilding = true;
+
+ meta = {
+ description = "A version control system intended to be a compelling replacement for CVS in the open source community";
+ homepage = http://subversion.apache.org/;
+ maintainers = with stdenv.lib.maintainers; [ eelco lovek323 ];
+ hydraPlatforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
+ };
+} // stdenv.lib.optionalAttrs stdenv.isDarwin {
+ CXX = "clang++";
+ CC = "clang";
+ CPP = "clang -E";
+ CXXCPP = "clang++ -E";
+})
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index a3f764e..aa70f0c 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -12775,7 +12775,7 @@ let
sublime3 = lowPrio (callPackage ../applications/editors/sublime3 { });
- subversion = callPackage ../applications/version-management/subversion/default.nix {
+ subversionFun = versionPath: callPackage versionPath {
bdbSupport = true;
httpServer = false;
httpSupport = true;
@@ -12786,12 +12786,18 @@ let
sasl = cyrus_sasl;
};
- subversionClient = appendToName "client" (subversion.override {
+ subversionClientFun = subversion: appendToName "client" (subversion.override {
bdbSupport = false;
perlBindings = true;
pythonBindings = true;
});
+ subversion = subversionFun ../applications/version-management/subversion/default.nix;
+
+ subversionClient = subversionClientFun subversion;
+
+ subversionClient_1_8 = subversionClientFun (subversionFun ../applications/version-management/subversion/1.8.x.nix);
+
subunit = callPackage ../development/libraries/subunit { };
surf = callPackage ../applications/misc/surf {
@@ -13932,6 +13938,7 @@ let
libcanberra = libcanberra_kde;
boost = boost155;
kdelibs = kdeApps_15_08.kdelibs;
+ subversionClient = subversionClient_1_8;
}
../desktops/kde-4.14;
--
2.4.4
_______________________________________________
nix-dev mailing list
[email protected]
http://lists.science.uu.nl/mailman/listinfo/nix-dev