diff --git a/.config/hypr/change_wallpaper.sh b/.config/hypr/change_wallpaper.sh new file mode 100755 index 0000000..9dfb1b0 --- /dev/null +++ b/.config/hypr/change_wallpaper.sh @@ -0,0 +1,11 @@ +#!/bin/sh +swaybg -i $(find ~/.config/hypr/wallpapers/ -type f | shuf -n1) & +OLD_PID=$! +while true; do + sleep 600 + swaybg -i $(find ~/.config/hypr/wallpapers/ -type f | shuf -n1) & + NEXT_PID=$! + sleep 5 + kill $OLD_PID + OLD_PID=$NEXT_PID +done diff --git a/.config/hypr/fn_keys.conf b/.config/hypr/fn_keys.conf new file mode 100644 index 0000000..ecbf80a --- /dev/null +++ b/.config/hypr/fn_keys.conf @@ -0,0 +1,23 @@ +# Volume +binde =, XF86AudioLowerVolume, exec, pamixer -d 5 # decrease 5% +binde =, XF86AudioRaiseVolume, exec, pamixer -i 5 # increase 5% +bind =, XF86AudioMute, exec, pamixer -t # toggle mute/unmute + +# Mic volume +binde =SUPER,XF86AudioLowerVolume, exec, amixer -q set Dmic0 3%- +binde =SUPER,XF86AudioRaiseVolume, exec, amixer -q set Dmic0 3%+ +binde =,XF86AudioMicMute, exec, amixer -q set Dmic0 toggle + +#Screen brightness +binde =,XF86MonBrightnessDown, exec, xbacklight -dec 5 +binde =,XF86MonBrightnessUp, exec, xbacklight -inc 5 + +# Shutdown menu +bind =SUPER,Delete,exec,rofi -show p -modi p:'~/.config/rofi/utils/rofi-power-menu --choices shutdown/reboot/suspend --no-symbols' + +# Media controls +bind =, XF86Go, exec, playerctl previous +bind =, Cancel, exec, playerctl play-pause +bind =, XF86Favorites, exec, playerctl next + + diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf new file mode 100644 index 0000000..bf5d5f5 --- /dev/null +++ b/.config/hypr/hyprland.conf @@ -0,0 +1,212 @@ + +######################################################################################## +AUTOGENERATED HYPR CONFIG. +PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT, +OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS. +######################################################################################## + +# +# Please note not all available settings / options are set here. +# For a full list, see the wiki +# + + +# See https://wiki.hyprland.org/Configuring/Monitors/ +# monitor=,preferred,auto,auto +monitor=eDP-1,1920x1200,auto,1.25 + +# See https://wiki.hyprland.org/Configuring/Keywords/ for more + +# Execute your favorite apps at launch +# exec-once = waybar & hyprpaper & firefox +exec-once = waybar +exec-once=/usr/lib/polkit-kde-authentication-agent-1 +# exec-once = swaybg -i ~/.config/hypr/wallpapers/continental-top.jpg +# Select random wallpaper from wallpaper folder +exec-once = ~/.config/hypr/change_wallpaper.sh +exec-once = dunst +exec-once = batsignal -b -e -w 30 -c 20 -d 10 -f 100 +exec-once = nm-applet +exec-once = ~/.config/hypr/sleep.sh +# exec-once = swayidle -w timeout 300 'swaylock -f' timeout 360 'systemctl suspend' before-sleep 'playerctl pause' +exec-once = sleep 1 && blueman-applet +exec-once = swaylock -C ~/.config/swaylock/config-boot --image ~/.config/hypr/wallpapers/continental-top.jpg +exec-once = sleep 2 && udiskie --tray # automount external hdds or usbs +exec-once = sleep 3 && nextcloud +exec-once = xwaylandvideobridge + +# Source a file (multi-file configs) +# source = ~/.config/hypr/myColors.conf + +# Some default env vars. +env = XCURSOR_SIZE,24 + +# For all categories, see https://wiki.hyprland.org/Configuring/Variables/ +input { + kb_layout = us + kb_variant = altgr-intl + kb_model = + kb_options = altwin:swap_lalt_lwin # swap left alt and meta keys + kb_rules = + + follow_mouse = 1 + + touchpad { + natural_scroll = yes + } + + sensitivity = 0.2 # -1.0 - 1.0, 0 means no modification. +} + +general { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + gaps_in = 5 + gaps_out = 5 + border_size = 1 + #col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg + #col.inactive_border = rgba(595959aa) + + layout = dwindle +} + +decoration { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + rounding = 5 + + blur { + enabled = true + size = 3 + passes = 1 + } + + drop_shadow = yes + shadow_range = 4 + shadow_render_power = 3 + col.shadow = rgba(1a1a1aee) +} + +animations { + enabled = yes + + # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + + animation = windows, 1, 7, myBezier + animation = windowsOut, 1, 7, default, popin 80% + animation = border, 1, 10, default + animation = borderangle, 1, 8, default + animation = fade, 1, 7, default + animation = workspaces, 1, 6, default +} + +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 +} + +# Example per-device config +# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more +device:epic-mouse-v1 { + sensitivity = -0.5 +} + +xwayland { + force_zero_scaling = true +} + +# Include windows rules +source = ~/.config/hypr/windows_rules.conf + +# 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, kitty +bind = $mainMod, C, killactive, +bind = $mainMod, M, exit, +bind = $mainMod, E, exec, nemo +bind = $mainMod, W, exec, firefox +bind = $mainMod, T, togglefloating, +bind = $mainMod, S, exec, IMG=$(xdg-user-dir PICTURES)/Screenshots/$(date +'%s_grim.png') && grim $IMG && wl-copy < $IMG # screenshot +bind = $mainMod SHIFT, S, exec, IMG=$(xdg-user-dir PICTURES)/Screenshots/$(date +'%s_grim.png') && grim -g "$(slurp)" $IMG && wl-copy < $IMG # screenshot only a part of the screen +bind = $mainMod, R, exec, rofi -show drun +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod, J, togglesplit, # dwindle +bind = $mainMod, F, fullscreen, + +# 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 + h/j/k/l like vim +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 + +# 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 +bindm = SUPERALT, mouse:272, resizewindow + +# FN row control +source = ~/.config/hypr/fn_keys.conf + +# resize windows +binde = $mainMod SHIFT, right, resizeactive, 10 0 +binde = $mainMod SHIFT, left, resizeactive, -10 0 +binde = $mainMod SHIFT, up, resizeactive, 0 -10 +binde = $mainMod SHIFT, down, resizeactive, 0 10 + +# ida window rule for tiling +windowrule=tile,title:IDA v7 + +# gdb pwntools window rule to open on the right +#windowrule=tile,title:gdb-pwntools + +windowrule = opacity 1.0 override 0.8 override,^(kitty)$ # set opacity to 1.0 active and 0.5 inactive for kitty + diff --git a/.config/hypr/sleep.sh b/.config/hypr/sleep.sh new file mode 100755 index 0000000..41ee446 --- /dev/null +++ b/.config/hypr/sleep.sh @@ -0,0 +1,3 @@ +swayidle -w timeout 300 'swaylock -f' \ + timeout 360 'systemctl suspend' \ + before-sleep 'swaylock -f;playerctl pause' & diff --git a/.config/hypr/wallpapers/aloe.jpg b/.config/hypr/wallpapers/aloe.jpg new file mode 100644 index 0000000..adf4616 Binary files /dev/null and b/.config/hypr/wallpapers/aloe.jpg differ diff --git a/.config/hypr/wallpapers/california.jpg b/.config/hypr/wallpapers/california.jpg new file mode 100644 index 0000000..3881c90 Binary files /dev/null and b/.config/hypr/wallpapers/california.jpg differ diff --git a/.config/hypr/wallpapers/china-robot-show-neon-yellow.jpg b/.config/hypr/wallpapers/china-robot-show-neon-yellow.jpg new file mode 100644 index 0000000..7955201 Binary files /dev/null and b/.config/hypr/wallpapers/china-robot-show-neon-yellow.jpg differ diff --git a/.config/hypr/wallpapers/continental-down.jpg b/.config/hypr/wallpapers/continental-down.jpg new file mode 100644 index 0000000..fbcaee2 Binary files /dev/null and b/.config/hypr/wallpapers/continental-down.jpg differ diff --git a/.config/hypr/wallpapers/continental-top.jpg b/.config/hypr/wallpapers/continental-top.jpg new file mode 100644 index 0000000..3e767e6 Binary files /dev/null and b/.config/hypr/wallpapers/continental-top.jpg differ diff --git a/.config/hypr/wallpapers/coyote-ugly.jpg b/.config/hypr/wallpapers/coyote-ugly.jpg new file mode 100644 index 0000000..57cc7cf Binary files /dev/null and b/.config/hypr/wallpapers/coyote-ugly.jpg differ diff --git a/.config/hypr/wallpapers/fattys.jpg b/.config/hypr/wallpapers/fattys.jpg new file mode 100644 index 0000000..36506e2 Binary files /dev/null and b/.config/hypr/wallpapers/fattys.jpg differ diff --git a/.config/hypr/wallpapers/jinns-bar.jpg b/.config/hypr/wallpapers/jinns-bar.jpg new file mode 100644 index 0000000..f8e80d6 Binary files /dev/null and b/.config/hypr/wallpapers/jinns-bar.jpg differ diff --git a/.config/hypr/wallpapers/neon.jpg b/.config/hypr/wallpapers/neon.jpg new file mode 100644 index 0000000..02e8e56 Binary files /dev/null and b/.config/hypr/wallpapers/neon.jpg differ diff --git a/.config/hypr/wallpapers/not-active/burj.jpg b/.config/hypr/wallpapers/not-active/burj.jpg new file mode 100644 index 0000000..2d0ec47 Binary files /dev/null and b/.config/hypr/wallpapers/not-active/burj.jpg differ diff --git a/.config/hypr/wallpapers/not-active/coyote-ugly.jpg b/.config/hypr/wallpapers/not-active/coyote-ugly.jpg new file mode 100644 index 0000000..eb91a17 Binary files /dev/null and b/.config/hypr/wallpapers/not-active/coyote-ugly.jpg differ diff --git a/.config/hypr/wallpapers/not-active/jinns-bar.jpg b/.config/hypr/wallpapers/not-active/jinns-bar.jpg new file mode 100644 index 0000000..33b78ee Binary files /dev/null and b/.config/hypr/wallpapers/not-active/jinns-bar.jpg differ diff --git a/.config/hypr/wallpapers/red-neon.jpg b/.config/hypr/wallpapers/red-neon.jpg new file mode 100644 index 0000000..6fa8bcb Binary files /dev/null and b/.config/hypr/wallpapers/red-neon.jpg differ diff --git a/.config/hypr/wallpapers/restourant-neon.jpg b/.config/hypr/wallpapers/restourant-neon.jpg new file mode 100644 index 0000000..97cc28c Binary files /dev/null and b/.config/hypr/wallpapers/restourant-neon.jpg differ diff --git a/.config/hypr/wallpapers/tattoo.jpg b/.config/hypr/wallpapers/tattoo.jpg new file mode 100644 index 0000000..3a1cf56 Binary files /dev/null and b/.config/hypr/wallpapers/tattoo.jpg differ diff --git a/.config/hypr/windows_rules.conf b/.config/hypr/windows_rules.conf new file mode 100644 index 0000000..a558658 --- /dev/null +++ b/.config/hypr/windows_rules.conf @@ -0,0 +1,21 @@ +# 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 + +# Gnome calulator is floating +windowrule = float, ^(org.gnome.Calculator)$ + +# dnSpy needs to be tiled +windowrule = tile, ^(dnspy.exe)$ + +# jetbrains ide fix +windowrulev2=nofocus,class:^jetbrains-(?!toolbox),floating:1,title:^win\d+$ + +# xwaylandvideobridge fix +windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ +windowrulev2 = noanim,class:^(xwaylandvideobridge)$ +windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$ +windowrulev2 = maxsize 1 1,class:^(xwaylandvideobridge)$ +windowrulev2 = noblur,class:^(xwaylandvideobridge)$