diff options
author | Azat Bahawi <azat@bahawi.net> | 2022-09-01 13:50:02 +0300 |
---|---|---|
committer | Azat Bahawi <azat@bahawi.net> | 2022-09-01 13:51:38 +0300 |
commit | 660984e32348147724e44f025cfa8839c568e2f8 (patch) | |
tree | 1e330f6e492e000f79fb607c677829acd732f7de /pkgs/games/exult | |
parent | 37d145eafc8023e0b46c94a50fa3f5a9f2ec4b48 (diff) |
exult: 1.6 -> 1.8
Fixes: #189172
Diffstat (limited to 'pkgs/games/exult')
-rw-r--r-- | pkgs/games/exult/default.nix | 93 |
1 files changed, 54 insertions, 39 deletions
diff --git a/pkgs/games/exult/default.nix b/pkgs/games/exult/default.nix index fe401a627b5b..eddb96f301da 100644 --- a/pkgs/games/exult/default.nix +++ b/pkgs/games/exult/default.nix @@ -1,47 +1,62 @@ -{ lib, stdenv, fetchurl, pkg-config, SDL2, libogg, libvorbis, zlib, unzip }: - -let - - # Digital recordings of the music on an original Roland MT-32. So - # we don't need actual MIDI playback capability. - audio = fetchurl { - url = "mirror://sourceforge/exult/exult_audio.zip"; - sha256 = "0s5wvgy9qja06v38g0qwzpaw76ff96vzd6gb1i3lb9k4hvx0xqbj"; - }; - -in +{ lib +, stdenv +, fetchFromGitHub +, SDL2 +, autoconf +, automake +, libogg +, libtool +, libvorbis +, pkg-config +, zlib +, enableTools ? false +}: stdenv.mkDerivation rec { pname = "exult"; - version = "1.6"; + version = "1.8"; - src = fetchurl { - url = "mirror://sourceforge/exult/exult-${version}.tar.gz"; - sha256 = "1dm27qkxj30567zb70q4acddsizn0xyi3z87hg7lysxdkyv49s3s"; + src = fetchFromGitHub { + owner = "exult"; + repo = "exult"; + rev = "v${version}"; + hash = "sha256-Y7FpgiGuqR4ZG/PNSfLcNcRWeeC7GebUTighXsCfy+E="; }; - configureFlags = [ "--disable-tools" ]; - - nativeBuildInputs = [ pkg-config unzip ]; - buildInputs = [ SDL2 libogg libvorbis zlib ]; - - enableParallelBuilding = true; - - NIX_LDFLAGS = "-lX11"; - - postInstall = - '' - mkdir -p $out/share/exult/music - unzip -o -d $out/share/exult ${audio} - chmod 644 $out/share/exult/*.flx - ''; # */ - - meta = { - homepage = "http://exult.sourceforge.net/"; - description = "A reimplementation of the Ultima VII game engine"; - maintainers = [ lib.maintainers.eelco ]; - platforms = lib.platforms.unix; - hydraPlatforms = lib.platforms.linux; # darwin times out - license = lib.licenses.gpl2Plus; + nativeBuildInputs = [ + autoconf + automake + libtool + pkg-config + ]; + + buildInputs = [ + SDL2 + libogg + libvorbis + zlib + ]; + + preConfigure = '' + ./autogen.sh + ''; + + configureFlags = lib.optional (!enableTools) "--disable-tools"; + + meta = with lib; { + description = "Exult is a project to recreate Ultima VII for modern operating systems"; + longDescription = '' + Ultima VII, an RPG from the early 1990's, still has a huge following. But, + being a DOS game with a very nonstandard memory manager, it is difficult + to run it on the latest computers. Exult is a project that created an + Ultima VII game engine that runs on modern operating systems, capable of + using the data and graphics files that come with the game. Exult aims to + let those people who own Ultima VII play the game on modern hardware, in + as close to (or perhaps even surpassing) its original splendor as is + possible. + ''; + homepage = "http://exult.info"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ azahi eelco ]; }; } |