feat(live): #57 Install Nomarchy desktop entry + Tools row
Some checks failed
Check / eval (push) Has been cancelled

Always-visible install surface on the live ISO: xdg.desktopEntries
(Terminal=true) plus Tools › Install Nomarchy (self-gated on
nomarchy-install on PATH). Welcome toast mentions the app. Close #57.

Verified: V1 (live eval + HM menu rebuild). V2 pending: ISO smoke.
This commit is contained in:
Bernardo Magri
2026-07-10 08:39:47 +01:00
parent a504f35b41
commit 35699f170f
4 changed files with 35 additions and 11 deletions

View File

@@ -77,15 +77,6 @@ last log lines + `nomarchy-doctor` instead of a raw Nix wall. Likely
home: menu rebuild wrapper and/or control-center path. Cost: medium home: menu rebuild wrapper and/or control-center path. Cost: medium
pkgs/menu; V1 + V2 smoke of the failure path (can force a bad eval). pkgs/menu; V1 + V2 smoke of the failure path (can force a bad eval).
### 57. Live: one always-visible “Install Nomarchy” action
Install is only in: 3s notify-send toast, getty helpLine, and tribal
knowledge of `nomarchy-install`. **One** durable surface on the live
host only: e.g. `xdg.desktopEntries` (Terminal=true) **or** a single
Tools/System menu item that opens a terminal into `nomarchy-install`.
Prefer that over more install-time questions. Also fix stale
`hosts/live.nix` header (“No installer yet”) if still present. Cost:
`live.nix` only; V1 ISO rebuild + V2 smoke.
### 58. `nomarchy-detect-hw` CLI (post-install re-probe) ### 58. `nomarchy-detect-hw` CLI (post-install re-probe)
HARDWARE.md §8. Installer already has pure `nomarchy_detect_hw` stdout HARDWARE.md §8. Installer already has pure `nomarchy_detect_hw` stdout
protocol (MODULE / NOMARCHY / DETAIL). Ship it as a package on PATH that protocol (MODULE / NOMARCHY / DETAIL). Ship it as a package on PATH that
@@ -201,7 +192,7 @@ nomarchy-menu usage string, secondary docs, always-on pieces → #47.)_
`btop.theme` for the three identity themes still open. Cost: asset capture; `btop.theme` for the three identity themes still open. Cost: asset capture;
V3 visual. V3 visual.
_(Generated Waybar missing identity-bar affordances → **#63**.)_ _(Generated Waybar missing identity-bar affordances → **#63** ✓ 2026-07-10.)_
- **summer-* CSS under-styles status module states** - **summer-* CSS under-styles status module states**
summer-day/night include modules in selectors but largely lack summer-day/night include modules in selectors but largely lack

View File

@@ -17,6 +17,16 @@ Template:
--- ---
## 2026-07-10 — #57 live Install Nomarchy affordance
- **Task:** NEXT #57 — durable live-ISO install surface (not only toast).
- **Did:** `xdg.desktopEntries.nomarchy-install` (Terminal=true) on live
HM; Tools Install Nomarchy self-gated on `command -v nomarchy-install`;
welcome toast wording updated. Closed #57.
- **Verified:** **V1** — live config eval exposes entry name/exec;
`downstream-template-home` rebuilds with menu gate. **V2 pending:**
ISO rebuild + smoke that the .desktop appears in the session.
- **Next suggestion:** #58 `nomarchy-detect-hw` CLI.
## 2026-07-10 — #63 generated Waybar logo + powermenu ## 2026-07-10 — #63 generated Waybar logo + powermenu
- **Task:** NEXT #63 — reverse parity: generated bar lacked whole-swap - **Task:** NEXT #63 — reverse parity: generated bar lacked whole-swap
logo → menu and power icon → power menu. logo → menu and power icon → power menu.

View File

@@ -172,6 +172,20 @@ in
# regression). Installed systems keep idle management. # regression). Installed systems keep idle management.
nomarchy.idle.enable = false; nomarchy.idle.enable = false;
# Durable install affordance (BACKLOG #57): always-visible desktop
# entry, not only the 3s toast / getty helpLine / tribal knowledge.
# Tools Install Nomarchy is self-gated on this package in rofi.nix.
xdg.desktopEntries.nomarchy-install = {
name = "Install Nomarchy";
genericName = "Installer";
comment = "Install Nomarchy to this machine's disk";
exec = "nomarchy-install";
terminal = true;
icon = "system-software-install";
categories = [ "System" "Settings" ];
startupNotify = true;
};
wayland.windowManager.hyprland.settings = { wayland.windowManager.hyprland.settings = {
# QEMU (and some panels) report a tiny "preferred" mode; ask for # QEMU (and some panels) report a tiny "preferred" mode; ask for
# the highest resolution instead. # the highest resolution instead.
@@ -179,7 +193,7 @@ in
# Welcome toast once the session is up (concatenated onto the # Welcome toast once the session is up (concatenated onto the
# base exec-once list). # base exec-once list).
exec-once = [ exec-once = [
"sh -c 'sleep 3; notify-send -a Nomarchy \"Welcome to Nomarchy\" \"SUPER+Return terminal · SUPER+T themes · install with nomarchy-install\"'" "sh -c 'sleep 3; notify-send -a Nomarchy \"Welcome to Nomarchy\" \"SUPER+Return terminal · SUPER+T themes · Install Nomarchy app or nomarchy-install\"'"
]; ];
}; };
}; };

View File

@@ -750,6 +750,10 @@ ${themeRows}
# Tools submenu utilities you invoke. Each leaf is also reachable # Tools submenu utilities you invoke. Each leaf is also reachable
# directly (SUPER+CTRL+<mnemonic>); this just keeps the root short. # directly (SUPER+CTRL+<mnemonic>); this just keeps the root short.
choice=$( { choice=$( {
# Live ISO only: nomarchy-install is systemPackages on the live
# host (BACKLOG #57). Installed systems never ship the package.
command -v nomarchy-install >/dev/null 2>&1 \
&& row "Install Nomarchy" system-software-install
row "Calculator${menuHint "calc"}" accessories-calculator row "Calculator${menuHint "calc"}" accessories-calculator
row "Clipboard${menuHint "clipboard"}" edit-paste row "Clipboard${menuHint "clipboard"}" edit-paste
row "Emoji${menuHint "emoji"}" face-smile-big row "Emoji${menuHint "emoji"}" face-smile-big
@@ -762,6 +766,11 @@ ${themeRows}
} | rofi -dmenu -show-icons -markup-rows -p Tools) || exit 0 } | rofi -dmenu -show-icons -markup-rows -p Tools) || exit 0
case "$choice" in case "$choice" in
"$BACK") exec "$0" ;; "$BACK") exec "$0" ;;
*"Install Nomarchy"*)
command -v nomarchy-install >/dev/null 2>&1 \
&& exec ${cfg.terminal} -e nomarchy-install
notify-send "Install" "nomarchy-install is not on PATH (live ISO only)."
exit 0 ;;
*Calc*) exec "$0" calc ;; *Calc*) exec "$0" calc ;;
*Clipboard*) exec "$0" clipboard ;; *Clipboard*) exec "$0" clipboard ;;
*Emoji*) exec "$0" emoji ;; *Emoji*) exec "$0" emoji ;;