about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/libproxy
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-09-20 19:56:04 +0000
committerAlyssa Ross <hi@alyssa.is>2019-09-28 14:40:49 +0000
commit36bedbe5c162bab9e7ef702f353ae399fdfd0518 (patch)
treefb2926eee09fe0714683074758276739e9e5cda9 /nixpkgs/pkgs/development/libraries/libproxy
parent47852a9ef0e62a2d565f9ec0fba2a3ae77c44221 (diff)
parent262b328b0bad0c4b97ed495679208e4a2eb87704 (diff)
downloadnixlib-36bedbe5c162bab9e7ef702f353ae399fdfd0518.tar
nixlib-36bedbe5c162bab9e7ef702f353ae399fdfd0518.tar.gz
nixlib-36bedbe5c162bab9e7ef702f353ae399fdfd0518.tar.bz2
nixlib-36bedbe5c162bab9e7ef702f353ae399fdfd0518.tar.lz
nixlib-36bedbe5c162bab9e7ef702f353ae399fdfd0518.tar.xz
nixlib-36bedbe5c162bab9e7ef702f353ae399fdfd0518.tar.zst
nixlib-36bedbe5c162bab9e7ef702f353ae399fdfd0518.zip
Merge commit '262b328b0bad0c4b97ed495679208e4a2eb87704'
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libproxy')
-rw-r--r--nixpkgs/pkgs/development/libraries/libproxy/default.nix71
1 files changed, 53 insertions, 18 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libproxy/default.nix b/nixpkgs/pkgs/development/libraries/libproxy/default.nix
index 09bb0e4aa3f2..844d626f49e3 100644
--- a/nixpkgs/pkgs/development/libraries/libproxy/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libproxy/default.nix
@@ -1,6 +1,22 @@
-{ stdenv, fetchFromGitHub, pkgconfig, cmake, zlib, fetchpatch
-, dbus, networkmanager, spidermonkey_38, pcre, python2, python3
-, SystemConfiguration, CoreFoundation, JavaScriptCore }:
+{ stdenv
+, fetchFromGitHub
+, pkgconfig
+, cmake
+, zlib
+, fetchpatch
+, dbus
+, networkmanager
+, spidermonkey_38
+, pcre
+, gsettings-desktop-schemas
+, glib
+, makeWrapper
+, python2
+, python3
+, SystemConfiguration
+, CoreFoundation
+, JavaScriptCore
+}:
 
 stdenv.mkDerivation rec {
   pname = "libproxy";
@@ -13,28 +29,47 @@ stdenv.mkDerivation rec {
     sha256 = "10swd3x576pinx33iwsbd4h15fbh2snmfxzcmab4c56nb08qlbrs";
   };
 
-  outputs = [ "out" "dev" ]; # to deal with propagatedBuildInputs
+  outputs = [ "out" "dev" "py2" "py3" ];
 
-  nativeBuildInputs = [ pkgconfig cmake ];
+  nativeBuildInputs = [
+    pkgconfig
+    cmake
+    makeWrapper
+  ];
 
-  buildInputs = [ pcre python2 python3 zlib ]
-        ++ (if stdenv.hostPlatform.isDarwin
-            then [ SystemConfiguration CoreFoundation JavaScriptCore ]
-            else [ spidermonkey_38 dbus networkmanager ]);
+  buildInputs = [
+    pcre
+    python2
+    python3
+    zlib
+  ] ++ (if stdenv.hostPlatform.isDarwin then [
+    SystemConfiguration
+    CoreFoundation
+    JavaScriptCore
+  ] else [
+    glib
+    spidermonkey_38
+    dbus
+    networkmanager
+  ]);
 
-  preConfigure = ''
-    cmakeFlagsArray+=(
-      "-DWITH_MOZJS=ON"
-      "-DPYTHON2_SITEPKG_DIR=$out/${python2.sitePackages}"
-      "-DPYTHON3_SITEPKG_DIR=$out/${python3.sitePackages}"
-    )
-  '';
+  cmakeFlags = [
+    "-DWITH_MOZJS=ON"
+    "-DPYTHON2_SITEPKG_DIR=${placeholder "py2"}/${python2.sitePackages}"
+    "-DPYTHON3_SITEPKG_DIR=${placeholder "py3"}/${python3.sitePackages}"
+  ];
 
-  patches = stdenv.lib.optional stdenv.isDarwin
+  patches = stdenv.lib.optionals stdenv.isDarwin [
     (fetchpatch {
       url = "https://github.com/libproxy/libproxy/commit/44158f03f8522116758d335688ed840dfcb50ac8.patch";
       sha256 = "0axfvb6j7gcys6fkwi9dkn006imhvm3kqr83gpwban8419n0q5v1";
-    });
+    })
+  ];
+
+  postFixup = ''
+    # config_gnome3 uses the helper to find GNOME proxy settings
+    wrapProgram $out/libexec/pxgsettings --prefix XDG_DATA_DIRS : "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}"
+  '';
 
   doCheck = false; # fails 1 out of 10 tests