From 6acd758d515365caa6f414db4549be13b8d2ef35 Mon Sep 17 00:00:00 2001 From: Stephan Raabe Date: Mon, 27 Nov 2023 08:57:38 +0100 Subject: [PATCH] More variations --- .install/restore.sh | 30 ++++-- hypr/conf/environment.conf | 8 +- hypr/conf/environments/default.conf | 8 ++ hypr/conf/environments/kvm.conf | 10 ++ hypr/conf/keybinding.conf | 1 + .../default.conf} | 2 + hypr/conf/keyboard.conf | 4 + hypr/conf/{layouts.conf => layout.conf} | 0 hypr/conf/virtualmachine.conf | 6 -- hypr/conf/windowrule.conf | 1 + .../default.conf} | 0 hypr/hyprland.conf | 7 +- hypr/settings/settings.sh | 95 ++++++++++++++++++- 13 files changed, 144 insertions(+), 28 deletions(-) create mode 100644 hypr/conf/environments/default.conf create mode 100644 hypr/conf/environments/kvm.conf create mode 100644 hypr/conf/keybinding.conf rename hypr/conf/{keybindings.conf => keybindings/default.conf} (97%) rename hypr/conf/{layouts.conf => layout.conf} (100%) delete mode 100644 hypr/conf/virtualmachine.conf create mode 100644 hypr/conf/windowrule.conf rename hypr/conf/{windowrules.conf => windowrules/default.conf} (100%) diff --git a/.install/restore.sh b/.install/restore.sh index 254ec78..6c57f9c 100755 --- a/.install/restore.sh +++ b/.install/restore.sh @@ -17,8 +17,14 @@ _showRestoreOptions() { if [ -f ~/dotfiles/hypr/conf/keyboard.conf ]; then restorelist+="~/dotfiles/hypr/conf/keyboard.conf " fi - if [ -f ~/dotfiles/hypr/conf/keybindings.conf ]; then - restorelist+="~/dotfiles/hypr/conf/keybindings.conf " + if [ -f ~/dotfiles/hypr/conf/keybinding.conf ] && [ -d ~/dotfiles/hypr/conf/keybindings/ ]; then + restorelist+="~/dotfiles/hypr/conf/keybinding.conf " + fi + if [ -f ~/dotfiles/hypr/conf/environment.conf ] && [ -d ~/dotfiles/hypr/conf/environments/ ]; then + restorelist+="~/dotfiles/hypr/conf/environment.conf " + fi + if [ -f ~/dotfiles/hypr/conf/windowrule.conf ] && [ -d ~/dotfiles/hypr/conf/windowrules/ ]; then + restorelist+="~/dotfiles/hypr/conf/windowrule.conf " fi if [ -f ~/dotfiles/hypr/conf/monitor.conf ] && [ -d ~/dotfiles/hypr/conf/monitors/ ]; then restorelist+="~/dotfiles/hypr/conf/monitor.conf " @@ -95,12 +101,24 @@ _startRestore() { echo "Hyprland monitor.conf restored!" fi fi - if [[ $restoreselect == *"~/dotfiles/hypr/conf/keybindings.conf"* ]] || [[ $restoreselect == *"All"* ]] ; then - if [ -f ~/dotfiles/hypr/conf/keybindings.conf ]; then - cp ~/dotfiles/hypr/conf/keybindings.conf ~/dotfiles-versions/$version/hypr/conf/ - echo "Hyprland keybindings.conf restored!" + if [[ $restoreselect == *"~/dotfiles/hypr/conf/keybinding.conf"* ]] || [[ $restoreselect == *"All"* ]] ; then + if [ -f ~/dotfiles/hypr/conf/keybinding.conf ]; then + cp ~/dotfiles/hypr/conf/keybinding.conf ~/dotfiles-versions/$version/hypr/conf/ + echo "Hyprland keybinding.conf restored!" fi fi + if [[ $restoreselect == *"~/dotfiles/hypr/conf/environment.conf"* ]] || [[ $restoreselect == *"All"* ]] ; then + if [ -f ~/dotfiles/hypr/conf/environment.conf ]; then + cp ~/dotfiles/hypr/conf/environment.conf ~/dotfiles-versions/$version/hypr/conf/ + echo "Hyprland environment.conf restored!" + fi + fi + if [[ $restoreselect == *"~/dotfiles/hypr/conf/windowrule.conf"* ]] || [[ $restoreselect == *"All"* ]] ; then + if [ -f ~/dotfiles/hypr/conf/windowrule.conf ]; then + cp ~/dotfiles/hypr/conf/windowrule.conf ~/dotfiles-versions/$version/hypr/conf/ + echo "Hyprland windowrule.conf restored!" + fi + fi if [[ $restoreselect == *"~/dotfiles/hypr/conf/animation.conf"* ]] || [[ $restoreselect == *"All"* ]] ; then if [ -f ~/dotfiles/hypr/conf/animation.conf ]; then cp ~/dotfiles/hypr/conf/animation.conf ~/dotfiles-versions/$version/hypr/conf/ diff --git a/hypr/conf/environment.conf b/hypr/conf/environment.conf index b1b0863..4b5c1ce 100644 --- a/hypr/conf/environment.conf +++ b/hypr/conf/environment.conf @@ -1,7 +1 @@ -# ----------------------------------------------------- -# Environment Variables -# ----------------------------------------------------- - -env = XCURSOR_SIZE,24 -env = QT_QPA_PLATFORM,wayland -env = GTK_THEME,Adwaita:dark +source = ~/dotfiles/hypr/conf/environments/default.conf diff --git a/hypr/conf/environments/default.conf b/hypr/conf/environments/default.conf new file mode 100644 index 0000000..ce82051 --- /dev/null +++ b/hypr/conf/environments/default.conf @@ -0,0 +1,8 @@ +# ----------------------------------------------------- +# Environment Variables +# name: "Default" +# ----------------------------------------------------- + +env = XCURSOR_SIZE,24 +env = QT_QPA_PLATFORM,wayland +env = GTK_THEME,Adwaita:dark diff --git a/hypr/conf/environments/kvm.conf b/hypr/conf/environments/kvm.conf new file mode 100644 index 0000000..c64ee56 --- /dev/null +++ b/hypr/conf/environments/kvm.conf @@ -0,0 +1,10 @@ +# ----------------------------------------------------- +# Environment Variables +# name: "KVM" +# ----------------------------------------------------- + +env = XCURSOR_SIZE,24 +env = QT_QPA_PLATFORM,wayland +env = GTK_THEME,Adwaita:dark +env = WLR_NO_HARDWARE_CURSORS, 1 +env = WLR_RENDERER_ALLOW_SOFTWARE, 1 \ No newline at end of file diff --git a/hypr/conf/keybinding.conf b/hypr/conf/keybinding.conf new file mode 100644 index 0000000..792e52f --- /dev/null +++ b/hypr/conf/keybinding.conf @@ -0,0 +1 @@ +source = ~/dotfiles/hypr/conf/keybindings/default.conf \ No newline at end of file diff --git a/hypr/conf/keybindings.conf b/hypr/conf/keybindings/default.conf similarity index 97% rename from hypr/conf/keybindings.conf rename to hypr/conf/keybindings/default.conf index 34d1c97..2ff28ca 100644 --- a/hypr/conf/keybindings.conf +++ b/hypr/conf/keybindings/default.conf @@ -1,5 +1,6 @@ # ----------------------------------------------------- # Key bindings +# name: "Default" # ----------------------------------------------------- # SUPER KEY @@ -39,6 +40,7 @@ bind = $mainMod SHIFT, B, exec, ~/dotfiles/waybar/launch.sh bind = $mainMod SHIFT, R, exec, ~/dotfiles/hypr/scripts/loadconfig.sh bind = $mainMod CTRL, F, exec, ~/dotfiles/scripts/filemanager.sh bind = $mainMod CTRL, C, exec, ~/dotfiles/scripts/cliphist.sh +bind = $mainMod, V, exec, ~/dotfiles/scripts/cliphist.sh bind = $mainMod CTRL, T, exec, ~/dotfiles/waybar/themeswitcher.sh bind = $mainMod CTRL, S, exec, alacritty --class dotfiles-floating -e ~/dotfiles/hypr/settings/settings.sh diff --git a/hypr/conf/keyboard.conf b/hypr/conf/keyboard.conf index 8d6136b..bc2d785 100644 --- a/hypr/conf/keyboard.conf +++ b/hypr/conf/keyboard.conf @@ -3,6 +3,10 @@ # ----------------------------------------------------- input { kb_layout = us + kb_variant = + kb_model = + kb_options = + follow_mouse = 1 touchpad { natural_scroll = false diff --git a/hypr/conf/layouts.conf b/hypr/conf/layout.conf similarity index 100% rename from hypr/conf/layouts.conf rename to hypr/conf/layout.conf diff --git a/hypr/conf/virtualmachine.conf b/hypr/conf/virtualmachine.conf deleted file mode 100644 index 9cfa168..0000000 --- a/hypr/conf/virtualmachine.conf +++ /dev/null @@ -1,6 +0,0 @@ -# ----------------------------------------------------- -# Virtual Machine -# ----------------------------------------------------- - -env = WLR_NO_HARDWARE_CURSORS, 1 -env = WLR_RENDERER_ALLOW_SOFTWARE, 1 diff --git a/hypr/conf/windowrule.conf b/hypr/conf/windowrule.conf new file mode 100644 index 0000000..4ab74ea --- /dev/null +++ b/hypr/conf/windowrule.conf @@ -0,0 +1 @@ +source = ~/dotfiles/hypr/conf/windowrules/default.conf \ No newline at end of file diff --git a/hypr/conf/windowrules.conf b/hypr/conf/windowrules/default.conf similarity index 100% rename from hypr/conf/windowrules.conf rename to hypr/conf/windowrules/default.conf diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index aeed290..285baf3 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -22,7 +22,6 @@ source = ~/dotfiles/hypr/conf/autostart.conf # Environment # ----------------------------------------------------- source = ~/dotfiles/hypr/conf/environment.conf -# source = ~/dotfiles/hypr/conf/virtualmachine.conf # ----------------------------------------------------- # Keyboard @@ -39,10 +38,10 @@ source = ~/.cache/wal/colors-hyprland.conf # ----------------------------------------------------- source = ~/dotfiles/hypr/conf/window.conf source = ~/dotfiles/hypr/conf/decoration.conf -source = ~/dotfiles/hypr/conf/layouts.conf +source = ~/dotfiles/hypr/conf/layout.conf source = ~/dotfiles/hypr/conf/misc.conf -source = ~/dotfiles/hypr/conf/keybindings.conf -source = ~/dotfiles/hypr/conf/windowrules.conf +source = ~/dotfiles/hypr/conf/keybinding.conf +source = ~/dotfiles/hypr/conf/windowrule.conf # ----------------------------------------------------- # Animation diff --git a/hypr/settings/settings.sh b/hypr/settings/settings.sh index ba34b72..0e1a9ac 100755 --- a/hypr/settings/settings.sh +++ b/hypr/settings/settings.sh @@ -15,6 +15,7 @@ EOF echo "Select a file to load (RETURN = Confirm, ESC = Cancel/Back):" sel=$(gum file ~/dotfiles/hypr/conf/decorations/) if [ ! -z $sel ] ;then + sel=$(echo "$sel" | sed "s+"\/home\/$USER"+~+") echo "source = $sel" > ~/dotfiles/hypr/conf/decoration.conf _settingsDecoration fi @@ -37,6 +38,7 @@ EOF echo "Select a file to load (RETURN = Confirm, ESC = Cancel/Back):" sel=$(gum file ~/dotfiles/hypr/conf/windows/) if [ ! -z $sel ] ;then + sel=$(echo "$sel" | sed "s+"\/home\/$USER"+~+") echo "source = $sel" > ~/dotfiles/hypr/conf/window.conf _settingsWindow fi @@ -59,6 +61,7 @@ EOF echo "Select a file to load (RETURN = Confirm, ESC = Cancel/Back):" sel=$(gum file ~/dotfiles/hypr/conf/animations/) if [ ! -z $sel ] ;then + sel=$(echo "$sel" | sed "s+"\/home\/$USER"+~+") echo "source = $sel" > ~/dotfiles/hypr/conf/animation.conf _settingsAnimation fi @@ -81,11 +84,84 @@ EOF echo "Select a file to load (RETURN = Confirm, ESC = Cancel/Back):" sel=$(gum file ~/dotfiles/hypr/conf/monitors/) if [ ! -z $sel ] ;then + sel=$(echo "$sel" | sed "s+"\/home\/$USER"+~+") echo "source = $sel" > ~/dotfiles/hypr/conf/monitor.conf fi _settingsMenu } +_settingsEnvironment() { + clear +cat <<"EOF" + _____ _ _ +| ____|_ ____ _(_)_ __ ___ _ __ _ __ ___ ___ _ __ | |_ +| _| | '_ \ \ / / | '__/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| +| |___| | | \ V /| | | | (_) | | | | | | | | | __/ | | | |_ +|_____|_| |_|\_/ |_|_| \___/|_| |_|_| |_| |_|\___|_| |_|\__| + +EOF + + cur=$(cat ~/dotfiles/hypr/conf/environment.conf) + echo "In use: ${cur##*/}" + echo "" + echo "Please restart Hyprland after changing the environment." + echo "If you select KVM it's recommended to shutdown your system and start again." + echo "" + echo "Select a file to load (RETURN = Confirm, ESC = Cancel/Back):" + sel=$(gum file ~/dotfiles/hypr/conf/environments/) + if [ ! -z $sel ] ;then + sel=$(echo "$sel" | sed "s+"\/home\/$USER"+~+") + echo "source = $sel" > ~/dotfiles/hypr/conf/environment.conf + fi + _settingsMenu +} + +_settingsKeybinding() { + clear +cat <<"EOF" + _ __ _ _ _ _ +| |/ /___ _ _| |__ (_)_ __ __| (_)_ __ __ _ ___ +| ' // _ \ | | | '_ \| | '_ \ / _` | | '_ \ / _` / __| +| . \ __/ |_| | |_) | | | | | (_| | | | | | (_| \__ \ +|_|\_\___|\__, |_.__/|_|_| |_|\__,_|_|_| |_|\__, |___/ + |___/ |___/ + +EOF + cur=$(cat ~/dotfiles/hypr/conf/keybinding.conf) + echo "In use: ${cur##*/}" + echo "" + echo "Select a file to load (RETURN = Confirm, ESC = Cancel/Back):" + sel=$(gum file ~/dotfiles/hypr/conf/keybindings/) + if [ ! -z $sel ] ;then + sel=$(echo "$sel" | sed "s+"\/home\/$USER"+~+") + echo "source = $sel" > ~/dotfiles/hypr/conf/keybinding.conf + fi + _settingsMenu +} + +_settingsWindowrule() { + clear +cat <<"EOF" +__ ___ _ _ +\ \ / (_)_ __ __| | _____ ___ __ _ _| | ___ ___ + \ \ /\ / /| | '_ \ / _` |/ _ \ \ /\ / / '__| | | | |/ _ \/ __| + \ V V / | | | | | (_| | (_) \ V V /| | | |_| | | __/\__ \ + \_/\_/ |_|_| |_|\__,_|\___/ \_/\_/ |_| \__,_|_|\___||___/ + +EOF + + cur=$(cat ~/dotfiles/hypr/conf/windowrule.conf) + echo "In use: ${cur##*/}" + echo "" + echo "Select a file to load (RETURN = Confirm, ESC = Cancel/Back):" + sel=$(gum file ~/dotfiles/hypr/conf/windowrules/) + if [ ! -z $sel ] ;then + sel=$(echo "$sel" | sed "s+"\/home\/$USER"+~+") + echo "source = $sel" > ~/dotfiles/hypr/conf/windowrule.conf + fi + _settingsMenu +} + _settingsMenu() { clear cat <<"EOF" @@ -97,20 +173,29 @@ cat <<"EOF" |___/ EOF - menu=$(gum choose "Decorations" "Windows" "Animations" "Monitors" "EXIT") + menu=$(gum choose "Decorations" "Windows" "Animations" "Monitors" "Environments" "Keybindings" "Windowrules" "EXIT") case $menu in - [Decorations]* ) + Decorations) _settingsDecoration break;; - [Windows]* ) + Windows) _settingsWindow break;; - [Animations]* ) + Animations) _settingsAnimation break;; - [Monitors]* ) + Monitors) _settingsMonitor break;; + Environments) + _settingsEnvironment + break;; + Keybindings) + _settingsKeybinding + break;; + Windowrules) + _settingsWindowrule + break;; * ) exit ;;