Merge pull request #169120 from aciceri/master

umoria: init at 5.7.15

authored by Anderson Torres and committed by GitHub 9877c297 fe1afe8d

+82
+80
pkgs/games/umoria/default.nix
···
··· 1 + { lib 2 + , gcc9Stdenv 3 + , fetchFromGitHub 4 + , autoreconfHook 5 + , cmake 6 + , ncurses6 7 + , runtimeShell 8 + }: 9 + 10 + let 11 + savesDir = "~/.umoria/"; 12 + in 13 + gcc9Stdenv.mkDerivation rec { 14 + pname = "umoria"; 15 + version = "5.7.15"; 16 + 17 + src = fetchFromGitHub { 18 + owner = "dungeons-of-moria"; 19 + repo = "umoria"; 20 + rev = "v${version}"; 21 + sha256 = "sha256-1j4QkE33UcTzM06qAjk1/PyK5uNA7E/kyDe3bZcFKUM="; 22 + }; 23 + 24 + nativeBuildInputs = [ cmake ]; 25 + buildInputs = [ ncurses6 ]; 26 + enableParallelBuilding = true; 27 + 28 + installPhase = '' 29 + runHook preInstall 30 + 31 + mkdir -p $out/data $out/bin 32 + cp -r umoria/data/* $out/data 33 + cp umoria/umoria $out/.umoria-unwrapped 34 + 35 + mkdir -p $out/bin 36 + cat <<EOF >$out/bin/umoria 37 + #! ${runtimeShell} -e 38 + 39 + RUNDIR=\$(mktemp -d) 40 + 41 + cleanup() { 42 + rm -rf \$RUNDIR 43 + } 44 + 45 + trap cleanup EXIT 46 + 47 + cd \$RUNDIR 48 + mkdir data 49 + 50 + for i in $out/data/*; do 51 + ln -s \$i "data/\$(basename \$i)" 52 + done 53 + 54 + mkdir -p ${savesDir} 55 + [[ ! -f ${savesDir}/scores.dat ]] && touch ${savesDir}/scores.dat 56 + ln -s ${savesDir}/scores.dat scores.dat 57 + 58 + $out/.umoria-unwrapped 59 + EOF 60 + 61 + chmod +x $out/bin/umoria 62 + 63 + runHook postInstall 64 + ''; 65 + 66 + meta = with lib; { 67 + homepage = "https://umoria.org/"; 68 + description = "The Dungeons of Moria - the original roguelike"; 69 + longDescription = '' 70 + The Dungeons of Moria is a single player dungeon simulation originally written 71 + by Robert Alan Koeneke, with its first public release in 1983. 72 + The game was originally developed using VMS Pascal before being ported to the C 73 + language by James E. Wilson in 1988, and released a Umoria. 74 + ''; 75 + platforms = platforms.unix; 76 + badPlatforms = [ "aarch64-darwin" ]; 77 + maintainers = [ maintainers.aciceri ]; 78 + license = licenses.gpl3Plus; 79 + }; 80 + }
+2
pkgs/top-level/all-packages.nix
··· 32505 32506 ultrastardx = callPackage ../games/ultrastardx { }; 32507 32508 unciv = callPackage ../games/unciv { }; 32509 32510 unnethack = callPackage ../games/unnethack { };
··· 32505 32506 ultrastardx = callPackage ../games/ultrastardx { }; 32507 32508 + umoria = callPackage ../games/umoria { }; 32509 + 32510 unciv = callPackage ../games/unciv { }; 32511 32512 unnethack = callPackage ../games/unnethack { };