mirror of
https://github.com/ItsDrike/dotfiles.git
synced 2025-06-30 04:20:43 +00:00
Major rewrite: switching back to Arch from NixOS
This commit is contained in:
parent
df585b737b
commit
254181c0fc
121 changed files with 5433 additions and 2371 deletions
11
home/.config/hypr/hyprland.d/exec.conf
Normal file
11
home/.config/hypr/hyprland.d/exec.conf
Normal file
|
@ -0,0 +1,11 @@
|
|||
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_TYPE GTK_THEME QT_QPA_PLATFORMTHEME QT_STYLE_OVERRIDE
|
||||
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP GTK_THEME QT_QPA_PLATFORMTHEME QT_STYLE_OVERRIDE
|
||||
|
||||
# Hyprland socket sometimes isn't yet loaded, sleep for sec
|
||||
exec-once = sleep 1 && systemctl --user start wayland-session.target
|
||||
|
||||
exec-once = vesktop
|
||||
# exec-once = discord
|
||||
# exec-once = webcord --start-minimized
|
||||
|
||||
# vi: ft=hyprlang
|
11
home/.config/hypr/hyprland.d/gestures.conf
Normal file
11
home/.config/hypr/hyprland.d/gestures.conf
Normal file
|
@ -0,0 +1,11 @@
|
|||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_fingers = 3
|
||||
workspace_swipe_distance = 300
|
||||
workspace_swipe_invert = false
|
||||
workspace_swipe_min_speed_to_force = 20
|
||||
workspace_swipe_cancel_ratio = 0.650000
|
||||
}
|
||||
|
||||
# vi: ft=hyprlang
|
||||
|
34
home/.config/hypr/hyprland.d/input.conf
Normal file
34
home/.config/hypr/hyprland.d/input.conf
Normal file
|
@ -0,0 +1,34 @@
|
|||
# ################
|
||||
# ### MONITORS ###
|
||||
# ################
|
||||
|
||||
# Should be configured per-profile
|
||||
monitor = HDMI-A-1, 1920x1080@60, 0x0, 1 # above
|
||||
#monitor = HDMI-A-1, 1920x1080@60, 1920x1080, 1 # left
|
||||
monitor = eDP-1, 1920x1200@60, 0x1080, 1
|
||||
monitor = , preferred, auto, 1
|
||||
|
||||
# Mirror the primary (laptop) monitor on externals
|
||||
# monitor= , preferred, auto, 1, mirror, eDP-1
|
||||
|
||||
# #####################
|
||||
# ### GENERAL INPUT ###
|
||||
# #####################
|
||||
|
||||
input {
|
||||
kb_layout = us, sk
|
||||
kb_variant = ,qwerty
|
||||
kb_options = grp:alt_shift_toggle
|
||||
|
||||
numlock_by_default=true
|
||||
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
# Sending LMB + RMB = MMB
|
||||
middle_button_emulation = true
|
||||
# I'm not natural
|
||||
natural_scroll = false;
|
||||
}
|
||||
}
|
||||
|
||||
# vi: ft=hyprlang
|
290
home/.config/hypr/hyprland.d/keybinds.conf
Normal file
290
home/.config/hypr/hyprland.d/keybinds.conf
Normal file
|
@ -0,0 +1,290 @@
|
|||
$MOUSE_LMB = mouse:272
|
||||
$MOUSE_RMB = mouse:273
|
||||
$MOUSE_MMB = mouse:274
|
||||
$MOUSE_EX1 = mouse:275
|
||||
$MOUSE_EX2 = mouse:276
|
||||
|
||||
$XF86Favorites = 164
|
||||
|
||||
# #####################
|
||||
# ### ACTIVE WINDOW ###
|
||||
# #####################
|
||||
|
||||
bind = SUPER, W, killactive,
|
||||
bind = SUPER, F, togglefloating,
|
||||
bind = SUPER, Space, fullscreen, 0 # regular fullscreen
|
||||
bind = SUPER_SHIFT, Space, fullscreen, 1 # maximize without client fullscreen
|
||||
bind = SUPER_CTRL, Space, fullscreenstate, 2, 0 # fullscreen without client knowing
|
||||
bind = SUPER_CTRL_SHIFT, Space, fullscreenstate, 1, 2 # maximize with client being full-screen
|
||||
bind = CTRL_SHIFT, Space, exec, toggle-fake-fullscreen # fake fullscreen + custom border
|
||||
bind = SUPER_SHIFT, S, layoutmsg, togglesplit
|
||||
|
||||
# ################
|
||||
# ### PROGRAMS ###
|
||||
# ################
|
||||
|
||||
bind = SUPER, R, exec, wofi --show drun
|
||||
bind = SUPER_SHIFT, Return, exec, wofi --show run
|
||||
bind = SUPER_SHIFT, V, exec, clipman pick -t wofi
|
||||
|
||||
bind = SUPER, Return, exec, kitty
|
||||
bind = SUPER, X, exec, pcmanfm-qt
|
||||
bind = SUPER, B, exec, firefox
|
||||
bind = , XF86Calculator, exec, qalculate-gtk
|
||||
|
||||
# #####################
|
||||
# ### DE/WM CONTROL ###
|
||||
# #####################
|
||||
|
||||
bind = SUPER_SHIFT, Q, exec, menuquit
|
||||
bind = SUPER_CTRL, L, exec, loginctl lock-session
|
||||
bind = SUPER_SHIFT, L, exec, wlogout -p layer-shell
|
||||
bind = SUPER_SHIFT, T, exec, toggle-idle
|
||||
|
||||
# ###################
|
||||
# ### SCREENSHOTS ###
|
||||
# ###################
|
||||
|
||||
# Screenshots (with custom screenshot script)
|
||||
$SCREENSHOT_FORMAT = "${XDG_SCREENSHOTS_DIR:-$HOME/Media/Pictures/Screenshots}/Screenshot_$(date +%Y-%m-%d_%H-%M-%S).png"
|
||||
$SCREENSHOT_DELAY = 2000
|
||||
|
||||
bind = ALT, Print, exec, wl-copy --type image/png "$(hyprpicker)" && notify-send 'Picked color' "$(wl-paste) (saved to clipboard)"
|
||||
bind = , Print, exec, hyprland-screenshot --notify --copy --target area
|
||||
#bindl = , Print, exec, hyprland-screenshot --notify --copy --target all # lockscreen screenshot (only enable when needed)
|
||||
bind = SUPER, Print, exec, hyprland-screenshot --notify --copy --target area --edit
|
||||
bind = SHIFT, Print, exec, hyprland-screenshot --notify --save $SCREENSHOT_FORMAT --target area
|
||||
bind = CTRL, Print, exec, hyprland-screenshot --notify --copy --target area --delay $SCREENSHOT_DELAY
|
||||
bind = SUPER_SHIFT, Print, exec, hyprland-screenshot --notify --save $SCREENSHOT_FORMAT --target area --edit
|
||||
bind = SUPER_CTRL, Print, exec, hyprland-screenshot --notify --copy --target area --delay $SCREENSHOT_DELAY --edit
|
||||
bind = SUPER_SHIFT_CTRL, Print, exec, hyprland-screenshot --notify --save $SCREENSHOT_FORMAT --target area --delay $SCREENSHOT_DELAY --edit
|
||||
# bind = , Print, exec, hyprland-screenshot --save $SCREENSHOT_FORMAT --target all
|
||||
|
||||
# XF86Favorites key for recording
|
||||
# (don't question me, I had it free)
|
||||
bind = , 164, exec, quick-record --notify toggle
|
||||
bind = SUPER, 164, exec, quick-record toggle
|
||||
|
||||
# #####################
|
||||
# ### NOTIFICATIONS ###
|
||||
# #####################
|
||||
|
||||
bind = CTRL, grave, exec, dunstctl close
|
||||
bind = CTRL_SHIFT, grave, exec, dunstctl close-all
|
||||
bind = CTRL, period, exec, dunstctl history-pop
|
||||
bind = CTRL_SHIFT, period, exec, dunstctl context
|
||||
bind = SUPER_SHIFT, D, exec, toggle-notifications
|
||||
|
||||
# ############################
|
||||
# ### AUDIO/VOLUME CONTROL ###
|
||||
# ############################
|
||||
|
||||
binde = SUPER, Down, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05-
|
||||
binde = SUPER, Up, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05+
|
||||
binde = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05-
|
||||
binde = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05+
|
||||
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||
|
||||
# ##########################
|
||||
# ### BRIGHTNESS CONTROL ###
|
||||
# ##########################
|
||||
|
||||
binde = SUPER, Right, exec, brightness -i 5% -n
|
||||
binde = SUPER, Left, exec, brightness -d 5% -n
|
||||
binde = , XF86MonBrightnessUp, exec, brightness -i 5% -n
|
||||
binde = , XF86MonBrightnessDown, exec, brightness -d 5% -n
|
||||
|
||||
# #####################
|
||||
# ### WINDOW GROUPS ###
|
||||
# #####################
|
||||
|
||||
bind = SUPER, G, togglegroup,
|
||||
bind = SUPER_SHIFT, G, lockactivegroup, toggle
|
||||
bind = ALT, tab, changegroupactive, f
|
||||
bind = ALT, grave, changegroupactive, b
|
||||
|
||||
# ######################################
|
||||
# ### SPECIAL WORKSPACE (SCRATCHPAD) ###
|
||||
# ######################################
|
||||
|
||||
bind = ALT, grave, movetoworkspace, special
|
||||
bind = SUPER, grave, togglespecialworkspace,
|
||||
|
||||
# #########################
|
||||
# ### MOVE WINDOW FOCUS ###
|
||||
# #########################
|
||||
|
||||
bind = SUPER, h, movefocus, l
|
||||
bind = SUPER, l, movefocus, r
|
||||
bind = SUPER, k, movefocus, u
|
||||
bind = SUPER, j, movefocus, d
|
||||
|
||||
# #######################################
|
||||
# ### MOVE ACTIVE WINDOW IN DIRECTION ###
|
||||
# #######################################
|
||||
|
||||
bind = SUPER_ALT, h, movewindow, l
|
||||
bind = SUPER_ALT, l, movewindow, r
|
||||
bind = SUPER_ALT, k, movewindow, u
|
||||
bind = SUPER_ALT, j, movewindow, d
|
||||
|
||||
# #######################################
|
||||
# ### MOVE FLOATING WINDOWS ###
|
||||
# #######################################
|
||||
|
||||
$myMoveSize = 100
|
||||
bind = SUPER_ALT, left, exec, hyprland-move-window $myMoveSiez l
|
||||
bind = SUPER_ALT, right, exec, hyprland-move-window $myMoveSize r
|
||||
bind = SUPER_ALT, up, exec, hyprland-move-window $myMoveSize u
|
||||
bind = SUPER_ALT, down, exec, hyprland-move-window $myMoveSize d
|
||||
|
||||
|
||||
# ################################################################
|
||||
# ### OVERRIDE SPLIT DIRECTION FOR NEXT WINDOW (MANUAL TILING) ###
|
||||
# ################################################################
|
||||
|
||||
bind = SUPER_ALT, left, layoutmsg, preselect l
|
||||
bind = SUPER_ALT, right, layoutmsg, preselect r
|
||||
bind = SUPER_ALT, up, layoutmsg, preselect u
|
||||
bind = SUPER_ALT, down, layoutmsg, preselect d
|
||||
|
||||
# ######################################################
|
||||
# ### SWITCH WORKSPACE (SWAPPING TO CURRENT MONITOR) ###
|
||||
# ######################################################
|
||||
|
||||
bind = SUPER, 1, focusworkspaceoncurrentmonitor, 1
|
||||
bind = SUPER, 2, focusworkspaceoncurrentmonitor, 2
|
||||
bind = SUPER, 3, focusworkspaceoncurrentmonitor, 3
|
||||
bind = SUPER, 4, focusworkspaceoncurrentmonitor, 4
|
||||
bind = SUPER, 5, focusworkspaceoncurrentmonitor, 5
|
||||
bind = SUPER, 6, focusworkspaceoncurrentmonitor, 6
|
||||
bind = SUPER, 7, focusworkspaceoncurrentmonitor, 7
|
||||
bind = SUPER, 8, focusworkspaceoncurrentmonitor, 8
|
||||
bind = SUPER, 9, focusworkspaceoncurrentmonitor, 9
|
||||
|
||||
# ################################
|
||||
# ### MOVE WINDOW TO WORKSPACE ###
|
||||
# ################################
|
||||
|
||||
bind = SUPER_SHIFT, 1, movetoworkspacesilent, 1
|
||||
bind = SUPER_SHIFT, 2, movetoworkspacesilent, 2
|
||||
bind = SUPER_SHIFT, 3, movetoworkspacesilent, 3
|
||||
bind = SUPER_SHIFT, 4, movetoworkspacesilent, 4
|
||||
bind = SUPER_SHIFT, 5, movetoworkspacesilent, 5
|
||||
bind = SUPER_SHIFT, 6, movetoworkspacesilent, 6
|
||||
bind = SUPER_SHIFT, 7, movetoworkspacesilent, 7
|
||||
bind = SUPER_SHIFT, 8, movetoworkspacesilent, 8
|
||||
bind = SUPER_SHIFT, 9, movetoworkspacesilent, 9
|
||||
|
||||
# ###########################################
|
||||
# ### MOVE WINDOW TO WORKSPACE + FOCUS IT ###
|
||||
# ###########################################
|
||||
|
||||
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
|
||||
|
||||
# ############################################
|
||||
# ### CYCLE WORKSPACES (RELATIVE MOVEMENT) ###
|
||||
# ############################################
|
||||
|
||||
bind = SUPER, mouse_down, workspace, +1
|
||||
bind = SUPER, mouse_up, workspace, -1
|
||||
bind = SUPER, bracketleft, workspace, -1
|
||||
bind = SUPER, bracketright, workspace, +1
|
||||
|
||||
|
||||
# ##########################################
|
||||
# ### CYCLE MONITORS (RELATIVE MOVEMENT) ###
|
||||
# ##########################################
|
||||
|
||||
bind = SUPER_SHIFT, bracketleft, focusmonitor, -1
|
||||
bind = SUPER_SHIFT, bracketright, focusmonitor, +1
|
||||
|
||||
# #######################
|
||||
# ### WINDOW RESIZING ###
|
||||
# #######################
|
||||
|
||||
## Mouse window resizing
|
||||
bindm = SUPER, $MOUSE_LMB, movewindow
|
||||
bindm = SUPER, $MOUSE_RMB, resizewindow
|
||||
|
||||
## Quick keyboard resizing
|
||||
binde = ALT, right, resizeactive, 10 0
|
||||
binde = ALT, left, resizeactive, -10 0
|
||||
binde = ALT, up, resizeactive, 0 -10
|
||||
binde = ALT, down, resizeactive, 0 10
|
||||
binde = ALT, H, resizeactive, -10 0
|
||||
binde = ALT, K, resizeactive, 0 -10
|
||||
binde = ALT, J, resizeactive, 0 10
|
||||
binde = ALT, L, resizeactive, 10 0
|
||||
|
||||
## Precise keyboard resizing (submap)
|
||||
bind = SUPER, slash, submap, resize
|
||||
submap = resize
|
||||
|
||||
binde = , right, resizeactive, 10 0
|
||||
binde = , left, resizeactive, -10 0
|
||||
binde = , up, resizeactive, 0 -10
|
||||
binde = , down, resizeactive, 0 10
|
||||
|
||||
binde = SUPER, right, resizeactive, 30 0
|
||||
binde = SUPER, left, resizeactive, -30 0
|
||||
binde = SUPER, up, resizeactive, 0 -30
|
||||
binde = SUPER, down, resizeactive, 0 30
|
||||
|
||||
binde = SHIFT, right, resizeactive, 1 0
|
||||
binde = SHIFT, left, resizeactive, -1 0
|
||||
binde = SHIFT, up, resizeactive, 0 -1
|
||||
binde = SHIFT, down, resizeactive, 0 1
|
||||
|
||||
binde = , H, resizeactive, -10 0
|
||||
binde = , K, resizeactive, 0 -10
|
||||
binde = , J, resizeactive, 0 10
|
||||
binde = , L, resizeactive, 10 0
|
||||
|
||||
binde = , right, resizeactive, 10 0
|
||||
binde = , left, resizeactive, -10 0
|
||||
binde = , up, resizeactive, 0 -10
|
||||
binde = , down, resizeactive, 0 10
|
||||
|
||||
binde = SUPER, H, resizeactive, -30 0
|
||||
binde = SUPER, K, resizeactive, 0 -30
|
||||
binde = SUPER, J, resizeactive, 0 30
|
||||
binde = SUPER, L, resizeactive, 30 0
|
||||
|
||||
binde = SHIFT, H, resizeactive, -1 0
|
||||
binde = SHIFT, K, resizeactive, 0 -1
|
||||
binde = SHIFT, J, resizeactive, 0 1
|
||||
binde = SHIFT, L, resizeactive, 1 0
|
||||
|
||||
bind = , escape, submap, reset
|
||||
bind = , return, submap, reset
|
||||
bind = SUPER, slash, submap, reset
|
||||
submap = reset
|
||||
|
||||
# ########################################################
|
||||
# ### GLOBAL KEYBINDS (PASSING KEYS TO OTHER PROGRAMS) ###
|
||||
# ########################################################
|
||||
|
||||
bind = CTRL, F10, pass, ^(com\.obsproject\.Studio)$
|
||||
|
||||
# #######################
|
||||
# ### ISOLATION GROUP ###
|
||||
# #######################
|
||||
|
||||
# Isolating group to prevent keybind capturing (for games etc)
|
||||
# SUPER + End
|
||||
bind = SUPER, End, exec, hyprctl dispatch submap isolate && notify-send "Keybind isolation" "Keybind isolation on"
|
||||
submap = isolate
|
||||
bind = SUPER, End, exec, hyprctl dispatch submap reset && notify-send "Keybind isolation" "Keybind isolation off"
|
||||
submap = reset
|
||||
|
||||
# vi: ft=hyprlang
|
26
home/.config/hypr/hyprland.d/layout.conf
Normal file
26
home/.config/hypr/hyprland.d/layout.conf
Normal file
|
@ -0,0 +1,26 @@
|
|||
general {
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
dwindle {
|
||||
# Don't change the split (side/top) regardless
|
||||
# of what happens to the container
|
||||
preserve_split = true
|
||||
|
||||
# Show gaps even when there's only 1 window opened
|
||||
no_gaps_when_only = false
|
||||
|
||||
# Scale down special workspaces (bigger borders)
|
||||
special_scale_factor = 0.9
|
||||
}
|
||||
|
||||
group {
|
||||
# Add new windows in the group after the current window
|
||||
# rather than after the group tail window
|
||||
insert_after_current = true
|
||||
|
||||
# Focus the window that was just moved out of the group
|
||||
focus_removed_window = true
|
||||
}
|
||||
|
||||
# vi: ft=hyprlang
|
14
home/.config/hypr/hyprland.d/misc.conf
Normal file
14
home/.config/hypr/hyprland.d/misc.conf
Normal file
|
@ -0,0 +1,14 @@
|
|||
misc {
|
||||
# Disable redundant renders (covered by wallpaper)
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
|
||||
# follow requests from windows to be focused
|
||||
focus_on_activate = true
|
||||
|
||||
# Enable DPMS on these actions
|
||||
mouse_move_enables_dpms = true
|
||||
key_press_enables_dpms = true
|
||||
}
|
||||
|
||||
# vi: ft=hyprlang
|
28
home/.config/hypr/hyprland.d/plugins.conf
Normal file
28
home/.config/hypr/hyprland.d/plugins.conf
Normal file
|
@ -0,0 +1,28 @@
|
|||
# #######################
|
||||
# ### LOADING PLUGINS ###
|
||||
# #######################
|
||||
|
||||
exec-once=hyprpm reload -n
|
||||
#exec-once=hyprctl plugin load $HOME/.local/share/hyprload/plugins/bin/dwindle-autogroup.so
|
||||
|
||||
# ################
|
||||
# ### HYPRBARS ###
|
||||
# ################
|
||||
|
||||
plugin {
|
||||
hyprbars {
|
||||
bar_height = 20
|
||||
bar_color = rgb(505152)
|
||||
|
||||
col.text = rgb(ff0000)
|
||||
bar_text_size = 10
|
||||
|
||||
# example buttons (R -> L)
|
||||
# hyprbars-button = color, size, on-click
|
||||
hyprbars-button = rgb(ff4040), 10, , hyprctl dispatch killactive
|
||||
hyprbars-button = rgb(eeee11), 10, , hyprctl dispatch fullscreen 1
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# vi: ft=hyprlang
|
128
home/.config/hypr/hyprland.d/style.conf
Normal file
128
home/.config/hypr/hyprland.d/style.conf
Normal file
|
@ -0,0 +1,128 @@
|
|||
# ###################
|
||||
# ### WINDOW GAPS ###
|
||||
# ###################
|
||||
|
||||
general {
|
||||
gaps_in = 5
|
||||
gaps_out = 8
|
||||
}
|
||||
|
||||
# ###############
|
||||
# ### BORDERS ###
|
||||
# ###############
|
||||
|
||||
decoration {
|
||||
rounding = 8
|
||||
}
|
||||
|
||||
general {
|
||||
border_size = 2
|
||||
|
||||
# Regular windows
|
||||
col.active_border = rgba(FFA500FF) # orange
|
||||
#col.active_border = rgba(FFFFFFEE) # white
|
||||
col.inactive_border = rgba(666666AA) # transparent gray
|
||||
|
||||
# Windows with nogroup property
|
||||
col.nogroup_border_active = rgba(FF00FFFF) # purple
|
||||
col.nogroup_border = rgba(FF00FFAA) # transparent purple
|
||||
}
|
||||
|
||||
group {
|
||||
# Groupped windows
|
||||
col.border_active = rgba(00A500FF) # green
|
||||
col.border_inactive = rgba(5AA500FF) # transparent green
|
||||
|
||||
# Locked groupped windows
|
||||
col.border_locked_active = rgba(A0A500FF) # yellow
|
||||
col.border_locked_inactive = rgba(A0A500AA) # transparent yellow
|
||||
}
|
||||
|
||||
# #################
|
||||
# ### GROUP BAR ###
|
||||
# #################
|
||||
|
||||
group {
|
||||
groupbar {
|
||||
# Title box above window
|
||||
render_titles = false # disable, looks kinda bad
|
||||
font_family = Monaspace Krypton
|
||||
font_size = 11
|
||||
text_color = rgba(FFFFFFFF) # white
|
||||
|
||||
# Gradients should be enabled only if title rendering is also enabled
|
||||
# on their own, they look really bad
|
||||
gradients = false
|
||||
|
||||
col.active = rgba(FFA500FF) # light orange
|
||||
col.inactive = rgba(00A500AA) # transparent green
|
||||
|
||||
col.locked_active = rgba(FF8000FF) # dark orange
|
||||
col.locked_inactive = rgba(A0A500AA) # transparent yellow
|
||||
|
||||
# Scrolling in the groupbar shouldn't change the active window
|
||||
scrolling = false
|
||||
}
|
||||
}
|
||||
|
||||
# ###################
|
||||
# ### DROP SHADOW ###
|
||||
# ###################
|
||||
|
||||
decoration {
|
||||
drop_shadow = true
|
||||
shadow_range = 20
|
||||
shadow_render_power = 2
|
||||
col.shadow = rgba(0F0F0FE6)
|
||||
#col.shadow = rgba(FFA500FF)
|
||||
col.shadow_inactive = rgba(0F0F0F99)
|
||||
}
|
||||
|
||||
# ###################
|
||||
# ### WINDOW BLUR ###
|
||||
# ###################
|
||||
|
||||
decoration {
|
||||
blur {
|
||||
enabled = true
|
||||
size = 8
|
||||
passes = 1
|
||||
}
|
||||
}
|
||||
|
||||
# ########################
|
||||
# ### INACTIVE WINDOWS ###
|
||||
# ########################
|
||||
|
||||
decoration {
|
||||
#dim_inactive = true
|
||||
dim_strength = 0.05
|
||||
dim_special = 0.2
|
||||
|
||||
# inactive_opacity = 0.9
|
||||
}
|
||||
|
||||
# ##################
|
||||
# ### ANIMATIONS ###
|
||||
# ##################
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
first_launch_animation = true # fade in on first launch
|
||||
|
||||
animation = windows, 1, 3, default, popin 50%
|
||||
animation = border, 1, 4, default
|
||||
animation = fade, 1, 4, default
|
||||
animation = workspaces, 1, 3, default
|
||||
animation = specialWorkspace, 1, 2, default, slidefadevert
|
||||
}
|
||||
|
||||
misc {
|
||||
animate_manual_resizes = true
|
||||
}
|
||||
|
||||
# #################
|
||||
# ### WALLPAPER ###
|
||||
# #################
|
||||
|
||||
# vi: ft=hyprlang
|
109
home/.config/hypr/hyprland.d/window_rules.conf
Normal file
109
home/.config/hypr/hyprland.d/window_rules.conf
Normal file
|
@ -0,0 +1,109 @@
|
|||
# ###########################
|
||||
# ### ASSIGNED WORKSPACES ###
|
||||
# ###########################
|
||||
|
||||
windowrulev2 = workspace 2, class:^(firefox)$
|
||||
windowrulev2 = workspace 4, class:^(discord)$
|
||||
windowrulev2 = workspace 4, class:^(vesktop)$
|
||||
windowrulev2 = workspace 4, class:^(WebCord)$
|
||||
windowrulev2 = workspace 5, class:^(Spotify)$
|
||||
windowrulev2 = workspace 6, class:^(Stremio)$
|
||||
windowrulev2 = workspace 6, class:^(com.stremio.stremio)$
|
||||
|
||||
# #######################
|
||||
# ### IDLE INHIBITION ###
|
||||
# #######################
|
||||
|
||||
windowrulev2 = idleinhibit focus, class:^(Stremio)$
|
||||
windowrulev2 = idleinhibit focus, class:^(com.stremio.stremio)$
|
||||
windowrulev2 = idleinhibit focus, class:^(mpv)$
|
||||
windowrulev2 = idleinhibit focus, class:^(firefox)$,title:^(.+ - YouTube — Mozilla Firefox)$
|
||||
windowrulev2 = idleinhibit focus, class:^(firefox)$,title:^(Picture-in-Picture)$
|
||||
|
||||
# ################################
|
||||
# ### CORRECT SIZE / AUTO TILE ###
|
||||
# ################################
|
||||
|
||||
windowrulev2 = size 800 550, class:^(qalculate-gtk)$
|
||||
windowrulev2 = tile, class:^(Spotify)$
|
||||
|
||||
# ##################
|
||||
# ### AUTO FLOAT ###
|
||||
# ##################
|
||||
|
||||
windowrulev2 = float, class:^(Lxappearance)$
|
||||
windowrulev2 = float, class:^(Rofi)$
|
||||
windowrulev2 = float, class:^(feh)$
|
||||
windowrulev2 = float, class:^(pavucontrol-qt)$
|
||||
windowrulev2 = float, class:^(pavucontrol)$
|
||||
windowrulev2 = float, class:^(file-roller)$
|
||||
windowrulev2 = float, class:^(qalculate-gtk)$
|
||||
windowrulev2 = float, class:^(com.github.wwmm.easyeffects)
|
||||
windowrulev2 = float, class:^(opensnitch_ui)$
|
||||
windowrulev2 = float, class:^(Brave-browser)$,title:^(_crx_.+)$
|
||||
|
||||
## Float hyprland-share-picker & some extra actions
|
||||
windowrulev2 = float, class:^(hyprland-share-picker)$
|
||||
windowrulev2 = center, class:^(hyprland-share-picker)$
|
||||
windowrulev2 = animation slide, class:^(hyprland-share-picker)$
|
||||
|
||||
## Float firefox windows (like bookmark menus, or some extension windows)
|
||||
windowrulev2 = float, class:^(firefox)$,title:^(Revert Bookmarks)$
|
||||
windowrulev2 = float, class:^(firefox)$,title:^(Library)$
|
||||
windowrulev2 = float, class:^(firefox)$,title:^(Extension: \(uBlock Origin\))
|
||||
windowrulev2 = float, class:^(firefox)$,title:^(Extension: \(Bitwarden Password Manager\) - Bitwarden — Mozilla Firefox)$
|
||||
windowrulev2 = float, class:^(firefox)$,title:^(Firefox — Sharing Indicator)$
|
||||
windowrulev2 = float, class:^(firefox)$,title:^(Opening .+)$
|
||||
windowrulev2 = float, class:^(firefox)$,title:^$
|
||||
|
||||
## Float some pcmanfm windows
|
||||
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Mount)$
|
||||
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Preferences)$
|
||||
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Move files)$
|
||||
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Search Files)$
|
||||
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Copy Files)$
|
||||
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Confirm to replace files)$
|
||||
windowrulev2 = float, class:^(pcmanfm-qt|)$,title:^(Choose an Application)$
|
||||
|
||||
## Float some qimgv windows
|
||||
windowrulev2 = float, class:^(qimgv)$,title:^(Add shortcut)$
|
||||
windowrulev2 = float, class:^(qimgv)$,title:^(Preferences — qimgv)$
|
||||
|
||||
## Float some windows from other apps
|
||||
windowrulev2 = float, class:^(Spotify)$,title:^(Ozone X11)$
|
||||
windowrulev2 = float, class:^(python3)$,title:^(Tor Browser Launcher Settings)$
|
||||
windowrulev2 = float, class:^(python3)$,title:^(Tor Browser)$
|
||||
|
||||
## General float rules
|
||||
windowrulev2 = float, class:^(file_progress)$
|
||||
windowrulev2 = float, class:^(confirm)$
|
||||
windowrulev2 = float, class:^(dialog)$
|
||||
windowrulev2 = float, class:^(download)$
|
||||
windowrulev2 = float, class:^(notification)$
|
||||
windowrulev2 = float, class:^(error)$
|
||||
windowrulev2 = float, class:^(splash)$
|
||||
windowrulev2 = float, class:^(confirmreset)$
|
||||
windowrulev2 = float, class:^(floating)$
|
||||
|
||||
## Float all windows that don't have a title nor a class
|
||||
windowrulev2 = float, class:^$,title:^$
|
||||
|
||||
# #############
|
||||
# ### FIXES ###
|
||||
# #############
|
||||
|
||||
# jetbrains
|
||||
|
||||
windowrulev2 = center, class:^(jetbrains-.*)$,title:^(splash)$,floating:1
|
||||
windowrulev2 = nofocus, class:^(jetbrains-.*)$,title:^(splash)$,floating:1
|
||||
windowrulev2 = noborder, class:^(jetbrains-.*)$,title:^(splash)$,floating:1
|
||||
windowrulev2 = center, class:^(jetbrains-.*)$,title:^( )$,floating:1
|
||||
windowrulev2 = stayfocused, class:^(jetbrains-.*)$,title:^( )$,floating:1
|
||||
windowrulev2 = noborder, class:^(jetbrains-.*)$,title:^( )$,floating:1
|
||||
windowrulev2 = nofocus, class:^(jetbrains-.*)$,title:^(win.*)$,floating:1
|
||||
windowrulev2 = noinitialfocus, class:^(jetbrains-.*)$,title:^(win.*)$
|
||||
|
||||
# Don't add borders to grim selections when taking screenshots
|
||||
layerrule = noanim, ^(selection)$
|
||||
|
||||
# vi: ft=hyprlang
|
Loading…
Add table
Add a link
Reference in a new issue