tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
cemu: 2.0-92 -> 2.2
William
1 year ago
bbc04afa
4dd746fc
+48
-22
3 changed files
expand all
collapse all
unified
split
pkgs
by-name
ce
cemu
0000-spirv-tools-opt-cmakelists.patch
0001-glslang-cmake-target.patch
package.nix
+2
-2
pkgs/by-name/ce/cemu/0000-spirv-tools-opt-cmakelists.patch
···
1
1
diff --git a/CMakeLists.txt b/CMakeLists.txt
2
2
-
index 4b2b789..48d9be0 100644
2
2
+
index 54e2012..a9b6b0e 100644
3
3
--- a/CMakeLists.txt
4
4
+++ b/CMakeLists.txt
5
5
-
@@ -92,6 +92,7 @@ find_package(pugixml REQUIRED)
5
5
+
@@ -149,6 +149,7 @@ find_package(pugixml REQUIRED)
6
6
find_package(RapidJSON REQUIRED)
7
7
find_package(Boost COMPONENTS program_options filesystem nowide REQUIRED)
8
8
find_package(libzip REQUIRED)
+13
pkgs/by-name/ce/cemu/0001-glslang-cmake-target.patch
···
1
1
+
diff --git a/src/Cafe/CMakeLists.txt.orig b/src/Cafe/CMakeLists.txt
2
2
+
index 91d257b..cff779a 100644
3
3
+
--- a/src/Cafe/CMakeLists.txt
4
4
+
+++ b/src/Cafe/CMakeLists.txt
5
5
+
@@ -545,7 +545,7 @@ target_link_libraries(CemuCafe PRIVATE
6
6
+
Boost::nowide
7
7
+
CURL::libcurl
8
8
+
fmt::fmt
9
9
+
- glslang::SPIRV
10
10
+
+ glslang::glslang
11
11
+
ih264d
12
12
+
OpenSSL::Crypto
13
13
+
OpenSSL::SSL
+33
-20
pkgs/by-name/ce/cemu/package.nix
···
47
47
hash = "sha256-gf47uLeNiXQic43buB5ZnMqiotlUfIyAsP+3H7yJuFg=";
48
48
};
49
49
};
50
50
-
in stdenv.mkDerivation (finalAttrs: {
50
50
+
in
51
51
+
stdenv.mkDerivation (finalAttrs: {
51
52
pname = "cemu";
52
52
-
version = "2.0-92";
53
53
+
version = "2.2";
53
54
54
55
src = fetchFromGitHub {
55
56
owner = "cemu-project";
56
57
repo = "Cemu";
57
58
rev = "v${finalAttrs.version}";
58
58
-
hash = "sha256-bjt+2RzmG8iKcdyka4HsHM5NEzCwGah4s9eiywSHXbw=";
59
59
+
hash = "sha256-d4FMAj99SPj5S1p5nAUFNo386ZJvWxOKD9iGxHJYVBI=";
59
60
};
60
61
61
62
patches = [
···
63
64
# > The following imported targets are referenced, but are missing:
64
65
# > SPIRV-Tools-opt
65
66
./0000-spirv-tools-opt-cmakelists.patch
67
67
+
./0001-glslang-cmake-target.patch
66
68
];
67
69
68
70
nativeBuildInputs = [
···
113
115
114
116
strictDeps = true;
115
117
116
116
-
preConfigure = let
117
117
-
tag = lib.last (lib.splitString "-" finalAttrs.version);
118
118
-
in ''
119
119
-
rm -rf dependencies/imgui
120
120
-
# cemu expects imgui source code, not just header files
121
121
-
ln -s ${imgui'.src} dependencies/imgui
122
122
-
substituteInPlace src/Common/version.h --replace-fail " (experimental)" "-${tag} (experimental)"
123
123
-
substituteInPlace dependencies/gamemode/lib/gamemode_client.h --replace-fail "libgamemode.so.0" "${gamemode.lib}/lib/libgamemode.so.0"
124
124
-
'';
118
118
+
preConfigure =
119
119
+
let
120
120
+
tag = lib.splitString "." (lib.last (lib.splitString "-" finalAttrs.version));
121
121
+
majorv = builtins.elemAt tag 0;
122
122
+
minorv = builtins.elemAt tag 1;
123
123
+
in
124
124
+
''
125
125
+
rm -rf dependencies/imgui
126
126
+
# cemu expects imgui source code, not just header files
127
127
+
ln -s ${imgui'.src} dependencies/imgui
128
128
+
substituteInPlace CMakeLists.txt --replace-fail "EMULATOR_VERSION_MAJOR \"0\"" "EMULATOR_VERSION_MAJOR \"${majorv}\""
129
129
+
substituteInPlace CMakeLists.txt --replace-fail "EMULATOR_VERSION_MINOR \"0\"" "EMULATOR_VERSION_MINOR \"${minorv}\""
130
130
+
substituteInPlace dependencies/gamemode/lib/gamemode_client.h --replace-fail "libgamemode.so.0" "${gamemode.lib}/lib/libgamemode.so.0"
131
131
+
'';
125
132
126
133
installPhase = ''
127
134
runHook preInstall
···
139
146
runHook postInstall
140
147
'';
141
148
142
142
-
preFixup = let
143
143
-
libs = [ vulkan-loader ] ++ cubeb.passthru.backendLibs;
144
144
-
in ''
145
145
-
gappsWrapperArgs+=(
146
146
-
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libs}"
147
147
-
)
148
148
-
'';
149
149
+
preFixup =
150
150
+
let
151
151
+
libs = [ vulkan-loader ] ++ cubeb.passthru.backendLibs;
152
152
+
in
153
153
+
''
154
154
+
gappsWrapperArgs+=(
155
155
+
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libs}"
156
156
+
)
157
157
+
'';
149
158
150
159
passthru = {
151
160
updateScript = nix-update-script { };
···
161
170
homepage = "https://cemu.info";
162
171
license = lib.licenses.mpl20;
163
172
mainProgram = "cemu";
164
164
-
maintainers = with lib.maintainers; [ zhaofengli baduhai AndersonTorres ];
173
173
+
maintainers = with lib.maintainers; [
174
174
+
zhaofengli
175
175
+
baduhai
176
176
+
AndersonTorres
177
177
+
];
165
178
platforms = [ "x86_64-linux" ];
166
179
};
167
180
})