nixpkgs/pkgs/by-name/lu/lunar-client/package.nix
2024-08-14 11:40:30 +00:00

39 lines
1.3 KiB
Nix

{ appimageTools
, fetchurl
, lib
, makeWrapper
}:
appimageTools.wrapType2 rec {
pname = "lunarclient";
version = "3.2.15";
src = fetchurl {
url = "https://launcherupdates.lunarclientcdn.com/Lunar%20Client-${version}.AppImage";
hash = "sha512-j2UuZXyjKev3me3b45/7NrWyfi3dbz8vgnEDF6m9Mv0ZT4CWi+A+h2V5DkJoUERWR8Pv4SJ4/GiwzftO9KSAZQ==";
};
extraInstallCommands =
let contents = appimageTools.extract { inherit pname version src; };
in ''
source "${makeWrapper}/nix-support/setup-hook"
wrapProgram $out/bin/lunarclient \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
install -Dm444 ${contents}/lunarclient.desktop -t $out/share/applications/
install -Dm444 ${contents}/lunarclient.png -t $out/share/pixmaps/
substituteInPlace $out/share/applications/lunarclient.desktop \
--replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=lunarclient' \
'';
passthru.updateScript = ./update.sh;
meta = with lib; {
description = "Free Minecraft client with mods, cosmetics, and performance boost";
homepage = "https://www.lunarclient.com/";
license = with licenses; [ unfree ];
mainProgram = "lunarclient";
maintainers = with maintainers; [ Technical27 surfaceflinger ];
platforms = [ "x86_64-linux" ];
};
}