mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-23 23:43:30 +00:00
polkit: supports darwin
- apply musl patch unconditionally - add doCheck arg - make paxmark linux0nly
This commit is contained in:
parent
18f2a534c2
commit
133cf0ce1b
@ -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 = [ ];
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user