Minecraft

From NixOS Wiki
Revision as of 23:13, 6 April 2024 by Sen (talk | contribs) (woops per-user codeblock showed environment.systemPackages instead of users.users.<USER>.packages)

Minecraft is a sandbox game about building, surviving, fighting, and being creative, developed by Mojang Studios.[1]

Minecraft has two variants: "Minecraft: Java Edition" and "Minecraft: Bedrock Edition".

  • Minecraft: Java Edition is only available on Windows, MacOS and Linux and is known for modding.
  • Minecraft: Bedrock Edition is available on Windows, Xbox One, Xbox Series S and X, PlayStation 4 and 5, Nintendo Switch, Android, iOS. Bedrock is not playable on Linux due to UWP applications not being supported on Linux.[2][3]

Launchers

Offical Minecraft Launcher: WebsitePackage/pkgs.minecraft

Warning: 1.19 or higher is not working on NixOS, using alternative clients is strongly recommended.

Prismlauncher: A free, open source launcher. WebsitePackage/pkgs.prismlauncher

ATLauncher: A simple and easy to use Minecraft launcher which contains many different modpacks for you to choose from and play. WebsitePackage/pkgs.atlauncher

Badlion Client: A closed source PvP Modpack. WebsitePackage/pkgs.badlion-client

Lunar Client: A free Minecraft client with mods, cosmetics, and performance boost. WebsitePackage/pkgs.lunar-client

hmcl: A Minecraft Launcher which is multi-functional, cross-platform and popular. WebsitePackage/pkgs.hmcl

Installation

Your preferred client can be either imperatively installed by typing nix-env -iA nixos.<LAUNCHER> or nix profile install nixpkgs#<LAUNCHER> if Flakes are enabled. Preferably, install the package declaratively and globally by typing

environment.systemPackages = [
  pkgs.<LAUNCHER>
];

Alternatively, the package can be installed per-user with users.users.<USER>.packages or home-manager. For nix native, use:

users.users.<USER>.packages = [
  pkgs.<LAUNCHER>
];

For home-manager, use:

home.packages = [
  pkgs.<LAUNCHER>
];

Troubleshooting

Prismlauncher doesn't have Java Version XX.

The Prismlauncher package can be overridden with (pkgs.prismlauncher.override { jdks = [ pkgs.<JAVA_PACKAGE> ]; }). For example: (pkgs.prismlauncher.override { jdks = [ pkgs.temurin-bin-21 pkgs.temurin-bin-8 pkgs.temurin-bin-17 ]; })

Minecraft can’t start without Java Version XX.

Different Minecraft versions need different Java versions

Minecraft Version Minimum Compatible JRE Version
< 1.17 8
1.17 16
>= 1.18 17

Official Minecraft Launcher fails to start the game.

It is possible that you are attempting to start a version of Minecraft that is 1.19 or higher. Unfortunately, this is broken on NixOS. It is strongly recommended to use alternative launchers.