jacekpoz
685096d73a
when something has transparency it'll ignore the windows behind it and just show the background (apparently better performance IDK)
335 lines
16 KiB
Nix
335 lines
16 KiB
Nix
{
|
|
config,
|
|
inputs,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
config = {
|
|
wayland.windowManager.hyprland = {
|
|
enable = true;
|
|
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
|
plugins = [
|
|
inputs.hyprland-plugins.packages.${pkgs.system}.csgo-vulkan-fix
|
|
inputs.split-monitor-workspaces.packages.${pkgs.system}.split-monitor-workspaces
|
|
];
|
|
extraConfig = ''
|
|
#laptop
|
|
monitor=eDP-1,2560@1440@165,0x0,1
|
|
#second monitor
|
|
monitor=HDMI-A-1,2560x1440@144,2560x0,1
|
|
|
|
workspace = 1, monitor:eDP-1, default:true
|
|
workspace = 2, monitor:eDP-1
|
|
workspace = 3, monitor:eDP-1
|
|
workspace = 4, monitor:eDP-1
|
|
workspace = 5, monitor:eDP-1
|
|
workspace = 6, monitor:eDP-1
|
|
workspace = 7, monitor:eDP-1
|
|
workspace = 8, monitor:eDP-1
|
|
workspace = 9, monitor:eDP-1
|
|
workspace = 10, monitor:eDP-1
|
|
|
|
workspace = 11, monitor:HDMI-A-1, default:true
|
|
workspace = 12, monitor:HDMI-A-1
|
|
workspace = 13, monitor:HDMI-A-1
|
|
workspace = 14, monitor:HDMI-A-1
|
|
workspace = 15, monitor:HDMI-A-1
|
|
workspace = 16, monitor:HDMI-A-1
|
|
workspace = 17, monitor:HDMI-A-1
|
|
workspace = 18, monitor:HDMI-A-1
|
|
workspace = 19, monitor:HDMI-A-1
|
|
workspace = 20, monitor:HDMI-A-1
|
|
|
|
workspace = special:btop, allpseudo
|
|
workspace = special:amdgpu_top, allpseudo
|
|
workspace = special:helvum, allpseudo
|
|
workspace = special:nixos, allpseudo, gapsin:0, gapsout:0
|
|
|
|
input {
|
|
kb_layout=pl
|
|
kb_variant=
|
|
kb_model=
|
|
kb_options=
|
|
kb_rules=
|
|
|
|
follow_mouse=1
|
|
touchpad {
|
|
disable_while_typing=true
|
|
}
|
|
|
|
repeat_rate = 50
|
|
repeat_delay = 250
|
|
}
|
|
|
|
general {
|
|
sensitivity=1.0 # for mouse cursor
|
|
|
|
gaps_in=5
|
|
gaps_out=5
|
|
#gaps_in=0
|
|
#gaps_out=0
|
|
border_size=2
|
|
#border_size=1
|
|
|
|
apply_sens_to_raw=0 # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse)
|
|
|
|
#no_border_on_floating=true
|
|
}
|
|
|
|
decoration {
|
|
#rounding=0
|
|
rounding=10
|
|
blur {
|
|
enabled=1
|
|
size=3
|
|
passes=2
|
|
xray=1
|
|
}
|
|
|
|
drop_shadow=1
|
|
shadow_range=15
|
|
shadow_render_power=2
|
|
shadow_ignore_window=1
|
|
shadow_offset= 2 4
|
|
shadow_scale=1
|
|
}
|
|
|
|
gestures {
|
|
workspace_swipe=1
|
|
workspace_swipe_distance=200
|
|
workspace_swipe_invert=1
|
|
workspace_swipe_min_speed_to_force=20
|
|
workspace_swipe_cancel_ratio=0.5
|
|
}
|
|
|
|
bezier=dupa, 0.1, 0.9, 0.1, 1.05
|
|
|
|
animations {
|
|
enabled=1
|
|
animation=windows,1,4,dupa,popin
|
|
animation=windowsOut,1,7,dupa,slide
|
|
animation=border,1,15,default
|
|
animation=fade,1,10,default
|
|
animation=workspaces,1,5,dupa,slidevert
|
|
}
|
|
|
|
dwindle {
|
|
no_gaps_when_only=1
|
|
}
|
|
|
|
misc {
|
|
enable_swallow=0
|
|
swallow_regex=foot
|
|
focus_on_activate=true
|
|
vrr=1
|
|
animate_manual_resizes=false
|
|
animate_mouse_windowdragging=false
|
|
}
|
|
|
|
windowrulev2 = float, title:^(.*)(Tor Browser)(.*)$
|
|
windowrulev2 = float, class:^(mullvadbrowser)$
|
|
windowrulev2 = float, class:^(foot)$
|
|
windowrulev2 = float, class:^(mpv)$
|
|
windowrulev2 = float, class:^(imv)$
|
|
windowrulev2 = float, class:^(Vieb)$
|
|
windowrulev2 = float, title:^(Picture-in-Picture)$
|
|
windowrulev2 = float, title:^(.*)(Choose User Profile)(.*)$
|
|
|
|
windowrulev2 = float, class:^(code), title: ^(Open*)
|
|
windowrulev2 = size 70% 70%, class:^(code), title: ^(Open*)
|
|
windowrulev2 = center, class: ^(code), title: ^(Open*)
|
|
windowrulev2 = float, class:^(org.keepassxc.KeePassXC)$
|
|
windowrulev2 = size 960 670, title:^(ROG Control Center)$
|
|
|
|
bind = SUPER, RETURN, exec, foot
|
|
bind = SUPER, W, exec, firefox
|
|
bind = SUPERSHIFT, W, exec, librewolf
|
|
bind = SUPER, Q, killactive
|
|
bind = SUPER, F, fullscreen, 0
|
|
bind = SUPER, M, fullscreen, 1
|
|
bind = SUPER, D, exec, anyrun
|
|
bind = SUPER, SPACE, togglefloating,
|
|
bind = SUPERSHIFT, C, centerwindow
|
|
bind = SUPER, R, bringactivetotop
|
|
binde = SUPER, H, movefocus, l
|
|
binde = SUPER, J, movefocus, d
|
|
binde = SUPER, K, movefocus, u
|
|
binde = SUPER, L, movefocus, r
|
|
binde = SUPERCTRL, J, focusmonitor, l
|
|
binde = SUPERCTRL, K, focusmonitor, r
|
|
bind = SUPER, 1, split-workspace, 1
|
|
bind = SUPER, 2, split-workspace, 2
|
|
bind = SUPER, 3, split-workspace, 3
|
|
bind = SUPER, 4, split-workspace, 4
|
|
bind = SUPER, 5, split-workspace, 5
|
|
bind = SUPER, 6, split-workspace, 6
|
|
bind = SUPER, 7, split-workspace, 7
|
|
bind = SUPER, 8, split-workspace, 8
|
|
bind = SUPER, 9, split-workspace, 9
|
|
bind = SUPER, 0, split-workspace, 10
|
|
bind = SUPERSHIFT, 1, split-movetoworkspacesilent, 1
|
|
bind = SUPERSHIFT, 2, split-movetoworkspacesilent, 2
|
|
bind = SUPERSHIFT, 3, split-movetoworkspacesilent, 3
|
|
bind = SUPERSHIFT, 4, split-movetoworkspacesilent, 4
|
|
bind = SUPERSHIFT, 5, split-movetoworkspacesilent, 5
|
|
bind = SUPERSHIFT, 6, split-movetoworkspacesilent, 6
|
|
bind = SUPERSHIFT, 7, split-movetoworkspacesilent, 7
|
|
bind = SUPERSHIFT, 8, split-movetoworkspacesilent, 8
|
|
bind = SUPERSHIFT, 9, split-movetoworkspacesilent, 9
|
|
bind = SUPERSHIFT, 0, split-movetoworkspacesilent, 10
|
|
bindle = , XF86MonBrightnessUp, exec, ~/Scripts/notif_brightness.sh set +5%
|
|
bindle = , XF86MonBrightnessDown, exec, ~/Scripts/notif_brightness.sh set 5%-
|
|
bindl = , XF86AudioMedia, exec, playerctl play-pause
|
|
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
|
bindl = , XF86AudioStop, exec, playerctl stop
|
|
bindl = , XF86AudioPrev, exec, playerctl previous
|
|
bindl = , XF86AudioNext, exec, playerctl next
|
|
bindle = , XF86AudioRaiseVolume, exec, ~/Scripts/notif_volume.sh -ui 5
|
|
bindle = , XF86AudioLowerVolume, exec, ~/Scripts/notif_volume.sh -ud 5
|
|
bindl = , XF86AudioMute, exec, ~/Scripts/notif_volume.sh --toggle-mute
|
|
# https://github.com/n3oney/shadower
|
|
bind = SUPER, S, exec, grimblast save area - | shadower | tee "$(xdg-user-dir PICTURES)/Screenshots/$(date +'screenshot-%Y%m%d%H%M%S.png')" | wl-copy && notify-send "Screenshot taken"
|
|
bind = SUPERSHIFT, S, exec, grimblast save area - | swappy -f - -o - | shadower | tee "$(xdg-user-dir PICTURES)/Screenshots/$(date +'screenshot-%Y%m%d%H%M%S.png')" | wl-copy && notify-send "Screenshot taken"
|
|
bind = SUPERCONTROL, S, exec, grimblast save area - | tee "$(xdg-user-dir PICTURES)/Screenshots/$(date +'screenshot-%Y%m%d%H%M%S.png')" | wl-copy && notify-send "Screenshot taken"
|
|
bind = SUPERSHIFT, R, exec, hyprctl reload
|
|
bind = SUPER, P, pin
|
|
bind = , XF86Launch1, exec, rog-control-center
|
|
binde = , XF86Launch3, exec, asusctl led-mode -n
|
|
bind = , XF86Launch4, exec, asusctl profile -n; pkill -SIGRTMIN+8 waybar
|
|
binde = , XF86KbdBrightnessUp, exec, asusctl -n
|
|
binde = , XF86KbdBrightnessDown, exec, asusctl -p
|
|
bind = , XF86TouchpadToggle, exec,
|
|
bind = SUPER, T, exec, grim -g "$(slurp)" -t ppm - | tesseract -l pol - - | wl-copy && notify-send "Copied text: " "\"$(wl-paste)\""
|
|
bind = SUPER, SEMICOLON, exec, ~/.config/rofi/powermenu/type-2/powermenu.sh
|
|
bind = SUPER, X, exec, keepassxc
|
|
bind = SUPERSHIFT, M, exec, ~/Scripts/man.sh
|
|
bind = SUPER, E, exec, wl-paste | spd-say -e -w -i 10
|
|
bind = SUPERCONTROL, E, exec, wl-paste | spd-say -e -w -i 10 -l pl
|
|
bind = SUPERSHIFT, E, exec, spd-say -C
|
|
bind = SUPER, G, togglegroup
|
|
binde = SUPERSHIFT, G, changegroupactive, f
|
|
bind = SUPERCONTROL, R, exec, replay-sorcery save
|
|
bind = SUPERCONTROL, X, exec, /usr/lib/xdg-desktop-portal-hyprland -r
|
|
bind = SUPERSHIFT, X, exec, hyprctl kill
|
|
bind = SUPER, B, togglespecialworkspace, btop
|
|
bind = SUPER, A, togglespecialworkspace, amdgpu_top
|
|
bind = SUPER, V, togglespecialworkspace, helvum
|
|
bind = SUPER, N, togglespecialworkspace, nixos
|
|
|
|
|
|
bindm = SUPER, mouse:272, movewindow
|
|
bindm = SUPER, mouse:273, resizewindow
|
|
|
|
binds {
|
|
pass_mouse_when_bound=0
|
|
}
|
|
|
|
exec=systemctl restart --user waybar.service
|
|
|
|
exec=pkill btop
|
|
exec=pkill amdgpu_top
|
|
exec=pkill helvum
|
|
|
|
exec=[workspace special:btop silent;tile] foot btop
|
|
exec=[workspace special:amdgpu_top silent] amdgpu_top --gui -i 0
|
|
exec=[workspace special:amdgpu_top silent] amdgpu_top --gui -i 1
|
|
exec=[workspace special:helvum silent] helvum
|
|
exec-once=[workspace special:nixos silent;tile] cd niksos; foot
|
|
|
|
exec-once=foot --server
|
|
exec-once=hyprctl setcursor Bibata-Modern-Classic 24
|
|
|
|
exec-once=wl-paste --watch cliphist store
|
|
|
|
exec-once=hyprctl dispatch exec "swww init" && sleep 0.5
|
|
exec-once=swww img -o eDP-1 ~/catppuccin-wall0.png
|
|
exec-once=swww img -o HDMI-A-1 ~/catppuccin-wall1.png
|
|
|
|
exec-once=rog-control-center
|
|
exec-once=wlsunset -S 06:00 -s 20:00
|
|
|
|
exec-once=sleep 1 && keepassxc
|
|
|
|
exec-once=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
|
|
|
#exec-once=foot -e nvim ~/todo.md
|
|
|
|
exec-once=nm-applet --indicator
|
|
|
|
exec-once=blueman-applet
|
|
|
|
exec-once=$HOME/.local/share/hyprload/hyprload.sh
|
|
|
|
#exec-once=fcitx5 -d
|
|
|
|
exec-once=systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
|
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=$XDG_CURRENT_DESKTOP
|
|
|
|
# no black border on grimblast screenshots
|
|
layerrule = noanim, ^(selection)$
|
|
|
|
layerrule = blur, ^(waybar)$
|
|
|
|
# temporary fix to swaylock screenshoting rofi before locking
|
|
layerrule = noanim, ^(rofi)$
|
|
|
|
layerrule = blur, ^(anyrun)$
|
|
|
|
env=PATH,$PATH:/home/jacek/.cargo/bin:/home/jacek/.local/bin:/home/jacek/.local/share/gem/ruby/3.0.0/bin
|
|
env=EDITOR,/usr/bin/nvim
|
|
env=LIBSEAT_BACKEND,logind
|
|
|
|
env=TERM,foot
|
|
|
|
env=CHROME_EXECUTABLE,/usr/bin/chromium
|
|
|
|
env=GTK_IM_MODULE,fcitx
|
|
env=QT_IM_MODULE,fcitx
|
|
env=XMODIFIERS,@im=fcitx
|
|
|
|
env=SYSTEMD_TIMEDATED_NTP_SERVICES,chronyd.service:systemd-timesyncd.service
|
|
|
|
env=GOPATH,~/.local/share/go
|
|
|
|
env=XDG_CURRENT_DESKTOP,Hyprland
|
|
env=XDG_SESSION_TYPE,wayland
|
|
env=XDG_SESSION_DESKTOP,Hyprland
|
|
|
|
env=MOZ_ENABLE_WAYLAND,1
|
|
env=MOZ_DRM_DEVICE,/dev/dri/card0
|
|
|
|
env=SDL_VIDEODRIVER,wayland
|
|
|
|
env=_JAVA_AWT_WM_NONEREPARENTING,1
|
|
|
|
env=CLUTTER_BACKEND,wayland
|
|
|
|
env=GDK_BACKEND,wayland
|
|
|
|
env=XCURSOR_THEME,Bibata-Modern-Classic
|
|
env=XCURSOR_SIZE,24
|
|
|
|
general {
|
|
col.active_border=0xFFF5C2E7
|
|
col.inactive_border=0xFF45475A
|
|
col.group_border_active=0xFFA6E3A1
|
|
col.group_border=0xFF45475A
|
|
}
|
|
|
|
decoration {
|
|
col.shadow=0xAF1E1E2E
|
|
}
|
|
|
|
plugin {
|
|
csgo-vulkan-fix {
|
|
res_w = 2560
|
|
res_h = 1440
|
|
}
|
|
split-monitor-workspaces {
|
|
count = 10
|
|
}
|
|
}
|
|
'';
|
|
};
|
|
};
|
|
}
|