anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / development / skaware-packages / s6-linux-init / default.nix
blobd7d44aeac42ac9ffb44e7dd8a34f4aa1bec50b71
1 { lib
2 , stdenv
3 , skawarePackages
4 , skalibs
5 , execline
6 , s6
7 , targetPackages
8 }:
10 skawarePackages.buildPackage {
11   pname = "s6-linux-init";
12   version = "1.1.2.0";
13   sha256 = "sha256-Ea4I0KZiELXla2uu4Pa5sbafvtsF/aEoWxFaMcpGx38=";
15   description = "Set of minimalistic tools used to create a s6-based init system, including a /sbin/init binary, on a Linux kernel";
16   platforms = lib.platforms.linux;
18   outputs = [ "bin" "dev" "doc" "out" ];
20   configureFlags = [
21     "--bindir=\${bin}/bin"
22     "--includedir=\${dev}/include"
23     "--with-sysdeps=${skalibs.lib}/lib/skalibs/sysdeps"
24     "--with-include=${skalibs.dev}/include"
25     "--with-include=${execline.dev}/include"
26     "--with-include=${s6.dev}/include"
27     "--with-lib=${skalibs.lib}/lib"
28     "--with-lib=${s6.out}/lib"
29     "--with-lib=${execline.lib}/lib"
30     "--with-dynlib=${skalibs.lib}/lib"
31     "--with-dynlib=${execline.lib}/lib"
32     "--with-dynlib=${s6.out}/lib"
33   ];
35   # See ../s6-rc/default.nix for an explanation
36   postConfigure = lib.optionalString (stdenv.hostPlatform != stdenv.targetPlatform) ''
37     substituteInPlace src/init/s6-linux-init-maker.c \
38         --replace-fail '<execline/config.h>' '"${targetPackages.execline.dev}/include/execline/config.h"' \
39         --replace-fail '<s6/config.h>' '"${targetPackages.s6.dev}/include/s6/config.h"' \
40         --replace-fail '<s6-linux-init/config.h>' '"${targetPackages.s6-linux-init.dev}/include/s6-linux-init/config.h"'
41   '';
43   postInstall = ''
44     # remove all s6 executables from build directory
45     rm $(find -name "s6-*" -type f -mindepth 1 -maxdepth 1 -executable)
46     rm libs6_linux_init.* libhpr.*
47     rm -rf skel
49     mv doc $doc/share/doc/s6-linux-init/html
50   '';