tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
openmw: 0.46 -> 0.47
marius david
4 years ago
36e16d69
84dbadf8
+40
-14
2 changed files
expand all
collapse all
unified
split
pkgs
games
openmw
default.nix
tes3mp.nix
+32
-13
pkgs/games/openmw/default.nix
···
13
, unshield
14
, openal
15
, libXt
0
0
16
}:
17
18
let
19
-
openscenegraph_ = openscenegraph.overrideDerivation (self: {
0
0
0
0
0
0
0
0
0
0
0
20
src = fetchFromGitHub {
21
-
owner = "OpenMW";
22
-
repo = "osg";
23
-
# commit does not exist on any branch on the target repository
24
-
rev = "1556cd7966ebc1c80b6626988d2b25fb43a744cf";
25
-
sha256 = "0d74hijzmj82nx3jkv5qmr3pkgvplra0b8fbjx1y3vmzxamb0axd";
26
};
0
0
0
0
0
27
});
28
29
in
30
mkDerivation rec {
31
-
version = "0.46.0";
32
pname = "openmw";
0
33
34
src = fetchFromGitHub {
35
owner = "OpenMW";
36
repo = "openmw";
37
rev = "${pname}-${version}";
38
-
sha256 = "0rm32zsmxvr6b0jjihfj543skhicbw5kg6shjx312clhlm035w2x";
39
};
40
41
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
···
43
buildInputs = [
44
SDL2
45
boost
46
-
bullet
47
ffmpeg
48
libXt
49
mygui
50
openal
51
-
openscenegraph_
52
unshield
0
0
53
];
54
55
cmakeFlags = [
56
-
"-DDESIRED_QT_VERSION:INT=5"
57
# as of 0.46, openmw is broken with GLVND
58
"-DOpenGL_GL_PREFERENCE=LEGACY"
0
59
];
60
61
meta = with lib; {
62
description = "An unofficial open source engine reimplementation of the game Morrowind";
63
-
homepage = "http://openmw.org";
64
license = licenses.gpl3Plus;
65
-
maintainers = with maintainers; [ abbradar ];
66
platforms = platforms.linux;
67
};
68
}
···
13
, unshield
14
, openal
15
, libXt
16
+
, lz4
17
+
, recastnavigation
18
}:
19
20
let
21
+
openscenegraph_openmw = (openscenegraph.override { colladaSupport = true; })
22
+
.overrideDerivation (self: {
23
+
src = fetchFromGitHub {
24
+
owner = "OpenMW";
25
+
repo = "osg";
26
+
rev = "bbe61c3bc510a4f5bb4aea21cce506519c2d24e6";
27
+
sha256 = "sha256-t3smLqstp7wWfi9HXJoBCek+3acqt/ySBYF8RJOG6Mo=";
28
+
};
29
+
});
30
+
31
+
bullet_openmw = bullet.overrideDerivation (old: rec {
32
+
version = "3.17";
33
src = fetchFromGitHub {
34
+
owner = "bulletphysics";
35
+
repo = "bullet3";
36
+
rev = version;
37
+
sha256 = "sha256-uQ4X8F8nmagbcFh0KexrmnhHIXFSB3A1CCnjPVeHL3Q=";
0
38
};
39
+
patches = [];
40
+
cmakeFlags = (old.cmakeFlags or []) ++ [
41
+
"-DUSE_DOUBLE_PRECISION=ON"
42
+
"-DBULLET2_MULTITHREADING=ON"
43
+
];
44
});
45
46
in
47
mkDerivation rec {
0
48
pname = "openmw";
49
+
version = "0.47.0";
50
51
src = fetchFromGitHub {
52
owner = "OpenMW";
53
repo = "openmw";
54
rev = "${pname}-${version}";
55
+
sha256 = "sha256-Xq9hDUTCQr79Zzjk0CsiXclVTHK6nrSowukIQqVdrKY=";
56
};
57
58
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
···
60
buildInputs = [
61
SDL2
62
boost
63
+
bullet_openmw
64
ffmpeg
65
libXt
66
mygui
67
openal
68
+
openscenegraph_openmw
69
unshield
70
+
lz4
71
+
recastnavigation
72
];
73
74
cmakeFlags = [
0
75
# as of 0.46, openmw is broken with GLVND
76
"-DOpenGL_GL_PREFERENCE=LEGACY"
77
+
"-DOPENMW_USE_SYSTEM_RECASTNAVIGATION=1"
78
];
79
80
meta = with lib; {
81
description = "An unofficial open source engine reimplementation of the game Morrowind";
82
+
homepage = "https://openmw.org";
83
license = licenses.gpl3Plus;
84
+
maintainers = with maintainers; [ abbradar marius851000 ];
85
platforms = platforms.linux;
86
};
87
}
+8
-1
pkgs/games/openmw/tes3mp.nix
···
9
, symlinkJoin
10
, mygui
11
, crudini
0
12
}:
13
14
# revisions are taken from https://github.com/GrimKriegor/TES3MP-deploy
···
70
71
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ makeWrapper ];
72
73
-
buildInputs = oldAttrs.buildInputs ++ [ luajit ];
0
74
75
cmakeFlags = oldAttrs.cmakeFlags ++ [
76
"-DBUILD_OPENCS=OFF"
···
78
"-DRakNet_LIBRARY_RELEASE=${raknet}/lib/libRakNetLibStatic.a"
79
"-DRakNet_LIBRARY_DEBUG=${raknet}/lib/libRakNetLibStatic.a"
80
];
0
0
0
0
0
81
82
# https://github.com/TES3MP/openmw-tes3mp/issues/552
83
patches = [ ./tes3mp.patch ];
···
9
, symlinkJoin
10
, mygui
11
, crudini
12
+
, bullet
13
}:
14
15
# revisions are taken from https://github.com/GrimKriegor/TES3MP-deploy
···
71
72
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ makeWrapper ];
73
74
+
buildInputs = (builtins.map (x: if x.pname or "" == "bullet" then bullet else x) oldAttrs.buildInputs)
75
+
++ [ luajit ];
76
77
cmakeFlags = oldAttrs.cmakeFlags ++ [
78
"-DBUILD_OPENCS=OFF"
···
80
"-DRakNet_LIBRARY_RELEASE=${raknet}/lib/libRakNetLibStatic.a"
81
"-DRakNet_LIBRARY_DEBUG=${raknet}/lib/libRakNetLibStatic.a"
82
];
83
+
84
+
prePatch = ''
85
+
substituteInPlace components/process/processinvoker.cpp \
86
+
--replace "\"./\"" "\"$out/bin/\""
87
+
'';
88
89
# https://github.com/TES3MP/openmw-tes3mp/issues/552
90
patches = [ ./tes3mp.patch ];