Compare commits
17 Commits
Author | SHA1 | Date |
---|---|---|
|
ea757b4185 | 2 weeks ago |
|
9a79b23a52 | 2 weeks ago |
|
935d6d999b | 2 weeks ago |
|
855732f3c1 | 2 weeks ago |
|
a2148c1e19 | 2 weeks ago |
|
679af71d41 | 2 weeks ago |
|
7bc3ec6d98 | 2 weeks ago |
|
4ca12fd342 | 3 weeks ago |
|
b24521fd4f | 1 month ago |
|
b561e7e2f3 | 1 month ago |
|
b473dbbe74 | 1 month ago |
|
e1700384a8 | 2 months ago |
|
ebc6245ea2 | 2 months ago |
|
5cd3ac24a1 | 2 months ago |
|
7cef694420 | 2 months ago |
|
ccebfdcdd5 | 2 months ago |
|
6e50e217c3 | 3 months ago |
54 changed files with 1581 additions and 221 deletions
@ -0,0 +1,12 @@
|
||||
app-notifications = no-clipboard-copy |
||||
confirm-close-surface = false |
||||
copy-on-select = clipboard |
||||
cursor-style-blink = false |
||||
font-family = DejaVuSansM Nerd Font Mono |
||||
font-size = 10 |
||||
link-url = true |
||||
selection-invert-fg-bg = true |
||||
term = xterm-256color |
||||
theme = terminal-sexy |
||||
window-decoration = false |
||||
window-inherit-working-directory = true |
@ -0,0 +1,21 @@
|
||||
palette = 0=#282a2e |
||||
palette = 1=#a54242 |
||||
palette = 2=#8c9440 |
||||
palette = 3=#de935f |
||||
palette = 4=#5f819d |
||||
palette = 5=#85678f |
||||
palette = 6=#5e8d87 |
||||
palette = 7=#707880 |
||||
palette = 8=#373b41 |
||||
palette = 9=#cc6666 |
||||
palette = 10=#b5bd68 |
||||
palette = 11=#f0c674 |
||||
palette = 12=#81a2be |
||||
palette = 13=#b294bb |
||||
palette = 14=#8abeb7 |
||||
palette = 15=#c5c8c6 |
||||
background = #1c1c1c |
||||
foreground = #c5c8c6 |
||||
cursor-color = #c5c8c6 |
||||
selection-background = #373b41 |
||||
selection-foreground = #c5c8c6 |
@ -0,0 +1,12 @@
|
||||
general { |
||||
lock_cmd = pidof hyprlock || hyprlock |
||||
before_sleep_cmd = loginctl lock-session |
||||
after_sleep_cmd = hyprctl dispatch dpms on # avoid having to press a key twice to turn on display |
||||
} |
||||
|
||||
# Turn the screen off after 30 seconds on the lock-screen |
||||
listener { |
||||
timeout = 30 |
||||
on-timeout = pidof hyprlock && hyprctl dispatch dpms off |
||||
on-resume = hyprctl dispatch dpms on |
||||
} |
@ -0,0 +1,422 @@
|
||||
################ |
||||
### MONITORS ### |
||||
################ |
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/ |
||||
|
||||
monitor = desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, preferred, 0x0, auto |
||||
monitor = desc:Iiyama North America PL2492H 11511037C7430, preferred, 2560x0, auto |
||||
monitor = , preferred, auto, auto # fallback |
||||
|
||||
|
||||
################### |
||||
### MY PROGRAMS ### |
||||
################### |
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ |
||||
|
||||
# Set programs that you use |
||||
$terminal = ghostty |
||||
$fileManager = thunar |
||||
$menu = rofi -show drun |
||||
|
||||
|
||||
################# |
||||
### AUTOSTART ### |
||||
################# |
||||
|
||||
# System level |
||||
exec-once = gammastep |
||||
exec-once = systemctl --user start hyprpolkitagent |
||||
exec-once = hyprctl setcursor capitaine-cursors-light 24 |
||||
exec-once = hypridle |
||||
exec-once = ydotoold |
||||
|
||||
# Scripts |
||||
exec-once = ${HOME}/.local/bin/wm/wallpaper.sh |
||||
exec-once = ${HOME}/.local/bin/panel/waybar.sh |
||||
|
||||
# Applications |
||||
exec-once = [workspace 1] firefox |
||||
exec-once = [workspace 2] $terminal |
||||
exec-once = [workspace 3] thunar --daemon |
||||
exec-once = [workspace 3] thunar |
||||
|
||||
|
||||
############################# |
||||
### ENVIRONMENT VARIABLES ### |
||||
############################# |
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Environment-variables/ |
||||
|
||||
env = XDG_CURRENT_DESKTOP,Hyprland |
||||
env = XDG_SESSION_TYPE,wayland |
||||
env = XDG_SESSION_DESKTOP,Hyprland |
||||
|
||||
env = XCURSOR_SIZE,24 |
||||
env = HYPRCURSOR_SIZE,24 |
||||
|
||||
|
||||
##################### |
||||
### LOOK AND FEEL ### |
||||
##################### |
||||
|
||||
# Refer to https://wiki.hyprland.org/Configuring/Variables/ |
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#general |
||||
general { |
||||
gaps_in = 5 |
||||
gaps_out = 10 |
||||
|
||||
border_size = 2 |
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors |
||||
col.active_border = rgb(404552) |
||||
col.inactive_border = rgb(2b2e39) |
||||
|
||||
# Set to true enable resizing windows by clicking and dragging on borders and gaps |
||||
resize_on_border = false |
||||
|
||||
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on |
||||
allow_tearing = false |
||||
|
||||
layout = dwindle |
||||
} |
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#decoration |
||||
decoration { |
||||
rounding = 0 |
||||
|
||||
# Change transparency of focused and unfocused windows |
||||
active_opacity = 1.0 |
||||
inactive_opacity = 1.0 |
||||
|
||||
shadow { |
||||
enabled = false |
||||
} |
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#blur |
||||
blur { |
||||
enabled = false |
||||
} |
||||
} |
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#animations |
||||
animations { |
||||
enabled = true |
||||
|
||||
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more |
||||
|
||||
bezier = easeOutQuint,0.23,1,0.32,1 |
||||
bezier = easeInOutCubic,0.65,0.05,0.36,1 |
||||
bezier = linear,0,0,1,1 |
||||
bezier = almostLinear,0.5,0.5,0.75,1.0 |
||||
bezier = quick,0.15,0,0.1,1 |
||||
|
||||
animation = global, 1, 10, default |
||||
animation = border, 1, 5.39, easeOutQuint |
||||
animation = windows, 1, 4.79, easeOutQuint |
||||
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% |
||||
animation = windowsOut, 1, 1.49, linear, popin 87% |
||||
animation = fadeIn, 1, 1.73, almostLinear |
||||
animation = fadeOut, 1, 1.46, almostLinear |
||||
animation = fade, 1, 3.03, quick |
||||
animation = layers, 1, 3.81, easeOutQuint |
||||
animation = layersIn, 1, 4, easeOutQuint, fade |
||||
animation = layersOut, 1, 1.5, linear, fade |
||||
animation = fadeLayersIn, 1, 1.79, almostLinear |
||||
animation = fadeLayersOut, 1, 1.39, almostLinear |
||||
animation = workspaces, 1, 1.94, almostLinear, fade |
||||
animation = workspacesIn, 1, 1.21, almostLinear, fade |
||||
animation = workspacesOut, 1, 1.94, almostLinear, fade |
||||
} |
||||
|
||||
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ |
||||
# "Smart gaps" / "No gaps when only" |
||||
workspace = w[tv1], gapsout:0, gapsin:0 |
||||
workspace = f[1], gapsout:0, gapsin:0 |
||||
windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1] |
||||
windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1] |
||||
windowrulev2 = bordersize 0, floating:0, onworkspace:f[1] |
||||
windowrulev2 = rounding 0, floating:0, onworkspace:f[1] |
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more |
||||
dwindle { |
||||
force_split = 2 # split to the bottom right |
||||
preserve_split = true |
||||
pseudotile = false |
||||
} |
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more |
||||
master { |
||||
new_status = master |
||||
} |
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#misc |
||||
misc { |
||||
disable_hyprland_logo = true |
||||
vfr = true # lower amount of sent frames when nothing is happening on-screen |
||||
} |
||||
|
||||
|
||||
############# |
||||
### INPUT ### |
||||
############# |
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#input |
||||
input { |
||||
kb_layout = us |
||||
kb_variant = |
||||
kb_model = |
||||
kb_options = caps:swapescape |
||||
kb_rules = |
||||
|
||||
follow_mouse = 1 |
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification. |
||||
|
||||
touchpad { |
||||
natural_scroll = false |
||||
} |
||||
} |
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#gestures |
||||
gestures { |
||||
workspace_swipe = false |
||||
} |
||||
|
||||
# Example per-device config |
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more |
||||
device { # hyprctl devices |
||||
name = logitech-wireless-mouse-pid:4038 |
||||
sensitivity = -0.5 |
||||
accel_profile = flat |
||||
} |
||||
|
||||
|
||||
################### |
||||
### KEYBINDINGS ### |
||||
################### |
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ |
||||
$mainMod = SUPER # Sets "Windows" key as main modifier |
||||
|
||||
# Bind docs https://wiki.hyprland.org/Configuring/Binds/ |
||||
|
||||
#--- Control ---# |
||||
|
||||
# Reload hyprland |
||||
bind = $mainMod Control_L, r, forcerendererreload |
||||
|
||||
# Close hyprland |
||||
bind = $mainMod SHIFT, M, exit, |
||||
|
||||
#--- Window ---# |
||||
|
||||
# Close window |
||||
bind = $mainMod, q, killactive, |
||||
|
||||
#-- State/flags --# |
||||
|
||||
# Toggle fullscreen mode |
||||
bind = $mainMod, f, fullscreen |
||||
|
||||
# Toggle tiled/floating |
||||
bind = $mainMod, Space, togglefloating, |
||||
|
||||
#-- Focus --# |
||||
|
||||
# Focus window in direction |
||||
bind = $mainMod, h, movefocus, l |
||||
bind = $mainMod, j, movefocus, d |
||||
bind = $mainMod, k, movefocus, u |
||||
bind = $mainMod, l, movefocus, r |
||||
bind = $mainMod, left, movefocus, l |
||||
bind = $mainMod, right, movefocus, r |
||||
bind = $mainMod, up, movefocus, u |
||||
bind = $mainMod, down, movefocus, d |
||||
|
||||
# Focus previous/next window |
||||
bind = $mainMod, Tab, cyclenext |
||||
bind = $mainMod SHIFT, Tab, cyclenext, prev |
||||
|
||||
# Focus workspace |
||||
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 |
||||
|
||||
# Focus previous/next workspace |
||||
bind = $mainMod, equal, workspace, e+1 |
||||
bind = $mainMod, minus, workspace, e-1 |
||||
|
||||
# Focus last workspace |
||||
bind = $mainMod, GRAVE, focuscurrentorlast |
||||
|
||||
# Focus previous/next monitor |
||||
# TODO |
||||
|
||||
# Special workspace (scratchpad) |
||||
bind = $mainMod, T, togglespecialworkspace, magic |
||||
|
||||
#-- Move --# |
||||
|
||||
# Send window to workspace |
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1 |
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2 |
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3 |
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4 |
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5 |
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6 |
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7 |
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8 |
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9 |
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10 |
||||
|
||||
# Move window to previous/next workspace |
||||
bind = $mainMod SHIFT, equal, movetoworkspace, e+1 |
||||
bind = $mainMod SHIFT, minus, movetoworkspace, e-1 |
||||
|
||||
# Move window to previous/next monitor |
||||
# TODO |
||||
|
||||
# Move floating window |
||||
bind = Control_L Alt_L, h, moveactive, -30 0 |
||||
bind = Control_L Alt_L, j, moveactive, 0 30 |
||||
bind = Control_L Alt_L, k, moveactive, 0 -30 |
||||
bind = Control_L Alt_L, l, moveactive, 30 0 |
||||
bind = Control_L Alt_L, left, moveactive, -30 0 |
||||
bind = Control_L Alt_L, right, moveactive, 30 0 |
||||
bind = Control_L Alt_L, up, moveactive, 0 -30 |
||||
bind = Control_L Alt_L, down, moveactive, 0 30 |
||||
|
||||
# Flip the tree from the current windows parent |
||||
bind = $mainMod Alt_L, 5, swapsplit, # dwindle |
||||
bind = $mainMod Alt_L, 6, togglesplit, # dwindle |
||||
|
||||
# Special workspace (scratchpad) |
||||
bind = $mainMod SHIFT, T, movetoworkspace, special:magic |
||||
|
||||
#-- Resize --# |
||||
|
||||
# Resize windows |
||||
bind = $mainMod Alt_L, h, resizeactive, -10 0 |
||||
bind = $mainMod Alt_L, j, resizeactive, 0 10 |
||||
bind = $mainMod Alt_L, k, resizeactive, 0 -10 |
||||
bind = $mainMod Alt_L, l, resizeactive, 10 0 |
||||
bind = $mainMod Alt_L, left, resizeactive, -10 0 |
||||
bind = $mainMod Alt_L, right, resizeactive, 10 0 |
||||
bind = $mainMod Alt_L, up, resizeactive, 0 -10 |
||||
bind = $mainMod Alt_L, down, resizeactive, 0 10 |
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging |
||||
bindm = $mainMod, mouse:272, movewindow |
||||
bindm = $mainMod, mouse:273, resizewindow |
||||
|
||||
#-- Preselect node --# |
||||
|
||||
bind = SUPER Control_L, h, layoutmsg, preselect left |
||||
bind = SUPER Control_L, j, layoutmsg, preselect down |
||||
bind = SUPER Control_L, k, layoutmsg, preselect up |
||||
bind = SUPER Control_L, l, layoutmsg, preselect right |
||||
bind = SUPER Control_L, left, layoutmsg, preselect left |
||||
bind = SUPER Control_L, right, layoutmsg, preselect right |
||||
bind = SUPER Control_L, up, layoutmsg, preselect up |
||||
bind = SUPER Control_L, down, layoutmsg, preselect down |
||||
|
||||
#--- General ---# |
||||
|
||||
# Start terminal |
||||
bind = $mainMod, Return, exec, $terminal |
||||
|
||||
# Start rofi (program launcher) |
||||
bind = $mainMod, d, exec, $menu |
||||
|
||||
# mpv |
||||
bind = $mainMod, m, exec, play |
||||
bind = $mainMod SHIFT, m, exec, play queue |
||||
|
||||
#--- Control, compositor agnostic ---# |
||||
|
||||
# Reload |
||||
bind = $mainMod Control_L, r, exec, ${HOME}/.local/bin/panel/waybar.sh |
||||
|
||||
# System |
||||
bind = $mainMod SHIFT, s, exec, system |
||||
|
||||
# Screen brightness |
||||
bind = $mainMod, F2, exec, brictl dec 10 |
||||
bind = $mainMod, F3, exec, brictl inc 10 |
||||
|
||||
# Screen capture |
||||
bind = , Print, exec, printscreen |
||||
bind = Control_L, Print, exec, aliases screencast |
||||
|
||||
# Laptop multimedia keys |
||||
bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ |
||||
bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- |
||||
bindel = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle |
||||
bindel = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle |
||||
bindel = , XF86MonBrightnessUp, exec, brictl inc 10 |
||||
bindel = , XF86MonBrightnessDown, exec, brictl dec 10 |
||||
|
||||
bindl = , XF86AudioNext, exec, playerctl next |
||||
bindl = , XF86AudioPause, exec, playerctl play-pause |
||||
bindl = , XF86AudioPlay, exec, playerctl play-pause |
||||
bindl = , XF86AudioPrev, exec, playerctl previous |
||||
|
||||
bindl = , XF86HomePage, exec, inputctl -d toggle # toggle touchpad |
||||
bindl = , XF86Search, exec, inputctl -s toggle # toggle touchscreen |
||||
|
||||
#--- Notification ---# |
||||
|
||||
# Notifiation |
||||
bind = Control_L, space, exec, dunstctl close |
||||
bind = Control_L SHIFT, space, exec, dunstctl close-all |
||||
bind = Control_L, grave, exec, dunstctl history-pop |
||||
bind = Control_L SHIFT, period, exec, dunstctl context |
||||
|
||||
|
||||
############################## |
||||
### WINDOWS AND WORKSPACES ### |
||||
############################## |
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more |
||||
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules |
||||
|
||||
# Ignore maximize requests from apps. You'll probably like this. |
||||
windowrule = suppressevent maximize, class:.* |
||||
|
||||
# Fix some dragging issues with XWayland |
||||
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 |
||||
|
||||
# Set to floating |
||||
windowrule = float, class:feh # window rule v1 can only do either class or title, not both |
||||
windowrule = float, class:mpv |
||||
windowrule = float, class:org.pulseaudio.pavucontrol |
||||
windowrule = float, class:pinentry-gtk |
||||
windowrule = float, class:xarchiver |
||||
windowrule = float, class:firefox, title:Library |
||||
windowrule = float, class:firefox, title:^About.* |
||||
windowrule = float, class:thunar, title:File Operation Progress |
||||
|
||||
# Resize floating windows |
||||
windowrule = size >50% >70%, class:org.pulseaudio.pavucontrol |
||||
|
||||
# Put workspaces on specific monitors |
||||
workspace = 1, monitor:desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, persistent:true, default:true |
||||
workspace = 2, monitor:desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, persistent:true |
||||
workspace = 3, monitor:desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, persistent:true |
||||
workspace = 4, monitor:desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, persistent:true |
||||
workspace = 5, monitor:desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, persistent:true |
||||
workspace = 6, monitor:desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, persistent:true |
||||
workspace = 7, monitor:desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, persistent:true |
||||
workspace = 8, monitor:desc:Ancor Communications Inc ASUS PB298 D7LMTF059917, persistent:true |
||||
workspace = 9, monitor:desc:Iiyama North America PL2492H 11511037C7430, persistent:true, default:true |
||||
workspace = 10, monitor:desc:Iiyama North America PL2492H 11511037C7430, persistent:true |
@ -0,0 +1,73 @@
|
||||
$font_size = 48 |
||||
$font_size_small = 16 |
||||
$image_size = 175 |
||||
|
||||
general { |
||||
hide_cursor = true |
||||
ignore_empty_input = true |
||||
} |
||||
|
||||
background { |
||||
monitor = |
||||
path = screenshot |
||||
blur_passes = 2 |
||||
blur_size = 2 |
||||
noise = 0 |
||||
} |
||||
|
||||
label { |
||||
font_family = DejaVu Sans Serif |
||||
font_size = $font_size |
||||
|
||||
text = $TIME12 |
||||
text_align = center |
||||
|
||||
position = 0, 275 |
||||
halign = center |
||||
valign = center |
||||
} |
||||
|
||||
label { |
||||
font_family = DejaVu Sans Serif |
||||
font_size = $font_size_small |
||||
|
||||
text = cmd[] date "+%A, %B %d" |
||||
|
||||
position = 0, 200 |
||||
halign = center |
||||
valign = center |
||||
} |
||||
|
||||
image { |
||||
monitor = |
||||
path = ~/.local/bin/wm/lock.png |
||||
size = $image_size |
||||
rounding = -1 |
||||
border_size = 0 |
||||
|
||||
halign = center |
||||
valign = center |
||||
} |
||||
|
||||
input-field { |
||||
monitor = |
||||
size = $image_size, $image_size |
||||
|
||||
outline_thickness = 10 |
||||
outer_color = rgba(255, 255, 255, 0.0) |
||||
inner_color = rgba(0, 0, 0, 0.0) |
||||
check_color = rgba(255, 255, 255, 1.0) |
||||
fail_color = rgba(255, 0, 0, 1.0) |
||||
|
||||
font_family = DejaVu Sans Serif |
||||
font_color = rgba(255, 255, 255, 0.9) |
||||
placeholder_text = |
||||
fail_text = |
||||
|
||||
hide_input = true |
||||
rounding = -1 |
||||
fade_on_empty = false |
||||
|
||||
halign = center |
||||
valign = center |
||||
} |
@ -1,42 +1,43 @@
|
||||
{ |
||||
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" }, |
||||
"LuaSnip": { "branch": "master", "commit": "33b06d72d220aa56a7ce80a0dd6f06c70cd82b9d" }, |
||||
"auto-save.nvim": { "branch": "main", "commit": "b58948445c43e6903987a9bb97c82e66fdcc0786" }, |
||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, |
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" }, |
||||
"LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" }, |
||||
"auto-save.nvim": { "branch": "main", "commit": "29f793a3a7f98129387590269ffe3ad61ab5e509" }, |
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" }, |
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" }, |
||||
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" }, |
||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, |
||||
"cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" }, |
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, |
||||
"dashboard-nvim": { "branch": "master", "commit": "ae309606940d26d8c9df8b048a6e136b6bbec478" }, |
||||
"dashboard-nvim": { "branch": "master", "commit": "000448d837f6e7a47f8f342f29526c4d7e49e9ce" }, |
||||
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, |
||||
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, |
||||
"gitsigns.nvim": { "branch": "main", "commit": "5f808b5e4fef30bd8aca1b803b4e555da07fc412" }, |
||||
"lazy.nvim": { "branch": "main", "commit": "7c493713bc2cb392706866eeba53aaef6c8e9fc6" }, |
||||
"gitsigns.nvim": { "branch": "main", "commit": "17ab794b6fce6fce768430ebc925347e349e1d60" }, |
||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, |
||||
"lspkind.nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" }, |
||||
"lspsaga.nvim": { "branch": "main", "commit": "2710a0ad97b5aaff404cd4756c296df454b3f726" }, |
||||
"lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" }, |
||||
"lspsaga.nvim": { "branch": "main", "commit": "778d56ff9b387dacd14ae648ed5604394b486f51" }, |
||||
"lualine.nvim": { "branch": "master", "commit": "0ea56f91b7f51a37b749c050a5e5dfdd56b302b3" }, |
||||
"neodev.nvim": { "branch": "main", "commit": "46aa467dca16cf3dfe27098042402066d2ae242d" }, |
||||
"neogit": { "branch": "master", "commit": "40038473707c54a846bd11ecaf5933dd45858972" }, |
||||
"nvim-base16": { "branch": "master", "commit": "6ac181b5733518040a33017dde654059cd771b7c" }, |
||||
"nvim-cmp": { "branch": "main", "commit": "3403e2e9391ed0a28c3afddd8612701b647c8e26" }, |
||||
"neogit": { "branch": "master", "commit": "97f83f1dc51dee41e08e3c7a8adf00e1083e3178" }, |
||||
"nvim-base16": { "branch": "master", "commit": "3f13e15c53ea2aaf79c24ceab725309d87f0619c" }, |
||||
"nvim-cmp": { "branch": "main", "commit": "059e89495b3ec09395262f16b1ad441a38081d04" }, |
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" }, |
||||
"nvim-lspconfig": { "branch": "master", "commit": "5a812abc65d529ea7673059a348814c21d7f87ff" }, |
||||
"nvim-treesitter": { "branch": "master", "commit": "337b503688eccb3046547661e4c738e674548fcf" }, |
||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "ad8f0a472148c3e0ae9851e26a722ee4e29b1595" }, |
||||
"nvim-web-devicons": { "branch": "master", "commit": "e73d2774d12d0ecf9e05578d692ba1ea50508cf2" }, |
||||
"omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "4916fa12e5b28d21a1f031f0bdd10aa15a75d85d" }, |
||||
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, |
||||
"nvim-lspconfig": { "branch": "master", "commit": "4ea9083b6d3dff4ddc6da17c51334c3255b7eba5" }, |
||||
"nvim-treesitter": { "branch": "master", "commit": "0e21ee8df6235511c02bab4a5b391d18e165a58d" }, |
||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "698b5f805722254bca3c509591c1806d268b6c2f" }, |
||||
"nvim-web-devicons": { "branch": "master", "commit": "c90dee4e930ab9f49fa6d77f289bff335b49e972" }, |
||||
"omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "ec1a2431f8872f650a85ed71c24f0715df2e49c2" }, |
||||
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, |
||||
"project.nvim": { "branch": "main", "commit": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb" }, |
||||
"rainbow-delimiters.nvim": { "branch": "master", "commit": "c7e489756b5455f922ce79ac374a4ede594f4a20" }, |
||||
"sqlite.lua": { "branch": "master", "commit": "d0ffd703b56d090d213b497ed4eb840495f14a11" }, |
||||
"telescope-all-recent.nvim": { "branch": "main", "commit": "267e9e5fd13a6e9a4cc6ffe00452d446d040401d" }, |
||||
"sqlite.lua": { "branch": "master", "commit": "50092d60feb242602d7578398c6eb53b4a8ffe7b" }, |
||||
"telescope-all-recent.nvim": { "branch": "main", "commit": "e437f60ea468268e49ffdc0c9ed7c5ba384e63cf" }, |
||||
"telescope-file-browser.nvim": { "branch": "master", "commit": "626998e5c1b71c130d8bc6cf7abb6709b98287bb" }, |
||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "cf48d4dfce44e0b9a2e19a008d6ec6ea6f01a83b" }, |
||||
"telescope-recent-files": { "branch": "main", "commit": "3a7a1b9c6b52b6ff7938c59f64c87a05e013dff8" }, |
||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, |
||||
"telescope-recent-files": { "branch": "main", "commit": "eb190c0baded1cbfa9d8767c817b054377683163" }, |
||||
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, |
||||
"todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, |
||||
"trouble.nvim": { "branch": "main", "commit": "46cf952fc115f4c2b98d4e208ed1e2dce08c9bf6" }, |
||||
"ultimate-autopair.nvim": { "branch": "development", "commit": "9e3209190c22953566ae4e6436ad2b4ff4dabb95" }, |
||||
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, |
||||
"toggleterm.nvim": { "branch": "main", "commit": "9a88eae817ef395952e08650b3283726786fb5fb" }, |
||||
"trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, |
||||
"ultimate-autopair.nvim": { "branch": "development", "commit": "5835876b57901d81ebbeb3cd6ad71aaed66f82d7" }, |
||||
"vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" }, |
||||
"which-key.nvim": { "branch": "main", "commit": "9b365a6428a9633e3eeb34dbef1b791511c54f70" } |
||||
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } |
||||
} |
||||
|
@ -0,0 +1,5 @@
|
||||
vim.filetype.add({ |
||||
extension = { |
||||
flw = "lua", |
||||
}, |
||||
}) |
@ -0,0 +1,36 @@
|
||||
-- Module for managing popup terminal |
||||
|
||||
local M = {} |
||||
|
||||
M.persistent_term = nil |
||||
|
||||
local create_command = function(name, command) |
||||
if not name or type(name) ~= "string" then return end |
||||
|
||||
vim.api.nvim_create_user_command(name, function() |
||||
local cmd = type(command) == "function" and command() or command |
||||
M.send_cmd_to_term(cmd) |
||||
end, {}) |
||||
end |
||||
|
||||
M.setup = function() |
||||
-- Setup keybinds |
||||
require("keybinds").toggleterm_nvim() |
||||
|
||||
create_command("RunScript", "sleep 2 && ls /") |
||||
create_command("ScanScript", function() |
||||
local file_path = vim.fn.expand("%:p") |
||||
LOG(file_path) |
||||
|
||||
return "ls" |
||||
end) |
||||
end |
||||
|
||||
M.send_cmd_to_term = function(cmd) |
||||
local term = require("toggleterm.terminal").Terminal |
||||
local default = term:new({ id = 1 }) |
||||
if not default:is_open() then default:open() end |
||||
default:send(cmd) |
||||
end |
||||
|
||||
return M |
@ -0,0 +1,7 @@
|
||||
{ |
||||
"export-settings-ini": true, |
||||
"export-gtkrc-20": true, |
||||
"export-index-theme": true, |
||||
"export-xsettingsd": true, |
||||
"export-gtk4-symlinks": true |
||||
} |
@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<interface> |
||||
<object class="GtkMenu" id="menu"> |
||||
<child> |
||||
<object class="GtkMenuItem" id="lock"> |
||||
<property name="label">Lock</property> |
||||
</object> |
||||
</child> |
||||
<child> |
||||
<object class="GtkMenuItem" id="suspend"> |
||||
<property name="label">Suspend</property> |
||||
</object> |
||||
</child> |
||||
<child> |
||||
<object class="GtkMenuItem" id="hibernate"> |
||||
<property name="label">Hibernate</property> |
||||
</object> |
||||
</child> |
||||
<child> |
||||
<object class="GtkMenuItem" id="shutdown"> |
||||
<property name="label">Shutdown</property> |
||||
</object> |
||||
</child> |
||||
<child> |
||||
<object class="GtkSeparatorMenuItem" id="delimiter1"/> |
||||
</child> |
||||
<child> |
||||
<object class="GtkMenuItem" id="reboot"> |
||||
<property name="label">Reboot</property> |
||||
</object> |
||||
</child> |
||||
</object> |
||||
</interface> |
@ -0,0 +1,236 @@
|
||||
@define-color black #000; |
||||
@define-color red #a54242; /* 1 */ |
||||
@define-color orange #de935f; /* 3 */ |
||||
@define-color blue #5f819d; /* 4 */ |
||||
@define-color green #b5bd68; /* 10 */ |
||||
|
||||
@define-color bgcolor #404552; |
||||
@define-color bgcolor-inactive #2b2e39; |
||||
@define-color bgcolor-urgent #dc7a43; |
||||
@define-color fgcolor #fff; |
||||
@define-color fgcolor-inactive #676e7d; |
||||
|
||||
* { |
||||
/* `otf-font-awesome` is required to be installed for icons */ |
||||
font-family: FontAwesome, DejaVu Sans Serif; |
||||
font-size: 12px; |
||||
} |
||||
|
||||
window#waybar { |
||||
background-color: @bgcolor-inactive; |
||||
color: @fgcolor; |
||||
transition-property: background-color; |
||||
transition-duration: .5s; |
||||
} |
||||
|
||||
window#waybar.hidden { |
||||
opacity: 0.2; |
||||
} |
||||
|
||||
button { |
||||
/* Use box-shadow instead of border so the text isn't offset */ |
||||
box-shadow: inset 0 -3px transparent; |
||||
/* Avoid rounded borders under each button name */ |
||||
border: none; |
||||
border-radius: 0; |
||||
} |
||||
|
||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ |
||||
button:hover { |
||||
background: inherit; |
||||
box-shadow: inset 0 -3px @fgcolor; |
||||
} |
||||
|
||||
#custom-btc, |
||||
#pulseaudio, |
||||
#wireplumber, |
||||
#custom-media, |
||||
#backlight, |
||||
#network, |
||||
#battery, |
||||
#clock, |
||||
#tray, |
||||
#custom-power { |
||||
padding: 0 6px; |
||||
color: @fgcolor; |
||||
} |
||||
|
||||
#window, |
||||
#workspaces { |
||||
margin: 0 4px; |
||||
} |
||||
|
||||
@keyframes blink { |
||||
to { |
||||
background-color: @fgcolor; |
||||
color: @black; |
||||
} |
||||
} |
||||
|
||||
label:focus { |
||||
background-color: @black; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* Workspaces module */ |
||||
|
||||
#workspaces button { |
||||
padding: 0 5px; |
||||
background-color: transparent; |
||||
color: @fgcolor-inactive; |
||||
box-shadow: none; |
||||
} |
||||
|
||||
#workspaces button:hover, |
||||
#workspaces button.empty:hover { |
||||
background-color: @bgcolor; |
||||
color: @fgcolor-inactive; |
||||
} |
||||
|
||||
#workspaces button.active, |
||||
#workspaces button.active.empty { |
||||
background-color: @bgcolor; |
||||
box-shadow: inset 0 -3px @blue; |
||||
color: @fgcolor; |
||||
} |
||||
|
||||
#workspaces button.empty { |
||||
background-color: transparent; |
||||
color: @bgcolor; |
||||
} |
||||
|
||||
#workspaces button.focused { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
#workspaces button.urgent { |
||||
background-color: @bgcolor-urgent; |
||||
} |
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */ |
||||
.modules-left > widget:first-child > #workspaces { |
||||
margin-left: 0; |
||||
} |
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */ |
||||
.modules-right > widget:last-child > #workspaces { |
||||
margin-right: 0; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* BTC module */ |
||||
|
||||
#custom-btc:hover { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* Media modules */ |
||||
|
||||
#pulseaudio, #wireplumber { |
||||
color: @fgcolor; |
||||
} |
||||
|
||||
#pulseaudio:hover, #wireplumber:hover { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
#pulseaudio.muted, #wireplumber.muted { |
||||
color: @fgcolor-inactive |
||||
} |
||||
|
||||
#custom-media { |
||||
color: @green; |
||||
min-width: 100px; |
||||
} |
||||
|
||||
#custom-media.custom-spotify { |
||||
color: @green; |
||||
} |
||||
|
||||
#custom-media.custom-vlc { |
||||
color: @orange; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* Backlight module */ |
||||
|
||||
#backlight:hover { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* Network module */ |
||||
|
||||
#network:hover { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
#network.disconnected { |
||||
background-color: @bgcolor-inactive; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* Battery module */ |
||||
|
||||
#battery:hover { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
#battery.good { |
||||
color: @green; |
||||
} |
||||
|
||||
/* Using steps() instead of linear as a timing function to limit cpu usage */ |
||||
#battery.critical:not(.charging) { |
||||
background-color: @bgcolor-urgent; |
||||
animation-name: blink; |
||||
animation-duration: 2s; |
||||
animation-timing-function: steps(3); |
||||
animation-iteration-count: infinite; |
||||
animation-direction: alternate; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* Clock module */ |
||||
|
||||
#clock:hover { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* Tray module */ |
||||
|
||||
#tray:hover { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
#tray > .passive { |
||||
-gtk-icon-effect: dim; |
||||
} |
||||
|
||||
#tray > .needs-attention { |
||||
-gtk-icon-effect: highlight; |
||||
background-color: @bgcolor-urgent; |
||||
} |
||||
|
||||
/* -------------------------------------- */ |
||||
/* Power module */ |
||||
|
||||
#custom-power { |
||||
color: @red; |
||||
} |
||||
|
||||
#custom-power:hover { |
||||
background-color: @bgcolor; |
||||
} |
||||
|
||||
/* If power module is the leftmost module, set left margin */ |
||||
.modules-left > widget:first-child > #custom-power { |
||||
margin-left: 6px; |
||||
} |
||||
|
||||
/* If power module is the rightmost module, set right margin */ |
||||
.modules-right > widget:last-child > #custom-power { |
||||
margin-right: 6px; |
||||
} |
@ -0,0 +1,9 @@
|
||||
Net/ThemeName "Arc-Dark" |
||||
Net/IconThemeName "Arc" |
||||
Gtk/CursorThemeName "capitaine-cursors-light" |
||||
Net/EnableEventSounds 1 |
||||
EnableInputFeedbackSounds 1 |
||||
Xft/Antialias 1 |
||||
Xft/Hinting 1 |
||||
Xft/HintStyle "hintslight" |
||||
Xft/RGBA "rgb" |
@ -1,3 +1,7 @@
|
||||
XORG_USER='rick' |
||||
|
||||
[ "$USER" = "$XORG_USER" ] && [ "$(tty)" = "/dev/tty1" ] && exec xinit -- vt1 > /dev/null 2>&1 |
||||
if [ "$WAYLAND" = true ]; then |
||||
[ "$USER" = "$XORG_USER" ] && [ "$(tty)" = "/dev/tty1" ] && exec hyprland > /dev/null 2>&1 |
||||
else |
||||
[ "$USER" = "$XORG_USER" ] && [ "$(tty)" = "/dev/tty1" ] && exec xinit -- vt1 > /dev/null 2>&1 |
||||
fi |
||||
|
@ -0,0 +1,5 @@
|
||||
# This file is written by nwg-look. Do not edit. |
||||
[Icon Theme] |
||||
Name=Default |
||||
Comment=Default Cursor Theme |
||||
Inherits=capitaine-cursors-light |
@ -0,0 +1,7 @@
|
||||
#!/bin/sh |
||||
|
||||
# Kill existing panel |
||||
pkill --exact --signal 9 waybar |
||||
|
||||
# Start panel |
||||
setsid -f waybar |
@ -1,7 +1,26 @@
|
||||
#!/bin/sh |
||||
|
||||
WALLPAPER="$HOME/pictures/wallpaper.jpg" |
||||
|
||||
# Overwrite wallpaper with new image if provided |
||||
[ -n "$1" ] && cp "$1" "$HOME/pictures/wallpaper.jpg" |
||||
[ -n "$1" ] && cp "$1" "$WALLPAPER" |
||||
|
||||
# Set wallpaper |
||||
feh --no-fehbg --bg-fill "$HOME/pictures/wallpaper.jpg" |
||||
if [ "$WAYLAND" = true ]; then |
||||
pkill hyprpaper |
||||
setsid -f hyprpaper |
||||
|
||||
# Wait until hyprpaper is available |
||||
while true; do |
||||
output=$(hyprctl hyprpaper) |
||||
if ! echo "$output" | grep -q ".sock"; then |
||||
break |
||||
fi |
||||
sleep 0.1 |
||||
done |
||||
|
||||
hyprctl hyprpaper preload "$WALLPAPER" |
||||
hyprctl hyprpaper wallpaper ",$WALLPAPER" |
||||
else |
||||
feh --no-fehbg --bg-fill "$WALLPAPER" |
||||
fi |
||||
|
@ -0,0 +1,3 @@
|
||||
# Resolver configuration file. |
||||
# See resolv.conf(5) for details. |
||||
nameserver 192.168.0.1 |
@ -0,0 +1,51 @@
|
||||
arandr |
||||
autorandr |
||||
bspwm |
||||
doxygen |
||||
ebtables |
||||
emacs-nativecomp |
||||
frei0r-plugins |
||||
fritzing |
||||
ghc |
||||
graphviz |
||||
i3lock-color-git |
||||
intel-media-driver |
||||
intel-media-sdk |
||||
intel-ucode |
||||
lib32-vulkan-intel |
||||
libmtp |
||||
libnotify-id |
||||
lxappearance |
||||
maim |
||||
mdadm |
||||
minted |
||||
platformio |
||||
polkit-kde-agent |
||||
polybar |
||||
python-image |
||||
python-tqdm |
||||
qemu |
||||
qemu-arch-extra |
||||
qt5gtk2 |
||||
qt6gtk2 |
||||
redshift |
||||
rofi |
||||
rxvt-unicode |
||||
stalonetray |
||||
sxhkd |
||||
synergy2-bin |
||||
texlive-core |
||||
ttf-ms-win10 |
||||
vulkan-intel |
||||
x264 |
||||
xarchiver |
||||
xclip |
||||
xdo |
||||
xdotool |
||||
xorg-server |
||||
xorg-xev |
||||
xorg-xinit |
||||
xorg-xinput |
||||
xorg-xprop |
||||
xorg-xrandr |
||||
xorg-xsetroot |
@ -0,0 +1,32 @@
|
||||
amd-ucode |
||||
ark |
||||
dxvk-bin |
||||
emacs-wayland |
||||
gamescope |
||||
gammastep |
||||
ghostty |
||||
grim |
||||
hypridle |
||||
hyprland |
||||
hyprlock |
||||
hyprpaper |
||||
hyprpolkitagent |
||||
kvantum |
||||
kvantum-qt5 |
||||
lib32-mesa |
||||
lib32-vkd3d-proton-git |
||||
lib32-vulkan-radeon |
||||
nwg-look |
||||
pipewire-alsa |
||||
pipewire-pulse |
||||
rofi-wayland |
||||
rtkit |
||||
slurp |
||||
steam |
||||
sunshine-bin |
||||
vkd3d-proton-bin |
||||
vulkan-radeon |
||||
waybar |
||||
wl-clipboard |
||||
xdg-desktop-portal-hyprland |
||||
ydotool |
Loading…
Reference in new issue