forked from rarias/jungle
Compare commits
2 Commits
add-privat
...
129dfb1998
| Author | SHA1 | Date | |
|---|---|---|---|
|
129dfb1998
|
|||
|
21002bca2a
|
37
overlay.nix
37
overlay.nix
@@ -1,39 +1,18 @@
|
||||
final: /* Future last stage */
|
||||
prev: /* Previous stage */
|
||||
|
||||
with final.lib;
|
||||
|
||||
let
|
||||
|
||||
inherit (prev) lib;
|
||||
inherit (lib) collect filterAttrs isDerivation mapAttrs;
|
||||
|
||||
callPackage = final.callPackage;
|
||||
|
||||
bscPkgs = {
|
||||
|
||||
# override stdenv to add a sentinel to know if a derivation comes
|
||||
# from unfree sources.
|
||||
stdenv = prev.stdenv // {
|
||||
mkDerivation =
|
||||
args:
|
||||
let
|
||||
originalDrv = prev.stdenv.mkDerivation args;
|
||||
checkLicense = l: if builtins.isAttrs l then !(l.free or true) else false;
|
||||
|
||||
licenses = if builtins.isList args.meta.license then args.meta.license else [ args.meta.license ];
|
||||
|
||||
hasUnfreeLicense =
|
||||
if args ? meta && args.meta ? license then builtins.any checkLicense licenses else false;
|
||||
in
|
||||
if hasUnfreeLicense then
|
||||
builtins.traceVerbose "adding nix-support/private to ${originalDrv.name or originalDrv.pname}" (
|
||||
originalDrv.overrideAttrs (old: {
|
||||
postInstall = (old.postInstall or "") + ''
|
||||
mkdir -p $out/nix-support
|
||||
touch $out/nix-support/private
|
||||
'';
|
||||
}))
|
||||
else
|
||||
originalDrv;
|
||||
};
|
||||
mkStrict = drv: if (isDerivation drv && drv ? overrideAttrs && !(drv ? strictDeps))
|
||||
then drv.overrideAttrs { strictDeps = true; }
|
||||
else drv;
|
||||
|
||||
bscPkgs = mapAttrs (_: mkStrict) {
|
||||
agenix = prev.callPackage ./pkgs/agenix/default.nix { };
|
||||
amd-uprof = prev.callPackage ./pkgs/amd-uprof/default.nix { };
|
||||
bench6 = callPackage ./pkgs/bench6/default.nix { };
|
||||
|
||||
@@ -50,15 +50,11 @@ let
|
||||
];
|
||||
phases = [ "installPhase" ];
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
awk -F': ' '\
|
||||
BEGIN { print "[ {" } \
|
||||
NR>1 && /^Package: / { print "} {"; } \
|
||||
/: / { printf "%s = \"%s\";\n", $1, $2 } \
|
||||
END { print "} ]" }' $srcs > $out
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
|
||||
@@ -92,15 +88,11 @@ let
|
||||
nativeBuildInputs = [ dpkg ];
|
||||
phases = [ "installPhase" ];
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out
|
||||
for src in $srcs; do
|
||||
echo "unpacking $src"
|
||||
dpkg -x $src $out
|
||||
done
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
inherit meta;
|
||||
@@ -139,8 +131,6 @@ let
|
||||
phases = [ "installPhase" "fixupPhase" ];
|
||||
dontStrip = true;
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/{bin,etc,lib,include}
|
||||
mkdir -p $out/share/man
|
||||
|
||||
@@ -157,8 +147,6 @@ let
|
||||
# Broken due missing libze_loader.so.1
|
||||
rsync -a --exclude IMB-MPI1-GPU bin/ $out/bin/
|
||||
popd
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
preFixup = ''
|
||||
for i in $out/bin/mpi* ; do
|
||||
@@ -197,8 +185,6 @@ let
|
||||
autoPatchelfIgnoreMissingDeps = [ "libhwloc.so.5" ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/lib
|
||||
|
||||
cd $src
|
||||
@@ -207,8 +193,6 @@ let
|
||||
# Libraries
|
||||
rsync -a lib/intel64/gcc4.8/ $out/lib/
|
||||
popd
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
inherit meta;
|
||||
@@ -244,8 +228,6 @@ let
|
||||
autoPatchelfIgnoreMissingDeps = [ "libsycl.so.6" ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/{bin,lib,include}
|
||||
mkdir -p $out/share/man
|
||||
|
||||
@@ -270,8 +252,6 @@ let
|
||||
rsync -a compiler/include/ $out/include/
|
||||
popd
|
||||
popd
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
inherit meta;
|
||||
@@ -313,8 +293,6 @@ let
|
||||
dontStrip = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/{bin,lib,include}
|
||||
mkdir -p $out/share/man
|
||||
|
||||
@@ -340,10 +318,7 @@ let
|
||||
|
||||
# Fix lib_lin
|
||||
ln -s $out/lib $out/lib_lin
|
||||
|
||||
popd
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
inherit meta;
|
||||
@@ -406,8 +381,6 @@ let
|
||||
dontStrip = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/{bin,lib}
|
||||
mkdir -p $out/share/man
|
||||
|
||||
@@ -435,8 +408,6 @@ let
|
||||
# Manuals
|
||||
rsync -a documentation/en/man/common/ $out/share/man/
|
||||
popd
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
inherit meta;
|
||||
|
||||
Reference in New Issue
Block a user