diff options
author | Alyssa Ross <hi@alyssa.is> | 2019-01-07 02:18:36 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2019-01-07 02:18:47 +0000 |
commit | 36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2 (patch) | |
tree | b3faaf573407b32aa645237a4d16b82778a39a92 /nixpkgs/pkgs/games/xonotic | |
parent | 4e31070265257dc67d120c27e0f75c2344fdfa9a (diff) | |
parent | abf060725d7614bd3b9f96764262dfbc2f9c2199 (diff) | |
download | nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.gz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.bz2 nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.lz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.xz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.zst nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.zip |
Add 'nixpkgs/' from commit 'abf060725d7614bd3b9f96764262dfbc2f9c2199'
git-subtree-dir: nixpkgs git-subtree-mainline: 4e31070265257dc67d120c27e0f75c2344fdfa9a git-subtree-split: abf060725d7614bd3b9f96764262dfbc2f9c2199
Diffstat (limited to 'nixpkgs/pkgs/games/xonotic')
-rw-r--r-- | nixpkgs/pkgs/games/xonotic/default.nix | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/games/xonotic/default.nix b/nixpkgs/pkgs/games/xonotic/default.nix new file mode 100644 index 000000000000..ac7bf7973d77 --- /dev/null +++ b/nixpkgs/pkgs/games/xonotic/default.nix @@ -0,0 +1,88 @@ +{ stdenv, fetchurl +, # required for both + unzip, libjpeg, zlib, libvorbis, curl +, # glx + libX11, libGLU_combined, libXpm, libXext, libXxf86vm, alsaLib +, # sdl + SDL2 +}: + +stdenv.mkDerivation rec { + name = "xonotic-0.8.2"; + + src = fetchurl { + url = "https://dl.xonotic.org/${name}.zip"; + sha256 = "1mcs6l4clvn7ibfq3q69k2p0z6ww75rxvnngamdq5ic6yhq74bx2"; + }; + + buildInputs = [ + # required for both + unzip libjpeg + # glx + libX11 libGLU_combined libXpm libXext libXxf86vm alsaLib + # sdl + SDL2 + zlib libvorbis curl + ]; + + sourceRoot = "Xonotic/source/darkplaces"; + + # "debug", "release", "profile" + target = "release"; + + dontStrip = target != "release"; + + buildPhase = '' + DP_FS_BASEDIR="$out/share/xonotic" + make DP_FS_BASEDIR=$DP_FS_BASEDIR cl-${target} + make DP_FS_BASEDIR=$DP_FS_BASEDIR sdl-${target} + make DP_FS_BASEDIR=$DP_FS_BASEDIR sv-${target} + ''; + enableParallelBuilding = true; + + installPhase = '' + mkdir -p "$out/bin" + cp darkplaces-dedicated "$out/bin/xonotic-dedicated" + cp darkplaces-sdl "$out/bin/xonotic-sdl" + cp darkplaces-glx "$out/bin/xonotic-glx" + cd ../.. + mkdir -p "$out/share/xonotic" + mv data "$out/share/xonotic" + + # default to sdl + ln -s "$out/bin/xonotic-sdl" "$out/bin/xonotic" + ''; + + # Xonotic needs to find libcurl.so at runtime for map downloads + dontPatchELF = true; + postFixup = '' + patchelf --add-needed ${curl.out}/lib/libcurl.so $out/bin/xonotic-dedicated + patchelf \ + --add-needed ${curl.out}/lib/libcurl.so \ + --add-needed ${libvorbis}/lib/libvorbisfile.so \ + --add-needed ${libvorbis}/lib/libvorbis.so \ + $out/bin/xonotic-glx + patchelf \ + --add-needed ${curl.out}/lib/libcurl.so \ + --add-needed ${libvorbis}/lib/libvorbisfile.so \ + --add-needed ${libvorbis}/lib/libvorbis.so \ + $out/bin/xonotic-sdl + ''; + + meta = { + description = "A free fast-paced first-person shooter"; + longDescription = '' + Xonotic is a free, fast-paced first-person shooter that works on + Windows, macOS and Linux. The project is geared towards providing + addictive arena shooter gameplay which is all spawned and driven + by the community itself. Xonotic is a direct successor of the + Nexuiz project with years of development between them, and it + aims to become the best possible open-source FPS of its kind. + ''; + homepage = http://www.xonotic.org; + license = stdenv.lib.licenses.gpl2Plus; + maintainers = with stdenv.lib.maintainers; [ astsmtl zalakain ]; + platforms = stdenv.lib.platforms.linux; + hydraPlatforms = []; + }; +} |