Change:
<!-- Note that these are hard requirements --<!-- You can use the "Go to file" functionality on GitHub to find the package Then you can go to the history for this package Find the latest "packagename: oldversion -newversion" commit The "newversion" is the current version of the package --- <!-- Type the name of your package and try to find an open pull request for the package If you find an open pull request, you can review it! There's a high chance that you'll have the new version right away while helping the community! --- name: current version: 2020-04-04 (nixos-21.11 and master) desired version: 2022-04-01-dev lists the last release as 2021-10-14 and a tag changes, not necessarily implying stable/release. <!-- Search your package here: If no maintainer is listed for your package, tag the person that last updated the package --maintainers: In addition to the out of date version in nixpkgs there are the following problems: As of (2020-12-26) this game failed to start graphically, falling back to a console mode/dedicated server mode? The executables are named and . These need to be linked/wrapped in and perhaps have the architecture suffix removed? (This might be the convention of Quake3e's build system, but perhaps the user doesn't care to be reminded of their system's architecture when they start a game.)

Discussion:
<del> { lib, stdenv, curl, libGL, libX11, libXxf86dga, alsa-lib, libXrandr, libXxf86vm, libXext, fetchFromGitHub }: </del> <ins> { lib, stdenv, fetchFromGitHub, makeWrapper , curl, libGL, libX11, libXxf86dga, alsa-lib, libXrandr, libXxf86vm, libXext, SDL2, glibc }: </ins> stdenv.mkDerivation rec { pname = "Quake3e"; <del> version = "2020-04-04"; </del> <ins> version = "2022-04-01-dev"; </ins> src = fetchFromGitHub { owner = "ec-"; repo = pname; <del> rev = version; sha256 = "1jvk8qd0mi0x8lslknhkfd8h6ridwca34c6qahsbmmpcgsvdv16s"; </del> <ins> rev = "c6cec00b858aa5955eb1d6eb65b9bfd41fd869cb"; sha256 = "0qd13fndbhgkkmhxbprpzmj2l2v9ihacxagpdqi9sg9nrzvahr9h"; </ins> }; <del> buildInputs = [ curl libGL libX11 libXxf86dga alsa-lib libXrandr libXxf86vm libXext ]; </del> <ins> nativeBuildInputs = [ makeWrapper ]; buildInputs = [ curl libGL libX11 libXxf86dga alsa-lib libXrandr libXxf86vm libXext SDL2 glibc ]; NIX_CFLAGS_COMPILE = "-I${SDL2.dev}/include/SDL2"; </ins> enableParallelBuilding = true; postPatch = '' sed -i -e 's#OpenGLLib = dlopen( dllname#OpenGLLib = dlopen( "${libGL}/lib/libGL.so"#' code/unix/linux_qgl.c <ins> sed -i -e 's#Sys_LoadLibrary( "libpthread.so.0" )#Sys_LoadLibrary( "${glibc}/lib/libpthread.so.0" )#' code/unix/linux_snd.c </ins> sed -i -e 's#Sys_LoadLibrary( "libasound.so.2" )#Sys_LoadLibrary( "${alsa-lib}/lib/libasound.so.2" )#' code/unix/linux_snd.c <ins> sed -i -e 's#Sys_LoadLibrary( "libXxf86dga.so.1" )#Sys_LoadLibrary( "${libXxf86dga}/lib/libXxf86dga.so.1" )#' code/unix/x11_dga.c </ins> sed -i -e 's#Sys_LoadLibrary( "libXrandr.so.2" )#Sys_LoadLibrary( "${libXrandr}/lib/libXrandr.so.2" )#' code/unix/x11_randr.c sed -i -e 's#Sys_LoadLibrary( "libXxf86vm.so.1" )#Sys_LoadLibrary( "${libXxf86vm}/lib/libXxf86vm.so.1" )#' code/unix/x11_randr.c <del> sed -i -e 's#Sys_LoadLibrary( "libXxf86dga.so.1" )#Sys_LoadLibrary( "${libXxf86dga}/lib/libXxf86dga.so.1" )#' code/unix/x11_dga.c </del> <ins> sed -i -e 's#Sys_LoadLibrary( "libXxf86vm.so.1" )#Sys_LoadLibrary( "${libXxf86vm}/lib/libXxf86vm.so.1" )#' code/unix/x11_vidmode.c </ins> sed -i -e 's#"libcurl.so.4"#"${curl.out}/lib/libcurl.so.4"#' code/client/cl_curl.h ''; <ins> # Default value for `USE_SDL` changed (from 0 to 1) in 5f8ce6d (2020-12-26) # Setting `USE_SDL=0` in `makeFlags` doesn't work preConfigure = '' sed -i 's/USE_SDL *= 1/USE_SDL = 0/' Makefile ''; </ins> installPhase = '' <del> mkdir -p $out/bin cp build/*/*x64 $out/bin </del> <ins> make install DESTDIR=$out/lib makeWrapper $out/lib/quake3e.x64 $out/bin/quake3e makeWrapper $out/lib/quake3e.ded.x64 $out/bin/quake3e.ded </ins> ''; meta = with lib; {