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/**
!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 =
follow_mouse = 1
numlock_by_default = 1
touchpad {
natural_scroll = yes;
@@ -131,6 +132,19 @@ plugin {
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
@@ -140,15 +154,6 @@ plugin {
# 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
$mainMod = SUPER
@@ -215,7 +220,7 @@ bind = $mainMod SHIFT, 0, movetodesk, 10
# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod CTRL, S, movetoworkspace, special:magic
# bindr = $mainMod, SUPER_L, exec, hyprpanel toggleWindow dashboardmenu
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
# Scroll through existing workspaces with mainMod + TAB and SHIFT + TAB
# bind = $mainMod, TAB, workspace, e+1
# bind = $mainMod SHIFT, TAB, workspace, e-1
bind = $mainMod, TAB, overview:toggle
# bindr = SUPER, SUPER_L, exec, $menu
# Used to use overview:toggle, but that resises the windows
# bind = $mainMod, TAB, overview:toggle
# bind = CTRL ALT, TAB, overview:toggle
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, 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
@@ -256,3 +263,6 @@ bindm = $mainMod, mouse:273, resizewindow
# Mouse wheel tilt
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
# Gromit for drawing
bind = SUPER CTRL, P, exec, ~/.config/hypr/scripts/gromit.py

View File

@@ -9,9 +9,9 @@ general {
# BACKGROUND
background {
# monitor =
path = $HOME/.config/backgrounds/background.png
path = $HOME/.config/backgrounds/rengoku2.png
# path = $HOME/.config/hypr/fireplace.mp4
blur_passes = 1
blur_passes = 0
# color = $base
}
@@ -34,50 +34,53 @@ label {
color = rgb(255, 255, 255)
font_size = 90
font_family = $font
position = -30, 0
halign = right
position = 75, 0
halign = left
valign = top
}
# DATE
label {
# monitor =
text = cmd[update:43200000] date +"%A, %d %B %Y"
color = rgb(255, 255, 255)
font_size = 25
font_family = $font
position = -30, -150
halign = right
valign = top
}
# label {
# # monitor =
# text = cmd[update:43200000] date +"%A, %d %B %Y"
# color = rgb(255, 255, 255)
# font_size = 25
# font_family = $font
# position = 30, -150
# halign = left
# 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
{
# monitor = "";
text = $FPRINTPROMPT
color = rgb(255, 255, 255)
font_size = 14;
font_family = $font;
position = "0, -107";
halign = "center";
valign = "center";
position = -25, 0
halign = left
valign = center
}
# USER AVATAR
image {
# monitor =
# monitor =
path = $HOME/.face
rounding = 25
size = 100
border_color = rgb(0, 0, 0)
position = 0, 75
halign = center
# border_color = rgb(0, 0, 0)
border_size = 0
position = 200, 75
halign = left
valign = center
}
# INPUT FIELD
# INPUT FIELD
input-field {
# monitor =
size = 300, 60
position = 100, -47
outline_thickness = 4
dots_size = 0.2
dots_spacing = 0.2
@@ -92,7 +95,18 @@ input-field {
fail_color = rgb(255, 0, 0)
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i>
capslock_color = rgb(255, 0, 0)
position = 0, -47
halign = center
halign = left
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/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
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 = systemctl --user start hyprpolkitagent
exec-once = /usr/bin/kdeconnectd &
exec-once = /usr/bin/swaync &
# exec-once = /usr/bin/swaync &
# exec-once = waybar
# Start apps in .autostart
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 = waybar
exec-once = hyprpanel
exec-once = hyprpaper
exec-once = hypridle
exec-once = clipse -listen

View File

@@ -18,3 +18,11 @@ windowrule = noblur 1 noanim 1 noshadow 1, class:(^$)
stickyrule = class:discord,5
stickyrule = class:org.telegram.desktop,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