fix: add extra wrapper vars for modrinth app to avoid segfault
Some checks failed
Check flake / check (push) Has been cancelled

This commit is contained in:
Youwen Wu 2024-12-15 02:57:39 -08:00
parent 7fc5af883f
commit 75370d69d3
Signed by: youwen5
GPG key ID: 865658ED1FE61EC3
2 changed files with 95 additions and 2 deletions

View file

@ -0,0 +1,94 @@
{
lib,
stdenv,
addDriverRunpath,
alsa-lib,
flite,
glib-networking,
jdk17,
jdk21,
jdk8,
jdks ? [
jdk8
jdk17
jdk21
],
libGL,
libjack2,
libpulseaudio,
modrinth-app-unwrapped,
pipewire,
symlinkJoin,
udev,
wrapGAppsHook4,
xorg,
}:
symlinkJoin rec {
name = "${pname}-${version}";
pname = "modrinth-app";
inherit (modrinth-app-unwrapped) version;
paths = [ modrinth-app-unwrapped ];
nativeBuildInputs = [ wrapGAppsHook4 ];
buildInputs = [ glib-networking ];
runtimeDependencies = lib.optionalString stdenv.hostPlatform.isLinux (
lib.makeLibraryPath [
addDriverRunpath.driverLink
# glfw
libGL
xorg.libX11
xorg.libXcursor
xorg.libXext
xorg.libXrandr
xorg.libXxf86vm
# lwjgl
(lib.getLib stdenv.cc.cc)
# narrator support
flite
# openal
alsa-lib
libjack2
libpulseaudio
pipewire
# oshi
udev
]
);
postBuild = ''
gappsWrapperArgs+=(
--prefix PATH : ${lib.makeSearchPath "bin/java" jdks}
${lib.optionalString stdenv.hostPlatform.isLinux ''
--prefix PATH : ${lib.makeBinPath [ xorg.xrandr ]}
--set LD_LIBRARY_PATH $runtimeDependencies
--set GDK_BACKEND x11
--set WEBKIT_DISABLE_DMABUF_RENDERER 1
''}
)
wrapGAppsHook
'';
# fixes nvidia broken modrinth
meta = {
inherit (modrinth-app-unwrapped.meta)
description
longDescription
homepage
license
maintainers
mainProgram
platforms
broken
;
};
}

View file

@ -3,6 +3,5 @@ let
inherit (pkgs) callPackage;
in
final: prev: {
zen-browser-unwrapped = callPackage ./by-name/zen-browser-unwrapped/package.nix { };
zen-browser = callPackage ./by-name/zen-browser/package.nix { };
modrinth-app = callPackage ./by-name/modrinth-app { };
}