fix(loop): add runtime fixes for gsettings and GPU libraries
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:
2026-05-29 20:04:32 +03:00
parent 3b597af162
commit d23dc7ab22
2 changed files with 19 additions and 3 deletions

View File

@@ -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 = [