32 lines
622 B
Nix
32 lines
622 B
Nix
|
{ runtimeShell
|
||
|
, symlinkJoin
|
||
|
, writeShellScriptBin
|
||
|
, npush
|
||
|
}:
|
||
|
|
||
|
let
|
||
|
runScript = writeShellScriptBin "run-npush" ''
|
||
|
set -euo pipefail
|
||
|
CWD=$(pwd)
|
||
|
|
||
|
if [ -d "./levels" ]; then
|
||
|
echo "Directory ./levels found; skipping levelset copy"
|
||
|
else
|
||
|
echo "Directory ./levels not found; copying the official levelset to the current directory"
|
||
|
mkdir -p ./levels
|
||
|
cp ${npush}/share/npush/levels/* levels/
|
||
|
chmod 644 levels/*
|
||
|
fi
|
||
|
echo "Now calling npush"
|
||
|
exec "${npush}/bin/npush"
|
||
|
'';
|
||
|
in
|
||
|
symlinkJoin {
|
||
|
name = "run-npush-${npush.version}";
|
||
|
|
||
|
paths = [
|
||
|
npush
|
||
|
runScript
|
||
|
];
|
||
|
}
|