about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAleksana <me@aleksana.moe>2024-05-18 01:05:41 +0800
committerGitHub <noreply@github.com>2024-05-18 01:05:41 +0800
commit4812b7f9e7c036b8f924dae5177686bc4c939daa (patch)
treeb9caa6507069b24f4f59209cc44a99aaaf138ea2
parentf451485c43d907d12b9841e660dc2f7026d80acd (diff)
parent74e18ebb6285d457982bb65c2e18a2bd3f2c32a8 (diff)
Merge pull request #312020 from GetPsyched/atlauncher-fix
atlauncher: fix build
-rw-r--r--pkgs/by-name/at/atlauncher/package.nix59
1 files changed, 45 insertions, 14 deletions
diff --git a/pkgs/by-name/at/atlauncher/package.nix b/pkgs/by-name/at/atlauncher/package.nix
index bc87f555ff93a..428ffffd8836f 100644
--- a/pkgs/by-name/at/atlauncher/package.nix
+++ b/pkgs/by-name/at/atlauncher/package.nix
@@ -1,4 +1,23 @@
-{ copyDesktopItems, fetchurl, jre, lib, makeDesktopItem, makeWrapper, stdenv, udev, xorg }:
+{ copyDesktopItems
+, fetchurl
+, jre
+, lib
+, makeDesktopItem
+, makeWrapper
+, stdenv
+
+, gamemodeSupport ? stdenv.isLinux
+, textToSpeechSupport ? stdenv.isLinux
+, additionalLibs ? [ ]
+
+, # dependencies
+  flite
+, gamemode
+, libglvnd
+, libpulseaudio
+, udev
+, xorg
+}:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "atlauncher";
@@ -18,23 +37,35 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [ copyDesktopItems makeWrapper ];
 
-  installPhase = ''
-    runHook preInstall
+  installPhase =
+    let
+      runtimeLibraries = [
+        libglvnd
+        libpulseaudio
+        udev
+        xorg.libXxf86vm
+      ]
+      ++ lib.optional gamemodeSupport gamemode.lib
+      ++ lib.optional textToSpeechSupport flite
+      ++ additionalLibs;
+    in
+    ''
+      runHook preInstall
 
-    mkdir -p $out/bin $out/share/java
-    cp $src $out/share/java/ATLauncher.jar
+      mkdir -p $out/bin $out/share/java
+      cp $src $out/share/java/ATLauncher.jar
 
-    makeWrapper ${jre}/bin/java $out/bin/atlauncher \
-      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ xorg.libXxf86vm udev ]}" \
-      --add-flags "-jar $out/share/java/ATLauncher.jar" \
-      --add-flags "--working-dir \"\''${XDG_DATA_HOME:-\$HOME/.local/share}/ATLauncher\"" \
-      --add-flags "--no-launcher-update"
+      makeWrapper ${jre}/bin/java $out/bin/atlauncher \
+        --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath runtimeLibraries}" \
+        --add-flags "-jar $out/share/java/ATLauncher.jar" \
+        --add-flags "--working-dir \"\''${XDG_DATA_HOME:-\$HOME/.local/share}/ATLauncher\"" \
+        --add-flags "--no-launcher-update"
 
-    mkdir -p $out/share/icons/hicolor/scalable/apps
-    cp $ICON $out/share/icons/hicolor/scalable/apps/atlauncher.svg
+      mkdir -p $out/share/icons/hicolor/scalable/apps
+      cp $ICON $out/share/icons/hicolor/scalable/apps/atlauncher.svg
 
-    runHook postInstall
-  '';
+      runHook postInstall
+    '';
 
   desktopItems = [
     (makeDesktopItem {