liminalOS/pkgs/by-name/modrinth-app/default.nix

95 lines
1.6 KiB
Nix
Raw Permalink Normal View History

{
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
;
};
}