diff --git a/default/omarchy/omarchy-menu.jsonc b/default/omarchy/omarchy-menu.jsonc index c912390b..fcffdc8f 100644 --- a/default/omarchy/omarchy-menu.jsonc +++ b/default/omarchy/omarchy-menu.jsonc @@ -275,14 +275,14 @@ // Remove "remove.package": {"icon":"󰣇","label":"Package","action":"xdg-terminal-exec --app-id=org.omarchy.terminal omarchy-pkg-remove"}, - "remove.webapp": {"icon":"","label":"Web App","when":"grep -qE '^Exec=.*(omarchy-launch-webapp|omarchy-webapp-handler)' $HOME/.local/share/applications/*.desktop","action":"omarchy-webapp-remove"}, - "remove.tui": {"icon":"","label":"TUI","when":"grep -qE '^Exec=.*(\\$TERMINAL|xdg-terminal-exec).*-e' $HOME/.local/share/applications/*.desktop","action":"omarchy-tui-remove"}, + "remove.ai": {"icon":"󱚤","label":"AI","title":"Remove"}, + "remove.service": {"icon":"","label":"Services","title":"Remove"}, "remove.development": {"icon":"󰵮","label":"Development","title":"Remove"}, "remove.theme": {"icon":"󰸌","label":"Theme","action":"omarchy-theme-remove"}, - "remove.browser": {"icon":"","label":"Browser","title":"Remove"}, - "remove.ai": {"icon":"󱚤","label":"AI","title":"Remove"}, "remove.gaming": {"icon":"","label":"Gaming","title":"Remove"}, - "remove.service": {"icon":"","label":"Services","title":"Remove"}, + "remove.browser": {"icon":"","label":"Browser","title":"Remove"}, + "remove.webapp": {"icon":"","label":"Web App","when":"grep -qE '^Exec=.*(omarchy-launch-webapp|omarchy-webapp-handler)' $HOME/.local/share/applications/*.desktop","action":"omarchy-webapp-remove"}, + "remove.tui": {"icon":"","label":"TUI","when":"grep -qE '^Exec=.*(\\$TERMINAL|xdg-terminal-exec).*-e' $HOME/.local/share/applications/*.desktop","action":"omarchy-tui-remove"}, "remove.windows": {"icon":"󰍲","label":"Windows","when":"[[ -f $HOME/.local/share/applications/windows-vm.desktop ]]","action":"omarchy-launch-floating-terminal-with-presentation 'omarchy-windows-vm remove'"}, "remove.preinstalls": {"icon":"󰏓","label":"Preinstalls","when":"[[ ! -f $HOME/.local/state/omarchy/preinstalls-removed ]]","action":"omarchy-launch-floating-terminal-with-presentation omarchy-remove-preinstalls"}, "remove.security": {"icon":"","label":"Security","title":"Remove"}, diff --git a/test/shell.d/menu-test.sh b/test/shell.d/menu-test.sh index e4c4a926..be2736f3 100644 --- a/test/shell.d/menu-test.sh +++ b/test/shell.d/menu-test.sh @@ -289,6 +289,26 @@ assert( && defaultById['remove.browser.zen'].when === 'omarchy-pkg-present zen-browser-bin', 'menu still hides Remove rows for software that is not installed' ) +assertDeepEqual( + defaultItems + .filter(item => item.parent === 'remove') + .map(item => item.id), + [ + 'remove.package', + 'remove.ai', + 'remove.service', + 'remove.development', + 'remove.theme', + 'remove.gaming', + 'remove.browser', + 'remove.webapp', + 'remove.tui', + 'remove.windows', + 'remove.preinstalls', + 'remove.security' + ], + 'menu orders Remove categories like their Install counterparts, followed by Remove-only categories' +) assert( defaultById['setup.security.passwordless-sudo'].action.includes('omarchy-sudo-passwordless'), 'menu places Passwordless Sudo under Setup > Security'