nethack: nethack-x11 package created
If x11Mode is false, ncurses NetHack version will be built (nethack). If x11Mode is true, x11 NetHack version will be built (nethack-x11). NetHack DevTeam provide x11 version support only for Linux.
This commit is contained in:
parent
b00d53fcfe
commit
1627b6fc09
@ -1,11 +1,14 @@
|
|||||||
{ stdenv, lib, fetchurl, writeScript, coreutils, ncurses, gzip, flex, bison, less }:
|
{ stdenv, lib, fetchurl, writeScript, coreutils, ncurses, gzip, flex, bison, less
|
||||||
|
, x11Mode ? false, libXaw, libXext, mkfontdir
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
platform =
|
platform =
|
||||||
if stdenv.hostPlatform.isUnix then "unix"
|
if stdenv.hostPlatform.isUnix then "unix"
|
||||||
else throw "Unknown platform for NetHack: ${stdenv.system}";
|
else throw "Unknown platform for NetHack: ${stdenv.system}";
|
||||||
unixHint =
|
unixHint =
|
||||||
/**/ if stdenv.hostPlatform.isLinux then "linux"
|
if x11Mode then "linux-x11"
|
||||||
|
else if stdenv.hostPlatform.isLinux then "linux"
|
||||||
else if stdenv.hostPlatform.isDarwin then "macosx10.10"
|
else if stdenv.hostPlatform.isDarwin then "macosx10.10"
|
||||||
# We probably want something different for Darwin
|
# We probably want something different for Darwin
|
||||||
else "unix";
|
else "unix";
|
||||||
@ -13,16 +16,16 @@ let
|
|||||||
binPath = lib.makeBinPath [ coreutils less ];
|
binPath = lib.makeBinPath [ coreutils less ];
|
||||||
|
|
||||||
in stdenv.mkDerivation {
|
in stdenv.mkDerivation {
|
||||||
name = "nethack-3.6.1";
|
name = "nethack${lib.optionalString x11Mode "-x11"}-3.6.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://nethack.org/download/3.6.1/nethack-361-src.tgz";
|
url = "https://nethack.org/download/3.6.1/nethack-361-src.tgz";
|
||||||
sha256 = "1dha0ijvxhx7c9hr0452h93x81iiqsll8bc9msdnp7xdqcfbz32b";
|
sha256 = "1dha0ijvxhx7c9hr0452h93x81iiqsll8bc9msdnp7xdqcfbz32b";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ ncurses ];
|
buildInputs = [ ncurses ] ++ lib.optionals x11Mode [ libXaw libXext ];
|
||||||
|
|
||||||
nativeBuildInputs = [ flex bison ];
|
nativeBuildInputs = [ flex bison ] ++ lib.optionals x11Mode [ mkfontdir ];
|
||||||
|
|
||||||
makeFlags = [ "PREFIX=$(out)" ];
|
makeFlags = [ "PREFIX=$(out)" ];
|
||||||
|
|
||||||
@ -86,13 +89,14 @@ in stdenv.mkDerivation {
|
|||||||
$out/games/nethack
|
$out/games/nethack
|
||||||
EOF
|
EOF
|
||||||
chmod +x $out/bin/nethack
|
chmod +x $out/bin/nethack
|
||||||
|
${lib.optionalString x11Mode "mv $out/bin/nethack $out/bin/nethack-x11"}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Rogue-like game";
|
description = "Rogue-like game";
|
||||||
homepage = http://nethack.org/;
|
homepage = http://nethack.org/;
|
||||||
license = "nethack";
|
license = "nethack";
|
||||||
platforms = platforms.unix;
|
platforms = if x11Mode then platforms.linux else platforms.unix;
|
||||||
maintainers = with maintainers; [ abbradar ];
|
maintainers = with maintainers; [ abbradar ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -19568,6 +19568,8 @@ with pkgs;
|
|||||||
|
|
||||||
nethack = callPackage ../games/nethack { };
|
nethack = callPackage ../games/nethack { };
|
||||||
|
|
||||||
|
nethack-x11 = callPackage ../games/nethack { x11Mode = true; };
|
||||||
|
|
||||||
neverball = callPackage ../games/neverball { };
|
neverball = callPackage ../games/neverball { };
|
||||||
|
|
||||||
nexuiz = callPackage ../games/nexuiz { };
|
nexuiz = callPackage ../games/nexuiz { };
|
||||||
|
Loading…
Reference in New Issue
Block a user