feat: centralize hyprland config, resolve wayland deadkey issues for linux, and update installer/docs

This commit is contained in:
2026-06-22 19:17:28 +02:00
parent ff1174c60c
commit 9eb69801ea
21 changed files with 1084 additions and 42 deletions
Regular → Executable
+28 -15
View File
@@ -46,6 +46,26 @@ detect_os() {
log "Detected: $OS with $PACKAGE_MANAGER"
}
# Interactive prompt helper
prompt_yes_no() {
if [ ! -t 0 ]; then
# Non-interactive shell, return default (No)
return 1
fi
local prompt_msg=$1
local response
read -p "$prompt_msg [y/N]: " response
case "$response" in
[yY][eE][sS]|[yY])
return 0
;;
*)
return 1
;;
esac
}
install_package_manager() {
case $PACKAGE_MANAGER in
"brew")
@@ -403,6 +423,14 @@ setup_other_configs() {
rm -f ~/.tmux.conf
ln -sf "$DOTFILES_DIR/.config/tmux/tmux.conf" ~/.tmux.conf
fi
# Hyprland (Linux only)
if [ "$OS" != "macos" ] && [ -d "$DOTFILES_DIR/.config/hypr" ]; then
if prompt_yes_no "Do you want to configure Hyprland window manager?"; then
rm -rf ~/.config/hypr
ln -sf "$DOTFILES_DIR/.config/hypr" ~/.config/hypr
fi
fi
log "Configurations symlinked!"
}
@@ -447,21 +475,6 @@ install_optional_ai_tools() {
echo -e "\n${YELLOW}=== Optional AI CLI Tools ===${NC}"
# Prompt helper
prompt_yes_no() {
local prompt_msg=$1
local response
read -p "$prompt_msg [y/N]: " response
case "$response" in
[yY][eE][sS]|[yY])
return 0
;;
*)
return 1
;;
esac
}
# 1. Claude Code
if prompt_yes_no "Do you want to install Claude Code (@anthropic-ai/claude-code)?"; then
log "Installing Claude Code..."