From 16f7ec354bd740c804459aad1abcdf62f5113732 Mon Sep 17 00:00:00 2001 From: msglm Date: Mon, 7 Aug 2023 21:17:34 -0500 Subject: added prism launcher scm file that permits native GPU usage --- prismlauncher-gpu.scm | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 prismlauncher-gpu.scm (limited to 'prismlauncher-gpu.scm') diff --git a/prismlauncher-gpu.scm b/prismlauncher-gpu.scm new file mode 100644 index 0000000..a000bb0 --- /dev/null +++ b/prismlauncher-gpu.scm @@ -0,0 +1,80 @@ +(define-module (prismlauncher-gpu) + #:use-module (guix build-system cmake) + #:use-module (gnu packages bash) + #:use-module (gnu packages compression) + #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages qt) + #:use-module (gnu packages xorg) + #:use-module (gnu packages gl) + #:use-module (gnu packages java) + #:use-module (gnu packages kde-frameworks) + #:use-module (guix packages) + #:use-module (guix gexp) + #:use-module (guix git-download) + #:use-module ((guix licenses) :prefix license:) + #:use-module ((nonguix licenses) :prefix non-license:)) + +(define-public prismlauncher-gpu + (package + (name "prismlauncher-gpu") + (version "5.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/PrismLauncher/PrismLauncher") + (recursive? #t) + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1npvgiifjqsacimsv5vpj54qsbv638vvb1xgapky8fpk0f30v52k")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'patch-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin/prismlauncher")) + (xrandr (assoc-ref inputs "xrandr")) + (qtwayland (assoc-ref inputs "qtwayland"))) + (wrap-program bin + `("PATH" ":" prefix (,(string-append xrandr "/bin"))) + `("QT_PLUGIN_PATH" ":" prefix (,(string-append + qtwayland "/lib/qt5/plugins"))) + ) + #t)))))) + (native-inputs (list extra-cmake-modules)) + (inputs (list bash-minimal ; for wrap-program + zlib + qtbase-5 + qtwayland + xrandr + libx11 + libxext + libxcursor + libxrandr + libxxf86vm + pulseaudio + mesa)) + (propagated-inputs (list `(,openjdk17 "jdk"))) + (home-page "https://prismlauncher.org/") + (synopsis "Free, open source launcher for Minecraft") + (description + "Allows you to have multiple, separate instances of Minecraft (each with +their own mods, texture packs, saves, etc), and helps you manage them and +their associated options with a simple interface.") + (license (list license:gpl3 ; PolyMC, launcher + license:expat ; MinGW runtime, lionshead, tomlc99 + license:lgpl3 ; Qt 5/6 + license:lgpl3+ ; libnbt++ + license:lgpl2.1+ ; rainbow (KGuiAddons) + license:isc ; Hoedown + license:silofl1.1 ; Material Design Icons + license:lgpl2.1 ; Quazip + license:public-domain ; xz-minidec, murmur2, xz-embedded + license:bsd-3 ; ColumnResizer, O2 (Katabasis fork), + ; gamemode, localpeer + license:asl2.0 ; classparser, systeminfo + ;; Batch icon set: + (non-license:nonfree "file://COPYING.md"))))) -- cgit v1.2.3