diff options
author | altaf-creator <dev@altafcreator.com> | 2024-05-19 14:54:41 +0700 |
---|---|---|
committer | altaf-creator <dev@altafcreator.com> | 2024-05-19 14:54:41 +0700 |
commit | 3ec8d42fbf6eed78c24de2caca63d91a2604ff50 (patch) | |
tree | 985517bcce150969a050f7f408bea6670177bbb7 /config/hypr |
Diffstat (limited to 'config/hypr')
-rw-r--r-- | config/hypr/hypridle.conf | 23 | ||||
-rw-r--r-- | config/hypr/hyprland.conf | 289 | ||||
-rw-r--r-- | config/hypr/hyprlock.conf | 33 | ||||
-rw-r--r-- | config/hypr/hyprpaper.conf | 15 |
4 files changed, 360 insertions, 0 deletions
diff --git a/config/hypr/hypridle.conf b/config/hypr/hypridle.conf new file mode 100644 index 0000000..8b9b1f7 --- /dev/null +++ b/config/hypr/hypridle.conf @@ -0,0 +1,23 @@ +general { + before_sleep_cmd = echo "Sleeping." + after_sleep_cmd = echo "Awake!" + ignore_dbus_inhibit = true +} + +listener { + timeout = 90 + on-timeout = brightnessctl -s ; brightnessctl set $(expr $(brightnessctl get) / 3) + on-resume = brightnessctl -r +} + +listener { + timeout = 120 + on-timeout = brightnessctl set 0 + on-resume = brightnessctl -r +} + +listener { + timeout = 240 + on-timeout = systemctl suspend + on-resume = notify-send "Hey! Welcome back!" ; brightnessctl -r +} diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf new file mode 100644 index 0000000..98d90ba --- /dev/null +++ b/config/hypr/hyprland.conf @@ -0,0 +1,289 @@ + +# autogenerated = 1 # remove this line to remove the warning + +# See https://wiki.hyprland.org/Configuring/Monitors/ +monitor=,1920x1080,auto,1 + + +# See https://wiki.hyprland.org/Configuring/Keywords/ for more + +# Execute your favorite apps at launch +# exec-once = waybar & hyprpaper & firefox + +# Source a file (multi-file configs) +# source = ~/.config/hypr/myColors.conf + +# Set programs that you use +$terminal = kitty +$fileManager = dolphin +$menu = pkill rofi || exec "~/.config/rofi/launchers/type-1/launcher.sh" drun +$menuCalc = pkill rofi || exec "~/.config/rofi/launchers/type-1/launcher.sh" calc +$menuEmoji = pkill rofi || exec "~/.config/rofi/launchers/type-1/launcher.sh" emoji + +# Some default env vars. +env = XCURSOR_SIZE,24 +# env = QT_QPA_PLATFORMTHEME,qt5ct # change to qt6ct if you have that +# env = GTK_THEME,Adw-dark +env = GTK_IM_MODULE,fcitx +env = QT_IM_MODULE,fcitx +env = XMODIFIERS,@im=fcitx + +# For all categories, see https://wiki.hyprland.org/Configuring/Variables/ +input { + kb_layout = us + kb_variant = + kb_model = + kb_options = + kb_rules = + + follow_mouse = 1 + + touchpad { + natural_scroll = yes + scroll_factor = 0.3 + } + + accel_profile = flat + sensitivity = 0.7 # -1.0 - 1.0, 0 means no modification. +} + +general { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + gaps_in = 5 + gaps_out = 10 + border_size = 2 +# col.active_border = rgba(40a2e3ff) rgba(0b60b0ff) 45deg + col.active_border = rgba(60baecff) rgba(0b6ac2ff) 45deg + col.inactive_border = rgba(595959aa) + + layout = dwindle + + # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on + allow_tearing = false +} + +decoration { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + rounding = 5 + + blur { + enabled = true + size = 6 + passes = 3 + noise = 0.01 + new_optimizations = true + } + + drop_shadow = yes + shadow_range = 10 + shadow_render_power = 3 + col.shadow = rgba(1a1a1a55) +} + +animations { + enabled = yes + + # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + + bezier = windowBezier, 0.05, 0.9, 0.1, 1.05 + + animation = windows, 1, 5, windowBezier, popin 80% + animation = windowsOut, 1, 5, default, popin 80% + animation = border, 1, 10, default + animation = borderangle, 1, 8, default + animation = fade, 1, 7, default + animation = workspaces, 1, 6, default, slidefade 30% +} + +dwindle { + # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more + pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = yes # you probably want this +} + +master { + # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more + new_is_master = true +} + +gestures { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + workspace_swipe = on +} + +misc { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers +} + +group { + groupbar { + render_titles = false + height = 3 + col.active = rgba(40a2e3ee) + col.inactive = rgba(0b60b0ee) + } + + col.border_active = rgba(40a2e3ee) rgba(0b60b0ee) 45deg + col.border_inactive = rgba(595959aa) +} + +# Example per-device config +# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more +#device:epic-mouse-v1 { +# sensitivity = -0.5 +#} + +device { + name = wacom-intuos-bt-s-pen + output = eDP-1 +} + +device { + name = elan1300:00-04f3:3104-touchpad + enabled = 1 + sensitivity = 0.7 +} + +# Example windowrule v1 +# windowrule = float, ^(kitty)$ +# Example windowrule v2 +# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more +#windowrulev2 = nomaximizerequest, class:.* # You'll probably like this. + + +# See https://wiki.hyprland.org/Configuring/Keywords/ for more +$mainMod = SUPER + +# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more +bind = $mainMod, Q, exec, $terminal +bind = $mainMod, C, killactive, +# bind = $mainMod, M, exit, +bind = $mainMod, E, exec, $fileManager +bind = $mainMod, V, togglefloating, +bind = $mainMod, SPACE, exec, $menu +bind = $mainMod CTRL, SPACE, exec, $menuCalc +bind = $mainMod SHIFT, SPACE, exec, $menuEmoji +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod, B, togglesplit, # dwindle + +# Move focus with mainMod + arrow keys +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d + +# Move focus with mainMod + vim-like controls +bind = $mainMod, h, movefocus, l +bind = $mainMod, l, movefocus, r +bind = $mainMod, k, movefocus, u +bind = $mainMod, j, movefocus, d + +# Switch workspaces with mainMod + [0-9] +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 + +# Move active window to a workspace with mainMod + SHIFT + [0-9] +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 + +# Example special workspace (scratchpad) +bind = $mainMod, S, togglespecialworkspace, magic +bind = $mainMod SHIFT, S, movetoworkspace, special:magic + +# Scroll through existing workspaces with mainMod + scroll +bind = $mainMod, mouse_down, workspace, e-1 +bind = $mainMod, mouse_up, workspace, e+1 + +# Move/resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + +bind = $mainMod, F, fullscreen +bind = $mainMod, T, togglegroup + +# Move & Resize tiles with keyboard +bind = $mainMod SHIFT, H, movewindow, l +bind = $mainMod SHIFT, L, movewindow, r +bind = $mainMod SHIFT, K, movewindow, u +bind = $mainMod SHIFT, J, movewindow, d + +bind = $mainMod CTRL, r, submap, resize + +submap = resize + +binde = , l, resizeactive, 40 0 +binde = , h, resizeactive, -40 0 +binde = , k, resizeactive, 0 -40 +binde = , j, resizeactive, 0 40 + +bind = , escape, submap, reset + +submap = reset + +bind = $mainMod CTRL, l, moveactive, 60 0 +bind = $mainMod CTRL, h, moveactive, -60 0 +bind = $mainMod CTRL, k, moveactive, 0 -60 +bind = $mainMod CTRL, j, moveactive, 0 60 + +# Switch between grouped windows +bind = $mainMod, Tab, changegroupactive, f +bind = $mainMod SHIFT, Tab, changegroupactive, b + +# Cycle between floating windows +bind = $mainMod CTRL, Tab, cyclenext, # change focus to another window +bind = $mainMod CTRL, Tab, bringactivetotop, # bring it to the top + +binde =, XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5% +binde =, XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5% +binde =, XF86AudioMute, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle + +binde =, XF86MonBrightnessUp, exec, brightnessctl set +5% +binde =, XF86MonBrightnessDown, exec, brightnessctl set 5%- + +# Screenshot +bind =, Print, exec, grim -l 3 ; grim -l 3 - | wl-copy ; notify-send "📸 Screenshot taken." "A full screenshot has been taken." +bind = SHIFT, Print, exec, grim -g "$(slurp)" ; notify-send "📷 Screenshot taken." "A region screenshot has been taken." +bind = CTRL, Print, exec, grim -g "$(slurp -d)" - | wl-copy ; notify-send "📋 Copied to clipboard." + +exec-once = hyprpaper +exec-once = waybar +exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 +exec-once = hypridle +exec-once = notify-send "Welcome." +exec-once = fcitx5 +exec-once = /home/altaf/Scripts/battery-notify.sh +exec-once = keepassxc + +# windowrule = opacity 0.8,^(kitty)$ +windowrule = tile,title:(Godot) +windowrulev2 = suppressevent maximize,class:.* +windowrule = noblur,^(Rofi) +windowrule = float, title:(Reminder) +windowrule = nofocus, title:(im-emoji-picker) +windowrule = fullscreen, ^(Terraria.bin.x86_64)$ +windowrule = float, ^(pavucontrol)$ +windowrulev2 = stayfocused, title:^()$,class:^(steam)$ +windowrulev2 = minsize 1 1, title:^()$,class:^(steam)$ +windowrule = float, title:(Copying — Dolphin) +windowrule = tile,class:(neovide) +# windowrulev2 = opacity 0.2,class:(neovide) diff --git a/config/hypr/hyprlock.conf b/config/hypr/hyprlock.conf new file mode 100644 index 0000000..1c1dbbd --- /dev/null +++ b/config/hypr/hyprlock.conf @@ -0,0 +1,33 @@ +background { + monitor = + path = /home/altaf/Pictures/mojave-night.png +} + +input-field { + monitor = + size = 200, 30 + outline_thickness = 2 + dots_size = 0.3 # Scale of input-field height, 0.2 - 0.8 + dots_spacing = 0.25 # Scale of dots' absolute size, 0.0 - 1.0 + dots_center = true + outer_color = rgb(41, 46, 62) + inner_color = rgb(41, 46, 62) + font_color = rgb(ffffff) + fade_on_empty = true + hide_input = false + position = 0, -20 + halign = center + valign = center +} + +label { + monitor = + text = cmd[update:10000] echo "$(date | grep -o ..:..)" + color = rgba(200, 200, 200, 1.0) + font_size = 40 + font_family = Roboto Light + + 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..c425600 --- /dev/null +++ b/config/hypr/hyprpaper.conf @@ -0,0 +1,15 @@ +preload = ~/Pictures/mojave-night.jpg + +#set the default wallpaper(s) seen on initial workspace(s) --depending on the number of monitors used +wallpaper = eDP-1,~/Pictures/mojave-night.jpg +wallpaper = HDMI-A-1,~/Pictures/mojave-night.jpg +#if more than one monitor in use, can load a 2nd image +#wallpaper = monitor2,/path/to/next_image.png +# .. more monitors + +#enable splash text rendering over the wallpaper +splash = false + +#fully disable ipc +# ipc = off + |