nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 50 lines 1.6 kB view raw
1{ 2 runCommand, 3 libxslt, 4 dbus, 5 findXMLCatalogs, 6 serviceDirectories ? [ ], 7 suidHelper ? "/var/setuid-wrappers/dbus-daemon-launch-helper", 8 apparmor ? "disabled", # one of enabled, disabled, required 9}: 10 11/* 12 DBus has two configuration parsers -- normal and "trivial", which is used 13 for suid helper. Unfortunately the latter doesn't support <include> 14 directive. That means that we can't just place our configuration to 15 *-local.conf -- it needs to be in the main configuration file. 16*/ 17runCommand "dbus-1" 18 { 19 inherit serviceDirectories suidHelper apparmor; 20 preferLocalBuild = true; 21 allowSubstitutes = false; 22 23 nativeBuildInputs = [ 24 libxslt.bin 25 findXMLCatalogs 26 ]; 27 28 buildInputs = [ 29 dbus.out 30 ]; 31 } 32 '' 33 mkdir -p $out 34 35 xsltproc --nonet \ 36 --stringparam serviceDirectories "$serviceDirectories" \ 37 --stringparam suidHelper "$suidHelper" \ 38 --stringparam apparmor "$apparmor" \ 39 ${./make-system-conf.xsl} ${dbus}/share/dbus-1/system.conf \ 40 > $out/system.conf 41 xsltproc --nonet \ 42 --stringparam serviceDirectories "$serviceDirectories" \ 43 --stringparam apparmor "$apparmor" \ 44 ${./make-session-conf.xsl} ${dbus}/share/dbus-1/session.conf \ 45 > $out/session.conf 46 47 # check if files are empty or only contain space characters 48 grep -q '[^[:space:]]' "$out/system.conf" || (echo "\"$out/system.conf\" was generated incorrectly and is empty, try building again." && exit 1) 49 grep -q '[^[:space:]]' "$out/session.conf" || (echo "\"$out/session.conf\" was generated incorrectly and is empty, try building again." && exit 1) 50 ''