Add hyprland and kitty config
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -1 +1,2 @@
|
|||||||
nvim/lazylock.json
|
nvim/lazy-lock.json
|
||||||
|
hypr/hardware.conf
|
||||||
|
|||||||
96
hypr/hyprbinds.conf
Normal file
96
hypr/hyprbinds.conf
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
# Window management
|
||||||
|
bind = SUPER_L, Q, killactive,
|
||||||
|
bind = SUPER_L, M, togglefloating,
|
||||||
|
bind = SUPER_L, M, centerwindow
|
||||||
|
bindr = SUPER, SUPER_L, exec, ~/.config/scripts/wofi-launch.sh
|
||||||
|
bind = SUPER_L, B, togglesplit
|
||||||
|
|
||||||
|
# Screen locking
|
||||||
|
bindl = SUPER_L, ESCAPE, exec, ~/.config/scripts/lock.sh
|
||||||
|
bind = , XF86Go, exec, ~/.config/scripts/idle-toggle.sh
|
||||||
|
bindl= ,switch:on:Lid Switch, exec, pgrep hyprlock || hyprlock & systemctl suspend
|
||||||
|
|
||||||
|
$select = winsel
|
||||||
|
|
||||||
|
# Move focus with mainMod + arrow keys
|
||||||
|
bind = SUPER_L, A, exec, $select 0
|
||||||
|
bind = SUPER_L, O, exec, $select 1
|
||||||
|
bind = SUPER_L, E, exec, $select 2
|
||||||
|
bind = SUPER_L, U, exec, $select 3
|
||||||
|
|
||||||
|
# Move windows around with mainMod + arrow keys
|
||||||
|
bind = SUPER_L, H, movewindow, l
|
||||||
|
bind = SUPER_L, T, movewindow, u
|
||||||
|
bind = SUPER_L, N, movewindow, d
|
||||||
|
bind = SUPER_L, S, movewindow, r
|
||||||
|
|
||||||
|
# Navigate multiple monitors
|
||||||
|
bind = SUPER_L, PERIOD, focusmonitor, -1
|
||||||
|
bind = SUPER_L, P, movecurrentworkspacetomonitor, -1
|
||||||
|
|
||||||
|
# Switch workspaces with mainMod + [0-9]
|
||||||
|
bind = SUPER_L, 1, workspace, 1
|
||||||
|
bind = SUPER_L, 2, workspace, 2
|
||||||
|
bind = SUPER_L, 3, workspace, 3
|
||||||
|
bind = SUPER_L, 4, workspace, 4
|
||||||
|
bind = SUPER_L, 5, workspace, 5
|
||||||
|
bind = SUPER_L, 6, workspace, 6
|
||||||
|
bind = SUPER_L, 7, workspace, 7
|
||||||
|
bind = SUPER_L, 8, workspace, 8
|
||||||
|
bind = SUPER_L, 9, workspace, 9
|
||||||
|
bind = SUPER_L, 0, exec, hyprctl activewindow | workspace0
|
||||||
|
bind = SUPER, apostrophe, hyprexpo:expo, toggle
|
||||||
|
|
||||||
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||||
|
bind = SUPER_L SHIFT, 1, movetoworkspace, 1
|
||||||
|
bind = SUPER_L SHIFT, 2, movetoworkspace, 2
|
||||||
|
bind = SUPER_L SHIFT, 3, movetoworkspace, 3
|
||||||
|
bind = SUPER_L SHIFT, 4, movetoworkspace, 4
|
||||||
|
bind = SUPER_L SHIFT, 5, movetoworkspace, 5
|
||||||
|
bind = SUPER_L SHIFT, 6, movetoworkspace, 6
|
||||||
|
bind = SUPER_L SHIFT, 7, movetoworkspace, 7
|
||||||
|
bind = SUPER_L SHIFT, 8, movetoworkspace, 8
|
||||||
|
bind = SUPER_L SHIFT, 9, movetoworkspace, 9
|
||||||
|
bind = SUPER_L SHIFT, 0, movetoworkspace, 10
|
||||||
|
|
||||||
|
# Manage special workspace (scratchpad)
|
||||||
|
bind = SUPER_L, V, togglespecialworkspace
|
||||||
|
bind = SUPER_L, Z, movetoworkspacesilent, special
|
||||||
|
bind = SUPER_L, W, movewindow, mon:current
|
||||||
|
|
||||||
|
# Move/resize windows
|
||||||
|
bindm = SUPER_L, mouse:272, movewindow
|
||||||
|
bindm = SUPER_L, mouse:273, resizewindow
|
||||||
|
bind = SUPER_L, SPACE, fullscreen
|
||||||
|
|
||||||
|
# Resize windows with super + arrow keys
|
||||||
|
bind = SUPER_L ALT, h, resizeactive, -50 0
|
||||||
|
bind = SUPER_L ALT, t, resizeactive, 0 -50
|
||||||
|
bind = SUPER_L ALT, n, resizeactive, 0 50
|
||||||
|
bind = SUPER_L ALT, s, resizeactive, 50 0
|
||||||
|
|
||||||
|
# Open favourites
|
||||||
|
bind = SUPER_L, G, exec, zen-browser
|
||||||
|
bind = SUPER_L, C, exec, spotify-launcher
|
||||||
|
bind = SUPER_L, R, exec, secrets
|
||||||
|
bind = SUPER_L, L, exec, kitty
|
||||||
|
|
||||||
|
# Adjust brightness
|
||||||
|
bindle = , XF86MonBrightnessUp, exec, brillo -A 8% -q -u 500000
|
||||||
|
bindle = , XF86MonBrightnessDown, exec, brillo -U 8% -q -u 500000
|
||||||
|
bindle = SHIFT, XF86MonBrightnessDown, exec, brillo -S 0% -q -u 1000000
|
||||||
|
bind = , Cancel, exec, ~/.config/scripts/sunset-toggle.sh
|
||||||
|
|
||||||
|
# Adjust volume and media
|
||||||
|
bindle = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5%
|
||||||
|
bindle = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5%
|
||||||
|
bind = , XF86AudioMicMute, exec, playerctl next
|
||||||
|
bind = , XF86AudioMute, exec, playerctl play-pause
|
||||||
|
|
||||||
|
# Screen capturing
|
||||||
|
bind = SUPER_L, COMMA, exec, pgrep slurp || hyprshot -o ~/Pictures/Screenshots -z -s -m region
|
||||||
|
bind = SUPER_L ALT, COMMA, exec, pgrep slurp || hyprshot -o ~/Pictures/Screenshots -z -s -m window
|
||||||
|
bind = SUPER_L SHIFT, COMMA, exec, pgrep slurp || hyprshot -o ~/Pictures/Screenshots -z -s -m active -m output
|
||||||
|
bind = SUPER_L, SEMICOLON, exec, ~/.config/scripts/zoom.sh
|
||||||
|
bind = , XF86Display, exec, ~/.config/scripts/vnc-toggle.sh
|
||||||
|
bind = SHIFT, XF86Display, exec, killall gjs && ags run
|
||||||
3
hypr/hyprcolors.conf
Normal file
3
hypr/hyprcolors.conf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
$primary = rgba(D89FD6ff)
|
||||||
|
$primary_container = rgba(4E2A79ff)
|
||||||
|
$background = rgba(090012ff)
|
||||||
8
hypr/hypridle.conf
Normal file
8
hypr/hypridle.conf
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
listener {
|
||||||
|
timeout = 100
|
||||||
|
on-timeout = notify-send -a 'Hummingbird' 'Hypridle' 'Suspending in 5 seconds...' -i gnome-suspend -t 1
|
||||||
|
}
|
||||||
|
listener {
|
||||||
|
timeout = 105
|
||||||
|
on-timeout = ~/.config/scripts/lock.sh
|
||||||
|
}
|
||||||
181
hypr/hyprland.conf
Normal file
181
hypr/hyprland.conf
Normal file
@@ -0,0 +1,181 @@
|
|||||||
|
source = ~/.config/hypr/hardware.conf
|
||||||
|
source = ~/.config/hypr/monitors.conf
|
||||||
|
source = ~/.config/hypr/hyprcolors.conf
|
||||||
|
monitor = , preferred, auto, 1.0
|
||||||
|
monitor = , addreserved, 36, 0, 0, 0
|
||||||
|
|
||||||
|
# Run stuff on launch
|
||||||
|
env = PATH, $PATH:$HOME/.local/bin:$HOME/.cargo/bin
|
||||||
|
exec-once = hyprlock
|
||||||
|
exec-once = hypridle
|
||||||
|
exec-once = nextcloud
|
||||||
|
exec-once = /lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
||||||
|
exec-once = keyd-application-mapper -d
|
||||||
|
exec-once = ags run
|
||||||
|
exec-once = hyprpm reload
|
||||||
|
exec-once = tradjust
|
||||||
|
exec-once = swww-daemon
|
||||||
|
|
||||||
|
# Theming with envvars for some reason
|
||||||
|
env = XCURSOR_SIZE, 22
|
||||||
|
env = XCURSOR_THEME, GoogleDot-Black
|
||||||
|
env = HYPRCURSOR_SIZE, 22
|
||||||
|
env = HYPRCURSOR_THEME, GoogleDot-Hypr
|
||||||
|
|
||||||
|
envd = GTK_THEME, catppuccin-mocha-blue-standard+default
|
||||||
|
env = GTK_ICON_THEME, BeautyLine
|
||||||
|
|
||||||
|
envd = QT_QUICK_CONTROLS_STYLE=org.hyprland.style
|
||||||
|
envd = QT_QPA_PLATFORMTHEME,qt6ct
|
||||||
|
# envd = QT_STYLE_OVERRIDE,kvantum
|
||||||
|
env = QT_QPA_PLATFORM,wayland;xcb
|
||||||
|
|
||||||
|
env = FREETYPE_PROPERTIES,cff:no-stem-darkening=0 autofitter:no-stem-darkening=0
|
||||||
|
|
||||||
|
# Mouse and keyboard settings
|
||||||
|
input {
|
||||||
|
kb_layout = us
|
||||||
|
kb_variant = dvorak
|
||||||
|
repeat_delay = 600
|
||||||
|
touchpad {
|
||||||
|
natural_scroll = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Disable the trackpad in favour of thinkpad nub
|
||||||
|
|
||||||
|
general {
|
||||||
|
gaps_in = 3
|
||||||
|
gaps_out = 6
|
||||||
|
col.active_border = $primary
|
||||||
|
col.inactive_border = $primary_container
|
||||||
|
border_size = 2
|
||||||
|
|
||||||
|
layout = dwindle
|
||||||
|
no_focus_fallback = true
|
||||||
|
}
|
||||||
|
|
||||||
|
decoration {
|
||||||
|
rounding = 10
|
||||||
|
# active_opacity = 0.9
|
||||||
|
# inactive_opacity = 0.92
|
||||||
|
# fullscreen_opacity = 1.0
|
||||||
|
blur {
|
||||||
|
enabled = true
|
||||||
|
size = 6
|
||||||
|
passes = 3
|
||||||
|
new_optimizations = true
|
||||||
|
ignore_opacity = true
|
||||||
|
special = true
|
||||||
|
brightness = 1
|
||||||
|
xray = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
workspace = special:special, gapsin:32, gapsout:64
|
||||||
|
|
||||||
|
animations {
|
||||||
|
enabled = yes
|
||||||
|
|
||||||
|
bezier = default , 0.16, 1 , 0.30, 1
|
||||||
|
bezier = easeOut , 0.22, 1 , 0.36, 1
|
||||||
|
bezier = easeIn , 0.64, 0 , 0.78, 0
|
||||||
|
|
||||||
|
animation = fadeIn , 1, 4, default
|
||||||
|
animation = fadeOut , 1, 3, default
|
||||||
|
animation = windowsIn , 1, 4, default, popin 85%
|
||||||
|
animation = windowsOut , 1, 4, default, popin 85%
|
||||||
|
animation = windowsMove , 1, 3, easeOut
|
||||||
|
animation = border , 1, 5, default
|
||||||
|
animation = layersIn , 1, 3, easeOut, slide
|
||||||
|
animation = layersOut , 1, 2, easeIn, slide
|
||||||
|
animation = fadeLayersIn , 1, 3, easeOut
|
||||||
|
animation = fadeLayersOut , 1, 2, easeIn
|
||||||
|
animation = workspaces , 1, 3, easeOut, slide
|
||||||
|
animation = specialWorkspace , 1, 4, default, slidevert
|
||||||
|
animation = zoomFactor , 1, 3, default
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
dwindle {
|
||||||
|
preserve_split = true
|
||||||
|
smart_split = false
|
||||||
|
use_active_for_splits = true
|
||||||
|
force_split = 2
|
||||||
|
}
|
||||||
|
|
||||||
|
plugin {
|
||||||
|
hyprexpo {
|
||||||
|
columns = 3
|
||||||
|
gap_size = 5
|
||||||
|
bg_col = rgb(111111)
|
||||||
|
workspace_method = first 1 # [center/first] [workspace] e.g. first 1 or center m+1
|
||||||
|
|
||||||
|
enable_gesture = true # laptop touchpad
|
||||||
|
gesture_fingers = 3 # 3 or 4
|
||||||
|
gesture_distance = 300 # how far is the "max"
|
||||||
|
gesture_positive = true # positive = swipe down. Negative = swipe up.
|
||||||
|
}
|
||||||
|
#dynamic-cursors {
|
||||||
|
# enabled = true
|
||||||
|
# mode = stretch
|
||||||
|
# stretch {
|
||||||
|
# limit = 3000
|
||||||
|
# function = linear
|
||||||
|
# }
|
||||||
|
#}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Smart gaps
|
||||||
|
workspace = w[tv1] s[false], gapsout:0, gapsin:0
|
||||||
|
workspace = s[true], gapsout:64, gapsin:32
|
||||||
|
windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1]
|
||||||
|
windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1] s[false]
|
||||||
|
|
||||||
|
# The bell doesn't fullscreen you, I do.
|
||||||
|
windowrulev2 = suppressevent fullscreen, class:.*
|
||||||
|
|
||||||
|
# Misc window rules
|
||||||
|
windowrulev2 = float, title:(Write:)
|
||||||
|
windowrulev2 = float, class:(xdg-desktop-portal-gtk)
|
||||||
|
windowrulev2 = noblur, title:(File Upload)
|
||||||
|
windowrulev2 = noblur, title:(Open File)
|
||||||
|
windowrulev2 = float, center, class:(eog)
|
||||||
|
windowrulev2 = fullscreen, class:steam_app*
|
||||||
|
|
||||||
|
# Misc layer rules
|
||||||
|
layerrule = animation slide, .*bar.*
|
||||||
|
layerrule = blur, logout_dialog
|
||||||
|
layerrule = animation fade, logout_dialog
|
||||||
|
layerrule = animation fade, selection
|
||||||
|
layerrule = animation fade, hyprpicker
|
||||||
|
|
||||||
|
layerrule = animation popin 40%, lazerpopup
|
||||||
|
layerrule = noanim, notification
|
||||||
|
layerrule = dimaround, notifpanel
|
||||||
|
layerrule = order 1, bar
|
||||||
|
layerrule = order 2, lazerpopup
|
||||||
|
layerrule = order 3, notifpanel
|
||||||
|
layerrule = order 4, notification
|
||||||
|
|
||||||
|
source = ~/.config/hypr/hyprbinds.conf
|
||||||
|
|
||||||
|
misc {
|
||||||
|
disable_hyprland_logo = true
|
||||||
|
animate_manual_resizes = true
|
||||||
|
disable_splash_rendering = false
|
||||||
|
new_window_takes_over_fullscreen = 2
|
||||||
|
key_press_enables_dpms = true
|
||||||
|
focus_on_activate = true
|
||||||
|
session_lock_xray = true
|
||||||
|
animate_manual_resizes = true
|
||||||
|
}
|
||||||
|
|
||||||
|
cursor {
|
||||||
|
persistent_warps = true
|
||||||
|
}
|
||||||
|
|
||||||
|
xwayland {
|
||||||
|
force_zero_scaling = true
|
||||||
|
}
|
||||||
105
hypr/hyprlock.conf
Normal file
105
hypr/hyprlock.conf
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
source = ~/.config/hypr/hyprcolors.conf
|
||||||
|
|
||||||
|
general {
|
||||||
|
hide_cursor = true
|
||||||
|
immediate_render = true
|
||||||
|
}
|
||||||
|
|
||||||
|
auth {
|
||||||
|
pam {
|
||||||
|
enabled = true
|
||||||
|
}
|
||||||
|
fingerprint {
|
||||||
|
enabled = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
animations {
|
||||||
|
bezier = default, 0.16, 1, 0.30, 1
|
||||||
|
|
||||||
|
animation = fadeIn, 1, 5, default
|
||||||
|
animation = fadeOut, 1, 3, default
|
||||||
|
animation = inputField, 1, 3, default
|
||||||
|
}
|
||||||
|
|
||||||
|
background {
|
||||||
|
monitor =
|
||||||
|
path = screenshot
|
||||||
|
color = rgba(181825aa)
|
||||||
|
blur_strength = 10
|
||||||
|
blur_passes = 3
|
||||||
|
brightness = 0.8
|
||||||
|
contrast = 0.8
|
||||||
|
}
|
||||||
|
|
||||||
|
shape {
|
||||||
|
monitor = eDP-1
|
||||||
|
size = 350, 200
|
||||||
|
color = $background
|
||||||
|
border_color = $primary
|
||||||
|
border_size = 4
|
||||||
|
rounding = 20
|
||||||
|
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
position = 0, 0
|
||||||
|
|
||||||
|
shadow_color = rgb(000000)
|
||||||
|
shadow_size = 2
|
||||||
|
shadow_passes = 4
|
||||||
|
shadow_boost = 0.6
|
||||||
|
}
|
||||||
|
|
||||||
|
image {
|
||||||
|
path = ~/.face
|
||||||
|
|
||||||
|
monitor = eDP-1
|
||||||
|
size = 100
|
||||||
|
border_color = $primary
|
||||||
|
border_size = 4
|
||||||
|
rounding = -1
|
||||||
|
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
position = 0, 100
|
||||||
|
}
|
||||||
|
|
||||||
|
input-field {
|
||||||
|
monitor = eDP-1
|
||||||
|
size = 310, 50
|
||||||
|
outline_thickness = 4
|
||||||
|
dots_size = 0.25
|
||||||
|
dots_spacing = 0.2
|
||||||
|
dots_center = true
|
||||||
|
inner_color = rgb(1e1e2e)
|
||||||
|
outer_color = rgb(313244)
|
||||||
|
font_color = rgb(cdd6f4)
|
||||||
|
font_size = 16
|
||||||
|
hide_input = false
|
||||||
|
rounding = 8
|
||||||
|
check_color = rgb(f9e2af)
|
||||||
|
fail_color = rgb(f38ba8)
|
||||||
|
fail_text = Do better.
|
||||||
|
fail_timeout = 1000
|
||||||
|
fail_transition = 200
|
||||||
|
fade_on_empty = false
|
||||||
|
font_family = sriracha
|
||||||
|
placeholder_text =
|
||||||
|
|
||||||
|
position = 0, -50
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
||||||
|
label {
|
||||||
|
monitor = eDP-1
|
||||||
|
text = o shit waddup!
|
||||||
|
text_align = center
|
||||||
|
color = rgb(cdd6f4)
|
||||||
|
font_size = 24
|
||||||
|
font_family = sriracha
|
||||||
|
|
||||||
|
position = 0, 15
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
2
hypr/hyprpaper.conf
Normal file
2
hypr/hyprpaper.conf
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
preload=~/Pictures/Wallpapers/scarletTree.png
|
||||||
|
wallpaper = , ~/Pictures/Wallpapers/scarletTree.png
|
||||||
4
hypr/monitors.conf
Normal file
4
hypr/monitors.conf
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
# Generated by nwg-displays on 2025-07-22 at 15:25:56. Do not edit manually.
|
||||||
|
|
||||||
|
monitor=eDP-1,1920x1200@60.0,0x1120,1.0
|
||||||
|
monitor=HDMI-A-1,1920x1080@60.0,0x0,1.0
|
||||||
28
kitty/colors.conf
Normal file
28
kitty/colors.conf
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
# foreground #F7E0D7
|
||||||
|
background #090012
|
||||||
|
#
|
||||||
|
# active_tab_foreground #090012
|
||||||
|
# active_tab_background #F7E0D7
|
||||||
|
# inactive_tab_foreground #F7E0D7
|
||||||
|
# inactive_tab_background #090012
|
||||||
|
#
|
||||||
|
# active_border_color #F7E0D7
|
||||||
|
# inactive_border_color #090012
|
||||||
|
# bell_border_color #4E2A79
|
||||||
|
#
|
||||||
|
# color0 #090012
|
||||||
|
# color8 #A48E84
|
||||||
|
# color1 #4E2A79
|
||||||
|
# color9 #4E2A79
|
||||||
|
# color2 #8E223D
|
||||||
|
# color10 #8E223D
|
||||||
|
# color3 #9661BB
|
||||||
|
# color11 #9661BB
|
||||||
|
# color4 #CC6268
|
||||||
|
# color12 #CC6268
|
||||||
|
# color5 #D89FD6
|
||||||
|
# color13 #D89FD6
|
||||||
|
# color6 #E7A78C
|
||||||
|
# color14 #E7A78C
|
||||||
|
# color7 #EBCBBD
|
||||||
|
# color15 #EBCBBD
|
||||||
15
kitty/kitty.conf
Normal file
15
kitty/kitty.conf
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
include colors.conf
|
||||||
|
|
||||||
|
background_opacity 0.75
|
||||||
|
|
||||||
|
font_family ComicShannsMono Nerd Font
|
||||||
|
font_size 16
|
||||||
|
|
||||||
|
cursor #cdf
|
||||||
|
cursor_trail 1
|
||||||
|
cursor_trail_start_threshold 0
|
||||||
|
cursor_trail_decay 0 0.3
|
||||||
|
window_padding_width 4
|
||||||
|
|
||||||
|
confirm_os_window_close 0
|
||||||
|
enable_audio_bell no
|
||||||
@@ -1,16 +1,16 @@
|
|||||||
require('config.lazy')
|
require('config.lazy')
|
||||||
|
|
||||||
vim.lsp.enable({
|
vim.lsp.enable({
|
||||||
rust_analyzer,
|
"rust_analyzer",
|
||||||
jdtls,
|
"jdtls",
|
||||||
qmlls,
|
"qmlls",
|
||||||
clangd,
|
"clangd",
|
||||||
csharp_ls,
|
"csharp_ls",
|
||||||
lua_ls,
|
"lua_ls",
|
||||||
html,
|
"html",
|
||||||
ts_ls,
|
"ts_ls",
|
||||||
css_ls,
|
"css_ls",
|
||||||
tinymist,
|
"tinymist"
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user