new: packages: ultimmc

This commit is contained in:
L-Nafaryus 2024-01-19 20:00:05 +05:00
parent f5e59054a8
commit 1ad29e30d2
Signed by: L-Nafaryus
GPG Key ID: 582F8B0866B294A1
3 changed files with 79 additions and 1 deletions

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }:
{ config, pkgs, lib, inputs, self, ... }:
{
# Users
users.users.nafaryus = {
@ -69,6 +69,9 @@
onlyoffice-bin
anydesk
jdk
self.packages.${pkgs.system}.ultimmc
];
xdg.enable = true;

View File

@ -18,4 +18,6 @@ in forAllSystems(system: let pkgs = nixpkgsFor.${system}; in {
spoofdpi = pkgs.callPackage ./spoofdpi {};
lego = pkgs.callPackage ./lego {};
ultimmc = pkgs.libsForQt5.callPackage ./ultimmc {};
})

View File

@ -0,0 +1,73 @@
{
lib, stdenv,
fetchFromGitHub, wrapQtAppsHook,
extra-cmake-modules, cmake,
file, jdk17,
copyDesktopItems, makeDesktopItem,
xorg, libpulseaudio, libGL
}:
stdenv.mkDerivation rec {
version = "faf3c966c43465d6f6c245ed78556222240398ee";
pname = "ultimmc";
src = fetchFromGitHub {
fetchSubmodules = true;
owner = "UltimMC";
repo = "Launcher";
rev = "faf3c966c43465d6f6c245ed78556222240398ee";
sha256 = "sha256-/+cYbAzf84PrgzJHUsc3tVU9E+mDMtx5eGEJK9ZBM2w=";
};
nativeBuildInputs = [
wrapQtAppsHook
extra-cmake-modules
cmake
file
jdk17
copyDesktopItems
];
desktopItems = [
(makeDesktopItem {
name = "ultimmc";
desktopName = "UltimMC";
icon = "ultimmc";
comment = "Cracked Minecraft launcher";
exec = "UltimMC %u";
categories = [ "Game" ];
})
];
cmakeFlags = [ "-DLauncher_LAYOUT=lin-nodeps" ];
postInstall = let
libpath = with xorg; lib.makeLibraryPath [
libX11
libXext
libXcursor
libXrandr
libXxf86vm
libpulseaudio
libGL
];
in ''
install -Dm0644 ${src}/notsecrets/logo.svg $out/share/icons/hicolor/scalable/apps/ultimmc.svg
chmod -x $out/bin/*.so
wrapProgram $out/bin/UltimMC \
"''${qtWrapperArgs[@]}" \
--set GAME_LIBRARY_PATH /run/opengl-driver/lib:${libpath} \
--prefix PATH : ${lib.makeBinPath [xorg.xrandr]} \
--add-flags '-d ~/.local/share/ultimmc'
rm $out/UltimMC
'';
meta = with lib; {
homepage = "https://github.com/UltimMC/Launcher";
description = "Cracked Minecraft Launcher";
license = licenses.asl20;
platforms = platforms.linux;
maintainers = [] ;
};
}