Hyprland-dotfiles/.install/keyboard.sh

91 lines
3.1 KiB
Bash
Raw Normal View History

#!/bin/bash
# ------------------------------------------------------
# Setup
# ------------------------------------------------------
echo -e "${GREEN}"
2023-12-21 15:57:44 -05:00
figlet "Keyboard"
echo -e "${NONE}"
2024-05-27 10:15:06 -04:00
setkeyboard=0
if [ "$restored" == "1" ]; then
echo ":: You have already restored your settings into the new installation."
echo "You can repeat the keyboard setup again to choose between a desktop and laptop optimized configuration."
echo
if gum confirm "Do you want to setup your keyboard again?" ;then
setkeyboard=0
elif [ $? -eq 130 ]; then
2024-05-27 10:15:06 -04:00
echo ":: Installation canceled."
exit 130
else
2024-05-27 10:15:06 -04:00
echo ":: Keyboard setup skipped."
setkeyboard=1
fi
2024-05-27 10:15:06 -04:00
fi
if [ "$setkeyboard" == "0" ] ;then
# Default layout and variants
keyboard_layout="us"
2024-05-29 05:42:22 -04:00
keyboard_variant=""
2024-05-27 10:15:06 -04:00
_setupKeyboardLayout() {
keyboard_layout=$(localectl list-x11-keymap-layouts | gum filter --height 15 --placeholder "Find your keyboard layout...")
echo ":: Keyboard layout changed to $keyboard_layout"
2024-05-29 05:42:22 -04:00
_setupKeyboardVariant
}
_setupKeyboardVariant() {
if gum confirm "Do you want to set a variant of the keyboard?" ; then
keyboard_variant=$(localectl list-x11-keymap-variants | gum filter --height 15 --placeholder "Find your keyboard layout...")
echo ":: Keyboard variant changed to $keyboard_variant"
fi
2024-05-27 10:15:06 -04:00
_confirmKeyboard
}
_confirmKeyboard() {
2024-05-29 05:42:22 -04:00
echo
2024-05-27 10:15:06 -04:00
echo "Current selected keyboard setup:"
echo "Keyboard layout: $keyboard_layout"
2024-05-29 05:42:22 -04:00
echo "Keyboard variant: $keyboard_variant"
2024-05-27 10:15:06 -04:00
echo
if gum confirm "Do you want proceed with this keyboard setup?" --affirmative "Proceed" --negative "Change" ;then
return 0
elif [ $? -eq 130 ]; then
exit 130
else
_setupKeyboardLayout
fi
}
_confirmKeyboard
2024-05-27 10:15:06 -04:00
if gum confirm "Are you using a laptop and would you like to enable the laptop presets?"; then
cp .install/templates/keyboard-laptop.conf ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
echo "source = ~/dotfiles/hypr/conf/layouts/laptop.conf" > ~/dotfiles-versions/$version/hypr/conf/layout.conf
elif [ $? -eq 130 ]; then
echo ":: Installation canceled."
exit 130
else
cp .install/templates/keyboard-default.conf ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
fi
2023-12-22 03:51:55 -05:00
cp .install/templates/autostart.sh ~/dotfiles-versions/$version/qtile/autostart.sh
2023-11-20 15:45:56 -05:00
SEARCH="KEYBOARD_LAYOUT"
REPLACE="$keyboard_layout"
sed -i "s/$SEARCH/$REPLACE/g" ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
2024-05-29 05:42:22 -04:00
SEARCH="KEYBOARD_VARIANT"
REPLACE="$keyboard_variant"
sed -i "s/$SEARCH/$REPLACE/g" ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
2024-01-06 09:14:21 -05:00
SEARCH="KEYBOARD_LAYOUT"
REPLACE="$keyboard_layout"
2023-12-20 05:05:15 -05:00
sed -i "s/$SEARCH/$REPLACE/g" ~/dotfiles-versions/$version/qtile/autostart.sh
2024-05-27 10:15:06 -04:00
echo
echo ":: Keyboard setup complete."
echo
2023-11-22 08:21:02 -05:00
echo "PLEASE NOTE: You can update your keyboard layout later in ~/dotfiles/hypr/conf/keyboard.conf"
2024-05-27 10:15:06 -04:00
fi