init
This commit is contained in:
30
tf2/mkTf2Config.nix
Normal file
30
tf2/mkTf2Config.nix
Normal file
@@ -0,0 +1,30 @@
|
||||
{ runCommand, lib }:
|
||||
|
||||
{ pname
|
||||
, version ? null
|
||||
, custom ? []
|
||||
, cfg ? []
|
||||
, maps ? []
|
||||
# Extra arguments to pass to stdenv.mkDerivation.
|
||||
, env ? {}
|
||||
}@args:
|
||||
|
||||
let
|
||||
version-suffix = lib.optionalString (version != null) "-${version}";
|
||||
name = pname + version-suffix;
|
||||
|
||||
make-output = output: var:
|
||||
lib.optionalString (var != []) ''
|
||||
mkdir -p "$out/${output}"
|
||||
${lib.toShellVar "outputList_${output}" var}
|
||||
for i in "''${outputList_${output}[@]}"; do
|
||||
ln -s "$i" "$out/${output}/$(basename "$i")"
|
||||
done
|
||||
'';
|
||||
in runCommand name env ''
|
||||
set -xe
|
||||
mkdir -p $out
|
||||
${make-output "cfg" cfg}
|
||||
${make-output "custom" custom}
|
||||
${make-output "maps" maps}
|
||||
''
|
||||
Reference in New Issue
Block a user