feat(nix): desktop app icon

This commit is contained in:
ethernet 2026-08-05 10:54:03 -04:00
parent eea6044098
commit b27cdc3824
1 changed files with 14 additions and 1 deletions

View File

@ -14,6 +14,7 @@
hermesNpmLib,
electron,
hermesAgent,
python3,
...
}:
let
@ -141,7 +142,10 @@ stdenv.mkDerivation {
dontUnpack = true;
dontBuild = true;
nativeBuildInputs = [ makeWrapper ];
nativeBuildInputs = [
makeWrapper
python3
];
installPhase = ''
runHook preInstall
@ -166,6 +170,15 @@ stdenv.mkDerivation {
--set HERMES_DESKTOP_HERMES "${lib.getExe hermesAgent}" \
--set ELECTRON_IS_DEV 0
# XDG launcher entry
mkdir -p $out/share/applications $out/share/icons/hicolor/1024x1024/apps
install -m 0644 ${../apps/desktop/assets/icon.png} \
$out/share/icons/hicolor/1024x1024/apps/hermes.png
export PYTHONPATH=$(mktemp -d)
cp ${../hermes_cli/linux_desktop_entry.py} "$PYTHONPATH/linux_desktop_entry.py"
export DESKTOP_EXEC="$out/bin/hermes-desktop"
export DESKTOP_ICON="$out/share/icons/hicolor/1024x1024/apps/hermes.png"
python3 -c 'import os; from linux_desktop_entry import render_desktop_entry; print(render_desktop_entry(os.environ["DESKTOP_EXEC"], os.environ["DESKTOP_ICON"]))' > $out/share/applications/hermes.desktop
runHook postInstall
'';