mirror of
https://github.com/yusufipk/hyprconf.git
synced 2026-09-11 10:56:10 +00:00
init
This commit is contained in:
@@ -0,0 +1,384 @@
|
||||
|
||||
#
|
||||
# Please note not all available settings / options are set here.
|
||||
# For a full list, see the wiki
|
||||
#
|
||||
|
||||
|
||||
monitor=,preferred,auto,auto
|
||||
monitor=HDMI-A-1, [email protected], 0x0, 1
|
||||
monitor=DVI-D-1, 1920x1080, 1920x0, 1
|
||||
|
||||
workspace=HDMI-A-1,1
|
||||
workspace=HDMI-A-1,2
|
||||
workspace=HDMI-A-1,3
|
||||
workspace=DVI-D-1,4
|
||||
workspace=DVI-D-1,5
|
||||
workspace=DVI-D-1,6
|
||||
workspace=DVI-D-1,7
|
||||
workspace=DVI-D-1,8
|
||||
workspace=DVI-D-1,9
|
||||
workspace=DVI-D-1,10
|
||||
|
||||
# wsbind=1,HDMI-A-1
|
||||
# wsbind=2,HDMI-A-1
|
||||
# wsbind=3,HDMI-A-1
|
||||
# wsbind=4,DVI-D-1
|
||||
# wsbind=5,DVI-D-1
|
||||
# wsbind=6,DVI-D-1
|
||||
# wsbind=7,DVI-D-1
|
||||
# wsbind=8,DVI-D-1
|
||||
# wsbind=9,DVI-D-1
|
||||
# wsbind=10,DVI-D-1
|
||||
|
||||
# autostart
|
||||
exec-once = hyprpaper & wl-paste --watch cliphist store & easyeffects --gapplication-service & mako & sh ~/Applications/aw.sh & blueman & qbittorrent & kdeconnect-cli & morgen --hidden
|
||||
#exec-once = sh ~/.config/hypr/nuke-screenshare.sh
|
||||
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
|
||||
|
||||
# Slow app launch fix
|
||||
exec-once = systemctl --user import-environment &
|
||||
exec-once = hash dbus-update-activation-environment 2>/dev/null &
|
||||
exec-once = dbus-update-activation-environment --systemd &
|
||||
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,21
|
||||
env = wayland,x11
|
||||
env = QT_QPA_PLATFORM,wayland;xcb
|
||||
env = CLUTTER_BACKEND,wayland
|
||||
env = QT_QPA_PLATFORMTHEME,qt5ct
|
||||
env = MOZ_ENABLE_WAYLAND,1
|
||||
|
||||
env = LIBVA_DRIVER_NAME,nvidia
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = GBM_BACKEND,nvidia-drm
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
env = WLR_NO_HARDWARE_CURSORS,1
|
||||
|
||||
env = GTK_THEME,Adwaita:dark
|
||||
|
||||
### Idle configuration
|
||||
#
|
||||
exec-once = swayidle -w \
|
||||
timeout 300 'swaylock -f -c 000000' \
|
||||
before-sleep 'swaylock -f -c 000000'
|
||||
|
||||
# Source a file (multi-file configs)
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
### Input configuration
|
||||
#
|
||||
input {
|
||||
kb_layout = tr
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options = caps:escape
|
||||
kb_rules =
|
||||
repeat_rate = 70
|
||||
repeat_delay = 500
|
||||
numlock_by_default = true
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
touchpad {
|
||||
natural_scroll = no
|
||||
}
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
general {
|
||||
gaps_in = 3
|
||||
gaps_out = 5
|
||||
border_size = 3
|
||||
col.active_border = rgba(ff5e81ac)
|
||||
#col.inactive_border = rgba(66333333)
|
||||
col.inactive_border = rgba(595959aa)
|
||||
|
||||
layout = dwindle # master|dwindle
|
||||
|
||||
apply_sens_to_raw=0 # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse)
|
||||
}
|
||||
|
||||
decoration {
|
||||
multisample_edges = true
|
||||
active_opacity = 1.0
|
||||
inactive_opacity = 0.98
|
||||
fullscreen_opacity = 1.0
|
||||
|
||||
rounding = 4
|
||||
blur = yes
|
||||
blur_size = 15
|
||||
blur_passes = 2 # more passes = more resource intensive.
|
||||
blur_new_optimizations = true
|
||||
blur_xray = true
|
||||
|
||||
drop_shadow = false
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
shadow_ignore_window = true
|
||||
|
||||
dim_inactive = false
|
||||
blur_ignore_opacity = false
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
|
||||
# Blur for waybar
|
||||
#blurls = waybar
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
|
||||
bezier = overshot, 0.13, 0.99, 0.29, 1.1
|
||||
|
||||
bezier = overshot, 0.13, 0.99, 0.29, 1.1
|
||||
animation = windows, 1, 4, overshot, slide
|
||||
animation = windowsOut, 1, 5, default, popin 80%
|
||||
animation = border, 1, 5, default
|
||||
animation = fade, 1, 8, default
|
||||
animation = workspaces, 1, 6, overshot, slide
|
||||
}
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||
dwindle {
|
||||
no_gaps_when_only = false
|
||||
force_split = 0
|
||||
special_scale_factor = 0.8
|
||||
split_width_multiplier = 1.0
|
||||
use_active_for_splits = true
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes
|
||||
}
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
master {
|
||||
no_gaps_when_only = false
|
||||
new_is_master = true
|
||||
special_scale_factor = 0.8
|
||||
}
|
||||
|
||||
misc {
|
||||
#disable_autoreload = true
|
||||
disable_hyprland_logo = true
|
||||
always_follow_on_dnd = true
|
||||
layers_hog_keyboard_focus = true
|
||||
animate_manual_resizes = false
|
||||
enable_swallow = true
|
||||
swallow_regex =
|
||||
focus_on_activate = true
|
||||
vfr = 1
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_fingers = 4
|
||||
workspace_swipe_distance = 250
|
||||
workspace_swipe_invert = true
|
||||
workspace_swipe_min_speed_to_force = 15
|
||||
workspace_swipe_cancel_ratio = 0.5
|
||||
workspace_swipe_create_new = false
|
||||
}
|
||||
|
||||
# Binds
|
||||
$mainMod = SUPER
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = $mainMod, Return, exec, konsole
|
||||
bind = $mainMod, W, exec, firefox
|
||||
bind = $mainMod_SHIFT, Q, killactive,
|
||||
bind = $mainMod, M, exit,
|
||||
bind = $mainMod_SHIFT, Return, exec, dolphin
|
||||
bind = CTRL_SHIFT, Return, exec, ksysguard
|
||||
bind = $mainMod, Space, togglefloating,
|
||||
bind = $mainMod_SHIFT, D, togglegroup,
|
||||
#bind = $mainMod, D, changegroupactive,
|
||||
bind = $mainMod, F, fullscreen,
|
||||
bind = $mainMod_SHIFT, F, exec, rofi -show drun -show-icons
|
||||
bind = ALT, D, exec, sh ~/.config/hypr/rofi-web-search.sh
|
||||
|
||||
bind = $mainMod_SHIFT, right, movewindow, mon:r
|
||||
bind = $mainMod_SHIFT, left, movewindow, mon:l
|
||||
bind = $mainMod_SHIFT, up, movewindow, mon:u
|
||||
bind = $mainMod_SHIFT, down, movewindow, mon:d
|
||||
bind = $mainMod, right, moveintogroup, r
|
||||
bind = $mainMod, left, moveintogroup, l
|
||||
bind = $mainMod, up, moveintogroup, u
|
||||
bind = $mainMod, down, moveintogroup, d
|
||||
|
||||
# shutdown
|
||||
bind = CTRL_ALT, X, exec, wlogout
|
||||
|
||||
# color picker
|
||||
bind = CTRL_ALT, A, exec, hyprpicker -a
|
||||
|
||||
# screenshot
|
||||
bind = $mainMod_SHIFT, X, exec, grimblast --notify copysave area /home/yusuf/Pictures/Screenshots/$(date +"%d-%m-%H-%M-%S").png
|
||||
|
||||
# ocr text
|
||||
bind = ALT_SHIFT, S, exec, grim -g "$(slurp)" - | tesseract - stdout -l eng+tur+rus+kor | wl-copy
|
||||
|
||||
# emoji picker
|
||||
bind = $ALT_SHIFT, X, exec, rofi -modi emoji -show emoji
|
||||
|
||||
# clipboard
|
||||
bind = $mainMod, v, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy
|
||||
|
||||
# scratchpad
|
||||
bind = SUPER_SHIFT, S, movetoworkspace, special
|
||||
bind = SUPER, S, togglespecialworkspace
|
||||
|
||||
bind = $mainMod, Y, pin
|
||||
#bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod, J, togglesplit, # dwindle
|
||||
bind = $mainMod, Tab, changegroupactive, f
|
||||
bind = $mainMod SHIFT, G,exec,hyprctl --batch "keyword general:gaps_out 5;keyword general:gaps_in 3"
|
||||
bind = $mainMod , G,exec,hyprctl --batch "keyword general:gaps_out 0;keyword general:gaps_in 0"
|
||||
|
||||
|
||||
bind=,XF86AudioLowerVolume,exec,pamixer -ud 3 && pamixer --get-volume > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob
|
||||
bind=,XF86AudioRaiseVolume,exec,pamixer -ui 3 && pamixer --get-volume > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob
|
||||
# mute sound
|
||||
bind=,XF86AudioMute,exec,amixer sset Master toggle | sed -En '/\[on\]/ s/.*\[([0-9]+)%\].*/\1/ p; /\[off\]/ s/.*/0/p' | head -1 > /tmp/$HYPRLAND_INSTANCE_SIGNATURE.wob
|
||||
|
||||
bind=,XF86AudioPlay,exec, playerctl play-pause
|
||||
bind=,XF86AudioNext,exec, playerctl next
|
||||
bind=,XF86AudioPrev,exec, playerctl previous
|
||||
|
||||
|
||||
bind = $mainMod, L, exec, swaylock-fancy -e -K -p 10 -f Hack-Regular
|
||||
|
||||
bind = $mainMod, O, exec, killall -SIGUSR1 .waybar-wrapped
|
||||
|
||||
# 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
|
||||
|
||||
# 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
|
||||
bind = $mainMod, period, workspace, e+1
|
||||
bind = $mainMod, comma, workspace,e-1
|
||||
|
||||
bind = $mainMod, minus, movetoworkspace,special
|
||||
bind = $mainMod, equal, togglespecialworkspace
|
||||
|
||||
bind = $mainMod SHIFT,left ,movewindow, l
|
||||
bind = $mainMod SHIFT,right ,movewindow, r
|
||||
bind = $mainMod SHIFT,up ,movewindow, u
|
||||
bind = $mainMod SHIFT,down ,movewindow, d
|
||||
|
||||
# Move active window to a workspace with mainMod + CTRL + [0-9]
|
||||
bind = $mainMod CTRL, 1, movetoworkspace, 1
|
||||
bind = $mainMod CTRL, 2, movetoworkspace, 2
|
||||
bind = $mainMod CTRL, 3, movetoworkspace, 3
|
||||
bind = $mainMod CTRL, 4, movetoworkspace, 4
|
||||
bind = $mainMod CTRL, 5, movetoworkspace, 5
|
||||
bind = $mainMod CTRL, 6, movetoworkspace, 6
|
||||
bind = $mainMod CTRL, 7, movetoworkspace, 7
|
||||
bind = $mainMod CTRL, 8, movetoworkspace, 8
|
||||
bind = $mainMod CTRL, 9, movetoworkspace, 9
|
||||
bind = $mainMod CTRL, 0, movetoworkspace, 10
|
||||
bind = $mainMod CTRL, left, movetoworkspace, -1
|
||||
bind = $mainMod CTRL, right, movetoworkspace, +1
|
||||
|
||||
# same as above, but doesnt switch to the workspace
|
||||
bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10
|
||||
|
||||
binds {
|
||||
workspace_back_and_forth = 1
|
||||
allow_workspace_cycles = 1
|
||||
}
|
||||
bind = $mainMod,slash,workspace,previous
|
||||
|
||||
bind = $mainMod,R,submap,resize
|
||||
submap = resize
|
||||
binde =,right,resizeactive,15 0
|
||||
binde =,left,resizeactive,-15 0
|
||||
binde =,up,resizeactive,0 -15
|
||||
binde =,down,resizeactive,0 15
|
||||
binde =,l,resizeactive,15 0
|
||||
binde =,h,resizeactive,-15 0
|
||||
binde =,k,resizeactive,0 -15
|
||||
binde =,j,resizeactive,0 15
|
||||
bind =,escape,submap,reset
|
||||
submap = reset
|
||||
|
||||
bind=CTRL SHIFT, left, resizeactive,-15 0
|
||||
bind=CTRL SHIFT, right, resizeactive,15 0
|
||||
bind=CTRL SHIFT, up, resizeactive,0 -15
|
||||
bind=CTRL SHIFT, down, resizeactive,0 15
|
||||
bind=CTRL SHIFT, l, resizeactive, 15 0
|
||||
bind=CTRL SHIFT, h, resizeactive,-15 0
|
||||
bind=CTRL SHIFT, k, resizeactive, 0 -15
|
||||
bind=CTRL SHIFT, j, resizeactive, 0 15
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
#------------#
|
||||
# auto start #
|
||||
#------------#
|
||||
exec-once = waybar &
|
||||
exec-once = mako &
|
||||
exec-once = nm-applet --indicator &
|
||||
exec-once = /usr/lib/polkit-kde-authentication-agent-1 &
|
||||
|
||||
# Float Necessary Windows
|
||||
windowrule=float,Rofi
|
||||
windowrule=float,io.github.diegoivanme.flowtime
|
||||
windowrule=float,pavucontrol
|
||||
windowrulev2 = float,class:^()$,title:^(Picture in picture)$
|
||||
windowrulev2 = float,class:^(brave)$,title:^(Save File)$
|
||||
windowrulev2 = float,class:^(brave)$,title:^(Open File)$
|
||||
windowrulev2 = float,class:^(LibreWolf)$,title:^(Picture-in-Picture)$
|
||||
windowrulev2 = float,class:^(blueman-manager)$
|
||||
windowrulev2 = float,class:^(xdg-desktop-portal-gtk)$
|
||||
windowrulev2 = float,class:^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
windowrulev2 = float,class:^(cachyos-hello)$
|
||||
|
||||
#---------------#
|
||||
# windows rules #
|
||||
#---------------#
|
||||
#`hyprctl clients` get class、title...
|
||||
windowrule=float,title:^(Picture-in-Picture)$
|
||||
windowrule=size 960 540,title:^(Picture-in-Picture)$
|
||||
windowrule=move 25%-,title:^(Picture-in-Picture)$
|
||||
windowrule=float,mpv
|
||||
windowrule=move 25%-,mpv
|
||||
windowrule=size 960 540,mpv
|
||||
windowrule=noblur,^(waybar)$
|
||||
windowrule=float,^(org.gnome.Characters)$
|
||||
windowrule=float,^(it.mijorus.smile)$
|
||||
windowrule=float,^(fr.romainvigier.zap)$
|
||||
windowrule=float,^(feeling_finder)$
|
||||
windowrule=float,^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
windowrulev2 = float,class:^(Steam)$,title:^(Friends List)$
|
||||
windowrulev2 = float,class:^(Steam)$,title:^(Steam - News)$
|
||||
windowrulev2 = float,class:^(cachybrowser)$,title:^(Cachy Browser — Sharing Indicator)$
|
||||
windowrulev2 = float,class:^(firefox)$,title:^(Firefox — Sharing Indicator)$
|
||||
windowrulev2 = float,class:^(librewolf)$,title:^(LibreWolf — Sharing Indicator)$
|
||||
windowrulev2 = float,class:^(org.kde.kdenlive)$,title:^(Clip Problems — Kdenlive)$
|
||||
windowrulev2 = float,class:^(org.kde.kdenlive)$,title:^(kdenlive)$
|
||||
windowrulev2 = float,class:^(com.obsproject.Studio)$,title:^(Missing Files)$
|
||||
Reference in New Issue
Block a user