feat: Add new configs

This commit is contained in:
2025-04-05 16:32:28 +11:00
parent 4d8c86df3f
commit 23077aa3a5
23 changed files with 239 additions and 51 deletions

4
.config/.gitignore vendored
View File

@@ -16,3 +16,7 @@
!backgrounds/** !backgrounds/**
!waybar !waybar
!waybar/** !waybar/**
!tofi
!tofi/**
!micro
!micro/**

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 739 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 MiB

View File

@@ -44,6 +44,7 @@ input {
kb_rules = kb_rules =
follow_mouse = 1 follow_mouse = 1
numlock_by_default = 1
touchpad { touchpad {
natural_scroll = yes; natural_scroll = yes;
@@ -131,6 +132,19 @@ plugin {
verbose_logging = 0 verbose_logging = 0
} }
} }
plugin {
hyprexpo {
columns = 3
gap_size = 5
bg_col = rgb(111111)
workspace_method = center current # [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.
}
}
# Example per-device config # Example per-device config
@@ -140,15 +154,6 @@ plugin {
# sensitivity = -0.5 # sensitivity = -0.5
# } # }
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# windowrulev2 = suppressevent maximize, class:.*
# You'll probably like this.
# See https://wiki.hyprland.org/Configuring/Keywords/ for more # See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER $mainMod = SUPER
@@ -215,7 +220,7 @@ bind = $mainMod SHIFT, 0, movetodesk, 10
# Example special workspace (scratchpad) # Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod CTRL, S, movetoworkspace, special:magic bind = $mainMod CTRL, S, movetoworkspace, special:magic
# bindr = $mainMod, SUPER_L, exec, hyprpanel toggleWindow dashboardmenu
bind = $mainMod SHIFT, S, exec, hyprshot -m region bind = $mainMod SHIFT, S, exec, hyprshot -m region
@@ -224,13 +229,15 @@ bind = $mainMod SHIFT, S, exec, hyprshot -m region
# bind = $mainMod, mouse_up, workspace, e-1 # bind = $mainMod, mouse_up, workspace, e-1
# Scroll through existing workspaces with mainMod + TAB and SHIFT + TAB # Scroll through existing workspaces with mainMod + TAB and SHIFT + TAB
# bind = $mainMod, TAB, workspace, e+1 # Used to use overview:toggle, but that resises the windows
# bind = $mainMod SHIFT, TAB, workspace, e-1 # bind = $mainMod, TAB, overview:toggle
bind = $mainMod, TAB, overview:toggle # bind = CTRL ALT, TAB, overview:toggle
# bindr = SUPER, SUPER_L, exec, $menu bind = $mainMod, TAB, hyprexpo:expo, toggle
bind = CTRL ALT, TAB, hyprexpo:expo, toggle
bind = ALT, TAB, exec, ~/.config/hypr/scripts/search-windows.sh bind = ALT, TAB, lastdesk
bind = ALT, SPACE, exec, ~/.config/hypr/scripts/search-windows.sh
# bind = ALT SHIFT, TAB, workspace, e-1 # bind = ALT SHIFT, TAB, workspace, e-1
# bind = ALT, TAB, exec, hyprswitch gui --mod-key alt --key tab --close mod-key-release --reverse-key=key=shift && hyprswitch dispatch # bind = ALT, TAB, exec, hyprswitch gui --mod-key alt --key tab --close mod-key-release --reverse-key=key=shift && hyprswitch dispatch
# bind = ALT SHIFT, TAB, exec, hyprswitch gui --mod-key alt --key tab --close mod-key-release --reverse-key=key=shift && hyprswitch dispatch -r # bind = ALT SHIFT, TAB, exec, hyprswitch gui --mod-key alt --key tab --close mod-key-release --reverse-key=key=shift && hyprswitch dispatch -r
@@ -256,3 +263,6 @@ bindm = $mainMod, mouse:273, resizewindow
# Mouse wheel tilt # Mouse wheel tilt
bind = , mouse_left, exec, ydotool key 56:1 105:1 105:0 56:0 bind = , mouse_left, exec, ydotool key 56:1 105:1 105:0 56:0
bind = , mouse_right, exec, ydotool key 56:1 106:1 106:0 56:0 bind = , mouse_right, exec, ydotool key 56:1 106:1 106:0 56:0
# Gromit for drawing
bind = SUPER CTRL, P, exec, ~/.config/hypr/scripts/gromit.py

View File

@@ -9,9 +9,9 @@ general {
# BACKGROUND # BACKGROUND
background { background {
# monitor = # monitor =
path = $HOME/.config/backgrounds/background.png path = $HOME/.config/backgrounds/rengoku2.png
# path = $HOME/.config/hypr/fireplace.mp4 # path = $HOME/.config/hypr/fireplace.mp4
blur_passes = 1 blur_passes = 0
# color = $base # color = $base
} }
@@ -34,43 +34,45 @@ label {
color = rgb(255, 255, 255) color = rgb(255, 255, 255)
font_size = 90 font_size = 90
font_family = $font font_family = $font
position = -30, 0 position = 75, 0
halign = right halign = left
valign = top valign = top
} }
# DATE # DATE
label { # label {
# monitor = # # monitor =
text = cmd[update:43200000] date +"%A, %d %B %Y" # text = cmd[update:43200000] date +"%A, %d %B %Y"
color = rgb(255, 255, 255) # color = rgb(255, 255, 255)
font_size = 25 # font_size = 25
font_family = $font # font_family = $font
position = -30, -150 # position = 30, -150
halign = right # halign = left
valign = top # valign = top
} # }
shape {
monitor =
size = 500, 100%
color = rgba(255, 255, 255, 0.18)
rounding = 25
# border_size = 4
# border_color = rgba(255, 255, 255, 1.0)
# FINGERPRINT position = -25, 0
{ halign = left
# monitor = ""; valign = center
text = $FPRINTPROMPT
color = rgb(255, 255, 255)
font_size = 14;
font_family = $font;
position = "0, -107";
halign = "center";
valign = "center";
} }
# USER AVATAR # USER AVATAR
image { image {
# monitor = # monitor =
path = $HOME/.face path = $HOME/.face
rounding = 25
size = 100 size = 100
border_color = rgb(0, 0, 0) # border_color = rgb(0, 0, 0)
position = 0, 75 border_size = 0
halign = center position = 200, 75
halign = left
valign = center valign = center
} }
@@ -78,6 +80,7 @@ image {
input-field { input-field {
# monitor = # monitor =
size = 300, 60 size = 300, 60
position = 100, -47
outline_thickness = 4 outline_thickness = 4
dots_size = 0.2 dots_size = 0.2
dots_spacing = 0.2 dots_spacing = 0.2
@@ -92,7 +95,18 @@ input-field {
fail_color = rgb(255, 0, 0) fail_color = rgb(255, 0, 0)
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i> fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i>
capslock_color = rgb(255, 0, 0) capslock_color = rgb(255, 0, 0)
position = 0, -47 halign = left
halign = center
valign = center valign = center
} }
# FINGERPRINT
{
# monitor = "";
text = $FPRINTPROMPT
color = rgb(255, 255, 255)
font_size = 14;
font_family = $font;
position = 0, -107;
halign = center;
valign = center;
}

View File

@@ -0,0 +1,57 @@
{
"0": {
"left": [
"dashboard",
"media"
],
"middle": [
],
"right": [
"volume",
"network",
"bluetooth",
"battery",
"systray",
"clock",
"notifications"
]
},
"1": {
"left": [
"dashboard",
"media"
],
"middle": [
],
"right": [
"volume",
"network",
"bluetooth",
"battery",
"systray",
"clock",
"notifications",
"cputemp"
]
},
"2": {
"left": [
"dashboard",
"workspaces"
],
"middle": [
"media"
],
"right": [
"volume",
"network",
"bluetooth",
"battery",
"systray",
"clock",
"notifications"
]
}
}

View File

@@ -1,3 +1,16 @@
preload = ~/.config/backgrounds/background.png preload = ~/.config/backgrounds/background.png
preload = ~/.config/backgrounds/akaza.png
preload = ~/.config/backgrounds/background.png
preload = ~/.config/backgrounds/better_shaded_landscape.jpg
preload = ~/.config/backgrounds/car-with-full-moon-background.jpg
preload = ~/.config/backgrounds/cello.jpg
preload = ~/.config/backgrounds/earth.jpg
preload = ~/.config/backgrounds/lofiwallpaper.png
preload = ~/.config/backgrounds/nice-blue-background.png
preload = ~/.config/backgrounds/rengoku.png
preload = ~/.config/backgrounds/shaded.png
preload = ~/.config/backgrounds/shinobu.png
wallpaper = , ~/.config/backgrounds/background.png wallpaper = , ~/.config/backgrounds/background.png
ipc = on ipc = on

66
.config/hypr/scripts/gromit.py Executable file
View File

@@ -0,0 +1,66 @@
#!/usr/bin/python3
# import argparse
import os
import sys
import subprocess
import json
def get_window():
print("Getting active window",flush=True)
state = subprocess.run(["hyprctl", "activewindow", "-j"], capture_output=True, text=True)
state = state.stdout
try:
state = json.loads(state)
except json.JSONDecodeError:
print("Error decoding JSON")
return None
if state is None:
print("No active window")
return None
if "class" not in state:
return None
return state["class"]
def gromit_running():
clients = subprocess.run(["hyprctl", "clients", "-j"], capture_output=True, text=True)
clients = clients.stdout
try:
clients = json.loads(clients)
except json.JSONDecodeError:
print("Error decoding JSON")
return False
if clients is None:
print("No clients")
return False
for client in clients:
if "class" not in client:
continue
if client["class"] == "Gromit-mpx":
return True
return False
if __name__ == "__main__":
if get_window() == "Gromit-mpx":
print("Gromit is already running")
os.system("hyprctl dispatch togglespecialworkspace gromit")
os.system("gromit-mpx -t")
os.system("hyprctl keyword unbind , mouse_left")
os.system("hyprctl keyword unbind , mouse_right")
print("Rebinding mouse buttons")
os.system("hyprctl keyword bind , mouse_left, exec, 'ydotool key 56:1 105:1 105:0 56:0'")
os.system("hyprctl keyword bind , mouse_right, exec, 'ydotool key 56:1 106:1 106:0 56:0'")
else:
print("Gromit is not running",flush=True)
# Check if gromit-mpx is running
if gromit_running():
os.system("gromit-mpx -t")
os.system("hyprctl dispatch togglespecialworkspace gromit")
os.system("hyprctl keyword unbind , mouse_left")
os.system("hyprctl keyword unbind , mouse_right")
os.system("hyprctl keyword bind , mouse_left, exec, 'gromit-mpx --undo'")
os.system("hyprctl keyword bind , mouse_right, exec, 'gromit-mpx --redo'")

View File

@@ -1,7 +1,8 @@
exec-once = hyprpm reload -n exec-once = hyprpm reload -n
exec-once = systemctl --user start hyprpolkitagent exec-once = systemctl --user start hyprpolkitagent
exec-once = /usr/bin/kdeconnectd & exec-once = /usr/bin/kdeconnectd &
exec-once = /usr/bin/swaync & # exec-once = /usr/bin/swaync &
# exec-once = waybar
# Start apps in .autostart # Start apps in .autostart
exec-once = /home/nathan/AppImages/Fingertip-0.0.4-beta2-linux-X64.AppImage & exec-once = /home/nathan/AppImages/Fingertip-0.0.4-beta2-linux-X64.AppImage &
@@ -16,7 +17,7 @@ exec-once = discord --start-minimized
exec-once = slack -U exec-once = slack -U
exec-once = waybar exec-once = hyprpanel
exec-once = hyprpaper exec-once = hyprpaper
exec-once = hypridle exec-once = hypridle
exec-once = clipse -listen exec-once = clipse -listen

View File

@@ -18,3 +18,11 @@ windowrule = noblur 1 noanim 1 noshadow 1, class:(^$)
stickyrule = class:discord,5 stickyrule = class:discord,5
stickyrule = class:org.telegram.desktop,5 stickyrule = class:org.telegram.desktop,5
stickyrule = class:Slack,5 stickyrule = class:Slack,5
workspace = special:gromit, gapsin:0, gapsout:0, shadow:0, on-created-empty: gromit-mpx -a
windowrule = noblur, class:^(Gromit-mpx)$
windowrule = opacity 1 override, 1 override, class:^(Gromit-mpx)$
windowrule = noshadow, class:^(Gromit-mpx)$
windowrule = suppressevent fullscreen, class:^(Gromit-mpx)$
windowrule = size 100% 100%, class:^(Gromit-mpx)$

View File

@@ -0,0 +1,5 @@
{
"Alt-/": "lua:comment.comment",
"CtrlUnderscore": "lua:comment.comment",
"Ctrl-X": "Quit"
}

Binary file not shown.

10
.config/tofi/config Normal file
View File

@@ -0,0 +1,10 @@
width = 100%
height = 100%
border-width = 0
outline-width = 0
padding-left = 35%
padding-top = 35%
result-spacing = 25
num-results = 5
font = monospace
background-color = #000A