fix(loop): add runtime fixes for gsettings and GPU libraries
Some checks failed
CI / check (push) Has been cancelled
Some checks failed
CI / check (push) Has been cancelled
- Add LD_LIBRARY_PATH to wrapper so Electron GPU process finds bundled libEGL.so.1 - Add glib.bin to buildInputs and wrap gsettings into PATH - Create versioned symlinks for bundled libEGL.so and libGLESv2.so - Clean up formatting in package inputs
This commit is contained in:
@@ -18,8 +18,9 @@
|
||||
xorg,
|
||||
systemd,
|
||||
libnotify,
|
||||
libsecret, libappindicator-gtk3,
|
||||
gsettings-desktop-schemas,
|
||||
libsecret,
|
||||
libappindicator-gtk3,
|
||||
gsettings-desktop-schemas,
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -66,6 +67,7 @@ stdenv.mkDerivation {
|
||||
libsecret
|
||||
libappindicator-gtk3
|
||||
gsettings-desktop-schemas
|
||||
glib.bin
|
||||
];
|
||||
|
||||
dontBuild = true;
|
||||
@@ -114,9 +116,23 @@ EOF
|
||||
cp "$out/share/loop/app_icon.png" "$out/share/icons/hicolor/256x256/apps/loop.png"
|
||||
fi
|
||||
|
||||
# Electron GPU libraries expect versioned sonames
|
||||
if [ -f "$out/share/loop/libEGL.so" ] && [ ! -e "$out/share/loop/libEGL.so.1" ]; then
|
||||
ln -s libEGL.so "$out/share/loop/libEGL.so.1"
|
||||
fi
|
||||
if [ -f "$out/share/loop/libGLESv2.so" ] && [ ! -e "$out/share/loop/libGLESv2.so.2" ]; then
|
||||
ln -s libGLESv2.so "$out/share/loop/libGLESv2.so.2"
|
||||
fi
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/loop \
|
||||
--prefix PATH : ${glib.bin}/bin \
|
||||
--prefix LD_LIBRARY_PATH : $out/share/loop
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
category = "Communication";
|
||||
updateScript = [
|
||||
|
||||
Reference in New Issue
Block a user