about summary refs log tree commit diff
path: root/pkgs/by-name/at/atlauncher
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2024-05-18 00:12:56 +0000
committerGitHub <noreply@github.com>2024-05-18 00:12:56 +0000
commit154bc6bfe607be732374fc57554b165e692b77a8 (patch)
tree60ad3d3927c23db46d7c904b3293906d56ef1f7d /pkgs/by-name/at/atlauncher
parent58045842897730e7b47c578ad9f175dbf35ad782 (diff)
parent8a33016960fc556929f10df9efae7fb372877441 (diff)
Merge master into haskell-updates
Diffstat (limited to 'pkgs/by-name/at/atlauncher')
-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 {