summaryrefslogtreecommitdiffstats
path: root/pkgs/games/tdm/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games/tdm/default.nix')
-rw-r--r--pkgs/games/tdm/default.nix105
1 files changed, 0 insertions, 105 deletions
diff --git a/pkgs/games/tdm/default.nix b/pkgs/games/tdm/default.nix
deleted file mode 100644
index 98b7ecdc4778..000000000000
--- a/pkgs/games/tdm/default.nix
+++ /dev/null
@@ -1,105 +0,0 @@
-{ stdenv, fetchurl, binutils-unwrapped, sconsPackages, gnum4, p7zip, glibc_multi, mesa
-, xorg, libGLU, libGL, openal
-, lib, makeWrapper, makeDesktopItem }:
-
-let
- pname = "tdm";
- version = "2.08";
-
- desktop = makeDesktopItem {
- desktopName = pname;
- name = pname;
- exec = "@out@/bin/${pname}";
- icon = pname;
- terminal = "false";
- comment = "The Dark Mod - stealth FPS inspired by the Thief series";
- type = "Application";
- categories = "Game;";
- genericName = pname;
- fileValidation = false;
- };
-in stdenv.mkDerivation {
- name = "${pname}-${version}";
- src = fetchurl {
- url = "https://www.thedarkmod.com/sources/thedarkmod.${version}.src.7z";
- sha256 = "0bmv07j6s6q3m7hnpx7cwrycjkbvlf0y9sg9migakni0jg9yz5ps";
- };
- nativeBuildInputs = [
- p7zip sconsPackages.scons_3_1_2 gnum4 makeWrapper
- ];
- buildInputs = [
- glibc_multi mesa.dev xorg.libX11.dev openal
- xorg.libXext.dev xorg.libXxf86vm.dev
- libGL libGLU
- ];
- unpackPhase = ''
- 7z x $src
- '';
-
- # I'm pretty sure there's a better way to build 2 targets than a random hook
- preBuild = ''
- pushd tdm_update
- scons BUILD=release TARGET_ARCH=x64
- install -Dm755 bin/tdm_update.linux64 $out/share/libexec/tdm_update.linux
- popd
- '';
-
- # why oh why can it find ld but not strip?
- postPatch = ''
- sed -i 's!strip \$!${binutils-unwrapped}/bin/strip $!' SConstruct
- # This adds math.h needed for math::floor
- sed -i 's|#include "Util.h"|#include "Util.h"\n#include <math.h>|' tdm_update/ConsoleUpdater.cpp
- '';
-
- installPhase = ''
- runHook preInstall
-
- install -Dm644 ${desktop}/share/applications/${pname}.desktop $out/share/applications/${pname}.desktop
- substituteInPlace $out/share/applications/${pname}.desktop --subst-var out
- install -Dm755 thedarkmod.x64 $out/share/libexec/tdm
-
- # The package doesn't install assets, these get installed by running tdm_update.linux
- # Provide a script that runs tdm_update.linux on first launch
- install -Dm755 <(cat <<'EOF'
-#!/bin/sh
-set -e
-DIR="$HOME/.local/share/tdm"
-mkdir -p "$DIR"
-cd "$DIR"
-exec "PKGDIR/share/libexec/tdm_update.linux" --noselfupdate
-EOF
- ) $out/bin/tdm_update
-
- install -Dm755 <(cat <<'EOF'
-#!/bin/sh
-set -e
-DIR="$HOME/.local/share/tdm"
-if [ ! -d "$DIR" ]; then
- echo "Please run tdm_update to (re)download game data"
-else
- cd "$DIR"
- exec "PKGDIR/share/libexec/tdm"
-fi
-EOF
- ) $out/bin/tdm
- sed -i "s!PKGDIR!$out!g" $out/bin/tdm_update
- sed -i "s!PKGDIR!$out!g" $out/bin/tdm
-
- runHook postInstall
- '';
-
- postInstall = ''
- wrapProgram $out/bin/tdm --suffix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libGL libGLU ]}
- '';
-
- enableParallelBuilding = true;
- sconsFlags = [ "BUILD=release" "TARGET_ARCH=x64" ];
- NIX_CFLAGS_COMPILE = "-Wno-error=format-security";
- meta = with stdenv.lib; {
- description = "The Dark Mod - stealth FPS inspired by the Thief series";
- homepage = "http://www.thedarkmod.com";
- license = licenses.gpl3;
- maintainers = with maintainers; [ cizra ];
- platforms = with platforms; [ "x86_64-linux" ]; # tdm also supports x86, but I don't have a x86 install at hand to test.
- };
-}