2021-08-05 22:04:17 +00:00
|
|
|
{ lib, stdenv, SDL, fetchurl, gzip, libvorbis, libmad, copyDesktopItems, makeDesktopItem }:
|
2021-06-29 23:01:13 +00:00
|
|
|
|
2017-04-23 20:22:44 +00:00
|
|
|
stdenv.mkDerivation rec {
|
2019-08-15 12:41:18 +00:00
|
|
|
pname = "quakespasm";
|
2018-08-07 05:01:07 +00:00
|
|
|
majorVersion = "0.93";
|
2021-06-29 23:01:13 +00:00
|
|
|
version = "${majorVersion}.2";
|
2017-04-23 20:22:44 +00:00
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
url = "mirror://sourceforge/quakespasm/quakespasm-${version}.tgz";
|
2021-06-29 23:01:13 +00:00
|
|
|
sha256 = "0qm0j5drybvvq8xadfyppkpk3rxqsxbywzm6iwsjwdf0iia3gss5";
|
2017-04-23 20:22:44 +00:00
|
|
|
};
|
|
|
|
|
2019-08-15 12:41:18 +00:00
|
|
|
sourceRoot = "${pname}-${version}/Quake";
|
2018-04-14 20:51:41 +00:00
|
|
|
|
2021-08-05 22:04:17 +00:00
|
|
|
nativeBuildInputs = [ copyDesktopItems ];
|
2017-04-23 20:22:44 +00:00
|
|
|
buildInputs = [
|
|
|
|
gzip SDL libvorbis libmad
|
|
|
|
];
|
|
|
|
|
2018-04-14 20:51:41 +00:00
|
|
|
buildFlags = [ "DO_USERDIRS=1" ];
|
|
|
|
|
2017-04-23 20:22:44 +00:00
|
|
|
preInstall = ''
|
|
|
|
mkdir -p "$out/bin"
|
|
|
|
substituteInPlace Makefile --replace "/usr/local/games" "$out/bin"
|
|
|
|
'';
|
2017-04-23 20:24:15 +00:00
|
|
|
|
2017-04-23 20:22:44 +00:00
|
|
|
enableParallelBuilding = true;
|
2018-04-14 20:51:41 +00:00
|
|
|
|
2021-08-05 22:04:17 +00:00
|
|
|
desktopItems = [
|
|
|
|
(makeDesktopItem {
|
|
|
|
name = "quakespasm";
|
|
|
|
exec = "quake";
|
|
|
|
desktopName = "Quakespasm";
|
|
|
|
categories = "Game;";
|
|
|
|
})
|
|
|
|
];
|
|
|
|
|
2021-06-29 23:01:13 +00:00
|
|
|
meta = with lib; {
|
2017-04-23 20:22:44 +00:00
|
|
|
description = "An engine for iD software's Quake";
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "http://quakespasm.sourceforge.net/";
|
2017-04-23 20:22:44 +00:00
|
|
|
longDescription = ''
|
|
|
|
QuakeSpasm is a modern, cross-platform Quake 1 engine based on FitzQuake.
|
2018-04-14 20:51:41 +00:00
|
|
|
It includes support for 64 bit CPUs and custom music playback, a new sound driver,
|
2017-04-23 20:22:44 +00:00
|
|
|
some graphical niceities, and numerous bug-fixes and other improvements.
|
2018-04-14 20:51:41 +00:00
|
|
|
Quakespasm utilizes either the SDL or SDL2 frameworks, so choose which one
|
|
|
|
works best for you. SDL is probably less buggy, but SDL2 has nicer features
|
2017-04-23 20:22:44 +00:00
|
|
|
and smoother mouse input - though no CD support.
|
|
|
|
'';
|
2018-04-14 20:51:41 +00:00
|
|
|
|
2021-06-29 23:01:13 +00:00
|
|
|
platforms = platforms.linux;
|
|
|
|
maintainers = with maintainers; [ m3tti ];
|
2017-04-23 20:22:44 +00:00
|
|
|
};
|
|
|
|
}
|