tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
ironwail: init at 0.7.0
necrophcodr
2 years ago
d6843dc8
f5f4bba4
+93
2 changed files
expand all
collapse all
unified
split
pkgs
games
ironwail
default.nix
top-level
all-packages.nix
+91
pkgs/games/ironwail/default.nix
···
1
1
+
{ lib
2
2
+
, stdenv
3
3
+
, SDL2
4
4
+
, fetchurl
5
5
+
, gzip
6
6
+
, libvorbis
7
7
+
, libmad
8
8
+
, flac
9
9
+
, libopus
10
10
+
, opusfile
11
11
+
, libogg
12
12
+
, curl
13
13
+
, libxmp
14
14
+
, vulkan-headers
15
15
+
, vulkan-loader
16
16
+
, copyDesktopItems
17
17
+
, makeDesktopItem
18
18
+
, pkg-config
19
19
+
}:
20
20
+
21
21
+
stdenv.mkDerivation (finalAttrs: {
22
22
+
pname = "ironwail";
23
23
+
version = "0.7.0";
24
24
+
25
25
+
src = fetchurl {
26
26
+
url = "https://github.com/andrei-drexler/ironwail/archive/refs/tags/v${finalAttrs.version}.tar.gz";
27
27
+
hash = "sha256-NBG0wwQWqyGWQYJmiLKfxGxpDJLw7Kwf4EnYd33dOpU=";
28
28
+
};
29
29
+
30
30
+
sourceRoot = "${finalAttrs.pname}-${finalAttrs.version}/Quake";
31
31
+
32
32
+
nativeBuildInputs = [
33
33
+
copyDesktopItems pkg-config vulkan-headers
34
34
+
gzip libvorbis libmad flac curl libopus
35
35
+
opusfile libogg libxmp vulkan-loader SDL2
36
36
+
];
37
37
+
38
38
+
buildFlags = [
39
39
+
"DO_USERDIRS=1"
40
40
+
# Makefile defaults, set here to enforce consistency on Darwin build
41
41
+
"USE_CODEC_WAVE=1"
42
42
+
"USE_CODEC_MP3=1"
43
43
+
"USE_CODEC_VORBIS=1"
44
44
+
"USE_CODEC_FLAC=1"
45
45
+
"USE_CODEC_OPUS=1"
46
46
+
"USE_CODEC_MIKMOD=0"
47
47
+
"USE_CODEC_UMX=0"
48
48
+
"USE_CODEC_XMP=1"
49
49
+
"MP3LIB=mad"
50
50
+
"VORBISLIB=vorbis"
51
51
+
"SDL_CONFIG=sdl2-config"
52
52
+
"USE_SDL2=1"
53
53
+
];
54
54
+
55
55
+
preInstall = ''
56
56
+
mkdir -p "$out/bin"
57
57
+
mkdir -p "$out/share/quake"
58
58
+
substituteInPlace Makefile --replace "cp ironwail.pak /usr/local/games/quake" "cp ironwail.pak $out/share/quake/ironwail.pak"
59
59
+
substituteInPlace Makefile --replace "/usr/local/games" "$out/bin"
60
60
+
'';
61
61
+
62
62
+
enableParallelBuilding = true;
63
63
+
64
64
+
desktopItems = [
65
65
+
(makeDesktopItem {
66
66
+
name = "ironwail";
67
67
+
exec = "quake";
68
68
+
desktopName = "Ironwail";
69
69
+
categories = [ "Game" ];
70
70
+
})
71
71
+
];
72
72
+
73
73
+
meta = {
74
74
+
description = "A fork of the QuakeSpasm engine for iD software's Quake";
75
75
+
homepage = "https://github.com/andrei-drexler/ironwail";
76
76
+
longDescription = ''
77
77
+
Ironwail is a fork of QuakeSpasm with focus on high performance instead of
78
78
+
compatibility.
79
79
+
It features the ability to play the 2021 re-release content with no setup
80
80
+
required, a mods menu for quick access to installation of mods, and ease of
81
81
+
switching to installed mods.
82
82
+
It also include various visual features as well as improved limits for playing
83
83
+
larger levels with less performance impacts.
84
84
+
'';
85
85
+
86
86
+
license = lib.licenses.gpl2Plus;
87
87
+
platforms = lib.platforms.linux;
88
88
+
maintainers = [ lib.maintainers.necrophcodr ];
89
89
+
mainProgram = "quake";
90
90
+
};
91
91
+
})
+2
pkgs/top-level/all-packages.nix
···
36795
36795
# used as base package for iortcw forks
36796
36796
iortcw_sp = callPackage ../games/iortcw/sp.nix { };
36797
36797
36798
36798
+
ironwail = callPackage ../games/ironwail { };
36799
36799
+
36798
36800
ivan = callPackage ../games/ivan { };
36799
36801
36800
36802
ja2-stracciatella = callPackage ../games/ja2-stracciatella {