Jump to content

Prism Launcher: Difference between revisions

From Official NixOS Wiki
OliMoli (talk | contribs)
Mention Prismix as a new declarative approach to configure PrismLauncher
OliMoli (talk | contribs)
Fix formatting
 
Line 39: Line 39:
   })
   })
];
];
</syntaxhighlight>'''Declarative configuration'''
</syntaxhighlight>
 
To manage PrismLauncher declaratively, you can use [https://codeberg.org/OliMoli/prismix Prismix], which also solves a couple of annoyances like the recurring Java pop-up.
 
However, please note that it is still in early development and lacks several features.


===== Useful options =====
===== Useful options =====
Line 55: Line 51:
* <code>msaClientID</code> (default: <code>null</code>) Client ID used for Microsoft Authentication. Prism Launcher's official ID will be used if set to null.
* <code>msaClientID</code> (default: <code>null</code>) Client ID used for Microsoft Authentication. Prism Launcher's official ID will be used if set to null.
* <code>textToSpeechSupport</code> (default <code>stdenv.hostPlatform.isLinux</code>) Turn on/off support for text-to-speech on Linux. This option is not needed on macOS
* <code>textToSpeechSupport</code> (default <code>stdenv.hostPlatform.isLinux</code>) Turn on/off support for text-to-speech on Linux. This option is not needed on macOS
==== Declarative configuration ====
To manage PrismLauncher declaratively, you can use [https://codeberg.org/OliMoli/prismix Prismix], which also solves a couple of annoyances like the recurring Java pop-up.
However, please note that it is still in early development and lacks several features.


== References ==
== References ==

Latest revision as of 20:47, 3 October 2026

Prism Launcher is a free and open source launcher for the game Minecraft. It is written in C++ and uses the Qt Toolkit.

Installation

Using nix-shell

$ nix-shell -p prismlauncher

Using global configuration

environment.systemPackages = with pkgs; [ prismlauncher ];

Using home configuration

home.packages = with pkgs; [ prismlauncher ];

Configuration

Basic

Configuration of the launcher itself can be done in the settings window of the launcher.

Advanced

You can override prismlauncher to change the environment available to the launcher and the game. This might be useful for installing additional versions of Java or providing extra binaries needed by some mods.

environment.systemPackages = with pkgs; [
  (prismlauncher.override {
    # Add binary required by some mod
    additionalPrograms = [ ffmpeg ];

    # Change Java runtimes available to Prism Launcher
    jdks = [
      graalvmPackages.graalvm-ce
      zulu8
      zulu17
      zulu
    ];
  })
];
Useful options

All options are defined in the derivation.

  • additionalLibs (default: [ ]) Additional libraries that will be added to LD_LIBRARY_PATH
  • additionalPrograms (default: [ ]) Additional programs that will be added to PATH
  • controllerSupport (default: stdenv.hostPlatform.isLinux) Turn on/off support for controllers on Linux. This option is not needed on macOS
  • gamemodeSupport (default: stdenv.hostPlatform.isLinux) Turn on/off support for GameMode on Linux
  • jdks (default: [ pkgs.jdk21 pkgs.jdk17 pkgs.jdk8 ]) Java runtimes that will be added to PRISMLAUNCHER_JAVA_PATHS and will be available to Prism Launcher
  • msaClientID (default: null) Client ID used for Microsoft Authentication. Prism Launcher's official ID will be used if set to null.
  • textToSpeechSupport (default stdenv.hostPlatform.isLinux) Turn on/off support for text-to-speech on Linux. This option is not needed on macOS

Declarative configuration

To manage PrismLauncher declaratively, you can use Prismix, which also solves a couple of annoyances like the recurring Java pop-up.

However, please note that it is still in early development and lacks several features.

References