diff --git a/pkgs/by-name/al/alephone/package.nix b/pkgs/by-name/al/alephone/package.nix index 1bf732e446bf..44349b7621e5 100644 --- a/pkgs/by-name/al/alephone/package.nix +++ b/pkgs/by-name/al/alephone/package.nix @@ -1,72 +1,104 @@ -{ lib, stdenv, fetchurl, alsa-lib, boost, curl, ffmpeg_4, icoutils, libGLU -, libmad, libogg, libpng, libsndfile, libvorbis, lua, miniupnpc, pkg-config -, SDL2, SDL2_image, SDL2_net, SDL2_ttf, speex, zziplib, zlib, makeWrapper -, makeDesktopItem, unzip, alephone }: +{ lib +, stdenv +, fetchurl +, alsa-lib +, boost +, curl +, ffmpeg_4 +, icoutils +, libGLU +, libmad +, libogg +, libpng +, libsndfile +, libvorbis +, lua +, makeDesktopItem +, makeWrapper +, miniupnpc +, openal +, pkg-config +, SDL2 +, SDL2_image +, SDL2_net +, SDL2_ttf +, speex +, unzip +, zlib +, zziplib +, alephone +}: -let - self = stdenv.mkDerivation rec { - outputs = [ "out" "icons" ]; - pname = "alephone"; - version = "1.6.2"; +stdenv.mkDerivation (finalAttrs: { + outputs = [ "out" "icons" ]; + pname = "alephone"; + version = "1.7"; - src = fetchurl { - url = let date = "20230529"; + src = fetchurl { + url = + let date = "20231125"; in "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${date}/AlephOne-${date}.tar.bz2"; - sha256 = "sha256-UqhZvOMOxU4W0eLRRTQvGXaqTpWD5KIdXULClHW7Iyc="; - }; - - nativeBuildInputs = [ pkg-config icoutils ]; - - buildInputs = [ - alsa-lib - boost - curl - ffmpeg_4 - libGLU - libmad - libsndfile - libogg - libpng - libvorbis - lua - miniupnpc - SDL2 - SDL2_image - SDL2_net - SDL2_ttf - speex - zziplib - zlib - ]; - - configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]; - makeFlags = [ "AR:=$(AR)" ]; - - enableParallelBuilding = true; - - postInstall = '' - mkdir $icons - icotool -x -i 5 -o $icons Resources/Windows/*.ico - pushd $icons - for x in *_5_48x48x32.png; do - mv $x ''${x%_5_48x48x32.png}.png - done - popd - ''; - - meta = with lib; { - description = - "Aleph One is the open source continuation of Bungie’s Marathon 2 game engine"; - homepage = "https://alephone.lhowon.org/"; - license = with licenses; [ gpl3 ]; - maintainers = with maintainers; [ ehmry ]; - platforms = platforms.linux; - }; + sha256 = "sha256-qRHmtkzPi6PKeAzoMPdSbboiilG+L2fCXvXXu3vIchs="; }; -in self // { - makeWrapper = { pname, desktopName, version, zip, meta - , icon ? alephone.icons + "/alephone.png", ... }@extraArgs: + nativeBuildInputs = [ pkg-config icoutils ]; + + buildInputs = [ + alsa-lib + boost + curl + ffmpeg_4 + libGLU + libmad + libogg + libpng + libsndfile + libvorbis + lua + miniupnpc + openal + SDL2 + SDL2_image + SDL2_net + SDL2_ttf + speex + zlib + zziplib + ]; + + configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]; + makeFlags = [ "AR:=$(AR)" ]; + + enableParallelBuilding = true; + + postInstall = '' + mkdir $icons + icotool -x -i 5 -o $icons Resources/Windows/*.ico + pushd $icons + for x in *_5_48x48x32.png; do + mv $x ''${x%_5_48x48x32.png}.png + done + popd + ''; + + meta = { + description = + "Aleph One is the open source continuation of Bungie’s Marathon 2 game engine"; + homepage = "https://alephone.lhowon.org/"; + license = [ lib.licenses.gpl3 ]; + maintainers = with lib.maintainers; [ ehmry ]; + platforms = lib.platforms.linux; + }; + + passthru.makeWrapper = + { pname + , desktopName + , version + , zip + , meta + , icon ? alephone.icons + "/alephone.png" + , ... + }@extraArgs: stdenv.mkDerivation ({ inherit pname version; @@ -96,7 +128,8 @@ in self // { } // extraArgs // { meta = alephone.meta // { license = lib.licenses.free; + mainProgram = pname; hydraPlatforms = [ ]; } // meta; }); -} +})