diff --git a/pkgs/games/tumiki-fighters/default.nix b/pkgs/games/tumiki-fighters/default.nix new file mode 100644 index 000000000000..2f3cf869f8db --- /dev/null +++ b/pkgs/games/tumiki-fighters/default.nix @@ -0,0 +1,97 @@ +{ lib +, stdenv +, fetchpatch +, fetchurl +, unzip +, gdc +, SDL +, SDL_mixer +, bulletml +}: + +let +debianPatch = patchname: hash: fetchpatch { + name = "${patchname}.patch"; + url = "https://sources.debian.org/data/main/t/tumiki-fighters/0.2.dfsg1-9/debian/patches/${patchname}.patch"; + sha256 = hash; +}; + +in stdenv.mkDerivation { + pname = "tumiki-fighters"; + version = "0.21"; + + src = fetchurl { + url = "http://abagames.sakura.ne.jp/windows/tf0_21.zip"; + sha256 = "0djykfc1r8ysapklm621h89ana1c4qzc1m5nr9bqw4iccnmvwk3p"; + }; + + patches = [ + (debianPatch + "imports" + "1l3kc67b43gdi139cpz5cka1nkn0pjp9mrgrrxlmr0liwx2aryhn") + (debianPatch + "fixes" + "1iy1a5vii6yz9zdlk2bcj6gkj4y25hn9y2fczz15jpqd9r2zm603") + (debianPatch + "directories" + "0kmv0s7jgr693fzrkjsmz4dnicc4w7njanxm2la3cf4vmgdyipmm") + (debianPatch + "windowed" + "1wp74l0bi8wq85pcxnmkwrlfmlf09im95n27pxgz082lhwf2ksy1") + (debianPatch + "dotfile" + "0d8x519bclh41j992qn6ijzfcrgacb79px6zjd1awypkwyc0j2p6") + (debianPatch + "makefile" + "11xf2b31kjyps53jfryv82dv0g6q0smc9xgp8imrbr93mzi51vf0") + (debianPatch + "window-resizing" + "1dm79d0yisa8zs5fr89y3wq2kzd3khcaxs0la8lhncvkqbd4smx8") + (debianPatch + "dlang_v2" + "1isnvbl3bjnpyphji8k3fl0yd1z4869h0lai143vpwgj6518lpg4") + (debianPatch + "gdc-8" + "1md0zwmv50jnak5g9d93bglv9v4z41blinjii6kv3vmgjnajapzj") + ]; + + postPatch = '' + for f in \ + src/abagames/tf/barragemanager.d \ + src/abagames/util/sdl/sound.d \ + src/abagames/util/sdl/texture.d \ + src/abagames/tf/enemyspec.d \ + src/abagames/tf/field.d \ + src/abagames/tf/stagemanager.d \ + src/abagames/tf/tumikiset.d + do + substituteInPlace $f \ + --replace "/usr/" "$out/" + done + ''; + + nativeBuildInputs = [ + unzip + gdc + ]; + + buildInputs = [ + SDL + SDL_mixer + bulletml + ]; + + installPhase = '' + install -Dm755 tumiki-fighters $out/bin/tumiki-fighters + mkdir -p $out/share/games/tumiki-fighters + cp -r barrage sounds enemy field stage tumiki $out/share/games/tumiki-fighters/ + ''; + + meta = with lib; { + homepage = "http://www.asahi-net.or.jp/~cs8k-cyu/windows/tf_e.html"; + description = "Sticky 2D shooter"; + license = licenses.bsd2; + maintainers = with maintainers; [ fgaz ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 03b740db2fa6..868a1175bb8c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -28923,6 +28923,8 @@ in tts = callPackage ../tools/audio/tts { }; + tumiki-fighters = callPackage ../games/tumiki-fighters { }; + tuxpaint = callPackage ../games/tuxpaint { }; tuxtype = callPackage ../games/tuxtype { };