dotfiles/nix/mcdev.nix

38 lines
758 B
Nix

# A dev shell for Minecraft development, including necessary dependencies for the game to run.
{ pkgs, ... }:
let
libs = with pkgs; [
libpulseaudio
libGL
glfw
openal
stdenv.cc.cc.lib
udev # OSHI
];
xorg-libs = with pkgs.xorg; [
libX11
libXext
libXcursor
libXrandr
libXxf86vm
];
in
{
dev-shells = builtins.mapAttrs
(_: extra-pkgs:
let
shpgks = libs ++ xorg-libs ++ extra-pkgs;
in
pkgs.mkShell {
shellHook = ''
export LD_LIBRARY_PATH="${pkgs.addOpenGLRunpath.driverLink}/lib:${pkgs.lib.makeLibraryPath shpgks}:$LD_LIBRARY_PATH"
'';
buildInputs = shpgks;
})
{
mcdev = [ pkgs.jdk8 ];
mcdev-new = [ pkgs.jdk17 ];
};
}