nixpkgs/pkgs/development/libraries/skalibs/default.nix
Profpatsch 14f812aeef skawarePackages.skalibs: empty default path
If `PATH` is unset, the exec wrappers in skalibs set a default path to
`/usr/bin:bin`.

This has very unfortunate effects when you e.g. try to run tests on CI
in an empty environment (minus tools explicitely provided by nix with
absolute store paths), because suddenly binaries from outside are
picked up again, especially on non-NixOS.
Even on NixOS, /bin/sh provides another escape hatch if it’s available
from PATH. But on systems like Ubuntu or MacOS (which most CI systems
run on), this picks up all the non-nix binaries.
2019-10-29 14:28:53 +01:00

34 lines
770 B
Nix

{ skawarePackages }:
with skawarePackages;
buildPackage {
pname = "skalibs";
version = "2.9.1.0";
sha256 = "19c6s3f7vxi96l2yqzjk9x9i4xkfg4fdzxhn1jg6bfb2qjph9cnk";
description = "A set of general-purpose C programming libraries";
outputs = [ "lib" "dev" "doc" "out" ];
configureFlags = [
# assume /dev/random works
"--enable-force-devr"
"--libdir=\${lib}/lib"
"--dynlibdir=\${lib}/lib"
"--includedir=\${dev}/include"
"--sysdepdir=\${lib}/lib/skalibs/sysdeps"
# Empty the default path, which would be "/usr/bin:bin".
# It would be set when PATH is empty. This hurts hermeticity.
"--with-default-path="
];
postInstall = ''
rm -rf sysdeps.cfg
rm libskarnet.*
mv doc $doc/share/doc/skalibs/html
'';
}