push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
{
lib,
stdenv,
fetchurl,
ncurses,
}:
stdenv.mkDerivation rec {
pname = "npush";
version = "0.7";
src = fetchurl {
url = "mirror://sourceforge/project/npush/${pname}/${version}/${pname}-${version}.tgz";
hash = "sha256-8hbSsyeehzd4T3fUhDyebyI/oTHOHr3a8ArYAquivNk=";
};
outputs = [
"out"
"doc"
];
buildInputs = [
ncurses
];
dontConfigure = true;
makeFlags = [
"CC=${stdenv.cc.targetPrefix}c++"
];
env.NIX_CFLAGS_COMPILE = "-Wno-error=format-security";
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/share/npush/levels $doc/share/doc/npush
cp npush $out/bin/
cp levels/* $out/share/npush/levels
cp CHANGES COPYING CREDITS index.html \
readme.txt screenshot1.png screenshot2.png $doc/share/doc/npush/
runHook postInstall
'';
meta = with lib; {
broken = stdenv.hostPlatform.isDarwin;
homepage = "https://npush.sourceforge.net/";
description = "Sokoban-like game";
mainProgram = "npush";
license = licenses.gpl2Plus;
maintainers = [ ];
platforms = with platforms; unix;
};
}

32
pkgs/games/npush/run.nix Normal file
View File

@@ -0,0 +1,32 @@
{
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
];
}