depot/third_party/nixpkgs/pkgs/by-name/lu/lunar-client/package.nix

45 lines
1.4 KiB
Nix

{
appimageTools,
fetchurl,
lib,
makeWrapper,
}:
appimageTools.wrapType2 rec {
pname = "lunarclient";
version = "3.3.1";
src = fetchurl {
url = "https://launcherupdates.lunarclientcdn.com/Lunar%20Client-${version}.AppImage";
hash = "sha512-tRLT/jR6e9fwmQWAZ1OwjAOMiLy7us9WjiGpS8NBOzHO7jJ4TofSRvvSwpohr9YsnLiLnqANdlWtuabRpQhLLw==";
};
nativeBuildInputs = [ makeWrapper ];
extraInstallCommands =
let
contents = appimageTools.extract { inherit pname version src; };
in
''
wrapProgram $out/bin/lunarclient \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}"
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" ];
};
}