aboutsummaryrefslogtreecommitdiff
path: root/.config/hypr
diff options
context:
space:
mode:
Diffstat (limited to '.config/hypr')
-rw-r--r--.config/hypr/hypridle.conf20
-rw-r--r--.config/hypr/hyprland.conf212
-rw-r--r--.config/hypr/hyprlock.conf83
-rw-r--r--.config/hypr/hyprpaper.conf4
-rwxr-xr-x.config/hypr/portalstart8
-rwxr-xr-x.config/hypr/start.sh6
6 files changed, 333 insertions, 0 deletions
diff --git a/.config/hypr/hypridle.conf b/.config/hypr/hypridle.conf
new file mode 100644
index 0000000..c867ff1
--- /dev/null
+++ b/.config/hypr/hypridle.conf
@@ -0,0 +1,20 @@
+general {
+ lock_cmd = notify-send "lock!" # dbus/sysd lock command (loginctl lock-session)
+ unlock_cmd = notify-send "unlock!" # same as above, but unlock
+ before_sleep_cmd = notify-send "Zzz" # command ran before sleep
+ after_sleep_cmd = notify-send "Awake!" # command ran after sleep
+ ignore_dbus_inhibit = false # whether to ignore dbus-sent idle-inhibit requests (used by e.g. firefox or steam)
+ ignore_systemd_inhibit = false # whether to ignore systemd-inhibit --what=idle inhibitors
+}
+
+listener {
+ timeout = 300 # 5min
+ on-timeout = hyprlock # command to run when timeout has passed
+ on-resume = notify-send "Welcome back!" # command to run when activity is detected after timeout has fired.
+}
+
+listener {
+ timeout = 320 # in seconds
+ on-timeout = hyprctl dispatch dpms off # command to run when timeout has passed
+ on-resume = hyprctl dispatch dpms on # command to run when activity is detected after timeout has fired.
+}
diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf
new file mode 100644
index 0000000..cf3dd40
--- /dev/null
+++ b/.config/hypr/hyprland.conf
@@ -0,0 +1,212 @@
+################
+### MONITORS ###
+################
+
+monitor=,preferred,auto,auto
+monitor=DP-3,2560x1440@240,2560x0,1
+monitor=DP-2,2560x1440@165,0x0,1
+
+###################
+### MY PROGRAMS ###
+###################
+
+$terminal = kitty
+$fileManager = dolphin
+$menu = wofi --show drun
+$browser = firefox
+
+#################
+### AUTOSTART ###
+#################
+
+exec-once=pipewire & pipewire-pulse & wireplumber
+exec-once=hyprpaper & waybar & mako
+exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
+exec-once=/home/awy/.config/hypr/portalstart
+exec-once = hypridle
+
+#############################
+### ENVIRONMENT VARIABLES ###
+#############################
+
+env = XCURSOR_THEME,Adwaita
+env = XCURSOR_SIZE,24
+env = HYPRCURSOR_THEME,Adwaita
+env = HYPRCURSOR_SIZE,24
+env = LIBVA_DRIVER_NAME,nvidia
+env = XDG_SESSION_TYPE,wayland
+env = GBM_BACKEND,nvidia-drm
+env = __GLX_VENDOR_LIBRARY_NAME,nvidia
+env = EDITOR,nvim
+env = ELECTRON_OZONE_PLATFORM_HINT,auto
+
+#####################
+### LOOK AND FEEL ###
+#####################
+
+general {
+ gaps_in = 5
+ gaps_out = 10
+
+ border_size = 2
+
+ col.active_border = rgba(fbf1c7ee)
+ col.inactive_border = rgba(3c3836ee)
+
+ resize_on_border = false
+
+ allow_tearing = false
+
+ layout = dwindle
+}
+
+decoration {
+ rounding = 0
+
+ active_opacity = 1.0
+ inactive_opacity = 1.0
+
+ drop_shadow = true
+ shadow_range = 32
+ shadow_render_power = 4
+ col.shadow = rgba(1a1a1aee)
+
+ blur {
+ enabled = true
+ size = 2
+ passes = 4
+ xray = false
+ ignore_opacity = true
+ vibrancy = 0.1696
+ popups = true
+ }
+}
+
+animations {
+ enabled = yes
+
+ bezier = quart, 0.25, 1, 0.5, 1
+
+ animation = windows, 1, 5, quart, slide
+ animation = border, 1, 5, quart
+ animation = borderangle, 1, 5, quart
+ animation = fade, 1, 5, quart
+ animation = workspaces, 1, 5, quart, slidevert
+}
+
+
+dwindle {
+ pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
+ preserve_split = true # You probably want this
+ no_gaps_when_only = 0
+}
+
+misc {
+ force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
+ disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
+ disable_splash_rendering = true
+ enable_swallow = 1
+ swallow_regex = ^(kitty)$
+}
+
+#############
+### INPUT ###
+#############
+
+input {
+ kb_layout = us,ru
+ kb_variant =
+ kb_model =
+ kb_options = grp:alt_shift_toggle
+ kb_rules =
+
+ follow_mouse = 1
+
+ sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
+ force_no_accel = 1
+ touchpad {
+ natural_scroll = false
+ }
+}
+
+gestures {
+ workspace_swipe = false
+}
+
+####################
+### KEYBINDINGS ###
+####################
+
+$mainMod = SUPER # Sets "Windows" key as main modifier
+
+bind = $mainMod, Return, exec, $terminal
+bind = $mainMod SHIFT, Q, killactive,
+bind = $mainMod, M, exit,
+bind = $mainMod, E, exec, $fileManager
+bind = $mainMod SHIFT, B, exec, $browser
+bind = $mainMod, V, togglefloating,
+bind = $mainMod, Space, exec, $menu
+bind = $mainMod, P, pseudo, # dwindle
+bind = $mainMod SHIFT, J, togglesplit, # dwindle
+bind = $mainMod, F, fullscreen,
+bind = $mainMod SHIFT, Return, swapnext
+bind = $mainMod SHIFT, S, exec, grim -g "$(slurp -d)" - | wl-copy
+bind =,XF86AudioPlay, exec, playerctl play-pause
+bind =,XF86AudioPrev, exec, playerctl previous
+bind =,XF86AudioNext, exec, playerctl next
+bind =,mouse:276, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
+
+bind = $mainMod SHIFT, L, resizeactive, 100 0
+bind = $mainMod SHIFT, H, resizeactive, -100 0
+
+bind = $mainMod, H, movefocus, l
+bind = $mainMod, L, movefocus, r
+bind = $mainMod, K, movefocus, u
+bind = $mainMod, J, movefocus, d
+
+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 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
+
+bind = $mainMod, S, togglespecialworkspace, magic
+
+bind = $mainMod, mouse_down, workspace, e+1
+bind = $mainMod, mouse_up, workspace, e-1
+
+bindm = $mainMod, mouse:272, movewindow
+bindm = $mainMod, mouse:273, resizewindow
+
+##############################
+### WINDOWS AND WORKSPACES ###
+##############################
+
+windowrule = float, ^(imv)$
+windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
+
+workspace=1,monitor:DP-2, persistent:true
+workspace=2,monitor:DP-2, persistent:true
+workspace=3,monitor:DP-3, persistent:true
+workspace=4,monitor:DP-3, persistent:true
+
+layerrule = blur, notifications
+layerrule = ignorezero, notifications
+layerrule = blur, waybar
+#layerrule = xray 1, waybar
diff --git a/.config/hypr/hyprlock.conf b/.config/hypr/hyprlock.conf
new file mode 100644
index 0000000..02b5fce
--- /dev/null
+++ b/.config/hypr/hyprlock.conf
@@ -0,0 +1,83 @@
+general {
+ ignore_empty_input = true
+}
+
+background {
+ monitor =
+ path = ~/.local/share/papes/wallhaven-kxg8xm_3840x2160.png
+ color = rgba(1e1e2ee0)
+
+ # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
+ blur_passes = 4
+ blur_size = 6
+ noise = 0.05
+ contrast = 1.0
+ brightness = 0.8
+ vibrancy = 0.15
+ vibrancy_darkness = 1.0
+}
+
+label {
+ monitor =
+ text = $TIME
+ text_align = center # center/right or any value for default left. multi-line text alignment inside label container
+ color = rgb(255, 255, 255)
+ font_size = 128
+ font_family = JetBrainsMonoNerdFontMono Bold
+ rotate = 0 # degrees, counter-clockwise
+
+ position = 0, 360
+ halign = center
+ valign = center
+}
+label {
+ monitor =
+ text = Welcome back, $USER!
+ text_align = center # center/right or any value for default left. multi-line text alignment inside label container
+ color = rgb(255, 255, 255)
+ font_size = 32
+ font_family = JetBrainsMonoNerdFontMono Bold
+ rotate = 0 # degrees, counter-clockwise
+
+ position = 0, 100
+ halign = center
+ valign = center
+}
+
+input-field {
+ monitor =
+
+ shadow_passes = 4
+ shadow_size = 6
+ shadow_color = rgb(74c7ec)
+ shadow_boost = 1.0
+
+ size = 120, 40
+ outline_thickness = 4
+ dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8
+ dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0
+ dots_center = true
+ dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
+ outer_color = rgb(74c7ec)
+ inner_color = rgba(1e1e2ef0)
+ font_color = rgb(cdd6f4)
+ fade_on_empty = false
+ fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered.
+ placeholder_text = <i></i> # Text rendered in the input box when it's empty.
+ hide_input = false
+ rounding = -1 # -1 means complete rounding (circle/oval)
+ check_color = rgb(f9e2af)
+ fail_color = rgb(f38ba8) # if authentication failed, changes outer_color and fail message color
+ # fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i> # can be set to empty
+ fail_text = <i></i>
+ fail_transition = 300 # transition time in ms between normal outer_color and fail_color
+ capslock_color = -1
+ numlock_color = -1
+ bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above)
+ invert_numlock = false # change color if numlock is off
+ swap_font_color = false # see below
+
+ position = 0, -20
+ halign = center
+ valign = center
+}
diff --git a/.config/hypr/hyprpaper.conf b/.config/hypr/hyprpaper.conf
new file mode 100644
index 0000000..bfbf0df
--- /dev/null
+++ b/.config/hypr/hyprpaper.conf
@@ -0,0 +1,4 @@
+ipc = on
+preload = /home/awy/.local/share/papes/Odles_Cisles_y_Mastle_pinus_Cembra.jpg
+wallpaper = , /home/awy/.local/share/papes/Odles_Cisles_y_Mastle_pinus_Cembra.jpg
+splash = false
diff --git a/.config/hypr/portalstart b/.config/hypr/portalstart
new file mode 100755
index 0000000..8f692bf
--- /dev/null
+++ b/.config/hypr/portalstart
@@ -0,0 +1,8 @@
+#!/bin/bash
+sleep 1
+killall xdg-desktop-portal-hyprland
+killall xdg-desktop-portal-wlr
+killall xdg-desktop-portal
+/usr/lib/xdg-desktop-portal-hyprland &
+sleep 2
+/usr/lib/xdg-desktop-portal &
diff --git a/.config/hypr/start.sh b/.config/hypr/start.sh
new file mode 100755
index 0000000..a8d1a17
--- /dev/null
+++ b/.config/hypr/start.sh
@@ -0,0 +1,6 @@
+#\!/bin/sh
+cd ~
+export XDG_RUNTIME_DIR="/tmp/hyprland"
+mkdir -p $XDG_RUNTIME_DIR
+chmod 0700 $XDG_RUNTIME_DIR
+exec dbus-launch --exit-with-session Hyprland