commit 36c60103ea7d32cab83e4ead9362365bf6d4f189 Author: AramMarkarov Date: Wed Dec 31 18:01:46 2025 +0100 Add laptop hypr config branch diff --git a/hypridle.conf b/hypridle.conf new file mode 100644 index 0000000..7a6a49b --- /dev/null +++ b/hypridle.conf @@ -0,0 +1,34 @@ +general { + lock_cmd = pidof hyprlock || hyprlock + before_sleep_cmd = loginctl lock-session + after_sleep_cmd = hyprctl dispatch dpms on + ignore_dbus_inhibit = false + ignore_systemd_inhibit = false +} + +# Idle +listener { + timeout = 1800 + on-timeout = loginctl lock-session + on-resume = notify-send "Welcome back!" +} + +# Shutdown +listener { + timeout = 7200 + on-timeout = systemctl hibernate + on-resume = loginctl lock-session && notify-send "Welcome back!" +} + +# Brightness +listener { + timeout = 900 + on-timeout = brightnessctl -s set 10000 + on-resume = brightnessctl -r +} + +listener { + timeout = 3600 + on-timeout = hyprctl dispatch dpms off + on-resume = hyprctl dispatch dpms on +} diff --git a/hyprland.conf b/hyprland.conf new file mode 100644 index 0000000..d1149d2 --- /dev/null +++ b/hyprland.conf @@ -0,0 +1,6 @@ +source = ./modules/macchiato.conf +source = ./modules/settings.conf +source = ./modules/binds.conf +source = ./modules/monitors.conf +source = ./modules/executes.conf +source = ./modules/windowrules.conf diff --git a/hyprlock.conf b/hyprlock.conf new file mode 100644 index 0000000..b7cfbfe --- /dev/null +++ b/hyprlock.conf @@ -0,0 +1,101 @@ +source = $HOME/.config/hypr/modules/macchiato.conf + +$accent = $mauve +$accentAlpha = $mauveAlpha + +# GENERAL +general { + hide_cursor = true +} + +# BACKGROUND +background { + monitor = + path = $HOME/.config/background + blur_passes = 0 + color = $base +} + +# LAYOUT +label { + monitor = + text = Layout: $LAYOUT + color = $text + font_size = 25 + font_family = $font + position = 30, -30 + halign = left + valign = top +} + +# TIME +label { + monitor = + text = $TIME + color = $text + font_size = 90 + font_family = $font + position = -30, 0 + halign = right + valign = top +} + +# DATE +label { + monitor = + text = cmd[update:43200000] date +"%A, %d %B %Y" + color = $text + font_size = 25 + font_family = 0XProto Nerd Font + position = -30, -150 + halign = right + valign = top +} + +# FINGERPRINT +{ + monitor = ""; + text = "$FPRINTPROMPT"; + color = "$text"; + font_size = 14; + font_family = font; + position = "0, -107"; + halign = "center"; + valign = "center"; +} + +# USER AVATAR +image { + monitor = + path = $HOME/.face + size = 100 + border_color = $accent + position = 0, 75 + halign = center + valign = center +} + +# INPUT FIELD +input-field { + monitor = + size = 300, 60 + outline_thickness = 4 + dots_size = 0.2 + dots_spacing = 0.2 + dots_center = true + outer_color = $accent + inner_color = $surface0 + font_color = $text + fade_on_empty = false + placeholder_text = 󰌾 Logged in as $USER + hide_input = false + check_color = $accent + fail_color = $red + fail_text = $FAIL ($ATTEMPTS) + capslock_color = $yellow + position = 0, -47 + halign = center + valign = center +} + + diff --git a/modules/binds.conf b/modules/binds.conf new file mode 100644 index 0000000..49fcc28 --- /dev/null +++ b/modules/binds.conf @@ -0,0 +1,67 @@ +bindm = SUPER,mouse:272,movewindow +bindm = SUPER,mouse:273,resizewindow + +bind = SUPER,RETURN,exec, uwsm app -S out -- wezterm +bind = SUPER,Q,killactive +bind = SUPER,M,exit +bind = SUPER,E,exec, uwsm app -S out -- thunar +bind = SUPER,S,togglefloating +bind = SUPER,P,pseudo +bind = SUPER,B,exec, uwsm app -S out -- firefox + +bind = SUPER,I,exec, uwsm app -S out -- hyprlock +bind = SUPER,H,movefocus,l +bind = SUPER,L,movefocus,r +bind = SUPER,K,movefocus,u +bind = SUPER,J,movefocus,d +binde = SUPER SHIFT,L,resizeactive, 50 0 +binde = SUPER SHIFT,H,resizeactive, -50 0 +binde = SUPER SHIFT,K,resizeactive, 0 -50 +binde = SUPER SHIFT,J,resizeactive, 0 50 + +bind = SUPER,1,workspace,1 +bind = SUPER,2,workspace,2 +bind = SUPER,3,workspace,3 +bind = SUPER,4,workspace,4 +bind = SUPER,5,workspace,5 +bind = SUPER,6,workspace,6 +bind = SUPER,7,workspace,7 +bind = SUPER,8,workspace,8 +bind = SUPER,9,workspace,9 +bind = SUPER,0,workspace,10 +bind = ALT,1,movetoworkspace,1 +bind = ALT,2,movetoworkspace,2 +bind = ALT,3,movetoworkspace,3 +bind = ALT,4,movetoworkspace,4 +bind = ALT,5,movetoworkspace,5 +bind = ALT,6,movetoworkspace,6 +bind = ALT,7,movetoworkspace,7 +bind = ALT,8,movetoworkspace,8 +bind = ALT,9,movetoworkspace,9 +bind = ALT,0,movetoworkspace,10 +bind = SUPER,mouse_down,workspace,e+1 +bind = SUPER,mouse_up,workspace,e-1 +bind = SUPER,g,togglegroup +bind = SUPER,tab,changegroupactive + +# Manual bindings +bind = SUPER, F,fullscreen +bind = SUPER, D, exec, fuzzel --launch-prefix="uwsm app -- " +bindel = , XF86AudioRaiseVolume, exec, uwsm app -S out -- wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ +bindel = , XF86AudioLowerVolume, exec, uwsm app -S out -- wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- +bindl = , XF86AudioMute, exec, uwsm app -S out -- wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +bindel = , F14, exec, uwsm app -S out -- wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle +bindel = , F15, exec, uwsm app -S out -- wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +bindel = , F17, exec, uwsm app -S out -- wpctl set-volume @DEFAULT_AUDIO_SOURCE@ 5%+ +bindel = , F16, exec, uwsm app -S out -- wpctl set-volume @DEFAULT_AUDIO_SOURCE@ 5%- +bindel = , XF86MonBrightnessUp, exec, uwsm app -S out brightnessctl set +5% +bindel = , XF86MonBrightnessDown, exec, uwsm app -S out brightnessctl set 5%- +bindel = , XF86WebCam, exec, uwsm app -S out + +# Requires playerctl for media controls +bindl = , XF86AudioPlay, exec, uwsm app -S out -- playerctl play-pause +bindl = , XF86AudioPrev, exec, uwsm app -S out -- playerctl previous +bindl = , XF86AudioNext, exec, uwsm app -S out -- playerctl next + +# Screenshot and copy binds +bind = , PRINT, exec, uwsm app -S out -- hyprshot -m region diff --git a/modules/executes.conf b/modules/executes.conf new file mode 100644 index 0000000..157e8e8 --- /dev/null +++ b/modules/executes.conf @@ -0,0 +1,10 @@ +exec-once = uwsm app -S out -- hyprpanel +exec-once = uwsm app -S out -- AyuGram +exec-once = uwsm app -S out -- teams-for-linux +exec-once = uwsm app -S out -- vesktop +exec-once = uwsm app -S out -- thunderbird +exec-once = uwsm app -S out -- fcitx5 +exec-once = uwsm app -S out -- wl-paste --type text --watch cliphist store +exec-once = uwsm app -S out -- wl-paste --type image --watch cliphist store +exec-once = uwsm app -S out -- hypridle +exec-once = uwsm app -S out -- nextcloud --background diff --git a/modules/macchiato.conf b/modules/macchiato.conf new file mode 100644 index 0000000..9e7071a --- /dev/null +++ b/modules/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/modules/monitors.conf b/modules/monitors.conf new file mode 100644 index 0000000..46d808e --- /dev/null +++ b/modules/monitors.conf @@ -0,0 +1,2 @@ +monitor = eDP-1, 2560x1600@60, 0x0, 1 +monitor = , preferred, auto, 1 diff --git a/modules/settings.conf b/modules/settings.conf new file mode 100644 index 0000000..703ee48 --- /dev/null +++ b/modules/settings.conf @@ -0,0 +1,75 @@ +input { + kb_layout = us + kb_variant = + kb_model = + kb_options = fkeys:basic_13-24 + kb_rules = + sensitivity = 0 + accel_profile = flat + follow_mouse = 1 + touchpad { + natural_scroll = true + scroll_factor = 0.4 + disable_while_typing = true + middle_button_emulation = true + } +} + +misc { + disable_hyprland_logo = true +} + +general { + gaps_in = 3 + gaps_out = 8 + border_size = 3 + col.active_border = $sky $teal $green $blue 90deg + col.inactive_border = $crust 90deg +} + +decoration { + rounding = 5 + shadow { + enabled = true + range = 25 + render_power = 5 + color = $crust + color_inactive = $surface1 + } + blur { + enabled = true + size = 6 + passes = 2 + new_optimizations = on + ignore_opacity = true + contrast = 1.0 + brightness = 1.0 + vibrancy = 0 + vibrancy_darkness = 0 + xray = false + noise = 0.05 + popups = true + input_methods = true + } + +} + +animations { + enabled = 1 + bezier = overshot,0.13,0.99,0.29,1.1 + animation = windows,1,4,overshot,slide + animation = border,1,10,default + animation = fade,1,10,default + animation = workspaces,1,6,overshot,slidevert +} + +dwindle { + pseudotile = 1 + force_split = 0 + preserve_split = true +} + +ecosystem { + no_donation_nag = true + no_update_news = true +} diff --git a/modules/windowrules.conf b/modules/windowrules.conf new file mode 100644 index 0000000..f770da5 --- /dev/null +++ b/modules/windowrules.conf @@ -0,0 +1,7 @@ +windowrulev2 = opacity 0.0 override, class:^(xwaylandvideobridge)$ +windowrulev2 = noanim, class:^(xwaylandvideobridge)$ +windowrulev2 = noinitialfocus, class:^(xwaylandvideobridge)$ +windowrulev2 = maxsize 1 1, class:^(xwaylandvideobridge)$ +windowrulev2 = noblur, class:^(xwaylandvideobridge)$ +windowrulev2 = nofocus, class:^(xwaylandvideobridge)$ +windowrulev2 = noblur, class:^(org.gnome.Nautilus)$