hyprland config
This commit is contained in:
23
hyprland/hypr/configs/ENVariables.conf
Normal file
23
hyprland/hypr/configs/ENVariables.conf
Normal file
@@ -0,0 +1,23 @@
|
||||
#environment-variables
|
||||
env = QT_QPA_PLATFORMTHEME,qt5ct #necessary to run qt5ct properly
|
||||
env = GDK_BACKEND,wayland,x11
|
||||
env = QT_QPA_PLATFORM,wayland;xcb
|
||||
env = CLUTTER_BACKEND,wayland
|
||||
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||
env = XDG_SESSION_DESKTOP,Hyprland
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
|
||||
|
||||
# NVIDIA
|
||||
# This is from Hyprland Wiki but my Hyprland keeps crashing when I enabled this variables
|
||||
#env = WLR_NO_HARDWARE_CURSORS,1
|
||||
#env = LIBVA_DRIVER_NAME,nvidia
|
||||
#env = MOZ_ENABLE_WAYLAND,1
|
||||
#env = XDG_SESSION_TYPE,wayland
|
||||
#env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
#env = GBM_BACKEND,nvidia-drm ## it causes issues like Hyprland crashing so care
|
||||
#env = __NV_PRIME_RENDER_OFFLOAD,1
|
||||
#env = __VK_LAYER_NV_optimus,NVIDIA_only
|
||||
#env = WLR_DRM_NO_ATOMIC,1
|
||||
#env = NVD_BACKEND,direct
|
||||
28
hyprland/hypr/configs/Execs.conf
Normal file
28
hyprland/hypr/configs/Execs.conf
Normal file
@@ -0,0 +1,28 @@
|
||||
#Commands to be executed at launch
|
||||
$scriptsDir = $HOME/.config/hypr/scripts
|
||||
|
||||
# wallpaper stuff
|
||||
#exec-once = swww query || swww init && swww img $HOME/wallpaper.jpg #using swww utility
|
||||
#exec-once = swww init
|
||||
exec-once = swaybg -m fill -i $HOME/wallpaper.jpg #using swaybg
|
||||
#exec-once = $scriptsDir/Wallpaper.sh #using swaybg random wallpaper
|
||||
|
||||
# Startup
|
||||
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
#exec-once = dbus-update-activation-environment DISPLAY XAUTHORITY WAYLAND_DISPLAY
|
||||
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
|
||||
exec-once = $scriptsDir/portal-arch-hyprland
|
||||
exec-once = /usr/lib/polkit-kde-authentication-agent-1
|
||||
|
||||
# apps, blueman, network manager applet and ROG-control-Center
|
||||
exec-once = $scriptsDir/Startup.sh
|
||||
exec-once = blueman-applet &
|
||||
exec-once = nm-applet --indicator &
|
||||
#exec-once = rog-control-center &
|
||||
|
||||
#clipboard manager
|
||||
exec-once = wl-paste --watch cliphist store
|
||||
|
||||
#Syncthing
|
||||
exec-once = $scriptsDir/syncthing.sh
|
||||
199
hyprland/hypr/configs/Keybinds.conf
Normal file
199
hyprland/hypr/configs/Keybinds.conf
Normal file
@@ -0,0 +1,199 @@
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
# Setting variables
|
||||
$mainMod = SUPER
|
||||
$files = thunar
|
||||
$browser = firefox
|
||||
$term = kitty
|
||||
$hyprDir = $HOME/.config/hypr
|
||||
$scriptsDir = $HOME/.config/hypr/scripts
|
||||
|
||||
# Scripts
|
||||
$Mako = $scriptsDir/Mako.sh
|
||||
$screenshot = $scriptsDir/ScreenShot.sh
|
||||
$volume = $scriptsDir/Volume.sh
|
||||
$waybar = $scriptsDir/Waybar.sh
|
||||
$Wofi = $scriptsDir/Wofi.sh
|
||||
$Clipboard = $scriptsDir/ClipManager.sh
|
||||
|
||||
# see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = $mainMod SHIFT, C, exec, hyprctl reload
|
||||
bind = $mainMod, D, exec, $Wofi
|
||||
bind = $mainMod SHIFT, Q, killactive,
|
||||
bind = $mainMod SHIFT, Space, togglefloating,
|
||||
bind = $mainMod, F, fullscreen
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod, Return, exec, $term
|
||||
bind = $mainMod, T, exec, $files
|
||||
|
||||
#bind = $mainMod SHIFT, M, exec, hyprctl dispatch splitratio -0.3
|
||||
#bind = $mainMod SHIFT, Y, exec, $term --class clock -T clock -e tty-clock -c -C 7 -r -s -f "%A, %B, %d"
|
||||
|
||||
bind = $mainMod CTRL, D, layoutmsg, removemaster
|
||||
bind = $mainMod, Escape, exec, hyprctl kill
|
||||
bind = $mainMod, I, layoutmsg, addmaster
|
||||
bind = $mainMod, J, layoutmsg, cyclenext
|
||||
bind = $mainMod, K, layoutmsg, cycleprev
|
||||
bind = $mainMod, M, exec, hyprctl dispatch splitratio 0.3
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod CTRL, Return, layoutmsg, swapwithmaster
|
||||
bind = $mainMod ALT, V, exec, $Clipboard
|
||||
|
||||
# Special Keys / Hot Keys
|
||||
bind = , xf86audioraisevolume, exec, $volume --inc #volume up
|
||||
bind = , xf86audiolowervolume, exec, $volume --dec #volume down
|
||||
bind = , xf86AudioMicMute, exec, $volume --toggle-mic #mute mic
|
||||
bind = , xf86Launch1, exec, rog-control-center # ASUS Armory crate button
|
||||
bind = , xf86audiomute, exec, $volume --toggle #FN+F1
|
||||
|
||||
bind = , xf86audioplay, exec, playerctl play-pause
|
||||
bind = , xf86audionext, exec, playerctl next
|
||||
bind = , xf86audioprev, exec, playerctl previous
|
||||
bind = , xf86audiostop, exec, playerctl stop
|
||||
|
||||
# From manual but it does not work
|
||||
#bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, 2560x1440@165, 0x0, 1"
|
||||
#bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable"
|
||||
|
||||
# Resize (vim style)
|
||||
binde = $mainMod SHIFT, H, resizeactive,-50 0
|
||||
binde = $mainMod SHIFT, L, resizeactive,50 0
|
||||
binde = $mainMod SHIFT, K, resizeactive,0 -50
|
||||
binde = $mainMod SHIFT, J, resizeactive,0 50
|
||||
|
||||
binde = $mainMod SHIFT, left, resizeactive,-50 0
|
||||
binde = $mainMod SHIFT, right, resizeactive,50 0
|
||||
binde = $mainMod SHIFT, up, resizeactive,0 -50
|
||||
binde = $mainMod SHIFT, down, resizeactive,0 50
|
||||
|
||||
# Move (vim style)
|
||||
bind = $mainMod CTRL, H, movewindow, l
|
||||
bind = $mainMod CTRL, L, movewindow, r
|
||||
bind = $mainMod CTRL, K, movewindow, u
|
||||
bind = $mainMod CTRL, J, movewindow, d
|
||||
|
||||
bind = $mainMod CTRL, left, movewindow, l
|
||||
bind = $mainMod CTRL, right, movewindow, r
|
||||
bind = $mainMod CTRL, up, movewindow, u
|
||||
bind = $mainMod CTRL, down, movewindow, d
|
||||
|
||||
|
||||
# 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
|
||||
|
||||
# Special workspace
|
||||
bind = $mainMod SHIFT, U, movetoworkspace, special
|
||||
bind = $mainMod, U, togglespecialworkspace,
|
||||
|
||||
# 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, KP_End, workspace, 1
|
||||
bind = $mainMod, KP_Down, workspace, 2
|
||||
bind = $mainMod, KP_Next, workspace, 3
|
||||
bind = $mainMod, KP_Left, workspace, 4
|
||||
bind = $mainMod, KP_Begin, workspace, 5
|
||||
bind = $mainMod, KP_Right, workspace, 6
|
||||
bind = $mainMod, KP_Home, workspace, 7
|
||||
bind = $mainMod, KP_Up, workspace, 8
|
||||
bind = $mainMod, KP_Prior, workspace, 9
|
||||
bind = $mainMod, KP_Insert, workspace, 10
|
||||
|
||||
# Move active window and follow to workspace
|
||||
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, KP_End, movetoworkspace, 1
|
||||
bind = $mainMod CTRL, KP_Down, movetoworkspace, 2
|
||||
bind = $mainMod CTRL, KP_Next, movetoworkspace, 3
|
||||
bind = $mainMod CTRL, KP_Left, movetoworkspace, 4
|
||||
bind = $mainMod CTRL, KP_Begin, movetoworkspace, 5
|
||||
bind = $mainMod CTRL, KP_Right, movetoworkspace, 6
|
||||
bind = $mainMod CTRL, KP_Home, movetoworkspace, 7
|
||||
bind = $mainMod CTRL, KP_Up, movetoworkspace, 8
|
||||
bind = $mainMod CTRL, KP_Prior, movetoworkspace, 9
|
||||
bind = $mainMod CTRL, KP_Insert, movetoworkspace, 10
|
||||
|
||||
bind = $mainMod CTRL, bracketleft, movetoworkspace, -1
|
||||
bind = $mainMod CTRL, bracketright, movetoworkspace, +1
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
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
|
||||
|
||||
bind = $mainMod SHIFT, KP_End, movetoworkspacesilent, 1
|
||||
bind = $mainMod SHIFT, KP_Down, movetoworkspacesilent, 2
|
||||
bind = $mainMod SHIFT, KP_Next, movetoworkspacesilent, 3
|
||||
bind = $mainMod SHIFT, KP_Left, movetoworkspacesilent, 4
|
||||
bind = $mainMod SHIFT, KP_Begin, movetoworkspacesilent, 5
|
||||
bind = $mainMod SHIFT, KP_Right, movetoworkspacesilent, 6
|
||||
bind = $mainMod SHIFT, KP_Home, movetoworkspacesilent, 7
|
||||
bind = $mainMod SHIFT, KP_Up, movetoworkspacesilent, 8
|
||||
bind = $mainMod SHIFT, KP_Prior, movetoworkspacesilent, 9
|
||||
bind = $mainMod SHIFT, KP_Insert, movetoworkspacesilent, 10
|
||||
|
||||
bind = $mainMod SHIFT, bracketleft, movetoworkspacesilent, -1
|
||||
bind = $mainMod SHIFT, bracketright, movetoworkspacesilent, +1
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
bind = $mainMod, period, workspace, e+1
|
||||
bind = $mainMod, comma, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
bind = $mainMod, G, togglegroup
|
||||
bind = $mainMod, tab, workspace, m+1
|
||||
bind = $mainMod SHIFT, tab, workspace, m-1
|
||||
bind = ALT, tab, cyclenext, # change focus to another window
|
||||
bind = ALT SHIFT, tab, bringactivetotop, # bring it to the top
|
||||
|
||||
|
||||
# Screenshot keybindings NOTE:
|
||||
#bind = , Print, exec, $screenshot --now
|
||||
bind = $mainMod, Print, exec, $screenshot --now
|
||||
bind = $mainMod CTRL SHIFT, Print, exec, $screenshot --in5
|
||||
bind = $mainMod ALT, Print, exec, $screenshot --in10
|
||||
#bind = CTRL, Print, exec, $screenshot --win
|
||||
#bind = SHIFT, Print, exec, $screenshot --area
|
||||
bind = $mainMod SHIFT, Print, exec, $screenshot --area
|
||||
|
||||
# screenshot with swappy
|
||||
bind = $mainMod SHIFT, S, exec, grim -g "$(slurp)" - | swappy -f -
|
||||
|
||||
# Screenshot keybindings for Asus G15 (no PrinSrc button)
|
||||
bind = $mainMod, F6, exec, $screenshot --now
|
||||
bind = $mainMod SHIFT, F6, exec, $screenshot --area
|
||||
bind = $mainMod CTRL SHIFT, F6, exec, $screenshot --in5
|
||||
bind = $mainMod ALT, F6, exec, $screenshot --in10
|
||||
|
||||
27
hyprland/hypr/configs/Monitors.conf
Normal file
27
hyprland/hypr/configs/Monitors.conf
Normal file
@@ -0,0 +1,27 @@
|
||||
# Monitor Configuration
|
||||
# Configure your Display resolution, offset, scale and Monitors here, use `hyprctl monitors` to get the info.
|
||||
|
||||
# Monitors
|
||||
monitor=DP-1,2560x1440@144,0x0,1
|
||||
monitor=DP-2,2560x1440@144,auto,1
|
||||
|
||||
# my G15 Laptop
|
||||
# monitor = eDP-1, preferred, auto, 1
|
||||
#monitor = eDP-1, 2560x1440@165, 0x0, 1 #own screen
|
||||
#monitor = DP-2, preferred, auto, 1 #my Samsung Odyssey-G7
|
||||
#monitor = DP-1, preferred, auto, 1
|
||||
#monitor = HDMI-A-1, preferred,auto,1
|
||||
|
||||
# QEMU
|
||||
monitor = Virtual-1, 1920x1080@60,auto,1
|
||||
|
||||
# Example :
|
||||
#monitor=eDP-1,2560x1440@165,0x0,1
|
||||
#workspace=HDMI-A-1,1
|
||||
#monitor=HDMI-A-1,2560x1440@144,0x0,1,mirror,eDP-1
|
||||
#workspace=HDMI-A-2,2
|
||||
|
||||
#monitor=eDP-1,transform,0
|
||||
#monitor=eDP-1,addreserved,10,10,10,49
|
||||
#workspace=eDP-1,1
|
||||
|
||||
39
hyprland/hypr/configs/WindowRules.conf
Normal file
39
hyprland/hypr/configs/WindowRules.conf
Normal file
@@ -0,0 +1,39 @@
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
|
||||
windowrule = float, org.kde.polkit-kde-authentication-agent-1
|
||||
windowrule = float, nm-connection-editor|blueman-manager
|
||||
windowrule = float, swayimg|vlc|Viewnior|pavucontrol
|
||||
windowrule = float, nwg-look|qt5ct|mpv
|
||||
windowrule = float, onedriver|onedriver-launcher
|
||||
windowrule = float, zoom
|
||||
windowrule = float, wofi
|
||||
windowrule=tile,lite-xl
|
||||
windowrule = fullscreen, wlogout
|
||||
#windowrule = noblur,gamescope
|
||||
#windowrule = fullscreen,gamescope
|
||||
#windowrule = workspace 6 silent,^(gamescope)$
|
||||
|
||||
# windowrule v2
|
||||
#windowrulev2 = workspace 2, class:^(firefox)$
|
||||
#windowrulev2 = workspace 2, class:^(Microsoft-edge-beta)$ #this is on arch
|
||||
#windowrulev2 = workspace 3, class:^(thunar)$
|
||||
#windowrulev2 = workspace 1, class:^(thunderbird)$
|
||||
#windowrulev2 = workspace 4, class:^(com.obsproject.Studio)$
|
||||
#windowrulev2 = workspace 5 silent, class:^(Steam)$,title:^(Steam)$
|
||||
#windowrulev2 = workspace 5 silent, class:^(lutris)$
|
||||
#windowrulev2 = workspace 6, class:^(virt-manager)$
|
||||
#windowrulev2 = workspace 7 silent, class:^(discord)$
|
||||
#windowrulev2 = workspace 9 silent, class:^(audacious)$
|
||||
|
||||
#opacity (transparent) #enable as desired
|
||||
#windowrulev2 = opacity 1 0.9, class:^(firefox)$
|
||||
#windowrulev2 = opacity 0.9 0.7, class:^(thunar)$
|
||||
#windowrulev2 = opacity 0.7 0.7, class:^(foot)$
|
||||
#windowrulev2 = opacity 0.9 0.7, class:^(mousepad)$
|
||||
#windowrulev2 = opacity 0.9 0.7, class:^(codium-url-handler)$
|
||||
#windowrulev2 = opacity 0.9 0.7, class:^(VSCodium)$
|
||||
|
||||
#windowrulev2 = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1
|
||||
#windowrulev2 = bordercolor rgb(282737) rgb(1E1D2D), floating:1
|
||||
#windowrulev2 = opacity 0.8 0.8, pinned:1
|
||||
|
||||
134
hyprland/hypr/hyprland.conf
Normal file
134
hyprland/hypr/hyprland.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
# Refer to the wiki for more information.
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
#Sourcing external config files
|
||||
source=~/.config/hypr/configs/ENVariables.conf
|
||||
source=~/.config/hypr/configs/Execs.conf
|
||||
source=~/.config/hypr/configs/Keybinds.conf
|
||||
source=~/.config/hypr/configs/Monitors.conf
|
||||
source=~/.config/hypr/configs/WindowRules.conf
|
||||
|
||||
general {
|
||||
sensitivity=1.00
|
||||
apply_sens_to_raw=1
|
||||
gaps_in = 4
|
||||
gaps_out = 8
|
||||
border_size = 4
|
||||
resize_on_border = true
|
||||
|
||||
#one color
|
||||
#col.active_border = rgba(7aa2f7aa)
|
||||
|
||||
#more colors - gradient
|
||||
col.active_border = rgb(5AE058) rgb(3FB5A3) 45deg
|
||||
#col.active_border = rgb(7287fd) rgb(74c7ec) rgb(89b4fa) 45deg
|
||||
col.inactive_border = rgb(000000)
|
||||
|
||||
layout = master # master or dwindle
|
||||
}
|
||||
|
||||
input {
|
||||
kb_layout=ca
|
||||
kb_variant=
|
||||
kb_model=
|
||||
kb_options=grp:alt_shift_toggle
|
||||
kb_rules=
|
||||
repeat_rate=50
|
||||
repeat_delay=300
|
||||
numlock_by_default=0
|
||||
left_handed=0
|
||||
follow_mouse=1
|
||||
float_switch_override_focus=0
|
||||
|
||||
touchpad {
|
||||
disable_while_typing=1
|
||||
natural_scroll=1
|
||||
clickfinger_behavior=0
|
||||
middle_button_emulation=1
|
||||
tap-to-click=1
|
||||
drag_lock=1
|
||||
}
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe=1
|
||||
workspace_swipe_fingers=3
|
||||
workspace_swipe_distance=400
|
||||
workspace_swipe_invert=1
|
||||
workspace_swipe_min_speed_to_force=30
|
||||
workspace_swipe_cancel_ratio=0.5
|
||||
workspace_swipe_create_new=1
|
||||
workspace_swipe_forever=1
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 6
|
||||
multisample_edges = true
|
||||
#blur = yes
|
||||
#blur_size = 8
|
||||
#blur_passes = 2
|
||||
#blur_new_optimizations = on
|
||||
|
||||
active_opacity = 1.0
|
||||
inactive_opacity = 0.7
|
||||
fullscreen_opacity = 1.0
|
||||
|
||||
dim_inactive = true
|
||||
dim_strength = 0.1
|
||||
|
||||
|
||||
drop_shadow=true
|
||||
shadow_range=10
|
||||
shadow_render_power = 2
|
||||
col.shadow = rgb(7ef788)
|
||||
col.shadow_inactive = 0x50000000
|
||||
}
|
||||
|
||||
#blurls = waybar
|
||||
|
||||
bezier = wind, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = winIn, 0.1, 1.1, 0.1, 1.1
|
||||
bezier = winOut, 0.3, -0.3, 0, 1
|
||||
bezier = liner, 1, 1, 1, 1
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
animation = borderangle, 1, 30, liner, loop
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
animation = windows, 1, 6, wind, slide
|
||||
}
|
||||
|
||||
dwindle {
|
||||
pseudotile = yes
|
||||
preserve_split = yes
|
||||
special_scale_factor = 0.8
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master=1
|
||||
new_on_top=0
|
||||
mfact = 0.5
|
||||
|
||||
}
|
||||
|
||||
binds {
|
||||
workspace_back_and_forth=1
|
||||
allow_workspace_cycles=1
|
||||
pass_mouse_when_bound=0
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
mouse_move_enables_dpms = true
|
||||
vrr = 2
|
||||
enable_swallow = true
|
||||
no_direct_scanout = true #for fullscreen games
|
||||
focus_on_activate = false
|
||||
swallow_regex = ^(kitty)$
|
||||
}
|
||||
179
hyprland/hypr/hyprlandnew.conf
Normal file
179
hyprland/hypr/hyprlandnew.conf
Normal file
@@ -0,0 +1,179 @@
|
||||
exec-once = wl-clipboard-history -t
|
||||
exec-once = ~/.config/hypr/scripts/.autostart
|
||||
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = /usr/lib/polkit-kde-authentication-agent-1
|
||||
exec-once = swaybg -m fill -i $HOME/Pictures/wallpapers/nostalgic-memories5.jpg
|
||||
exec-once = waybar
|
||||
|
||||
# env = LIBVA_DRIVER_NAME, nvidia
|
||||
env = XDG_SESSION_TYPE, wayland
|
||||
env = __GL_GSYNC_ALLOWED, 0
|
||||
# env = __GLX_VENDOR_LIBRARY_NAME, nvidia
|
||||
# env = GBM_BACKEND, nvidia-drm
|
||||
env = WLR_NO_HARDWARE_CURSORS, 1
|
||||
env = XCURSOR_THEME, Breeze
|
||||
env = XCURSOR_SIZE, 16
|
||||
|
||||
$browser = firefox
|
||||
$explorer = thunar
|
||||
$term = kitty
|
||||
$discord = discord
|
||||
|
||||
monitors {
|
||||
# you can use the command 'hyprctl monitors' to list your currently using monitors.
|
||||
# use wlr-randr to list all available monitors
|
||||
# more examples at https://wiki.hyprland.org/Configuring/Monitors/
|
||||
|
||||
# left monitor
|
||||
# monitor = HDMI-A-1, 1920x1080@60, 0x0, 1
|
||||
|
||||
# right monitor
|
||||
monitor = eDP-1, 1920x1200@60, 1920x0, 1.1
|
||||
}
|
||||
|
||||
input {
|
||||
kb_layout = us, br # keyboard layout en-us and pt-br
|
||||
kb_options = grp:alt_shift_toggle # toggle between keyboard layouts using ALT + SHIFT
|
||||
follow_mouse = 1
|
||||
sensitivity = -0.2 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
general {
|
||||
# gaps
|
||||
gaps_in=3
|
||||
gaps_out=6
|
||||
|
||||
# border
|
||||
border_size=2
|
||||
col.active_border=0xff2aabd4 0xff2bc1ae 0deg
|
||||
col.inactive_border=0xfff4564
|
||||
no_border_on_floating = true
|
||||
|
||||
# layout
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
dwindle {
|
||||
no_gaps_when_only = false
|
||||
pseudotile = true # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = true # you probably want this
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
mouse_move_enables_dpms = true
|
||||
enable_swallow = true
|
||||
swallow_regex = ^(kitty)$
|
||||
}
|
||||
|
||||
decoration {
|
||||
# border
|
||||
rounding = 2
|
||||
multisample_edges = true
|
||||
|
||||
# opacity
|
||||
active_opacity = 0.85
|
||||
inactive_opacity = 0.80
|
||||
|
||||
# blur
|
||||
blur {
|
||||
enabled = true
|
||||
size = 8
|
||||
passes = 2
|
||||
new_optimizations = true
|
||||
}
|
||||
|
||||
# shadow
|
||||
drop_shadow = true
|
||||
shadow_ignore_window = true
|
||||
shadow_offset = 4 4
|
||||
shadow_range = 10
|
||||
shadow_render_power = 2
|
||||
col.shadow = 0x66000000
|
||||
|
||||
blurls = gtk-layer-shell
|
||||
blurls = lockscreen
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
|
||||
bezier = overshot,0.05,0.9,0.1,1.1
|
||||
bezier = smoothOut, 0.36, 0, 0.66, -0.56
|
||||
bezier = smoothIn, 0.25, 1, 0.5, 1
|
||||
bezier = linear, 0.5, 0.5, 0.5, 0.5
|
||||
|
||||
animation = windows, 1, 2, overshot, popin
|
||||
animation = windowsIn, 1, 4, smoothIn, popin
|
||||
animation = windowsOut, 1, 4, smoothIn, popin
|
||||
animation = windowsMove, 1, 4, default, popin
|
||||
|
||||
animation = border, 1, 10, default
|
||||
animation = fade, 1, 10, smoothIn
|
||||
animation = fadeDim, 1, 10, smoothIn
|
||||
|
||||
animation = workspaces, 1, 4, smoothIn, slide
|
||||
|
||||
animation = borderangle, 1, 20, linear, loop
|
||||
}
|
||||
|
||||
windowrules {
|
||||
# opacity
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(com.obsproject.Studio)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(com.stremio.stremio)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(libreoffice-writer)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(discord)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(feh)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(firefox)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(Google-chrome)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(Gimp)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(mpv)$
|
||||
windowrule = opacity 1.0 override 1.0 override, ^(Rofi)$
|
||||
|
||||
# float
|
||||
windowrule = float, confirm
|
||||
windowrule = float, confirmreset
|
||||
windowrule = float, dialog
|
||||
windowrule = float, download
|
||||
windowrule = float, error
|
||||
windowrule = float, feh
|
||||
windowrule = float, file_progress
|
||||
windowrule = float, file-roller
|
||||
windowrule = float, Lxappearance
|
||||
windowrule = float, notification
|
||||
windowrule = float, splash
|
||||
windowrule = float, xfce4-appearance-settings
|
||||
windowrule = float, title:branchdialog
|
||||
windowrule = float, title:^(btop)$
|
||||
windowrule = float, title:^(Media viewer)$
|
||||
windowrule = float, title:^(Network Connections)$
|
||||
windowrule = float, title:Open File
|
||||
windowrule = float, title:^(Volume Control)$
|
||||
|
||||
# fullscreen
|
||||
windowrule = fullscreen, wlogout
|
||||
|
||||
# idleinhibit
|
||||
windowrule = idleinhibit focus, mpv
|
||||
windowrule = idleinhibit fullscreen, $browser
|
||||
|
||||
# size
|
||||
windowrule = size 400 600, title:^(Network Connections)$
|
||||
windowrule = size 980 530, title:^(btop)$
|
||||
windowrule = size 900 400, title:^(Volume Control)$
|
||||
windowrule = size 1280 720, title:^(feh)$
|
||||
|
||||
# move
|
||||
windowrule = move 3% 35, title:^(btop)$
|
||||
windowrule = move 70% 35, title:^(Network Connections)$
|
||||
windowrule = move 45% 35, title:^(Volume Control)$
|
||||
|
||||
# animations
|
||||
windowrule = animation slide, title:^(btop)$
|
||||
windowrule = animation slide, title:^(Network Connections)$
|
||||
windowrule = animation slide, title:^(Volume Control)$
|
||||
windowrule = animation slide, title:^(Logout)$
|
||||
}
|
||||
|
||||
13
hyprland/hypr/scripts/ClipManager.sh
Executable file
13
hyprland/hypr/scripts/ClipManager.sh
Executable file
@@ -0,0 +1,13 @@
|
||||
#!/bin/sh
|
||||
|
||||
# WOFI STYLES
|
||||
CONFIG="$HOME/.config/wofi/WofiBig/config"
|
||||
STYLE="$HOME/.config/wofi/style.css"
|
||||
|
||||
if [[ ! $(pidof wofi) ]]; then
|
||||
cliphist list | wofi --show dmenu --prompt 'Search...' \
|
||||
--conf ${CONFIG} --style ${STYLE} \
|
||||
--width=600 --height=400 | cliphist decode | wl-copy
|
||||
else
|
||||
pkill wofi
|
||||
fi
|
||||
5
hyprland/hypr/scripts/LockScreen.sh
Executable file
5
hyprland/hypr/scripts/LockScreen.sh
Executable file
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
CONFIG="$HOME/.config/swaylock/config"
|
||||
|
||||
sleep 0.5s; swaylock --config ${CONFIG} & disown
|
||||
7
hyprland/hypr/scripts/Mako.sh
Executable file
7
hyprland/hypr/scripts/Mako.sh
Executable file
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
CONFIG="$HOME/.config/mako/config"
|
||||
|
||||
if [[ ! $(pidof mako) ]]; then
|
||||
mako --config ${CONFIG}
|
||||
fi
|
||||
8
hyprland/hypr/scripts/PortalHyprlandArch.sh
Executable file
8
hyprland/hypr/scripts/PortalHyprlandArch.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
sleep 1
|
||||
killall xdg-desktop-portal-hyprland
|
||||
killall xdg-desktop-portal-wlr
|
||||
killall xdg-desktop-portal
|
||||
/usr/lib/xdg-desktop-portal-hyprland &
|
||||
sleep 2
|
||||
/usr/lib/xdg-desktop-portal &
|
||||
80
hyprland/hypr/scripts/ScreenShot.sh
Executable file
80
hyprland/hypr/scripts/ScreenShot.sh
Executable file
@@ -0,0 +1,80 @@
|
||||
#!/bin/bash
|
||||
|
||||
iDIR="$HOME/.config/mako/icons"
|
||||
|
||||
time=$(date +%Y-%m-%d-%H-%M-%S)
|
||||
dir="$(xdg-user-dir)/Pictures/Screenshots"
|
||||
file="Screenshot_${time}_${RANDOM}.png"
|
||||
|
||||
# notify and view screenshot
|
||||
notify_cmd_shot="notify-send -h string:x-canonical-private-synchronous:shot-notify -u low -i ${iDIR}/picture.png"
|
||||
notify_view() {
|
||||
${notify_cmd_shot} "Copied to clipboard."
|
||||
## viewnior ${dir}/"$file"
|
||||
if [[ -e "$dir/$file" ]]; then
|
||||
${notify_cmd_shot} "Screenshot Saved."
|
||||
else
|
||||
${notify_cmd_shot} "Screenshot Deleted."
|
||||
fi
|
||||
}
|
||||
|
||||
# countdown
|
||||
countdown() {
|
||||
for sec in $(seq $1 -1 1); do
|
||||
notify-send -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png "Taking shot in : $sec"
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
# take shots
|
||||
shotnow() {
|
||||
cd ${dir} && grim - | tee "$file" | wl-copy
|
||||
sleep 2
|
||||
notify_view
|
||||
}
|
||||
|
||||
shot5() {
|
||||
countdown '5'
|
||||
sleep 1 && cd ${dir} && grim - | tee "$file" | wl-copy
|
||||
sleep 1
|
||||
notify_view
|
||||
|
||||
}
|
||||
|
||||
shot10() {
|
||||
countdown '10'
|
||||
sleep 1 && cd ${dir} && grim - | tee "$file" | wl-copy
|
||||
notify_view
|
||||
}
|
||||
|
||||
shotwin() {
|
||||
w_pos=$(hyprctl activewindow | grep 'at:' | cut -d':' -f2 | tr -d ' ' | tail -n1)
|
||||
w_size=$(hyprctl activewindow | grep 'size:' | cut -d':' -f2 | tr -d ' ' | tail -n1 | sed s/,/x/g)
|
||||
cd ${dir} && grim -g "$w_pos $w_size" - | tee "$file" | wl-copy
|
||||
notify_view
|
||||
}
|
||||
|
||||
shotarea() {
|
||||
cd ${dir} && grim -g "$(slurp -b 1B1F28CC -c E06B74ff -s C778DD0D -w 2)" - | tee "$file" | wl-copy
|
||||
notify_view
|
||||
}
|
||||
|
||||
if [[ ! -d "$dir" ]]; then
|
||||
mkdir -p "$dir"
|
||||
fi
|
||||
|
||||
if [[ "$1" == "--now" ]]; then
|
||||
shotnow
|
||||
elif [[ "$1" == "--in5" ]]; then
|
||||
shot5
|
||||
elif [[ "$1" == "--in10" ]]; then
|
||||
shot10
|
||||
elif [[ "$1" == "--win" ]]; then
|
||||
shotwin
|
||||
elif [[ "$1" == "--area" ]]; then
|
||||
shotarea
|
||||
else
|
||||
echo -e "Available Options : --now --in5 --in10 --win --area"
|
||||
fi
|
||||
|
||||
exit 0
|
||||
20
hyprland/hypr/scripts/Startup.sh
Executable file
20
hyprland/hypr/scripts/Startup.sh
Executable file
@@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPTSDIR=$HOME/.config/hypr/scripts
|
||||
|
||||
# Kill already running process
|
||||
_ps=(waybar mako)
|
||||
for _prs in "${_ps[@]}"; do
|
||||
if [[ $(pidof ${_prs}) ]]; then
|
||||
killall -9 ${_prs}
|
||||
fi
|
||||
done
|
||||
|
||||
# Lauch notification daemon (mako)
|
||||
${SCRIPTSDIR}/Mako.sh &
|
||||
|
||||
# Lauch statusbar (waybar)
|
||||
${SCRIPTSDIR}/Waybar.sh &
|
||||
|
||||
# Lauch syncthing
|
||||
${SCRIPTSDIR}/syncthing.sh &
|
||||
106
hyprland/hypr/scripts/Volume.sh
Executable file
106
hyprland/hypr/scripts/Volume.sh
Executable file
@@ -0,0 +1,106 @@
|
||||
#!/bin/bash
|
||||
|
||||
iDIR="$HOME/.config/hypr/mako/icons"
|
||||
|
||||
# Get Volume
|
||||
get_volume() {
|
||||
volume=$(pamixer --get-volume)
|
||||
echo "$volume"
|
||||
}
|
||||
|
||||
# Get icons
|
||||
get_icon() {
|
||||
current=$(get_volume)
|
||||
if [[ "$current" -eq "0" ]]; then
|
||||
echo "$iDIR/volume-mute.png"
|
||||
elif [[ ("$current" -ge "0") && ("$current" -le "30") ]]; then
|
||||
echo "$iDIR/volume-low.png"
|
||||
elif [[ ("$current" -ge "30") && ("$current" -le "60") ]]; then
|
||||
echo "$iDIR/volume-mid.png"
|
||||
elif [[ ("$current" -ge "60") && ("$current" -le "100") ]]; then
|
||||
echo "$iDIR/volume-high.png"
|
||||
fi
|
||||
}
|
||||
|
||||
# Notify
|
||||
notify_user() {
|
||||
notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_icon)" "Volume : $(get_volume) %"
|
||||
}
|
||||
|
||||
# Increase Volume
|
||||
inc_volume() {
|
||||
pamixer -i 5 && notify_user
|
||||
}
|
||||
|
||||
# Decrease Volume
|
||||
dec_volume() {
|
||||
pamixer -d 5 && notify_user
|
||||
}
|
||||
|
||||
# Toggle Mute
|
||||
toggle_mute() {
|
||||
if [ "$(pamixer --get-mute)" == "false" ]; then
|
||||
pamixer -m && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF"
|
||||
elif [ "$(pamixer --get-mute)" == "true" ]; then
|
||||
pamixer -u && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_icon)" "Volume Switched ON"
|
||||
fi
|
||||
}
|
||||
|
||||
# Toggle Mic
|
||||
toggle_mic() {
|
||||
if [ "$(pamixer --default-source --get-mute)" == "false" ]; then
|
||||
pamixer --default-source -m && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF"
|
||||
elif [ "$(pamixer --default-source --get-mute)" == "true" ]; then
|
||||
pamixer -u --default-source u && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/microphone.png" "Microphone Switched ON"
|
||||
fi
|
||||
}
|
||||
# Get icons
|
||||
get_mic_icon() {
|
||||
current=$(pamixer --default-source --get-volume)
|
||||
if [[ "$current" -eq "0" ]]; then
|
||||
echo "$iDIR/microphone.png"
|
||||
elif [[ ("$current" -ge "0") && ("$current" -le "30") ]]; then
|
||||
echo "$iDIR/microphone.png"
|
||||
elif [[ ("$current" -ge "30") && ("$current" -le "60") ]]; then
|
||||
echo "$iDIR/microphone.png"
|
||||
elif [[ ("$current" -ge "60") && ("$current" -le "100") ]]; then
|
||||
echo "$iDIR/microphone.png"
|
||||
fi
|
||||
}
|
||||
# Notify
|
||||
notify_mic_user() {
|
||||
notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_mic_icon)" "Mic-Level : $(pamixer --default-source --get-volume) %"
|
||||
}
|
||||
|
||||
# Increase MIC Volume
|
||||
inc_mic_volume() {
|
||||
pamixer --default-source -i 5 && notify_mic_user
|
||||
}
|
||||
|
||||
# Decrease MIC Volume
|
||||
dec_mic_volume() {
|
||||
pamixer --default-source -d 5 && notify_mic_user
|
||||
}
|
||||
|
||||
# Execute accordingly
|
||||
if [[ "$1" == "--get" ]]; then
|
||||
get_volume
|
||||
elif [[ "$1" == "--inc" ]]; then
|
||||
inc_volume
|
||||
elif [[ "$1" == "--dec" ]]; then
|
||||
dec_volume
|
||||
elif [[ "$1" == "--toggle" ]]; then
|
||||
toggle_mute
|
||||
elif [[ "$1" == "--toggle-mic" ]]; then
|
||||
toggle_mic
|
||||
elif [[ "$1" == "--get-icon" ]]; then
|
||||
get_icon
|
||||
elif [[ "$1" == "--get-mic-icon" ]]; then
|
||||
get_mic_icon
|
||||
elif [[ "$1" == "--mic-inc" ]]; then
|
||||
inc_mic_volume
|
||||
elif [[ "$1" == "--mic-dec" ]]; then
|
||||
dec_mic_volume
|
||||
else
|
||||
get_volume
|
||||
fi
|
||||
8
hyprland/hypr/scripts/Waybar.sh
Executable file
8
hyprland/hypr/scripts/Waybar.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
CONFIG="$HOME/.config/waybar/config"
|
||||
STYLE="$HOME/.config/waybar/style.css"
|
||||
|
||||
if [[ ! $(pidof waybar) ]]; then
|
||||
waybar --bar main-bar --log-level error --config ${CONFIG} --style ${STYLE}
|
||||
fi
|
||||
10
hyprland/hypr/scripts/Wofi.sh
Executable file
10
hyprland/hypr/scripts/Wofi.sh
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
CONFIG="$HOME/.config/wofi/config"
|
||||
STYLE="$HOME/.config/wofi/style.css"
|
||||
|
||||
if [[ ! $(pidof wofi) ]]; then
|
||||
wofi --show drun --prompt 'Search...' --conf ${CONFIG} --style ${STYLE}
|
||||
elses
|
||||
pkill wofi
|
||||
fi
|
||||
5
hyprland/hypr/scripts/syncthing.sh
Executable file
5
hyprland/hypr/scripts/syncthing.sh
Executable file
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
sleep 10
|
||||
sudo systemctl start syncthing@$HOST.service
|
||||
syncthing
|
||||
Reference in New Issue
Block a user