#!/bin/bash # omarchy:summary=Install one of the approved terminals and set it as the default for Omarchy (Super + Return etc). # omarchy:args= # omarchy:requires-sudo=true if (($# == 0)); then echo "Usage: omarchy-install-terminal [alacritty|foot|ghostty|kitty]" exit 1 fi package="$1" # Map package name to desktop entry ID case "$package" in alacritty) desktop_id="Alacritty.desktop" ;; foot) desktop_id="foot.desktop" ;; ghostty) desktop_id="com.mitchellh.ghostty.desktop" ;; kitty) desktop_id="kitty.desktop" ;; *) echo "Unknown terminal: $package" exit 1 ;; esac echo "Installing $package..." # Install package if omarchy-pkg-add $package; then # Copy custom desktop entries with X-TerminalArg* keys if [[ $package == "alacritty" ]]; then mkdir -p ~/.local/share/applications cp "$OMARCHY_PATH/applications/$desktop_id" ~/.local/share/applications/ elif [[ $package == "foot" ]]; then mkdir -p ~/.local/share/applications cp "$OMARCHY_PATH/default/foot/$desktop_id" ~/.local/share/applications/ fi # Copy default config for optional terminals when missing if [[ ! -e ~/.config/$package ]]; then cp -Rpf "$OMARCHY_PATH/config/$package" ~/.config/ fi # Update xdg-terminals.list to prioritize the proper terminal cat >~/.config/xdg-terminals.list <