Set default terminal, browser, editor explicitly (#5651)
* Set default terminal, browser, editor explicitly * Consistent glyphs and setup * Tweaks * Always there * Proper order * Don't make a browser the default just because it's getting installed
This commit is contained in:
+112
-5
@@ -277,7 +277,7 @@ show_setup_menu() {
|
||||
local options=" Audio\n Wifi\n Bluetooth\n Power Profile\n System Sleep\n Monitors"
|
||||
[[ -f ~/.config/hypr/bindings.conf ]] && options="$options\n Keybindings"
|
||||
[[ -f ~/.config/hypr/input.conf ]] && options="$options\n Input"
|
||||
options="$options\n DNS\n Security\n Config"
|
||||
options="$options\n Defaults\n DNS\n Security\n Config"
|
||||
|
||||
case $(menu "Setup" "$options") in
|
||||
*Audio*) omarchy-launch-audio ;;
|
||||
@@ -288,6 +288,7 @@ show_setup_menu() {
|
||||
*Monitors*) open_in_editor ~/.config/hypr/monitors.conf ;;
|
||||
*Keybindings*) open_in_editor ~/.config/hypr/bindings.conf ;;
|
||||
*Input*) open_in_editor ~/.config/hypr/input.conf ;;
|
||||
*Defaults*) show_setup_default_menu ;;
|
||||
*DNS*) present_terminal omarchy-setup-dns ;;
|
||||
*Security*) show_setup_security_menu ;;
|
||||
*Config*) show_setup_config_menu ;;
|
||||
@@ -313,9 +314,114 @@ show_setup_security_menu() {
|
||||
esac
|
||||
}
|
||||
|
||||
show_setup_default_menu() {
|
||||
case $(menu "Default" " Browser\n Terminal\n Editor") in
|
||||
*Browser*) show_setup_default_browser_menu ;;
|
||||
*Terminal*) show_setup_default_terminal_menu ;;
|
||||
*Editor*) show_setup_default_editor_menu ;;
|
||||
*) show_setup_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
browser_desktop_exists() {
|
||||
[[ -f ~/.local/share/applications/$1 || -f ~/.nix-profile/share/applications/$1 || -f /usr/share/applications/$1 ]]
|
||||
}
|
||||
|
||||
show_setup_default_browser_menu() {
|
||||
local options=""
|
||||
browser_desktop_exists chromium.desktop && options="$options Chromium"
|
||||
browser_desktop_exists google-chrome.desktop && options="${options:+$options\n} Chrome"
|
||||
browser_desktop_exists brave-browser.desktop && options="${options:+$options\n} Brave"
|
||||
browser_desktop_exists brave-origin-beta.desktop && options="${options:+$options\n} Brave Origin"
|
||||
browser_desktop_exists microsoft-edge.desktop && options="${options:+$options\n} Edge"
|
||||
browser_desktop_exists firefox.desktop && options="${options:+$options\n} Firefox"
|
||||
browser_desktop_exists zen.desktop && options="${options:+$options\n} Zen"
|
||||
|
||||
local current=""
|
||||
case "$(omarchy-default-browser)" in
|
||||
chromium) current=" Chromium" ;;
|
||||
chrome) current=" Chrome" ;;
|
||||
brave) current=" Brave" ;;
|
||||
brave-origin) current=" Brave Origin" ;;
|
||||
edge) current=" Edge" ;;
|
||||
firefox) current=" Firefox" ;;
|
||||
zen) current=" Zen" ;;
|
||||
esac
|
||||
|
||||
case $(menu "Default Browser" "$options" "" "$current") in
|
||||
*Chromium*) omarchy-default-browser chromium ;;
|
||||
*Chrome*) omarchy-default-browser chrome ;;
|
||||
*"Brave Origin"*) omarchy-default-browser brave-origin ;;
|
||||
*Brave*) omarchy-default-browser brave ;;
|
||||
*Edge*) omarchy-default-browser edge ;;
|
||||
*Firefox*) omarchy-default-browser firefox ;;
|
||||
*Zen*) omarchy-default-browser zen ;;
|
||||
*) show_setup_default_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_setup_default_terminal_menu() {
|
||||
local options=""
|
||||
omarchy-cmd-present alacritty && options="$options Alacritty"
|
||||
omarchy-cmd-present foot && options="${options:+$options\n} Foot"
|
||||
omarchy-cmd-present ghostty && options="${options:+$options\n} Ghostty"
|
||||
omarchy-cmd-present kitty && options="${options:+$options\n} Kitty"
|
||||
|
||||
local current=""
|
||||
case "$(omarchy-default-terminal)" in
|
||||
alacritty) current=" Alacritty" ;;
|
||||
foot) current=" Foot" ;;
|
||||
ghostty) current=" Ghostty" ;;
|
||||
kitty) current=" Kitty" ;;
|
||||
esac
|
||||
|
||||
case $(menu "Default Terminal" "$options" "" "$current") in
|
||||
*Alacritty*) omarchy-default-terminal alacritty ;;
|
||||
*Foot*) omarchy-default-terminal foot ;;
|
||||
*Ghostty*) omarchy-default-terminal ghostty ;;
|
||||
*Kitty*) omarchy-default-terminal kitty ;;
|
||||
*) show_setup_default_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_setup_default_editor_menu() {
|
||||
local options=""
|
||||
omarchy-cmd-present nvim && options="$options Neovim"
|
||||
omarchy-cmd-present code && options="${options:+$options\n} VSCode"
|
||||
omarchy-cmd-present cursor && options="${options:+$options\n} Cursor"
|
||||
omarchy-cmd-present zed && options="${options:+$options\n} Zed"
|
||||
omarchy-cmd-present sublime_text && options="${options:+$options\n} Sublime Text"
|
||||
omarchy-cmd-present helix && options="${options:+$options\n} Helix"
|
||||
omarchy-cmd-present vim && options="${options:+$options\n} Vim"
|
||||
omarchy-cmd-present emacs && options="${options:+$options\n} Emacs"
|
||||
|
||||
local current=""
|
||||
case "$(omarchy-default-editor)" in
|
||||
nvim) current=" Neovim" ;;
|
||||
code) current=" VSCode" ;;
|
||||
cursor) current=" Cursor" ;;
|
||||
zed) current=" Zed" ;;
|
||||
sublime_text) current=" Sublime Text" ;;
|
||||
helix) current=" Helix" ;;
|
||||
vim) current=" Vim" ;;
|
||||
emacs) current=" Emacs" ;;
|
||||
esac
|
||||
|
||||
case $(menu "Default Editor" "$options" "" "$current") in
|
||||
*Neovim*) omarchy-default-editor nvim ;;
|
||||
*VSCode*) omarchy-default-editor code ;;
|
||||
*Cursor*) omarchy-default-editor cursor ;;
|
||||
*Zed*) omarchy-default-editor zed ;;
|
||||
*Sublime*) omarchy-default-editor sublime_text ;;
|
||||
*Helix*) omarchy-default-editor helix ;;
|
||||
*Vim*) omarchy-default-editor vim ;;
|
||||
*Emacs*) omarchy-default-editor emacs ;;
|
||||
*) show_setup_default_menu ;;
|
||||
esac
|
||||
}
|
||||
|
||||
show_setup_config_menu() {
|
||||
case $(menu "Setup" " Defaults\n Hyprland\n Hypridle\n Hyprlock\n Hyprsunset\n Swayosd\n Walker\n Waybar\n XCompose") in
|
||||
*Defaults*) open_in_editor ~/.config/uwsm/default ;;
|
||||
case $(menu "Setup" " Hyprland\n Hypridle\n Hyprlock\n Hyprsunset\n Swayosd\n Walker\n Waybar\n XCompose") in
|
||||
*Hyprland*) open_in_editor ~/.config/hypr/hyprland.conf ;;
|
||||
*Hypridle*) open_in_editor ~/.config/hypr/hypridle.conf && omarchy-restart-hypridle ;;
|
||||
*Hyprlock*) open_in_editor ~/.config/hypr/hyprlock.conf ;;
|
||||
@@ -371,7 +477,7 @@ show_install_menu() {
|
||||
}
|
||||
|
||||
show_install_browser_menu() {
|
||||
case $(menu "Install" " Chrome\n Edge\n Brave\n Brave Origin\n Firefox\n Zen") in
|
||||
case $(menu "Install" " Chrome\n Edge\n Brave\n Brave Origin\n Firefox\n Zen") in
|
||||
*Chrome*) present_terminal "omarchy-install-browser chrome" ;;
|
||||
*Edge*) present_terminal "omarchy-install-browser edge" ;;
|
||||
*"Brave Origin"*) present_terminal "omarchy-install-browser brave-origin" ;;
|
||||
@@ -395,12 +501,13 @@ show_install_service_menu() {
|
||||
}
|
||||
|
||||
show_install_editor_menu() {
|
||||
case $(menu "Install" " VSCode\n Cursor\n Zed\n Sublime Text\n Helix\n Emacs") in
|
||||
case $(menu "Install" " VSCode\n Cursor\n Zed\n Sublime Text\n Helix\n Vim\n Emacs") in
|
||||
*VSCode*) present_terminal omarchy-install-vscode ;;
|
||||
*Cursor*) install_and_launch "Cursor" "cursor-bin" "cursor" ;;
|
||||
*Zed*) present_terminal omarchy-install-zed ;;
|
||||
*Sublime*) install_and_launch "Sublime Text" "sublime-text-4" "sublime_text" ;;
|
||||
*Helix*) present_terminal omarchy-install-helix ;;
|
||||
*Vim*) install "Vim" "vim" ;;
|
||||
*Emacs*) install "Emacs" "emacs-wayland" && systemctl --user enable --now emacs.service ;;
|
||||
*) show_install_menu ;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user