summaryrefslogtreecommitdiff
path: root/config/hypr
diff options
context:
space:
mode:
Diffstat (limited to 'config/hypr')
-rw-r--r--config/hypr/animations.conf34
-rw-r--r--config/hypr/decoration.conf20
-rw-r--r--config/hypr/hyprland.conf30
-rw-r--r--config/hypr/hyprpaper.conf9
-rw-r--r--config/hypr/hyprtoolkit.conf8
-rw-r--r--config/hypr/keybindings.conf86
-rw-r--r--config/hypr/macchiato.conf78
-rw-r--r--config/hypr/source.conf9
-rwxr-xr-xconfig/hypr/wallpapers.sh34
-rw-r--r--config/hypr/windowrule.conf23
10 files changed, 331 insertions, 0 deletions
diff --git a/config/hypr/animations.conf b/config/hypr/animations.conf
new file mode 100644
index 000000000..4b0a89742
--- /dev/null
+++ b/config/hypr/animations.conf
@@ -0,0 +1,34 @@
+animations {
+ enabled = true
+
+bezier = easeOutQuint, 0.23, 1, 0.32, 1
+bezier = easeInOutCubic, 0.65, 0.05, 0.36, 1
+bezier = linear, 0, 0, 1, 1
+bezier = almostLinear, 0.5, 0.5, 0.75, 1
+bezier = quick, 0.15, 0, 0.1, 1
+
+animation = global, 1, 5.42, default
+
+animation = border, 1, 2.92, easeOutQuint
+animation = windows, 1, 2.59, easeOutQuint
+animation = windowsIn, 1, 2.22, easeOutQuint, popin 87%
+animation = windowsOut, 1, 0.81, linear, popin 87%
+
+animation = fadeIn, 1, 0.94, almostLinear
+animation = fadeOut, 1, 0.79, almostLinear
+animation = fade, 1, 1.65, quick
+
+animation = layers, 1, 2.07, easeOutQuint
+animation = layersIn, 1, 2.17, easeOutQuint, fade
+animation = layersOut, 1, 0.81, linear, fade
+
+animation = fadeLayersIn, 1, 0.97, almostLinear
+animation = fadeLayersOut, 1, 0.76, almostLinear
+
+animation = workspaces, 0, 0, almostLinear
+animation = workspacesIn, 0, 0, almostLinear
+animation = workspacesOut, 0, 0, almostLinear
+
+animation = zoomFactor, 1, 4.46, quick
+}
+
diff --git a/config/hypr/decoration.conf b/config/hypr/decoration.conf
new file mode 100644
index 000000000..50253a39c
--- /dev/null
+++ b/config/hypr/decoration.conf
@@ -0,0 +1,20 @@
+
+general {
+ gaps_in = 0
+ gaps_out = 0
+ border_size = 2
+ col.active_border = $lavender
+ col.inactive_border = $base
+ resize_on_border = false
+ allow_tearing = false
+ layout = dwindle
+}
+
+decoration {
+ rounding = 0
+ rounding_power = 0
+ active_opacity = 1.0
+ inactive_opacity = 1.0
+}
+
+
diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf
new file mode 100644
index 000000000..31017f56e
--- /dev/null
+++ b/config/hypr/hyprland.conf
@@ -0,0 +1,30 @@
+source = ./source.conf
+source = ./macchiato.conf
+source = ./decoration.conf
+source = ./keybindings.conf
+source = ./animations.conf
+source = ./windowrule.conf
+
+monitor = HDMI-A-1, 1920x1080@100, 0x0, 1
+
+exec-once = waybar &
+exec-once = hyprpaper &
+//exec-once = qs -c noctalia-shell
+dwindle {
+ preserve_split = true
+}
+
+master {
+ new_status = master
+}
+input {
+ kb_layout = us, ru
+ kb_variant =
+ kb_model =
+ kb_options = grp:alt_shift_toggle, caps:none
+ kb_rules =
+ #left_handed = true
+ follow_mouse = 1
+ sensitivity = 0
+}
+
diff --git a/config/hypr/hyprpaper.conf b/config/hypr/hyprpaper.conf
new file mode 100644
index 000000000..4fd142fc6
--- /dev/null
+++ b/config/hypr/hyprpaper.conf
@@ -0,0 +1,9 @@
+splash = false
+ipc = true
+
+wallpaper {
+ monitor = HDMI-A-1
+ path = ~/Pictures/Wallpapers2/
+ fit_mode = cover
+ timeout = 30
+}
diff --git a/config/hypr/hyprtoolkit.conf b/config/hypr/hyprtoolkit.conf
new file mode 100644
index 000000000..6f6aacf23
--- /dev/null
+++ b/config/hypr/hyprtoolkit.conf
@@ -0,0 +1,8 @@
+# Catppuccin Macchiato (Lavender)
+background=0xff181926
+base=0xff24273a
+alternate_base=0xff1e2030
+text=0xffcad3f5
+bright_text=0xffb8c0e0
+accent=0xffb7bdf8
+accent_secondary=0xffb7bdf8
diff --git a/config/hypr/keybindings.conf b/config/hypr/keybindings.conf
new file mode 100644
index 000000000..7f4e17e9f
--- /dev/null
+++ b/config/hypr/keybindings.conf
@@ -0,0 +1,86 @@
+$mainMod = SUPER
+
+$mainMod = SUPER
+$ipc = qs -c noctalia-shell ipc call
+
+bind = $mainMod, S, exec, $ipc controlCenter toggle
+bind = $mainMod, Q, exec, kitty
+bind = $mainMod, C, killactive,
+bind = $mainMod, B, exec, firefox-esr
+bind = $mainMod, R, exec, wofi --show drun --window --normal-window
+//bind = $mainMod, R, exec, $ipc launcher toggle
+
+bind = $mainMod, P, exec, hyprpicker -a
+
+bind = $mainMod, I, exec, ~/.config/waybar/scripts/power.sh
+
+bind =, Print, exec, grim -g "$(slurp)" - | tee ~/Pictures/Screenshots/Screenshot-$(date +%F_%H-%M-%S).png | wl-copy
+bind = SHIFT, Print, exec, grim - | tee ~/Pictures/Screenshots/Screenshot-$(date +%F_%H-%M-%S).png | wl-copy
+
+bind = $mainMod, M, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor -j | jq '.float * 1.5')
+bind = $mainMod, N, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor -j | jq '(.float * 0.5) | if . < 1 then 1 else . end')
+
+bind = $mainMod, E, exec, kitty yazi
+bind = $mainMod, T, exec, thunar
+
+bind = $mainMod, F, fullscreen,
+bind = $mainMod, V, togglefloating,
+
+bind = $mainMod ALT, H, resizeactive, -60 0
+bind = $mainMod ALT, L, resizeactive, 60 0
+bind = $mainMod ALT, K, resizeactive, 0 -60
+bind = $mainMod ALT, J, resizeactive, 0 60
+
+bind = SUPER SHIFT, H, movewindow, l
+bind = SUPER SHIFT, L, movewindow, r
+bind = SUPER SHIFT, K, movewindow, u
+bind = SUPER SHIFT, J, movewindow, d
+
+bind = $mainMod, H, movefocus, l
+bind = $mainMod, L, movefocus, r
+bind = $mainMod, K, movefocus, u
+bind = $mainMod, J, movefocus, d
+
+bind = $mainMod, Page_Down, workspace, e+1
+bind = $mainMod, Page_Up, workspace, e-1
+
+bind = $mainMod, 1, workspace, 1
+bind = $mainMod, 2, workspace, 2
+bind = $mainMod, 3, workspace, 3
+bind = $mainMod, 4, workspace, 4
+bind = $mainMod, 5, workspace, 5
+bind = $mainMod, 6, workspace, 6
+bind = $mainMod, 7, workspace, 7
+bind = $mainMod, 8, workspace, 8
+bind = $mainMod, 9, workspace, 9
+bind = $mainMod, 0, workspace, 10
+
+bind = $mainMod+ALT, 1, exec, hyprctl dispatch swapactiveworkspaces 1
+bind = $mainMod+ALT, 2, exec, hyprctl dispatch swapactiveworkspaces 2
+bind = $mainMod+ALT, 3, exec, hyprctl dispatch swapactiveworkspaces 3
+bind = $mainMod+ALT, 4, exec, hyprctl dispatch swapactiveworkspaces 4
+bind = $mainMod+ALT, 5, exec, hyprctl dispatch swapactiveworkspaces 5
+bind = $mainMod+ALT, 6, exec, hyprctl dispatch swapactiveworkspaces 6
+bind = $mainMod+SHIFT, 7, exec, hyprctl dispatch swapactiveworkspaces 7
+bind = $mainMod+SHIFT, 8, exec, hyprctl dispatch swapactiveworkspaces 8
+bind = $mainMod+SHIFT, 9, exec, hyprctl dispatch swapactiveworkspaces 9
+bind = $mainMod+SHIFT, 0, exec, hyprctl dispatch swapactiveworkspaces 10
+
+bind = $mainMod SHIFT, 1, movetoworkspace, 1
+bind = $mainMod SHIFT, 2, movetoworkspace, 2
+bind = $mainMod SHIFT, 3, movetoworkspace, 3
+bind = $mainMod SHIFT, 4, movetoworkspace, 4
+bind = $mainMod SHIFT, 5, movetoworkspace, 5
+bind = $mainMod SHIFT, 6, movetoworkspace, 6
+bind = $mainMod SHIFT, 7, movetoworkspace, 7
+bind = $mainMod SHIFT, 8, movetoworkspace, 8
+bind = $mainMod SHIFT, 9, movetoworkspace, 9
+bind = $mainMod SHIFT, 0, movetoworkspace, 10
+
+bindm = $mainMod, mouse:272, movewindow
+bindm = $mainMod, mouse:273, resizewindow
+
+bind = $mainMod, F1, exec, pactl set-sink-volume @DEFAULT_SINK@ -5%
+bind = $mainMod, F2, exec, pactl set-sink-volume @DEFAULT_SINK@ +5%
+bind = $mainMod, F3, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle
+bind = $mainMod, F4, exec, playerctl play-pause
diff --git a/config/hypr/macchiato.conf b/config/hypr/macchiato.conf
new file mode 100644
index 000000000..9e7071a72
--- /dev/null
+++ b/config/hypr/macchiato.conf
@@ -0,0 +1,78 @@
+
+$rosewater = rgb(f4dbd6)
+$rosewaterAlpha = f4dbd6
+
+$flamingo = rgb(f0c6c6)
+$flamingoAlpha = f0c6c6
+
+$pink = rgb(f5bde6)
+$pinkAlpha = f5bde6
+
+$mauve = rgb(c6a0f6)
+$mauveAlpha = c6a0f6
+
+$red = rgb(ed8796)
+$redAlpha = ed8796
+
+$maroon = rgb(ee99a0)
+$maroonAlpha = ee99a0
+
+$peach = rgb(f5a97f)
+$peachAlpha = f5a97f
+
+$yellow = rgb(eed49f)
+$yellowAlpha = eed49f
+
+$green = rgb(a6da95)
+$greenAlpha = a6da95
+
+$teal = rgb(8bd5ca)
+$tealAlpha = 8bd5ca
+
+$sky = rgb(91d7e3)
+$skyAlpha = 91d7e3
+
+$sapphire = rgb(7dc4e4)
+$sapphireAlpha = 7dc4e4
+
+$blue = rgb(8aadf4)
+$blueAlpha = 8aadf4
+
+$lavender = rgb(b7bdf8)
+$lavenderAlpha = b7bdf8
+
+$text = rgb(cad3f5)
+$textAlpha = cad3f5
+
+$subtext1 = rgb(b8c0e0)
+$subtext1Alpha = b8c0e0
+
+$subtext0 = rgb(a5adcb)
+$subtext0Alpha = a5adcb
+
+$overlay2 = rgb(939ab7)
+$overlay2Alpha = 939ab7
+
+$overlay1 = rgb(8087a2)
+$overlay1Alpha = 8087a2
+
+$overlay0 = rgb(6e738d)
+$overlay0Alpha = 6e738d
+
+$surface2 = rgb(5b6078)
+$surface2Alpha = 5b6078
+
+$surface1 = rgb(494d64)
+$surface1Alpha = 494d64
+
+$surface0 = rgb(363a4f)
+$surface0Alpha = 363a4f
+
+$base = rgb(24273a)
+$baseAlpha = 24273a
+
+$mantle = rgb(1e2030)
+$mantleAlpha = 1e2030
+
+$crust = rgb(181926)
+$crustAlpha = 181926
diff --git a/config/hypr/source.conf b/config/hypr/source.conf
new file mode 100644
index 000000000..b7f3829ae
--- /dev/null
+++ b/config/hypr/source.conf
@@ -0,0 +1,9 @@
+env = XDG_CURRENT_DESKTOP,Hyprland
+env = XDG_SESSION_TYPE,wayland
+env = XDG_SESSION_DESKTOP,Hyprland
+env = QT_QPA_PLATFORM,wayland;xcb
+env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
+env = QT_QPA_PLATFORMTHEME,qt6ct
+env = XCURSOR_SIZE,18
+env = HYPRCURSOR_SIZE,18
+env = HYPRLAND_NO_EXPLICIT_SYNC,1
diff --git a/config/hypr/wallpapers.sh b/config/hypr/wallpapers.sh
new file mode 100755
index 000000000..cf797abcc
--- /dev/null
+++ b/config/hypr/wallpapers.sh
@@ -0,0 +1,34 @@
+#!/usr/bin/env bash
+# lightning-randomize-wallpapers-unique.sh
+
+WALLPAPER_DIR="$HOME/Pictures/Wallpapers"
+cd "$WALLPAPER_DIR" || exit 1
+
+# Собираем все картинки в массив
+files=(*.{jpg,jpeg,png})
+[ ${#files[@]} -eq 0 ] && exit 0
+
+# Массив для уже сгенерированных имён
+declare -A used_names
+
+# Перемешиваем массив файлов
+shuffled=($(printf "%s\n" "${files[@]}" | shuf))
+
+# Функция генерации случайного имени с проверкой уникальности
+generate_unique_name() {
+ local ext=$1
+ local name
+ while :; do
+ name="$(tr -dc a-z0-9 </dev/urandom | head -c 3).$ext"
+ [[ -z "${used_names[$name]}" ]] && break
+ done
+ used_names[$name]=1
+ echo "$name"
+}
+
+# Переименовываем файлы
+for file in "${shuffled[@]}"; do
+ ext="${file##*.}"
+ rand_name=$(generate_unique_name "$ext")
+ mv "$file" "$rand_name"
+done
diff --git a/config/hypr/windowrule.conf b/config/hypr/windowrule.conf
new file mode 100644
index 000000000..d8b11ba2e
--- /dev/null
+++ b/config/hypr/windowrule.conf
@@ -0,0 +1,23 @@
+windowrule {
+ name = suppress-maximize-events
+ match:class = .*
+ suppress_event = maximize
+}
+
+windowrule {
+ name = fix-xwayland-drags
+ match:class = ^$
+ match:title = ^$
+ match:xwayland = true
+ match:float = true
+ match:fullscreen = false
+ match:pin = false
+ no_focus = true
+}
+
+windowrule {
+ name = move-hyprland-run
+ match:class = hyprland-run
+ move = 20 monitor_h-120
+ float = yes
+}