mcaselector: add desktop entry and icon (#547481)

This commit is contained in:
Sefa Eyeoglu
2026-08-04 20:28:28 +00:00
committed by GitHub

View File

@@ -3,17 +3,26 @@
stdenvNoCC,
fetchurl,
makeWrapper,
makeDesktopItem,
copyDesktopItems,
wrapGAppsHook3,
jre,
}:
let
version = "2.8";
jre' = jre.override {
enableJavaFX = true;
};
icon = fetchurl {
url = "https://github.com/Querz/mcaselector/raw/${version}/installer/linux/icon.png";
hash = "sha256-nUHTxFHKhp//AL3/B43iXPmp/gcCQPgrEqGAV23U/Vs=";
};
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "mcaselector";
version = "2.8";
inherit version;
src = fetchurl {
url = "https://github.com/Querz/mcaselector/releases/download/${finalAttrs.version}/mcaselector-${finalAttrs.version}.jar";
@@ -27,6 +36,22 @@ stdenvNoCC.mkDerivation (finalAttrs: {
jre'
makeWrapper
wrapGAppsHook3
copyDesktopItems
];
desktopItems = [
(makeDesktopItem {
name = "mcaselector";
desktopName = "MCA Selector";
comment = "Select, edit, and export chunks of your Minecraft world";
exec = "mcaselector";
icon = "mcaselector";
categories = [
"Game"
"Java"
];
startupWMClass = "net.querz.mcaselector.ui.Window";
})
];
dontWrapGApps = true;
@@ -34,8 +59,9 @@ stdenvNoCC.mkDerivation (finalAttrs: {
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,lib/mcaselector}
mkdir -p $out/{bin,lib/mcaselector,share/icons/hicolor/512x512/apps}
cp $src $out/lib/mcaselector/mcaselector.jar
cp ${icon} $out/share/icons/hicolor/512x512/apps/mcaselector.png
runHook postInstall
'';