tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
mangohud: hardcode libGL & libX11
Kira Bruneau
9 months ago
62f19463
e0042ded
+30
-2
2 changed files
expand all
collapse all
unified
split
pkgs
tools
graphics
mangohud
default.nix
hardcode-dependencies.patch
+4
-1
pkgs/tools/graphics/mangohud/default.nix
···
10
gnused,
11
xdg-utils,
12
dbus,
0
0
13
hwdata,
14
mangohud32,
15
addDriverRunpath,
···
20
ninja,
21
pkg-config,
22
unzip,
23
-
libX11,
24
wayland,
25
libXNVCtrl,
26
nlohmann_json,
···
138
];
139
140
libdbus = dbus.lib;
0
0
141
inherit hwdata;
142
})
143
];
···
10
gnused,
11
xdg-utils,
12
dbus,
13
+
libGL,
14
+
libX11,
15
hwdata,
16
mangohud32,
17
addDriverRunpath,
···
22
ninja,
23
pkg-config,
24
unzip,
0
25
wayland,
26
libXNVCtrl,
27
nlohmann_json,
···
139
];
140
141
libdbus = dbus.lib;
142
+
libGL = libGL;
143
+
libX11 = libX11;
144
inherit hwdata;
145
})
146
];
+26
-1
pkgs/tools/graphics/mangohud/hardcode-dependencies.patch
···
11
SPDLOG_ERROR("Could not load libdbus-1.so.3");
12
return false;
13
}
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
diff --git a/src/logging.cpp b/src/logging.cpp
15
-
index ca986d4..c4d99ea 100644
16
--- a/src/logging.cpp
17
+++ b/src/logging.cpp
18
@@ -28,8 +28,12 @@ string exec(string command) {
···
11
SPDLOG_ERROR("Could not load libdbus-1.so.3");
12
return false;
13
}
14
+
diff --git a/src/loaders/loader_glx.cpp b/src/loaders/loader_glx.cpp
15
+
index aa453b8..0f6479d 100644
16
+
--- a/src/loaders/loader_glx.cpp
17
+
+++ b/src/loaders/loader_glx.cpp
18
+
@@ -23,7 +23,7 @@ bool glx_loader::Load() {
19
+
handle = real_dlopen("glxtrace.so", RTLD_LAZY);
20
+
#endif
21
+
if (!handle)
22
+
- handle = real_dlopen("libGL.so.1", RTLD_LAZY);
23
+
+ handle = real_dlopen("@libGL@/lib/libGL.so.1", RTLD_LAZY);
24
+
if (!handle) {
25
+
SPDLOG_ERROR("Failed to open " MANGOHUD_ARCH " libGL.so.1: {}", dlerror());
26
+
return false;
27
+
diff --git a/src/loaders/loader_x11.cpp b/src/loaders/loader_x11.cpp
28
+
index 214fd50..2f08857 100644
29
+
--- a/src/loaders/loader_x11.cpp
30
+
+++ b/src/loaders/loader_x11.cpp
31
+
@@ -110,6 +110,6 @@ static std::shared_ptr<libx11_loader> loader;
32
+
std::shared_ptr<libx11_loader> get_libx11()
33
+
{
34
+
if (!loader)
35
+
- loader = std::make_shared<libx11_loader>("libX11.so.6");
36
+
+ loader = std::make_shared<libx11_loader>("@libX11@/lib/libX11.so.6");
37
+
return loader;
38
+
}
39
diff --git a/src/logging.cpp b/src/logging.cpp
40
+
index 4ef7023..e24f6da 100644
41
--- a/src/logging.cpp
42
+++ b/src/logging.cpp
43
@@ -28,8 +28,12 @@ string exec(string command) {