nixpkgs/pkgs/games/fteqw/default.nix

90 lines
1.5 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, gzip
, libvorbis
, libmad
, SDL2
, SDL2_mixer
, libpng
, alsa-lib
, gnutls
, zlib
, libjpeg
, vulkan-loader
, vulkan-headers
, speex
, libopus
, xorg
, libGL
}@attrs:
{
fteqw = import ./generic.nix (rec {
pname = "fteqw";
buildFlags = [ "m-rel" ];
nativeBuildInputs = [
vulkan-headers
];
buildInputs = [
gzip
libvorbis
libmad
SDL2
SDL2_mixer
libpng
alsa-lib
gnutls
libjpeg
vulkan-loader
speex
libopus
xorg.libXrandr
xorg.libXcursor
];
postFixup = ''
patchelf $out/bin/${pname} \
--add-needed ${SDL2}/lib/libSDL2.so \
--add-needed ${libGL}/lib/libGLX.so \
--add-needed ${libGL}/lib/libGL.so \
--add-needed ${lib.getLib gnutls}/lib/libgnutls.so \
--add-needed ${vulkan-loader}/lib/libvulkan.so
'';
description = "A hybrid and versatile game engine";
} // attrs);
fteqw-dedicated = import ./generic.nix (rec {
pname = "fteqw-dedicated";
releaseFile = "fteqw-sv";
buildFlags = [ "sv-rel" ];
buildInputs = [
gnutls
zlib
];
postFixup = ''
patchelf $out/bin/${pname} \
--add-needed ${gnutls}/lib/libgnutls.so \
'';
description = "Dedicated server for FTEQW";
} // attrs);
fteqcc = import ./generic.nix ({
pname = "fteqcc";
buildFlags = [ "qcc-rel" ];
buildInputs = [
zlib
];
description = "User friendly QuakeC compiler";
} // attrs);
}