chore(hygiene): remove legacy Arch Linux and imperative scripts
- Delete obsolete pacman, AUR, and shell-based update scripts - Remove imperative configuration refresh scripts replaced by Home Manager - Overhaul nomarchy-menu to remove Install/Remove submenus and legacy options - Clean up unused assets including applications/ directory and icons - Enforce strict upstream/downstream separation
This commit is contained in:
@@ -58,30 +58,6 @@ open_in_editor() {
|
||||
nomarchy-launch-editor "$1"
|
||||
}
|
||||
|
||||
install() {
|
||||
present_terminal "echo 'Installing $1...'; nomarchy-pkg-add $2"
|
||||
}
|
||||
|
||||
install_and_launch() {
|
||||
present_terminal "echo 'Installing $1...'; nomarchy-pkg-add $2 && setsid gtk-launch $3"
|
||||
}
|
||||
|
||||
install_font() {
|
||||
present_terminal "echo 'Installing $1...'; nomarchy-pkg-add $2 && sleep 2 && nomarchy-font-set '$3'"
|
||||
}
|
||||
|
||||
install_terminal() {
|
||||
present_terminal "nomarchy-install-terminal $1"
|
||||
}
|
||||
|
||||
aur_install() {
|
||||
present_terminal "echo 'Installing $1 from AUR...'; nomarchy-pkg-aur-add $2"
|
||||
}
|
||||
|
||||
aur_install_and_launch() {
|
||||
present_terminal "echo 'Installing $1 from AUR...'; nomarchy-pkg-aur-add $2 && setsid gtk-launch $3"
|
||||
}
|
||||
|
||||
show_learn_menu() {
|
||||
case $(menu "Learn" " Keybindings\n Nomarchy\n Hyprland\n Arch\n Neovim\n Bash") in
|
||||
*Keybindings*) nomarchy-menu-keybindings ;;
|
||||
@@ -278,7 +254,7 @@ show_setup_config_menu() {
|
||||
show_setup_system_menu() {
|
||||
local options=""
|
||||
|
||||
if [[ -f ~/.local/state/nomarchy/toggles/suspend-off ]]; then
|
||||
if [[ $NOMARCHY_TOGGLE_SUSPEND == "false" ]]; then
|
||||
options="$options Enable Suspend"
|
||||
else
|
||||
options="$options Disable Suspend"
|
||||
@@ -298,216 +274,11 @@ show_setup_system_menu() {
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_menu() {
|
||||
case $(menu "Install" " Package\n AUR\n Web App\n TUI\n Service\n Style\n Development\n Editor\n Terminal\n AI\n Windows\n Gaming") in
|
||||
*Package*) terminal nomarchy-pkg-install ;;
|
||||
*AUR*) terminal nomarchy-pkg-aur-install ;;
|
||||
*Web*) present_terminal nomarchy-webapp-install ;;
|
||||
*TUI*) present_terminal nomarchy-tui-install ;;
|
||||
*Service*) show_install_service_menu ;;
|
||||
*Style*) show_install_style_menu ;;
|
||||
*Development*) show_install_development_menu ;;
|
||||
*Editor*) show_install_editor_menu ;;
|
||||
*Terminal*) show_install_terminal_menu ;;
|
||||
*AI*) show_install_ai_menu ;;
|
||||
*Windows*) present_terminal "nomarchy-windows-vm install" ;;
|
||||
*Gaming*) show_install_gaming_menu ;;
|
||||
*) show_main_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_service_menu() {
|
||||
case $(menu "Install" " Dropbox\n Tailscale\n NordVPN [AUR]\n Bitwarden\n Chromium Account") in
|
||||
*Dropbox*) present_terminal nomarchy-install-dropbox ;;
|
||||
*Tailscale*) present_terminal nomarchy-install-tailscale ;;
|
||||
*NordVPN*) present_terminal nomarchy-install-nordvpn ;;
|
||||
*Bitwarden*) install_and_launch "Bitwarden" "bitwarden bitwarden-cli" "bitwarden" ;;
|
||||
*Chromium*) present_terminal nomarchy-install-chromium-google-account ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_editor_menu() {
|
||||
case $(menu "Install" " VSCode\n Cursor\n Zed\n Sublime Text\n Helix\n Emacs") in
|
||||
*VSCode*) present_terminal nomarchy-install-vscode ;;
|
||||
*Cursor*) install_and_launch "Cursor" "cursor-bin" "cursor" ;;
|
||||
*Zed*) install_and_launch "Zed" "zed" "dev.zed.Zed" ;;
|
||||
*Sublime*) install_and_launch "Sublime Text" "sublime-text-4" "sublime_text" ;;
|
||||
*Helix*) install "Helix" "helix" ;;
|
||||
*Emacs*) install "Emacs" "emacs-wayland" && systemctl --user enable --now emacs.service ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_terminal_menu() {
|
||||
case $(menu "Install" " Alacritty\n Ghostty\n Kitty") in
|
||||
*Alacritty*) install_terminal "alacritty" ;;
|
||||
*Ghostty*) install_terminal "ghostty" ;;
|
||||
*Kitty*) install_terminal "kitty" ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_ai_menu() {
|
||||
ollama_pkg=$(
|
||||
(command -v nvidia-smi &>/dev/null && echo ollama-cuda) ||
|
||||
(command -v rocminfo &>/dev/null && echo ollama-rocm) ||
|
||||
echo ollama
|
||||
)
|
||||
|
||||
case $(menu "Install" " Dictation\n LM Studio\n Ollama\n Crush") in
|
||||
*Dictation*) present_terminal nomarchy-voxtype-install ;;
|
||||
*Studio*) install "LM Studio" "lmstudio-bin" ;;
|
||||
*Ollama*) install "Ollama" $ollama_pkg ;;
|
||||
*Crush*) install "Crush" "crush-bin" ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_gaming_menu() {
|
||||
case $(menu "Install" " Steam\n NVIDIA GeForce NOW\n RetroArch [AUR]\n Minecraft\n Xbox Controller [AUR]") in
|
||||
*Steam*) present_terminal nomarchy-install-steam ;;
|
||||
*GeForce*) present_terminal nomarchy-install-geforce-now ;;
|
||||
*RetroArch*) aur_install_and_launch "RetroArch" "retroarch retroarch-assets libretro libretro-fbneo" "com.libretro.RetroArch.desktop" ;;
|
||||
*Minecraft*) install_and_launch "Minecraft" "minecraft-launcher" "minecraft-launcher" ;;
|
||||
*Xbox*) present_terminal nomarchy-install-xbox-controllers ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_style_menu() {
|
||||
case $(menu "Install" " Theme\n Background\n Font") in
|
||||
*Theme*) present_terminal nomarchy-theme-install ;;
|
||||
*Background*) nomarchy-theme-bg-install ;;
|
||||
*Font*) show_install_font_menu ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_font_menu() {
|
||||
case $(menu "Install" " Cascadia Mono\n Meslo LG Mono\n Fira Code\n Victor Code\n Bistream Vera Mono\n Iosevka" "--width 350") in
|
||||
*Cascadia*) install_font "Cascadia Mono" "ttf-cascadia-mono-nerd" "CaskaydiaMono Nerd Font" ;;
|
||||
*Meslo*) install_font "Meslo LG Mono" "ttf-meslo-nerd" "MesloLGL Nerd Font" ;;
|
||||
*Fira*) install_font "Fira Code" "ttf-firacode-nerd" "FiraCode Nerd Font" ;;
|
||||
*Victor*) install_font "Victor Code" "ttf-victor-mono-nerd" "VictorMono Nerd Font" ;;
|
||||
*Bistream*) install_font "Bistream Vera Code" "ttf-bitstream-vera-mono-nerd" "BitstromWera Nerd Font" ;;
|
||||
*Iosevka*) install_font "Iosevka" "ttf-iosevka-nerd" "Iosevka Nerd Font Mono" ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_development_menu() {
|
||||
case $(menu "Install" " Ruby on Rails\n Docker DB\n JavaScript\n Go\n PHP\n Python\n Elixir\n Zig\n Rust\n Java\n .NET\n OCaml\n Clojure\n Scala") in
|
||||
*Rails*) present_terminal "nomarchy-install-dev-env ruby" ;;
|
||||
*Docker*) present_terminal nomarchy-install-docker-dbs ;;
|
||||
*JavaScript*) show_install_javascript_menu ;;
|
||||
*Go*) present_terminal "nomarchy-install-dev-env go" ;;
|
||||
*PHP*) show_install_php_menu ;;
|
||||
*Python*) present_terminal "nomarchy-install-dev-env python" ;;
|
||||
*Elixir*) show_install_elixir_menu ;;
|
||||
*Zig*) present_terminal "nomarchy-install-dev-env zig" ;;
|
||||
*Rust*) present_terminal "nomarchy-install-dev-env rust" ;;
|
||||
*Java*) present_terminal "nomarchy-install-dev-env java" ;;
|
||||
*NET*) present_terminal "nomarchy-install-dev-env dotnet" ;;
|
||||
*OCaml*) present_terminal "nomarchy-install-dev-env ocaml" ;;
|
||||
*Clojure*) present_terminal "nomarchy-install-dev-env clojure" ;;
|
||||
*Scala*) present_terminal "nomarchy-install-dev-env scala" ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_javascript_menu() {
|
||||
case $(menu "Install" " Node.js\n Bun\n Deno") in
|
||||
*Node*) present_terminal "nomarchy-install-dev-env node" ;;
|
||||
*Bun*) present_terminal "nomarchy-install-dev-env bun" ;;
|
||||
*Deno*) present_terminal "nomarchy-install-dev-env deno" ;;
|
||||
*) show_install_development_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_php_menu() {
|
||||
case $(menu "Install" " PHP\n Laravel\n Symfony") in
|
||||
*PHP*) present_terminal "nomarchy-install-dev-env php" ;;
|
||||
*Laravel*) present_terminal "nomarchy-install-dev-env laravel" ;;
|
||||
*Symfony*) present_terminal "nomarchy-install-dev-env symfony" ;;
|
||||
*) show_install_development_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_install_elixir_menu() {
|
||||
case $(menu "Install" " Elixir\n Phoenix") in
|
||||
*Elixir*) present_terminal "nomarchy-install-dev-env elixir" ;;
|
||||
*Phoenix*) present_terminal "nomarchy-install-dev-env phoenix" ;;
|
||||
*) show_install_development_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_remove_menu() {
|
||||
case $(menu "Remove" " Package\n Web App\n TUI\n Development\n Preinstalls\n Dictation\n Theme\n Windows\n Fingerprint\n Fido2") in
|
||||
*Package*) terminal nomarchy-pkg-remove ;;
|
||||
*Web*) present_terminal nomarchy-webapp-remove ;;
|
||||
*TUI*) present_terminal nomarchy-tui-remove ;;
|
||||
*Development*) show_remove_development_menu ;;
|
||||
*Preinstalls*) present_terminal nomarchy-remove-preinstalls ;;
|
||||
*Dictation*) present_terminal nomarchy-voxtype-remove ;;
|
||||
*Theme*) present_terminal nomarchy-theme-remove ;;
|
||||
*Windows*) present_terminal "nomarchy-windows-vm remove" ;;
|
||||
*Fingerprint*) present_terminal "nomarchy-setup-fingerprint --remove" ;;
|
||||
*Fido2*) present_terminal "nomarchy-setup-fido2 --remove" ;;
|
||||
*) show_main_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_remove_development_menu() {
|
||||
case $(menu "Remove" " Ruby on Rails\n JavaScript\n Go\n PHP\n Python\n Elixir\n Zig\n Rust\n Java\n .NET\n OCaml\n Clojure\n Scala") in
|
||||
*Rails*) present_terminal "nomarchy-remove-dev-env ruby" ;;
|
||||
*JavaScript*) show_remove_javascript_menu ;;
|
||||
*Go*) present_terminal "nomarchy-remove-dev-env go" ;;
|
||||
*PHP*) show_remove_php_menu ;;
|
||||
*Python*) present_terminal "nomarchy-remove-dev-env python" ;;
|
||||
*Elixir*) show_remove_elixir_menu ;;
|
||||
*Zig*) present_terminal "nomarchy-remove-dev-env zig" ;;
|
||||
*Rust*) present_terminal "nomarchy-remove-dev-env rust" ;;
|
||||
*Java*) present_terminal "nomarchy-remove-dev-env java" ;;
|
||||
*NET*) present_terminal "nomarchy-remove-dev-env dotnet" ;;
|
||||
*OCaml*) present_terminal "nomarchy-remove-dev-env ocaml" ;;
|
||||
*Clojure*) present_terminal "nomarchy-remove-dev-env clojure" ;;
|
||||
*Scala*) present_terminal "nomarchy-remove-dev-env scala" ;;
|
||||
*) show_remove_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_remove_javascript_menu() {
|
||||
case $(menu "Remove" " Node.js\n Bun\n Deno") in
|
||||
*Node*) present_terminal "nomarchy-remove-dev-env node" ;;
|
||||
*Bun*) present_terminal "nomarchy-remove-dev-env bun" ;;
|
||||
*Deno*) present_terminal "nomarchy-remove-dev-env deno" ;;
|
||||
*) show_remove_development_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_remove_php_menu() {
|
||||
case $(menu "Remove" " PHP\n Laravel\n Symfony") in
|
||||
*PHP*) present_terminal "nomarchy-remove-dev-env php" ;;
|
||||
*Laravel*) present_terminal "nomarchy-remove-dev-env laravel" ;;
|
||||
*Symfony*) present_terminal "nomarchy-remove-dev-env symfony" ;;
|
||||
*) show_remove_development_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_remove_elixir_menu() {
|
||||
case $(menu "Remove" " Elixir\n Phoenix") in
|
||||
*Elixir*) present_terminal "nomarchy-remove-dev-env elixir" ;;
|
||||
*Phoenix*) present_terminal "nomarchy-remove-dev-env phoenix" ;;
|
||||
*) show_remove_development_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_update_menu() {
|
||||
case $(menu "Update" " Nomarchy\n Channel\n Config\n Extra Themes\n Process\n Hardware\n Firmware\n Password\n Timezone\n Time") in
|
||||
case $(menu "Update" " Nomarchy\n Extra Themes\n Process\n Hardware\n Firmware\n Password\n Timezone\n Time") in
|
||||
*Nomarchy*) present_terminal nomarchy-update ;;
|
||||
*Channel*) show_update_channel_menu ;;
|
||||
*Config*) show_update_config_menu ;;
|
||||
*Themes*) present_terminal nomarchy-theme-update ;;
|
||||
*Process*) show_update_process_menu ;;
|
||||
*Hardware*) show_update_hardware_menu ;;
|
||||
@@ -518,16 +289,6 @@ show_update_menu() {
|
||||
*) show_main_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_update_channel_menu() {
|
||||
case $(menu "Update channel" "🟢 Stable\n🟡 RC\n🟠 Edge\n🔴 Dev") in
|
||||
*Stable*) present_terminal "nomarchy-channel-set stable" ;;
|
||||
*RC*) present_terminal "nomarchy-channel-set rc" ;;
|
||||
*Edge*) present_terminal "nomarchy-channel-set edge" ;;
|
||||
*Dev*) present_terminal "nomarchy-channel-set dev" ;;
|
||||
*) show_update_menu ;;
|
||||
esac
|
||||
}
|
||||
show_update_process_menu() {
|
||||
case $(menu "Restart" " Hypridle\n Hyprsunset\n Swayosd\n Walker\n Waybar") in
|
||||
*Hypridle*) nomarchy-restart-hypridle ;;
|
||||
@@ -539,20 +300,7 @@ show_update_process_menu() {
|
||||
esac
|
||||
}
|
||||
|
||||
show_update_config_menu() {
|
||||
case $(menu "Use default config" " Hyprland\n Hypridle\n Hyprlock\n Hyprsunset\n Plymouth\n Swayosd\n Tmux\n Walker\n Waybar") in
|
||||
*Hyprland*) present_terminal nomarchy-refresh-hyprland ;;
|
||||
*Hypridle*) present_terminal nomarchy-refresh-hypridle ;;
|
||||
*Hyprlock*) present_terminal nomarchy-refresh-hyprlock ;;
|
||||
*Hyprsunset*) present_terminal nomarchy-refresh-hyprsunset ;;
|
||||
*Plymouth*) present_terminal nomarchy-refresh-plymouth ;;
|
||||
*Swayosd*) present_terminal nomarchy-refresh-swayosd ;;
|
||||
*Tmux*) present_terminal nomarchy-refresh-tmux ;;
|
||||
*Walker*) present_terminal nomarchy-refresh-walker ;;
|
||||
*Waybar*) present_terminal nomarchy-refresh-waybar ;;
|
||||
*) show_update_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
|
||||
show_update_hardware_menu() {
|
||||
case $(menu "Restart" " Audio\n Wi-Fi\n Bluetooth") in
|
||||
@@ -577,7 +325,7 @@ show_about() {
|
||||
|
||||
show_system_menu() {
|
||||
local options=" Screensaver\n Lock"
|
||||
[[ ! -f ~/.local/state/nomarchy/toggles/suspend-off ]] && options="$options\n Suspend"
|
||||
[[ $NOMARCHY_TOGGLE_SUSPEND != "false" ]] && options="$options\n Suspend"
|
||||
nomarchy-hibernation-available && options="$options\n Hibernate"
|
||||
options="$options\n Logout\n Restart\n Shutdown"
|
||||
|
||||
@@ -594,7 +342,7 @@ show_system_menu() {
|
||||
}
|
||||
|
||||
show_main_menu() {
|
||||
go_to_menu "$(menu "Go" " Apps\n Learn\n Trigger\n Style\n Setup\n Install\n Remove\n Update\n About\n System")"
|
||||
go_to_menu "$(menu "Go" " Apps\n Learn\n Trigger\n Style\n Setup\n Update\n About\n System")"
|
||||
}
|
||||
|
||||
go_to_menu() {
|
||||
@@ -611,8 +359,6 @@ go_to_menu() {
|
||||
*screenrecord*) show_screenrecord_menu ;;
|
||||
*setup*) show_setup_menu ;;
|
||||
*power*) show_setup_power_menu ;;
|
||||
*install*) show_install_menu ;;
|
||||
*remove*) show_remove_menu ;;
|
||||
*update*) show_update_menu ;;
|
||||
*about*) show_about ;;
|
||||
*system*) show_system_menu ;;
|
||||
|
||||
Reference in New Issue
Block a user