summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorMatthew Bauer <mjbauer95@gmail.com>2018-06-15 22:57:44 -0400
committerMatthew Bauer <mjbauer95@gmail.com>2018-06-15 22:57:44 -0400
commit133cf0ce1bafb37d971dcc223738f7c5c329cb6a (patch)
tree045fd7bcdd5fc9c85c42f8b2741bff4479de44af /pkgs
parent18f2a534c21a944c1cebd4739e621f5c7ead46dd (diff)
downloadnixpkgs-133cf0ce1bafb37d971dcc223738f7c5c329cb6a.tar
nixpkgs-133cf0ce1bafb37d971dcc223738f7c5c329cb6a.tar.gz
nixpkgs-133cf0ce1bafb37d971dcc223738f7c5c329cb6a.tar.bz2
nixpkgs-133cf0ce1bafb37d971dcc223738f7c5c329cb6a.tar.lz
nixpkgs-133cf0ce1bafb37d971dcc223738f7c5c329cb6a.tar.xz
nixpkgs-133cf0ce1bafb37d971dcc223738f7c5c329cb6a.tar.zst
nixpkgs-133cf0ce1bafb37d971dcc223738f7c5c329cb6a.zip
polkit: supports darwin
- apply musl patch unconditionally
- add doCheck arg
- make paxmark linux0nly
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/libraries/polkit/default.nix26
1 files changed, 14 insertions, 12 deletions
diff --git a/pkgs/development/libraries/polkit/default.nix b/pkgs/development/libraries/polkit/default.nix
index ef865529805..0619097af91 100644
--- a/pkgs/development/libraries/polkit/default.nix
+++ b/pkgs/development/libraries/polkit/default.nix
@@ -2,6 +2,7 @@
 , intltool, spidermonkey_17 , gobjectIntrospection, libxslt, docbook_xsl
 , docbook_xml_dtd_412, gtk-doc
 , useSystemd ? stdenv.isLinux, systemd
+, doCheck ? false
 }:
 
 let
@@ -37,15 +38,16 @@ stdenv.mkDerivation rec {
       url = "http://src.fedoraproject.org/cgit/rpms/polkit.git/plain/polkit-0.113-itstool.patch?id=fa6fd575804de92886c95d3bc2b7eb2abcd13760";
       sha256 = "0bxmjwp8ahy1y5g1l0kxmld0l3mlvb2l0i5n1qabia3d5iyjkyfh";
     })
-  ]
-  # Could be applied uncondtionally but don't want to trigger rebuild
-  # https://bugs.freedesktop.org/show_bug.cgi?id=50145
-  ++ stdenv.lib.optional stdenv.hostPlatform.isMusl (fetchpatch {
-    name = "netgroup-optional.patch";
-    url = "https://bugs.freedesktop.org/attachment.cgi?id=118753";
-    sha256 = "1zq51dhmqi9zi86bj9dq4i4pxlxm41k3k4a091j07bd78cjba038";
-  });
+    (fetchpatch {
+      name = "netgroup-optional.patch";
+      url = "https://bugs.freedesktop.org/attachment.cgi?id=118753";
+      sha256 = "1zq51dhmqi9zi86bj9dq4i4pxlxm41k3k4a091j07bd78cjba038";
+    })
+  ];
 
+  postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    sed -i -e "s/-Wl,--as-needed//" configure.ac
+  '';
 
   outputs = [ "bin" "dev" "out" ]; # small man pages in $bin
 
@@ -83,22 +85,22 @@ stdenv.mkDerivation rec {
     "--with-polkitd-user=polkituser" #TODO? <nixos> config.ids.uids.polkituser
     "--with-os-type=NixOS" # not recognized but prevents impurities on non-NixOS
     "--enable-introspection"
-  ];
+  ] ++ stdenv.lib.optional (!doCheck) "--disable-test";
 
   makeFlags = "INTROSPECTION_GIRDIR=$(out)/share/gir-1.0 INTROSPECTION_TYPELIBDIR=$(out)/lib/girepository-1.0";
 
   # The following is required on grsecurity/PaX due to spidermonkey's JIT
-  postBuild = ''
+  postBuild = stdenv.lib.optionalString stdenv.isLinux ''
     paxmark mr src/polkitbackend/.libs/polkitd
     paxmark mr test/polkitbackend/.libs/polkitbackendjsauthoritytest
   '';
 
-  #doCheck = true; # some /bin/bash problem that isn't auto-solved by patchShebangs
+  inherit doCheck;
 
   meta = with stdenv.lib; {
     homepage = http://www.freedesktop.org/wiki/Software/polkit;
     description = "A toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes";
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = [ ];
   };
 }