feat: centralize hyprland config, resolve wayland deadkey issues for linux, and update installer/docs
This commit is contained in:
Regular → Executable
+28
-15
@@ -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..."
|
||||
|
||||
Reference in New Issue
Block a user