tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
dosbox-x: init at v2023.10.06
Hugh O'Brien
2 years ago
464c8ec9
1f0e8ac1
+105
2 changed files
expand all
collapse all
unified
split
pkgs
applications
emulators
dosbox-x
default.nix
top-level
all-packages.nix
+101
pkgs/applications/emulators/dosbox-x/default.nix
···
1
1
+
{ lib
2
2
+
, stdenv
3
3
+
, fetchFromGitHub
4
4
+
, alsa-lib
5
5
+
, AudioUnit
6
6
+
, autoreconfHook
7
7
+
, Carbon
8
8
+
, Cocoa
9
9
+
, ffmpeg
10
10
+
, fluidsynth
11
11
+
, freetype
12
12
+
, glib
13
13
+
, libpcap
14
14
+
, libpng
15
15
+
, libslirp
16
16
+
, libxkbfile
17
17
+
, libXrandr
18
18
+
, makeWrapper
19
19
+
, ncurses
20
20
+
, pkg-config
21
21
+
, SDL2
22
22
+
, SDL2_net
23
23
+
, testers
24
24
+
, yad
25
25
+
, zlib
26
26
+
}:
27
27
+
28
28
+
stdenv.mkDerivation (finalAttrs: {
29
29
+
pname = "dosbox-x";
30
30
+
version = "2023.10.06";
31
31
+
32
32
+
src = fetchFromGitHub {
33
33
+
owner = "joncampbell123";
34
34
+
repo = "dosbox-x";
35
35
+
rev = "dosbox-x-v${finalAttrs.version}";
36
36
+
hash = "sha256-YNYtYqcpTOx4xS/LXI53h3S+na8JVpn4w8Dhf4fWNBQ=";
37
37
+
};
38
38
+
39
39
+
strictDeps = true;
40
40
+
41
41
+
nativeBuildInputs = [
42
42
+
autoreconfHook
43
43
+
makeWrapper
44
44
+
pkg-config
45
45
+
];
46
46
+
47
47
+
buildInputs = [
48
48
+
ffmpeg
49
49
+
fluidsynth
50
50
+
freetype
51
51
+
glib
52
52
+
libpcap
53
53
+
libpng
54
54
+
libslirp
55
55
+
ncurses
56
56
+
SDL2
57
57
+
SDL2_net
58
58
+
zlib
59
59
+
] ++ lib.optionals stdenv.hostPlatform.isLinux [
60
60
+
alsa-lib
61
61
+
libxkbfile
62
62
+
libXrandr
63
63
+
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
64
64
+
AudioUnit
65
65
+
Carbon
66
66
+
Cocoa
67
67
+
];
68
68
+
69
69
+
configureFlags = [ "--enable-sdl2" ];
70
70
+
71
71
+
enableParallelBuilding = true;
72
72
+
73
73
+
hardeningDisable = [ "format" ]; # https://github.com/joncampbell123/dosbox-x/issues/4436
74
74
+
75
75
+
postInstall = lib.optionalString stdenv.hostPlatform.isLinux ''
76
76
+
wrapProgram $out/bin/dosbox-x \
77
77
+
--prefix PATH : ${lib.makeBinPath [ yad ]}
78
78
+
'';
79
79
+
80
80
+
passthru.tests.version = testers.testVersion {
81
81
+
package = finalAttrs.finalPackage;
82
82
+
# Version output on stderr, program returns status code 1
83
83
+
command = "${lib.getExe finalAttrs.finalPackage} -version 2>&1 || true";
84
84
+
};
85
85
+
86
86
+
meta = {
87
87
+
homepage = "https://dosbox-x.com";
88
88
+
description = "A cross-platform DOS emulator based on the DOSBox project";
89
89
+
longDescription = ''
90
90
+
DOSBox-X is an expanded fork of DOSBox with specific focus on running
91
91
+
Windows 3.x/9x/Me, PC-98 and 3D support via 3dfx.
92
92
+
93
93
+
The full expanded feature list is available here:
94
94
+
https://dosbox-x.com/wiki/DOSBox%E2%80%90X%E2%80%99s-Feature-Highlights
95
95
+
'';
96
96
+
license = lib.licenses.gpl2Plus;
97
97
+
maintainers = with lib.maintainers; [ hughobrien OPNA2608 ];
98
98
+
platforms = lib.platforms.unix;
99
99
+
mainProgram = "dosbox-x";
100
100
+
};
101
101
+
})
+4
pkgs/top-level/all-packages.nix
···
2614
2614
2615
2615
dosbox-staging = callPackage ../applications/emulators/dosbox-staging { };
2616
2616
2617
2617
+
dosbox-x = darwin.apple_sdk_11_0.callPackage ../applications/emulators/dosbox-x {
2618
2618
+
inherit (darwin.apple_sdk_11_0.frameworks) AudioUnit Carbon Cocoa;
2619
2619
+
};
2620
2620
+
2617
2621
duckstation = qt6Packages.callPackage ../applications/emulators/duckstation { };
2618
2622
2619
2623
dynamips = callPackage ../applications/emulators/dynamips { };