summaryrefslogtreecommitdiff
path: root/pkgs/modrinth-app.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/modrinth-app.nix')
-rw-r--r--pkgs/modrinth-app.nix66
1 files changed, 66 insertions, 0 deletions
diff --git a/pkgs/modrinth-app.nix b/pkgs/modrinth-app.nix
new file mode 100644
index 0000000..6693048
--- /dev/null
+++ b/pkgs/modrinth-app.nix
@@ -0,0 +1,66 @@
+{
+ lib,
+ stdenv,
+ symlinkJoin,
+ modrinth-app-unwrapped,
+ wrapGAppsHook,
+ addOpenGLRunpath,
+ flite,
+ glib,
+ glib-networking,
+ jdk8,
+ jdk17,
+ jdks ? [
+ jdk8
+ jdk17
+ ],
+ libGL,
+ libpulseaudio,
+ udev,
+ xorg,
+}:
+symlinkJoin rec {
+ name = "${pname}-${version}";
+ pname = "modrinth-app";
+ inherit (modrinth-app-unwrapped) version;
+
+ paths = [modrinth-app-unwrapped];
+
+ buildInputs = [
+ glib
+ glib-networking
+ ];
+
+ nativeBuildInputs = [wrapGAppsHook];
+
+ postBuild = let
+ runtimeDependencies = [
+ addOpenGLRunpath.driverLink
+ flite # narrator support
+
+ udev # oshi
+
+ # lwjgl
+ libGL
+ libpulseaudio
+ stdenv.cc.cc.lib
+ xorg.libX11
+ xorg.libXcursor
+ xorg.libXext
+ xorg.libXxf86vm
+ xorg.libXrandr
+ ];
+ in ''
+ gappsWrapperArgs+=(
+ --prefix PATH : ${lib.makeSearchPath "bin/java" jdks}
+ ${lib.optionalString stdenv.isLinux ''
+ --set LD_LIBRARY_PATH ${lib.makeLibraryPath runtimeDependencies}
+ --prefix PATH : ${lib.makeBinPath [xorg.xrandr]}
+ ''}
+ )
+
+ wrapGAppsHook
+ '';
+
+ inherit (modrinth-app-unwrapped) meta;
+}