about summary refs log tree commit diff
path: root/pkgs/applications/version-management/bazaar
diff options
context:
space:
mode:
authorGeorges Dubus <georges.dubus@compiletoi.net>2014-02-04 18:43:21 +0100
committerBjørn Forsman <bjorn.forsman@gmail.com>2014-02-05 11:36:48 +0100
commitb9fe0b8fb10bdc25d62fc766f04f2235205e1ef9 (patch)
treeb3a507f98aa31d2d03d313935262413df365b146 /pkgs/applications/version-management/bazaar
parent9eaf987e623a76c915578de8fda25b21996c9b1c (diff)
downloadnixlib-b9fe0b8fb10bdc25d62fc766f04f2235205e1ef9.tar
nixlib-b9fe0b8fb10bdc25d62fc766f04f2235205e1ef9.tar.gz
nixlib-b9fe0b8fb10bdc25d62fc766f04f2235205e1ef9.tar.bz2
nixlib-b9fe0b8fb10bdc25d62fc766f04f2235205e1ef9.tar.lz
nixlib-b9fe0b8fb10bdc25d62fc766f04f2235205e1ef9.tar.xz
nixlib-b9fe0b8fb10bdc25d62fc766f04f2235205e1ef9.tar.zst
nixlib-b9fe0b8fb10bdc25d62fc766f04f2235205e1ef9.zip
bazaar: updated to 2.6.0 and fixed ssl bug
Fixes #1216
Diffstat (limited to 'pkgs/applications/version-management/bazaar')
-rw-r--r--pkgs/applications/version-management/bazaar/add_certificates.patch11
-rw-r--r--pkgs/applications/version-management/bazaar/default.nix18
2 files changed, 24 insertions, 5 deletions
diff --git a/pkgs/applications/version-management/bazaar/add_certificates.patch b/pkgs/applications/version-management/bazaar/add_certificates.patch
new file mode 100644
index 000000000000..332f42aa89cc
--- /dev/null
+++ b/pkgs/applications/version-management/bazaar/add_certificates.patch
@@ -0,0 +1,11 @@
+diff -ru orig/bzrlib/transport/http/_urllib2_wrappers.py bzr-2.6.0/bzrlib/transport/http/_urllib2_wrappers.py
+--- orig/bzrlib/transport/http/_urllib2_wrappers.py	2013-07-27 13:50:53.000000000 +0200
++++ bzr-2.6.0/bzrlib/transport/http/_urllib2_wrappers.py	2014-02-04 18:34:15.838622492 +0100
+@@ -86,6 +86,7 @@
+     u"/usr/local/share/certs/ca-root-nss.crt", # FreeBSD
+     # XXX: Needs checking, can't trust the interweb ;) -- vila 2012-01-25
+     u'/etc/openssl/certs/ca-certificates.crt', # Solaris
++    u'@certPath@',
+     ]
+ def default_ca_certs():
+     if sys.platform == 'win32':
diff --git a/pkgs/applications/version-management/bazaar/default.nix b/pkgs/applications/version-management/bazaar/default.nix
index 1eb114ecd8ce..2ea916052a38 100644
--- a/pkgs/applications/version-management/bazaar/default.nix
+++ b/pkgs/applications/version-management/bazaar/default.nix
@@ -1,20 +1,28 @@
-{ stdenv, fetchurl, pythonPackages }:
+{ stdenv, fetchurl, pythonPackages, cacert }:
 
 stdenv.mkDerivation rec {
-  version = "2.5";
-  release = ".1";
+  version = "2.6";
+  release = ".0";
   name = "bazaar-${version}${release}";
 
   src = fetchurl {
     url = "http://launchpad.net/bzr/${version}/${version}${release}/+download/bzr-${version}${release}.tar.gz";
-    sha256 = "10krjbzia2avn09p0cdlbx2wya0r5v11w5ymvyl72af5dkx4cwwn";
+    sha256 = "1c6sj77h5f97qimjc14kr532kgc0jk3wq778xrkqi0pbh9qpk509";
   };
 
-  buildInputs = [ pythonPackages.python pythonPackages.wrapPython ];
+  buildInputs = [ pythonPackages.python pythonPackages.wrapPython cacert ];
 
   # Readline support is needed by bzrtools.
   pythonPath = [ pythonPackages.readline ];
 
+  # Bazaar can't find the certificates alone
+  patches = [ ./add_certificates.patch ];
+  postPatch = ''
+    substituteInPlace bzrlib/transport/http/_urllib2_wrappers.py \
+      --subst-var-by "certPath" "${cacert}/etc/ca-bundle.crt"
+  '';
+
+
   installPhase = ''
     python setup.py install --prefix=$out
     wrapPythonPrograms