Compare commits

...

87 Commits

Author SHA1 Message Date
6b8532d304 feat(hypr): monitors/workspaces; tuning; chore(waybar,theme)
- theme: add conf.d/theme.conf symlink -> rose-pine.conf
- cursor: set inactive_timeout=0; zoom_factor=1.0; zoom_rigid=false; enable_hyprcursor=true; sync_gsettings_theme=true
- decoration: enable dim_modal
- animations: add specialWorkspace (easeOutQuint, slidevert)
- master: allow_small_split=false; special_scale_factor=0.8; drop_at_cursor=true
- misc: enable vfr=true (keep vrr=2)
- groups: enable render_titles, scrolling; set priority=3
- monitors: add monitorv2 (DP-1 1920x1080@60 @ 0x0; DP-2 1920x1080@144 @ 1920x0, vrr=1)
- workspaces: map 1–5 -> DP-1; 6–10 -> DP-2 (nwg-displays generated)
- waybar: change on-click to "kitty --hold alhp.utils -j"
2025-09-16 17:07:49 +02:00
3ea7d8230c [feat](cs2autoexec) added some settings" 2025-09-13 02:11:31 +02:00
9161dd0311 [fix] removed gestures from hyprland because of update 2025-09-12 22:16:12 +02:00
77d1a4556f [feat](waybar) added alhp module to waybar 2025-09-11 21:06:51 +02:00
91d4729dfa [feat](waybar): Add support for custom/alhp module
[feat](waybar): Add support for custom/alhp module
2025-09-11 20:32:27 +02:00
daeeabddb0 chore(aliases): Updated yadmai-interactive and yadmai-msg aliases to use yadm diff --stage and removed git diff --cached. 2025-09-11 15:58:42 +02:00
e9e6e7a1b1 feat(aliases): Add interactive commit message generation alias using ollama 2025-09-11 15:33:30 +02:00
5ca1977b03 [feat](aliases): Update aliases to use git-change-g3n2b for diff processing and commit message generation.
[refactor](aliases):  The `gaids` alias was refactored to use `git-change-g3n2b` for diff processing.
[feat](aliases): The `gai-interactive` alias was refactored to use `git-change-g3n2b` for diff processing and commit message generation.
[feat](aliases): The `gai-summaary` alias was refactored to use `git-change-g3n2b` for diff processing.
[feat](aliases): The `gai-msg` alias was refactored to use `git-change-g3n2b` for diff processing and commit message generation.
[feat](aliases): The `gai-all` alias was refactored to use `git-change-g3n2b` for diff processing and commit message generation.
[feat](aliases): The `gaicm` alias was refactored to use `git-change-g3n2b` for diff processing and commit message generation.
2025-09-11 15:19:17 +02:00
c022de5a1e feat(zsh): Implement aliases for git diff, commit message generation, and AI-generated commits 2025-09-11 15:11:34 +02:00
5983f3154a feat: Update GTK theme and icons, and adjust Hyprland keybindings
This commit updates the GTK theme to 'rose-pine-gtk' and its associated icon theme to 'rose-pine-icons'.  It also modifies Hyprland keybindings for applications like KeePassXC and adjusts the launcher.
2025-09-09 00:11:44 +02:00
a09095ebc0 autostart files 2025-08-26 15:18:30 +02:00
9afa23d32b added laptop symlink for waybar 2025-08-26 15:16:47 +02:00
1f2a2d2908 added laptop symlink for waybar 2025-08-26 15:15:34 +02:00
1cad14c6b8 waybar config to symlink; 2025-08-26 15:05:52 +02:00
4b78d86a2b added autostart files 2025-08-26 14:58:53 +02:00
11e6d2e510 fixed gamma 2025-08-26 05:53:06 +02:00
b69b54790a fixed gamma 2025-08-26 05:50:03 +02:00
0fa2292e3c added hyprsunset config 2025-08-26 05:46:37 +02:00
f372a94266 new wallpapers fitting for the rosé pine style and gave spotify a theme 2025-08-26 05:41:34 +02:00
c07202ac58 fine tuned the network and made the gaps fitting 2025-08-26 03:12:22 +02:00
eb6cf09597 moved modules of waybar 2025-08-26 03:00:31 +02:00
fe19724470 added swaync and hyprsunset modules to waybar 2025-08-26 02:59:06 +02:00
1e660e8168 added walker rose-pine and reworked some waybar stuff 2025-08-26 00:34:59 +02:00
9b9dfd0b73 updated eww and hyprpaper for new graka 2025-08-23 18:54:47 +02:00
76f1e4fd86 small changes to mouse follow 2025-07-29 05:23:39 +02:00
cd9c6c0a24 hyprland switch to master layout 2025-07-28 21:04:43 +02:00
2d63eb7a4e some small stuff 2025-07-28 20:30:08 +02:00
53cd3c48e2 compose now already added by ultimatekeys 2025-07-20 19:14:28 +02:00
0b40bb76bc changed keymap to ultimate keys 2025-07-20 19:13:07 +02:00
5662ff524a changed theme to rosé pine 2025-07-19 23:21:59 +02:00
778971eead Merge branch 'main' of somegit.dev:mpuchstein/dotfiles 2025-06-29 17:40:39 +02:00
e3bd600df6 update 2025-06-29 17:40:26 +02:00
bff11dec1a changed wallpaper 2025-05-30 08:26:58 +02:00
342d79f7b3 input lag from satty fixed 2025-05-25 17:14:31 +02:00
78bdcf9300 made sure satty is floating 2025-05-25 16:54:47 +02:00
645d1185ed added satty conf 2025-05-24 16:04:22 +02:00
9bdae56013 minimum size for satty 2025-05-24 04:10:15 +02:00
a5cd9a3365 small changes to latex plugs 2025-05-21 13:39:24 +02:00
4be26f09fd added tpm as submodule 2025-05-21 02:04:26 +02:00
5dbe155c50 added tpm as submodule 2025-05-21 00:18:11 +02:00
5a4c1fa472 added tmux 2025-05-17 16:44:12 +02:00
e828cd7c06 Merge branch 'main' of somegit.dev:mpuchstein/dotfiles 2025-05-16 22:03:47 +02:00
6f2a477f5d changed lockscreen pic 2025-05-16 22:02:57 +02:00
25aabb157f fixed hyprlock for owlenlap02 2025-05-16 22:00:40 +02:00
1db7b4a9e7 removed workspaces again 2025-05-16 11:26:58 +02:00
ae70eb000f added nvim obsidian 2025-05-16 09:51:27 +02:00
ea22a78387 removed monitors config again 2025-05-15 18:52:38 +02:00
92e48b9495 fresh colors 2025-05-13 20:24:51 +02:00
5101718c2a some small ew fixes 2025-05-13 09:22:21 +02:00
ce136de488 fixed his seach 2025-05-09 19:26:49 +02:00
8b9a566886 added scrrec to hyprland 2025-05-09 19:19:15 +02:00
90f0f78d43 small updates 2025-05-09 18:39:50 +02:00
d9157c6b09 removed specific hyprpaper 2025-05-06 10:09:25 +02:00
1b71f535d6 updated some community plugs 2025-05-03 16:39:15 +02:00
232f5fce8d updated astrocommunity pkgs and colortheme 2025-05-03 16:22:41 +02:00
0896de2c4f switched to astronvim; 2025-05-03 15:37:14 +02:00
2537ad9ac9 removed signal from autostart 2025-05-02 23:55:53 +02:00
b00b9f9d74 added .gitignore to nvim 2025-05-02 11:37:00 +02:00
5b8e95ea40 removed the lock file 2025-05-02 11:33:37 +02:00
94eb56a447 some qol hyprland changes 2025-05-02 11:32:45 +02:00
d4980add5c some qol hyprland changes 2025-05-02 11:29:34 +02:00
7cf0fc7ca5 started some work vimlatex 2025-05-02 09:51:58 +02:00
75ab68f8dc created a tokyo night theme for hyprland 2025-04-08 16:57:24 +02:00
f8decdb9c4 created a tokyo night theme for hyprland 2025-04-08 16:55:15 +02:00
11b544dc23 removed files that have alts 2025-04-05 16:44:34 +02:00
e03e073a6b nvim settings continued 2025-04-04 16:45:31 +02:00
cc3e4b5a87 nvim theme settings 2025-04-02 20:46:30 +02:00
0634216a1d some nvim updates 2025-04-02 20:26:07 +02:00
f6c8c405dc added battery widget to laptops 2025-03-31 20:39:11 +02:00
f42d3a20b2 merge 2025-03-31 13:43:46 +02:00
69c1f194a1 removed files generated by nwg-desktop 2025-03-31 13:41:04 +02:00
c01df2e7cd started with nvim config 2025-03-30 05:58:33 +02:00
a76a985653 added mangohud 2025-03-29 21:31:26 +01:00
effdce999c sme small hyprland updates 2025-03-29 05:03:07 +01:00
3684e136c0 lap01 config update 2025-03-29 05:02:44 +01:00
bbe9ffcfe3 lap01 config 2025-03-29 04:53:19 +01:00
4e36dcb000 group theming 2025-03-24 15:04:55 +01:00
e7058b1da3 basic tab config 2025-03-24 12:33:41 +01:00
a095b34369 kitty conf 2025-03-24 11:54:31 +01:00
f5d2b4e777 removed files generated by nwg-desktop 2025-03-24 10:42:03 +01:00
8e07248bcd qt conf 2025-03-24 10:36:45 +01:00
70f41cf933 path fixes 2025-03-24 10:18:42 +01:00
06ef0a571e zsh config 2025-03-24 10:14:19 +01:00
946ab415d3 some small stuff 2025-03-24 10:12:31 +01:00
1a1d752b67 path fixes 2025-03-24 10:10:31 +01:00
9663287295 some splitting of conf files btw tablet and pc 2025-03-24 10:08:43 +01:00
a013c5b45a monitor setup host specific 2025-03-23 06:21:53 +01:00
140 changed files with 12821 additions and 1091 deletions

View File

@@ -0,0 +1,76 @@
################### File Generated by Goverlay ###################
legacy_layout=false
horizontal
background_alpha=0.5
round_corners=10
background_alpha=0.5
background_color=241F31
width=10
heigth=10
font_size=14
text_color=FFFFFF
position=top-center
no_small_font
hud_no_margins
hud_compact
offset_y=5
pci_dev=0:12:00.0
table_columns=1
fps
gpu_text=GPU
gpu_stats
gpu_load_change
gpu_load_value=50,90
gpu_load_color=FFFFFF,FFAA7F,CC0000
throttling_status
gpu_temp
gpu_color=2E9762
cpu_text=CPU
cpu_stats
cpu_load_change
cpu_load_value=50,90
cpu_load_color=FFFFFF,FFAA7F,CC0000
cpu_temp
cpu_color=2E97CB
swap
vram
vram_color=AD64C1
ram
ram_color=C26693
procmem
wine
wine_color=EB5B5B
fps_limit_method=late
fps_limit=0
fsr
hdr
refresh_rate
gamemode
custom_text=Arch Linux
exec=uname -r
#offset=0
vsync=0
gl_vsync=-1
time#
version
output_folder=/home/mpuchstein
log_duration=30
autostart_log=0
log_interval=100
toggle_fps_limit=Shift_L+F1
toggle_logging=Shift_L+F2
reload_cfg=Shift_R+F9
toggle_preset=Shift_R+F10
toggle_hud_position=Shift_R+F11
toggle_hud=Shift_R+F12

View File

@@ -0,0 +1,76 @@
################### File Generated by Goverlay ###################
legacy_layout=false
horizontal
background_alpha=0.5
round_corners=10
background_alpha=0.5
background_color=241F31
width=10
heigth=10
font_size=14
text_color=FFFFFF
position=top-center
no_small_font
hud_no_margins
hud_compact
offset_y=5
pci_dev=0:12:00.0
table_columns=1
fps
gpu_text=GPU
gpu_stats
gpu_load_change
gpu_load_value=50,90
gpu_load_color=FFFFFF,FFAA7F,CC0000
throttling_status
gpu_temp
gpu_color=2E9762
cpu_text=CPU
cpu_stats
cpu_load_change
cpu_load_value=50,90
cpu_load_color=FFFFFF,FFAA7F,CC0000
cpu_temp
cpu_color=2E97CB
swap
vram
vram_color=AD64C1
ram
ram_color=C26693
procmem
wine
wine_color=EB5B5B
fps_limit_method=late
fps_limit=0
fsr
hdr
refresh_rate
gamemode
custom_text=Arch Linux
exec=uname -r
#offset=0
vsync=0
gl_vsync=-1
time#
version
output_folder=/home/mpuchstein
log_duration=30
autostart_log=0
log_interval=100
toggle_fps_limit=Shift_L+F1
toggle_logging=Shift_L+F2
reload_cfg=Shift_R+F9
toggle_preset=Shift_R+F10
toggle_hud_position=Shift_R+F11
toggle_hud=Shift_R+F12

View File

@@ -0,0 +1,11 @@
[Desktop Entry]
Name=Nextcloud
GenericName=File Synchronizer
Exec="/usr/bin/nextcloud" --background
Terminal=false
Icon=Nextcloud
Categories=Network
Type=Application
StartupNotify=false
X-GNOME-Autostart-enabled=true
X-GNOME-Autostart-Delay=10

View File

@@ -0,0 +1,10 @@
[Desktop Entry]
Version=1.0
Type=Application
Name=Elephant
Comment=A powerful data provider backend for building custom application launchers and desktop utilities.
Exec=elephant
Icon=applications-other
Terminal=false
Categories=Utility;
Keywords=backend;data-provider;launcher;desktop;utility;

View File

@@ -0,0 +1,4 @@
[Desktop Entry]
Exec=/home/mpuchstein/.local/bin/hyprman -d
Name=hyprman
Type=Application

View File

@@ -0,0 +1 @@
/usr/share/applications/io.element.Element.desktop

View File

@@ -0,0 +1,4 @@
[Desktop Entry]
Exec=/usr/bin/jellyfin-mpv-shim
Name=jellyfin-mpv-shim
Type=Application

View File

@@ -0,0 +1,15 @@
[Desktop Entry]
Icon=/home/mpuchstein/.local/share/JetBrains/Toolbox/bin/toolbox.svg
Exec=/home/mpuchstein/.local/share/JetBrains/Toolbox/bin/jetbrains-toolbox --minimize
Version=1.0
Type=Application
Categories=Development
Name=JetBrains Toolbox
StartupWMClass=jetbrains-toolbox
Terminal=false
MimeType=x-scheme-handler/jetbrains;
X-GNOME-Autostart-enabled=true
StartupNotify=false
X-GNOME-Autostart-Delay=10
X-MATE-Autostart-Delay=10
X-KDE-autostart-after=panel

View File

@@ -0,0 +1,5 @@
[Desktop Entry]
Exec=/usr/bin/nm-applet --indicator
Name=nm-applet
Comment=network monitor and control GUI applet
Type=Application

View File

@@ -0,0 +1,17 @@
[Desktop Entry]
Name=KeePassXC
GenericName=Password Manager
Exec=keepassxc
TryExec=keepassxc
Icon=keepassxc
StartupWMClass=keepassxc
StartupNotify=true
Terminal=false
Type=Application
Version=1.0
Categories=Utility;Security;Qt;
MimeType=application/x-keepass2;
X-GNOME-Autostart-enabled=true
X-GNOME-Autostart-Delay=2
X-KDE-autostart-after=panel
X-LXQt-Need-Tray=true

View File

@@ -0,0 +1,4 @@
[Desktop Entry]
Exec=/usr/bin/swayosd-server
Name=swayosd-server
Type=Application

View File

@@ -0,0 +1,7 @@
[Desktop Entry]
Name=Walker
Comment=Walker Service
Exec=walker --gapplication-service
StartupNotify=false
Terminal=false
Type=Application

View File

@@ -0,0 +1,8 @@
[Desktop Entry]
Type=Application
Name=Waybar
Comment=Start Waybar on login
Exec=waybar
TryExec=waybar
Icon=waybar
Terminal=false

View File

@@ -1,8 +0,0 @@
[Desktop Entry]
Name=Easy Effects
Comment=Easy Effects Service
Exec=easyeffects --gapplication-service
Icon=com.github.wwmm.easyeffects
StartupNotify=false
Terminal=false
Type=Application

View File

@@ -1,4 +0,0 @@
[Desktop Entry]
Exec=/usr/bin/signal-desktop
Name=signal-desktop
Type=Application

View File

@@ -0,0 +1,10 @@
[Desktop Entry]
Version=1.0
Type=Application
Name=Elephant
Comment=A powerful data provider backend for building custom application launchers and desktop utilities.
Exec=elephant
Icon=applications-other
Terminal=false
Categories=Utility;
Keywords=backend;data-provider;launcher;desktop;utility;

View File

@@ -1,4 +0,0 @@
[Desktop Entry]
Exec=/home/mpuchstein/.local/bin/eww open-many topbar_DP-2 topbar_DP-3
Name=eww
Type=Application

View File

@@ -0,0 +1,18 @@
[Desktop Entry]
Name=Mumble
GenericName=Voice Chat
GenericName[de]=Sprachkonferenz
GenericName[fr]=Chat vocal
Comment=Open source, low-latency, high quality voice chat.
Comment[de]=Ein Open Source Sprachkonferenzprogramm mit niedriger Latenz und hoher Qualität
Comment[fr]=Un logiciel de chat vocal de haute qualité et de faible latence
Exec=mumble %u
Icon=mumble
Terminal=false
Type=Application
StartupNotify=false
StartupWMClass=mumble
MimeType=x-scheme-handler/mumble;
Categories=Network;Chat;Qt;
Keywords=VoIP;Messaging;Voice Chat;Secure Communication;
Version=1.0

View File

@@ -0,0 +1,10 @@
[Desktop Entry]
Name=Element
Comment=Feature-rich client for Matrix
Exec=/usr/bin/element-desktop --password-store="gnome-libsecret" %u
Terminal=false
Type=Application
Icon=io.element.Element
StartupWMClass=Element
Categories=Network;InstantMessaging;Chat;IRCClient
MimeType=x-scheme-handler/element;

View File

@@ -1,5 +1,5 @@
[Desktop Entry]
Icon=/home/mpuchstein/.local/share/JetBrains/Toolbox/toolbox.svg
Icon=/home/mpuchstein/.local/share/JetBrains/Toolbox/bin/toolbox.svg
Exec=/home/mpuchstein/.local/share/JetBrains/Toolbox/bin/jetbrains-toolbox --minimize
Version=1.0
Type=Application

View File

@@ -1,4 +0,0 @@
[Desktop Entry]
Exec=/usr/bin/signal-desktop
Name=signal-desktop
Type=Application

View File

@@ -0,0 +1,7 @@
[Desktop Entry]
Type=Application
Name=Vesktop
Comment=Vesktop autostart script
Exec="/usr/lib/vesktop/vesktop"
StartupNotify=false
Terminal=false

View File

@@ -0,0 +1,8 @@
[Desktop Entry]
Type=Application
Name=Waybar
Comment=Start Waybar on login
Exec=waybar
TryExec=waybar
Icon=waybar
Terminal=false

View File

@@ -1,5 +1,5 @@
(include "./widgets.yuck")
(include "./topbar_dp1.yuck")
(include "./topbar_dp2.yuck")
(include "./topbar_dp3.yuck")
(include "./topbar_owlenlap02.yuck")

BIN
.config/eww/eww.zip Normal file

Binary file not shown.

View File

@@ -1,5 +1,5 @@
(defwindow topbar_DP-3
:monitor "DP-3"
(defwindow topbar_DP-1
:monitor "DP-1"
:geometry (geometry :x "0%"
:y "0%"
:width "90%"
@@ -9,37 +9,42 @@
:exclusive true
:reserve (struts :side "top" :distance "4%")
:windowtype "dock"
(bar1))
(bar0))
(defwidget bar1 []
(defwidget bar0 []
(centerbox :orientation "h"
(bar1_left)
(bar1_center)
(bar1_right)))
(bar0_left)
(bar0_center)
(bar0_right)))
(defwidget bar1_left []
(defwidget bar0_left []
(box :orientation 'h'
:class: 'left'
:space-evenly false
:spacing 5
:halign 'start'
(hypr_workspaces)))
(hypr_workspaces)
(hypr_active_window)))
(defwidget bar1_center []
(defwidget bar0_center []
(box :orientation 'h'
:class 'center'
:space-evenly false
:spacing 5
(media)
(hyprscreencast)
(sysmon)))
(defwidget bar1_right []
(defwidget bar0_right []
(box
:orientation 'h'
:class 'right'
:space-evenly false
:spacing 5
:halign 'end'
(media)
(hyprscreencast)
(datetime)))
(hyprsunset)
(datetime)
(stray)
(volume)
(swaync)))

View File

@@ -9,42 +9,37 @@
:exclusive true
:reserve (struts :side "top" :distance "4%")
:windowtype "dock"
(bar0))
(bar1))
(defwidget bar0 []
(defwidget bar1 []
(centerbox :orientation "h"
(bar0_left)
(bar0_center)
(bar0_right)))
(bar1_left)
(bar1_center)
(bar1_right)))
(defwidget bar0_left []
(defwidget bar1_left []
(box :orientation 'h'
:class: 'left'
:space-evenly false
:spacing 5
:halign 'start'
(hypr_workspaces)
(hypr_active_window)))
(hypr_workspaces)))
(defwidget bar0_center []
(defwidget bar1_center []
(box :orientation 'h'
:class 'center'
:space-evenly false
:spacing 5
(media)
(hyprscreencast)
(sysmon)))
(defwidget bar0_right []
(defwidget bar1_right []
(box
:orientation 'h'
:class 'right'
:space-evenly false
:spacing 5
:halign 'end'
(hyprsunset)
(datetime)
(stray)
(volume)
(swaync)))
(media)
(hyprscreencast)
(datetime)))

View File

@@ -1,20 +1,20 @@
@import 'widgets';
@import "widgets";
* {
all: unset;
}
tooltip {
background: #2E3440;
color: #E5E6E7;
background: #2e3440;
color: #e5e6e7;
border-radius: 1.5rem 1rem;
border: 1px solid #6F7175;
border: 1px solid #6f7175;
}
.popup {
background: #2E3440;
color: #E5E6E7;
border: 1px solid #6F7175;
background: #2e3440;
color: #e5e6e7;
border: 1px solid #6f7175;
}
.popup menuitem:hover {
@@ -26,22 +26,9 @@ window {
color: transparent;
* {
font-family: 'Inconsolata Go Nerd Font';
font-family: "Inconsolata Go Nerd Font";
font-size: 0.85rem;
border-radius: 1.5rem 1rem;
padding: 2px 6px;
}
/* Modules */
.left {
//background: orange;
}
.center {
//background: blue;
}
.right {
//background: yellow;
}
}

View File

@@ -3,7 +3,7 @@
:geometry (geometry :x "0%"
:y "0%"
:width "90%"
:height "10px"
:height "1%"
:anchor "top center")
:stacking "bg"
:exclusive true
@@ -32,7 +32,6 @@
:class 'center'
:space-evenly false
:spacing 5
(media)
(hyprscreencast)
(sysmon)))
@@ -41,10 +40,11 @@
:orientation 'h'
:class 'right'
:space-evenly false
:spacing 5
:spacing 2
:halign 'end'
(hyprsunset)
(datetime)
(stray)
(volume)
(battery)
(swaync)))

View File

@@ -9,3 +9,4 @@
@import 'widgets/swaync.scss';
@import 'widgets/volume.scss';
@import 'widgets/hyprscreencast.scss';
@import 'widgets/battery.scss';

View File

@@ -9,3 +9,4 @@
(include "widgets/swaync.yuck")
(include "widgets/volume.yuck")
(include "widgets/hyprscreencast.yuck")
(include "widgets/battery.yuck")

View File

@@ -0,0 +1,8 @@
.battery{
background: lightgreen;
color: black;
}
.Discharging{
background: orange;
}

View File

@@ -0,0 +1,6 @@
(defwidget battery []
(box
:class "battery ${EWW_BATTERY.BAT1.status}"
:halign "center"
:valign "center"
(label :text "󱈑 ${EWW_BATTERY.BAT1.capacity} %")))

View File

@@ -11,6 +11,3 @@
? "eww update display-fix=on && nohup hyprsunset -t ${temperature} > /dev/null 2>&1 &"
: "eww update display-fix=off && pkill hyprsunset"}`
`${display-fix == "off" ? "󰛨 Off" : "󱩌 On"}`)))

View File

@@ -0,0 +1,51 @@
(defvar netiface "wlp3s0")
(defwidget sysmon []
(box
:class 'sysmon'
:space-evenly false
:spacing 0
(cpu :class "first")
(ram :class "middle")
(disk :class "middle")
(net :class "last")))
(defwidget ram [class]
(tooltip
:class 'ram ${EWW_RAM.used_mem_perc > 90 ? 'danger' : ''} ${class}'
(label :text " ${round(EWW_RAM.free_swap/1000000000, 2)} GB/${round(EWW_RAM.total_swap/1000000000, 2)} GB")
(label :text " ${round(EWW_RAM.used_mem/1000000000, 2)} GB/${round(EWW_RAM.total_mem/1000000000, 2)} GB")))
(defwidget disk [class]
(tooltip
:class 'disk ${EWW_DISK["/"].used_perc > 90 ? 'danger' : ''} ${class}'
(label :text " ${round(EWW_DISK["/"].free/1000000000, 2)} GB /${round(EWW_DISK["/"].total/1000000000, 2)} GB")
(label :text " ${round(EWW_DISK["/"].used_perc,2)}%")))
(defwidget cpu [class]
(tooltip
:class 'cpu ${class}'
(box :orientation "vertical"
(for cpu in {EWW_CPU.cores}
(box
:orientation "horizontal"
:space-evenly false
:spacing 10
(circular-progress
:thickness 5
:start-at 75
:value {cpu.usage})
(label
:limit-width 6
:show-truncated false
:text "${cpu.core}: ")
(label :text "${cpu.freq} Hz ${cpu.usage}%"))))
(label :text " ${round(EWW_CPU.avg, 2)}%")))
(defwidget net [class]
(box
:class 'net ${class}'
:space-evenly false
(label :text "")
(label :text " ${round(EWW_NET[netiface].NET_UP * 8 / 1000000, 2)} Mbit")
(label :text " ${round(EWW_NET[netiface].NET_DOWN * 8 / 1000000, 2)} Mbit")))

View File

@@ -1,5 +1,8 @@
file:///home/mpuchstein/Documents/
file:///home/mpuchstein/Pictures/
file:///home/mpuchstein/Music/
file:///home/mpuchstein/Nextcloud/
file:///home/mpuchstein/Downloads/
file:///home/mpuchstein/Documents/personal
file:///home/mpuchstein/Documents/uni uni
file:///home/mpuchstein/Documents
file:///home/mpuchstein/Pictures
file:///home/mpuchstein/Music
file:///home/mpuchstein/Nextcloud
file:///home/mpuchstein/Downloads
file:///home/mpuchstein/Documents/uni/ss25/AD/Vorlesung Vorlesung

View File

@@ -1,8 +1,8 @@
[Settings]
gtk-theme-name=Adwaita
gtk-icon-theme-name=Adwaita
gtk-theme-name=rose-pine-gtk
gtk-icon-theme-name=rose-pine-icons
gtk-font-name=InconsolataGo Nerd Font 9
gtk-cursor-theme-name=AC-Volantes
gtk-cursor-theme-name=volantes
gtk-cursor-theme-size=24
gtk-toolbar-style=GTK_TOOLBAR_ICONS
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
@@ -14,4 +14,4 @@ gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintslight
gtk-xft-rgba=rgb
gtk-application-prefer-dark-theme=1
gtk-application-prefer-dark-theme=0

View File

@@ -3,3 +3,4 @@
# and ~/.config/autostart
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
exec-once = wl-clip-persist --clipboard regular

View File

@@ -0,0 +1,97 @@
#######################################
### CATTPUCCIN MOCHA HYPRLAND THEME ###
#######################################
$rosewater = rgb(f5e0dc)
$rosewaterAlpha = f5e0dc
$flamingo = rgb(f2cdcd)
$flamingoAlpha = f2cdcd
$pink = rgb(f5c2e7)
$pinkAlpha = f5c2e7
$mauve = rgb(cba6f7)
$mauveAlpha = cba6f7
$red = rgb(f38ba8)
$redAlpha = f38ba8
$maroon = rgb(eba0ac)
$maroonAlpha = eba0ac
$peach = rgb(fab387)
$peachAlpha = fab387
$yellow = rgb(f9e2af)
$yellowAlpha = f9e2af
$green = rgb(a6e3a1)
$greenAlpha = a6e3a1
$teal = rgb(94e2d5)
$tealAlpha = 94e2d5
$sky = rgb(89dceb)
$skyAlpha = 89dceb
$sapphire = rgb(74c7ec)
$sapphireAlpha = 74c7ec
$blue = rgb(89b4fa)
$blueAlpha = 89b4fa
$lavender = rgb(b4befe)
$lavenderAlpha = b4befe
$text = rgb(cdd6f4)
$textAlpha = cdd6f4
$subtext1 = rgb(bac2de)
$subtext1Alpha = bac2de
$subtext0 = rgb(a6adc8)
$subtext0Alpha = a6adc8
$overlay2 = rgb(9399b2)
$overlay2Alpha = 9399b2
$overlay1 = rgb(7f849c)
$overlay1Alpha = 7f849c
$overlay0 = rgb(6c7086)
$overlay0Alpha = 6c7086
$surface2 = rgb(585b70)
$surface2Alpha = 585b70
$surface1 = rgb(45475a)
$surface1Alpha = 45475a
$surface0 = rgb(313244)
$surface0Alpha = 313244
$base = rgb(1e1e2e)
$baseAlpha = 1e1e2e
$mantle = rgb(181825)
$mantleAlpha = 181825
$crust = rgb(11111b)
$crustAlpha = 11111b
$splash_text = rgba($textAlphaee)
$dec_shadow = rgba($surface0Alpha88)
$border_active = rgba($pinkAlphaff) rgba($mauveAlphaff) 45deg
$border_inactive = rgba($redAlphabb) rgba($mauveAlphabb) 45deg
$border_nogroup_active = rgba($tealAlphaff) rgba($yellowAlphaff) 45deg
$border_nogroup_inactive = rgba($tealAlphaaa) rgba($yellowAlphaff) 45deg
$border_group_active = rgba($sapphireAlphaff) rgba($lavenderAlphaff) 45deg
$border_group_inactive = rgba($blueAlphadd) rgba($peachAlphadd) 45deg
$border_grouplocked_active = rgba($maroonAlphaff) rgba(f7767eff) 45deg
$border_grouplocked_inactive = rgba(ff007caa) rgba(f7767eff) 45deg
$groupbar_text = rgba($baseAlphaff)
$groupbar_active = rgba($sapphireAlphaff) rgba($lavenderAlphaaa)
$groupbar_inactive = rgba($blueAlphaee) rgba($lavenderAlphaaa)
$groupbar_grouplocked_active = rgba($tealAlphaff) rgba($greenAlphaff)
$groupbar_grouplocked_inactive = rgba($tealAlphaaa) rgba($greenAlphaaa)

View File

@@ -0,0 +1,18 @@
##################################
### TOKYO NIGHT HYPRLAND THEME ###
##################################
$splash_text = rgba(ffffffff)
$dec_shadow = rgba(1a1a1aee)
$border_active = rgba(33ccffee) rgba(00ff99ee) 45deg
$border_inactive = rgba(595959aa)
$border_nogroup_active =
$border_nogroup_inactive =
$border_group_active = 0x66ffff00
$border_group_inactive = 0x66777700
$border_grouplocked_active = 0x66ff5500
$border_grouplocked_inactive = 0x66ff5500
$groupbar_text = 0xffffffff
$groupbar_active = 0x66ffff00
$groupbar_inactive = 0x66777700
$groupbar_grouplocked_active = 0x66ff5500
$groupbar_grouplocked_inactive = 0x66775500

View File

@@ -4,15 +4,18 @@
# Set programs that you use
$terminal = uwsm app -T
$terminal_backup = uwsm app -- kitty
$term_tmux = uwsm app -- kitty tmux a
$filemanager = uwsm app -- nautilus
$launcher = uwsm app -- walker
$clipboard = uwsm app -- nwg-clipman
$browser = uwsm app -- zen-browser
$browserprv = uwsm app -- zen-browser --private-window
$editor = uwsm app -T -- vim
$editor0 = uwsm app -- zeditor
$clipman = uwsm app -- nwg-clipman
$launcher = uwsm app -- sherlock
$clipman = uwsm app -- sherlock-clp | sherlock | cliphist decode | wl-copy
$browser = uwsm app -- firefox
$browserprv = uwsm app -- firefox --private-window
$altbrowser = uwsm app -- chromium
$editor = uwsm app -T -- nvim
$alteditor = uwsm app -- zeditor
$taskman = uwsm app -- uuctl walker -d
$pwdmgr = uwsm app -- keepassxc
$notcenter = uwsm app -- swaync-client -t -sw
$notdnd = uwsm app -- swaync-client -d
$nothide = uwsm app -- swaync-client --hide-latest
@@ -30,12 +33,16 @@ $mainMod = SUPER
bind = $mainMod, E, exec, $filemanager
bind = $mainMod, W, exec, $browser
bind = $mainMod SHIFT, W, exec, $browserprv
bind = $mainMod CTRL, W, exec, $altbrowser
bind = $mainMod Shift, E, exec, $editor
bind = $mainMod Shift ALT_L, E, exec, $editor0
bind = $mainMod Shift ALT_L, E, exec, $alteditor
bind = $mainMod, X, exec, $launcher
bind = $mainMod, C, exec, $clipman
bind = $mainMod, Return, exec, $terminal
bind = $mainMod, Return, exec, $terminal_backup
bind = $mainMod SHIFT, Return, exec, $term_tmux
bind = $mainMod CTRL, Return, exec, $terminal
bind = $mainMod, Escape, exec, $taskman
bind = $mainMod, R, exec, $pwdmgr
bind = $mainMod, Grave, exec, $notcenter
bind = $mainMod SHIFT, Grave, exec, $notdnd
@@ -43,7 +50,6 @@ bind = $mainMod, A, exec, $nothide
bind = $mainMod SHIFT, A, exec, $notclose
bind = $mainMod CTRL, A, exec, $notcloseall
bind = $mainMod SHIFT, Pause, exec, uwsm stop
bind = $mainMod, Pause, exec, $lockcmd
bind = $mainMod SHIFT, Escape, exec, $lockcmd
@@ -62,6 +68,13 @@ bind = $mainMod SHIFT, Tab, togglesplit,
bind = $mainMod CTRL, Tab, layoutmsg, movetoroot
bind = $mainMod, P, pseudo,
#master layout
bind = $mainMod, Tab, layoutmsg, swapwithmaster
bind = $mainMod SHIFT, Tab, layoutmsg, addmaster
bind = $mainMod CTRL, Tab, layoutmsg, removemaster
bind = $mainMod CTRL SHIFT, Tab, layoutmsg, rollnext
# MOVE FOCUS with mainMod + vim keys
bind = $mainMod, H, movefocus, l
bind = $mainMod, L, movefocus, r
@@ -116,6 +129,15 @@ bind = $mainMod CTRL SHIFT, 8, movetoworkspacesilent, 8
bind = $mainMod CTRL SHIFT, 9, movetoworkspacesilent, 9
bind = $mainMod CTRL SHIFT, 0, movetoworkspacesilent, 10
bind = $mainMod, Z, changegroupactive, f
bind = $mainMod SHIFT, Z, changegroupactive, b
bind = $mainMod CTRL, Z, togglegroup
bind = $mainMod ALT_L, H, movewindoworgroup, l
bind = $mainMod ALT_L, J, movewindoworgroup, d
bind = $mainMod ALT_L, K, movewindoworgroup, u
bind = $mainMod ALT_L, L, movewindoworgroup, r
# MOVE/RESIZE WINDOWS with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
@@ -134,6 +156,10 @@ bindel = SHIFT ,XF86AudioRaiseVolume, exec, swayosd-client --input-volume raise
bindel = SHIFT ,XF86AudioLowerVolume, exec, swayosd-client --input-volume lower --max-volume 150
bindel = SHIFT ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle
# Zoom control
bind = $mainMod, M, exec, hyprctl keyword cursor:zoom_factor 2
bind = $mainMod SHIFT, M, exec, hyprctl keyword cursor:zoom_factor 1
# Requires playerctl
bindl = , XF86AudioNext, exec, swayosd-client --playerctl next
bindl = , XF86AudioPause, exec, swayosd-client --playerctl play-pause
@@ -141,4 +167,9 @@ bindl = , XF86AudioPlay, exec, swayosd-client --playerctl play-pause
bindl = , XF86AudioPrev, exec, swayosd-client --playerctl previous
bind = , Print, exec, grimblast --notify copy output
bind = SHIFT, Print, exec, grimblast --notify edit output
bind = $mainMod, Print, exec, grimblast --notify edit area
bind = ALT_L, Print, exec, grimblast --notify copy screen
bind = ALT_L SHIFT, Print, exec, grimblast --notify edit screen
bind = SHIFT, Print, exec, uwsm app -- kitty --app-id=scrrec wf-recorder -f ~/Videos/scrrec.mkv -y -g "$(slurp)"

View File

@@ -0,0 +1,72 @@
#####################################
### ROSÉ PINE HYPRLAND THEME ###
#####################################
# Base colors
$base = rgb(191724)
$baseAlpha = 191724
$surface = rgb(1f1d2e)
$surfaceAlpha = 1f1d2e
$overlay = rgb(26233a)
$overlayAlpha = 26233a
$muted = rgb(6e6a86)
$mutedAlpha = 6e6a86
$subtle = rgb(908caa)
$subtleAlpha = 908caa
$text = rgb(e0def4)
$textAlpha = e0def4
# Accent colors
$love = rgb(eb6f92)
$loveAlpha = eb6f92
$gold = rgb(f6c177)
$goldAlpha = f6c177
$rose = rgb(ebbcba)
$roseAlpha = ebbcba
$pine = rgb(31748f)
$pineAlpha = 31748f
$foam = rgb(9ccfd8)
$foamAlpha = 9ccfd8
$iris = rgb(c4a7e7)
$irisAlpha = c4a7e7
# Highlight variants
$highlight_low = rgb(21202e)
$highlight_lowAlpha = 21202e
$highlight_med = rgb(403d52)
$highlight_medAlpha = 403d52
$highlight_high = rgb(524f67)
$highlight_highAlpha = 524f67
# Theme-specific definitions
$splash_text = rgba($textAlphaee)
$dec_shadow = rgba($overlayAlpha88)
# Border configurations
$border_active = rgba($roseAlphaff) rgba($irisAlphaff) 45deg
$border_inactive = rgba($mutedAlphabb) rgba($subtleAlphabb) 45deg
$border_nogroup_active = rgba($pineAlphaff) rgba($foamAlphaff) 45deg
$border_nogroup_inactive = rgba($pineAlphaaa) rgba($foamAlphaaa) 45deg
$border_group_active = rgba($irisAlphaff) rgba($loveAlphaff) 45deg
$border_group_inactive = rgba($mutedAlphadd) rgba($subtleAlphadd) 45deg
$border_grouplocked_active = rgba($goldAlphaff) rgba($roseAlphaff) 45deg
$border_grouplocked_inactive = rgba($goldAlphaaa) rgba($roseAlphaaa) 45deg
# Group bar configurations
$groupbar_text = rgba($baseAlphaff)
$groupbar_active = rgba($roseAlphaff) rgba($irisAlphaaa)
$groupbar_inactive = rgba($mutedAlphaee) rgba($subtleAlphaaa)
$groupbar_grouplocked_active = rgba($goldAlphaff) rgba($loveAlphaff)
$groupbar_grouplocked_inactive = rgba($goldAlphaaa) rgba($loveAlphaaa)

View File

@@ -0,0 +1 @@
rose-pine.conf

View File

@@ -0,0 +1,18 @@
##################################
### TOKYO NIGHT HYPRLAND THEME ###
##################################
$splash_text = rgba(a9b1d6ee)
$dec_shadow = rgba(737aa2ee)
$border_active = rgba(9ece6aff) rgba(7aa2f7ff) 45deg
$border_inactive = rgba(9d7cd8aa) rgba(7aa2f7ff) 45deg
$border_nogroup_active = rgba(7aa2f7ff) rgba(89ddffff) 45deg
$border_nogroup_inactive = rgba(7aa2f7aa) rgba(89ddffaa) 45deg
$border_group_active = rgba(ff9e64ff) rgba(ff0e64ff) 45deg
$border_group_inactive = rgba(ff9e64aa) rgba(ff0e64aa) 45deg
$border_grouplocked_active = rgba(ff007cff) rgba(f7767eff) 45deg
$border_grouplocked_inactive = rgba(ff007caa) rgba(f7767eff) 45deg
$groupbar_text = rgba(1f2335ff)
$groupbar_active = rgba(ff9e64ee) rgba(ff9e6499)
$groupbar_inactive = rgba(ff9e64bb) rgba(ff9e6499)
$groupbar_grouplocked_active = rgba(ff007cee) rgba(ff007c99)
$groupbar_grouplocked_inactive = rgba(ff007cbb) rgba(ff007c99)

View File

@@ -29,11 +29,11 @@ listener {
}
listener {
timeout = 1800 # 30min
timeout = 600 # 10min
on-timeout = loginctl lock-session # lock screen when timeout has passed
}
listener {
timeout = 3600 # 60min
on-timeout = systemctl hibernate # hibernate and suspend pc
timeout = 1200 # 20min
on-timeout = systemctl suspend # suspend pc
}

View File

@@ -15,6 +15,12 @@ source = ~/.config/hypr/workspaces.conf
source = ~/.config/hypr/conf.d/autostart.conf
##############
### COLORS ###
##############
source = ~/.config/hypr/conf.d/theme.conf
#############################
### ENVIRONMENT VARIABLES ###
#############################
@@ -30,13 +36,15 @@ source = ~/.config/hypr/conf.d/autostart.conf
# https://wiki.hyprland.org/Configuring/Variables/#general
general {
gaps_in = 5
gaps_out = 10
gaps_out = 5,5,5,5
border_size = 1
border_size = 2
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
col.active_border = $border_active
col.inactive_border = $border_inactive
col.nogroup_border = $border_nogroup_inactive
col.nogroup_border_active = $border_nogroup_active
# Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = false
@@ -44,9 +52,26 @@ general {
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false
layout = dwindle
layout = master
}
render {
new_render_scheduling = true
}
cursor {
hide_on_key_press = true # Hide cursor when typing
persistent_warps = true # Cursor returns to last position in window
warp_on_change_workspace = true # Move cursor to focused window on workspace switch
inactive_timeout = 0
zoom_factor = 1.0
zoom_rigid = false
enable_hyprcursor = true
sync_gsettings_theme = true
}
# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
rounding = 5
@@ -56,6 +81,7 @@ decoration {
inactive_opacity = 1.0
# Dim inactive windows
dim_modal = true
dim_inactive = true
dim_strength = 0.1
@@ -63,7 +89,7 @@ decoration {
enabled = false
range = 4
render_power = 3
color = rgba(1a1a1aee)
color = $dec_shadow
}
# https://wiki.hyprland.org/Configuring/Variables/#blur
@@ -104,6 +130,7 @@ animations {
animation = workspaces, 1, 1.94, almostLinear, fade
animation = workspacesIn, 1, 1.21, almostLinear, fade
animation = workspacesOut, 1, 1.94, almostLinear, fade
animation = specialWorkspace, 1, 1.5, easeOutQuint, slidevert
}
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
@@ -120,11 +147,23 @@ animations {
dwindle {
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this
smart_split = true
}
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
new_status = master
orientation = center
center_master_fallback = left
slave_count_for_center_master = 4
mfact = 0.60
new_status = slave
new_on_top = true
new_on_active = after
inherit_fullscreen = true
allow_small_split = false
special_scale_factor = 0.8
drop_at_cursor = true
}
# https://wiki.hyprland.org/Configuring/Variables/#misc
@@ -132,10 +171,12 @@ misc {
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
vrr = 2
vfr = true
mouse_move_enables_dpms = true
key_press_enables_dpms = true
layers_hog_keyboard_focus = true
mouse_move_focuses_monitor = true
col.splash = $splash_text
}
#############
@@ -144,14 +185,15 @@ misc {
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
kb_layout = eu
kb_options = caps:escape_shifted_capslock, compose:102
kb_layout = ultimatekeys
kb_options = caps:escape_shifted_capslock
numlock_by_default = true
repeat_rate = 25
repeat_delay = 600
follow_mouse = 1
mouse_refocus = true
float_switch_override_focus = 1
float_switch_override_focus = 2
special_fallthrough = true
touchpad {
disable_while_typing = true
scroll_factor = 1.0
@@ -160,11 +202,6 @@ input {
}
# 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 {
@@ -178,6 +215,51 @@ gestures {
source = ~/.config/hypr/conf.d/keybinds.conf
##############
### Groups ###
##############
group {
auto_group = true
insert_after_current = true
focus_removed_window = true
drag_into_group = 1
merge_groups_on_drag = true
merge_groups_on_groupbar = true
merge_floated_into_tiled_on_groupbar = true
group_on_movetoworkspace = false
col.border_active = $border_group_active
col.border_inactive = $border_group_inactive
col.border_locked_active = $border_grouplocked_active
col.border_locked_inactive = $border_grouplocked_active
groupbar{
enabled = true
height = 12
font_family = InconsolataGo Nerd Font Mono
font_size = 8
font_weight_active = semibold
font_weight_inactive = normal
stacked = false
gradients = true
gradient_rounding = 5
indicator_height = 0
rounding = 0
gradient_round_only_edges = true
text_color = $groupbar_text
col.active = $groupbar_active
col.inactive = $groupbar_inactive
col.locked_active = $groupbar_grouplocked_active
col.locked_inactive = $groupbar_grouplocked_inactive
gaps_out = 0
gaps_in = 0
render_titles = true
scrolling = true
priority = 3
}
}
##############################
### WINDOWS AND WORKSPACES ###
##############################
@@ -192,16 +274,53 @@ source = ~/.config/hypr/conf.d/keybinds.conf
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# Ignore maximize requests from apps. You'll probably like this.
windowrulev2 = suppressevent maximize, class:.*
windowrule = suppressevent maximize, class:.*
# Fix some dragging issues with XWayland
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
## ========== Communication ==========
# Mumble & Discord & TeamSpeak
windowrulev2 = workspace 2, class:^(info\.mumble\.Mumble|discord|TeamSpeak|vesktop)$
# Signal & Element
windowrule = workspace 1, class:^(signal|Element)$
## ========== Multimedia ==========
windowrule = workspace 10, class:Spotify
### ========== Development ==========
#windowrulev2 = float, class:jetbrains-webstorm, title:Welcome to WebStorm
#windowrulev2 = size 1080 720, class:jetbrains-webstorm, title:Welcome to WebStorm
## ========== Gaming ==========
# Steam & Battle.net & Lutris
windowrule = workspace 3, class:^(steam|battle\.net\.exe|net\.lutris\.Lutris)$
## ========== System ==========
windowrule = float, class:org.keepassxc.KeePassXC
windowrule = noscreenshare, class:org.keepassxc.KeePassXC
windowrule = size 60%, 60%, class:org.keepassxc.KeePassXC
windowrule = float, class:com.saivert.pwvucontrol
windowrule = float, class:scrrec
windowrule = pin, class:scrrec
windowrule = idleinhibit always, class:scrrec
windowrule = rounding 10, class:scrrec
windowrule = opacity 0.6, class:scrrec
windowrule = noborder, class:scrrec
windowrule = size 300 100, class:scrrec
windowrule = move 1% 1%, class:scrrec
windowrule = monitor 0, class:scrrec
windowrule = noinitialfocus, class:scrrec
windowrule = float, class:com.gabm.satty
windowrule = size >700 >400, class:com.gabm.satty
# Blur swaync
layerrule = blur, swaync-control-center
layerrule = blur, swaync-notification-window
layerrule = ignorezero, swaync-control-center
layerrule = ignorezero, swaync-notification-window
layerrule = ignorealpha, swaync-control-center
layerrule = ignorealpha, swaync-notification-window
#layerrule = blur, swaync-control-center
#layerrule = blur, swaync-notification-window
#layerrule = ignorezero, swaync-control-center
#layerrule = ignorezero, swaync-notification-window
#layerrule = ignorealpha, swaync-control-center
#layerrule = ignorealpha, swaync-notification-window

View File

@@ -0,0 +1,66 @@
general {
hide_cursor = true
ignore_empty_input = true
}
#auth {
# just leave the defaults
#}
##################
### BACKGROUND ###
##################
background {
monitor =
path = /home/mpuchstein/Pictures/2736x1824/1189063.jpg
}
#############
### INPUT ###
#############
input-field {
size = 250, 60
outline_thickness = 2
dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
dots_spacing = 0.35 # Scale of dots' absolute size, 0.0 - 1.0
dots_center = true
outer_color = rgba(0, 0, 0, 0)
inner_color = rgba(0, 0, 0, 0.2)
font_color = rgba(255, 0, 132, 0.8)
fade_on_empty = false
rounding = -1
check_color = rgb(204, 136, 34)
placeholder_text =
hide_input = false
position = 0, -200
halign = center
valign = center
}
############
### DATA ###
############
label {
monitor =
text = cmd[update:1000] echo "$(date +"%A, %B %d")"
color = rgba(242, 243, 244, 0.75)
font_size = 22
font_family = Inconsolata Nerd Font Mono
position = 0, 300
halign = center
valign = center
}
############
### TIME ###
############
label {
monitor =
text = cmd[update:1000] echo "$(date +"%-I:%M")"
color = rgba(242, 243, 244, 0.75)
font_size = 95
font_family = Inconsolata Nerd Font Mono Bold
position = 0, 200
halign = center
valign = center
}

View File

@@ -1,8 +0,0 @@
splash = true
splash_offset = 2.0
ipc = true
preload = /home/mpuchstein/Pictures/wallpaper/1920x1080/widescreen/138 - 1jb5suO.jpg
wallpaper = DP-2, /home/mpuchstein/Pictures/wallpaper/1920x1080/widescreen/138 - 1jb5suO.jpg
preload = /home/mpuchstein/Pictures/wallpaper/1920x1080/widescreen/97 - YDJuRTa.jpg
wallpaper = DP-3, /home/mpuchstein/Pictures/wallpaper/1920x1080/widescreen/97 - YDJuRTa.jpg

View File

@@ -0,0 +1,6 @@
splash = true
splash_offset = 2.0
ipc = true
preload = /home/mpuchstein/Pictures/wallpaper/1920x1080/widescreen/138 - 1jb5suO.jpg
wallpaper = eDP-1, /home/mpuchstein/Pictures/wallpaper/1920x1080/widescreen/138 - 1jb5suO.jpg

View File

@@ -0,0 +1,6 @@
splash = true
splash_offset = 2.0
ipc = true
preload = /home/mpuchstein/Pictures/2736x1824/femdemfor3.png
wallpaper = eDP-1, /home/mpuchstein/Pictures/2736x1824/femdemfor3.png

View File

@@ -0,0 +1,9 @@
splash = true
splash_offset = 2.0
ipc = true
preload = /home/mpuchstein/Pictures/wallpaper/1920x1080/rosepinesuccubus10.png
preload = /home/mpuchstein/Pictures/wallpaper/1920x1080/rosepinesuccubus3.png
preload = /home/mpuchstein/Pictures/wallpaper/1920x1080/rosepineskull.png
wallpaper = DP-1, /home/mpuchstein/Pictures/wallpaper/1920x1080/rosepinesuccubus10.png
wallpaper = DP-2, /home/mpuchstein/Pictures/wallpaper/1920x1080/rosepinesuccubus3.png

View File

@@ -0,0 +1,43 @@
max-gamma = 150
profile {
time = 7:30
identity = true
gamma = 1
}
profile {
time = 18:00
temperature = 5000
gamma = 0.90
}
profile {
time = 19:00
temperature = 4500
gamma = 0.90
}
profile {
time = 20:00
temperature = 4000
gamma = 0.90
}
profile {
time = 21:00
temperature = 3500
gamma = 0.80
}
profile {
time = 22:00
temperature = 3000
gamma = 0.80
}
profile {
time = 23:00
temperature = 2500
gamma = 0.80
}

View File

@@ -1,4 +1,13 @@
# Generated by nwg-displays on 2025-03-19 at 21:35:50. Do not edit manually.
monitor=DP-2,1920x1080@60.0,0x0,1.0
monitor=DP-3,1920x1080@144.0,1920x0,1.0
monitorv2 {
output = DP-1
mode = 1920x1080@60
position = 0x0
scale = 1
}
monitorv2 {
output = DP-2
mode = 1920x1080@144
position = 1920x0
scale = 1
vrr = 1
}

View File

@@ -1,4 +0,0 @@
# Generated by nwg-displays on 2025-03-19 at 21:35:50. Do not edit manually.
monitor=DP-2,1920x1080@60.0,0x0,1.0
monitor=DP-3,1920x1080@144.0,1920x0,1.0

View File

@@ -1,12 +1,12 @@
# Generated by nwg-displays on 2025-03-19 at 21:34:19. Do not edit manually.
# Generated by nwg-displays on 2025-08-23 at 18:21:52. Do not edit manually.
workspace=1,monitor:DP-2,default:true
workspace=2,monitor:DP-2
workspace=3,monitor:DP-2
workspace=4,monitor:DP-2
workspace=5,monitor:DP-2
workspace=6,monitor:DP-3,default:true
workspace=7,monitor:DP-3
workspace=8,monitor:DP-3
workspace=9,monitor:DP-3
workspace=10,monitor:DP-3
workspace=1,monitor:DP-1,default:true
workspace=2,monitor:DP-1
workspace=3,monitor:DP-1
workspace=4,monitor:DP-1
workspace=5,monitor:DP-1
workspace=6,monitor:DP-2,default:true
workspace=7,monitor:DP-2
workspace=8,monitor:DP-2
workspace=9,monitor:DP-2
workspace=10,monitor:DP-2

View File

@@ -1,12 +0,0 @@
# Generated by nwg-displays on 2025-03-19 at 21:34:19. Do not edit manually.
workspace=1,monitor:DP-2,default:true
workspace=2,monitor:DP-2
workspace=3,monitor:DP-2
workspace=4,monitor:DP-2
workspace=5,monitor:DP-2
workspace=6,monitor:DP-3,default:true
workspace=7,monitor:DP-3
workspace=8,monitor:DP-3
workspace=9,monitor:DP-3
workspace=10,monitor:DP-3

View File

@@ -0,0 +1,53 @@
## name: Rosé Pine
## author: mvllow
## license: MIT
## upstream: https://github.com/rose-pine/kitty/blob/main/dist/rose-pine.conf
## blurb: All natural pine, faux fur and a bit of soho vibes for the classy minimalist
foreground #e0def4
background #191724
selection_foreground #e0def4
selection_background #403d52
cursor #524f67
cursor_text_color #e0def4
url_color #c4a7e7
active_tab_foreground #e0def4
active_tab_background #26233a
inactive_tab_foreground #6e6a86
inactive_tab_background #191724
# black
color0 #26233a
color8 #6e6a86
# red
color1 #eb6f92
color9 #eb6f92
# green
color2 #31748f
color10 #31748f
# yellow
color3 #f6c177
color11 #f6c177
# blue
color4 #9ccfd8
color12 #9ccfd8
# magenta
color5 #c4a7e7
color13 #c4a7e7
# cyan
color6 #ebbcba
color14 #ebbcba
# white
color7 #e0def4
color15 #e0def4

2712
.config/kitty/kitty.conf Normal file

File diff suppressed because it is too large Load Diff

2712
.config/kitty/kitty.conf.bak Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -70,7 +70,7 @@
# video outputs, but should work well with default settings on most systems.
# If performance or energy usage is an issue, forcing the vdpau or vaapi VOs
# may or may not help.
#hwdec=auto
hwdec=auto
##################
# audio settings #

View File

@@ -0,0 +1,20 @@
{
"neodev": {
"library": {
"enabled": true,
"plugins": true
}
},
"neoconf": {
"plugins": {
"lua_ls": {
"enabled": true
}
}
},
"lspconfig": {
"lua_ls": {
"Lua.format.enable": false
}
}
}

View File

@@ -0,0 +1,7 @@
column_width = 120
line_endings = "Unix"
indent_type = "Spaces"
indent_width = 2
quote_style = "AutoPreferDouble"
call_parentheses = "None"
collapse_simple_statement = "Always"

34
.config/nvim/README.md Normal file
View File

@@ -0,0 +1,34 @@
# AstroNvim Template
**NOTE:** This is for AstroNvim v5+
A template for getting started with [AstroNvim](https://github.com/AstroNvim/AstroNvim)
## 🛠️ Installation
#### Make a backup of your current nvim and shared folder
```shell
mv ~/.config/nvim ~/.config/nvim.bak
mv ~/.local/share/nvim ~/.local/share/nvim.bak
mv ~/.local/state/nvim ~/.local/state/nvim.bak
mv ~/.cache/nvim ~/.cache/nvim.bak
```
#### Create a new user repository from this template
Press the "Use this template" button above to create a new repository to store your user configuration.
You can also just clone this repository directly if you do not want to track your user configuration in GitHub.
#### Clone the repository
```shell
git clone https://github.com/<your_user>/<your_repository> ~/.config/nvim
```
#### Start Neovim
```shell
nvim
```

19
.config/nvim/init.lua Normal file
View File

@@ -0,0 +1,19 @@
-- This file simply bootstraps the installation of Lazy.nvim and then calls other files for execution
-- This file doesn't necessarily need to be touched, BE CAUTIOUS editing this file and proceed at your own risk.
local lazypath = vim.env.LAZY or vim.fn.stdpath "data" .. "/lazy/lazy.nvim"
if not (vim.env.LAZY or (vim.uv or vim.loop).fs_stat(lazypath)) then
-- stylua: ignore
vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath })
end
vim.opt.rtp:prepend(lazypath)
-- validate that lazy is available
if not pcall(require, "lazy") then
-- stylua: ignore
vim.api.nvim_echo({ { ("Unable to load lazy from: %s\n"):format(lazypath), "ErrorMsg" }, { "Press any key to exit...", "MoreMsg" } }, true, {})
vim.fn.getchar()
vim.cmd.quit()
end
require "lazy_setup"
require "polish"

View File

@@ -0,0 +1,34 @@
-- AstroCommunity: import any community modules here
-- We import this file in `lazy_setup.lua` before the `plugins/` folder.
-- This guarantees that the specs are processed before any user plugins.
---@type LazySpec
return {
"AstroNvim/astrocommunity",
{ import = "astrocommunity.colorscheme.catppuccin" },
-- these packs can set up things such as Treesitter, Language Servers, additional language specific plugins, and more!
{ import = "astrocommunity.snippet.nvim-snippets" },
{ import = "astrocommunity.pack.lua" },
{ import = "astrocommunity.pack.hyprlang" },
{ import = "astrocommunity.pack.java" },
{ import = "astrocommunity.pack.rust" },
{ import = "astrocommunity.pack.go" },
{ import = "astrocommunity.pack.docker" },
{ import = "astrocommunity.pack.json" },
{ import = "astrocommunity.pack.html-css" },
{ import = "astrocommunity.pack.sql" },
{ import = "astrocommunity.pack.typescript" },
{ import = "astrocommunity.pack.toml" },
{ import = "astrocommunity.pack.xml" },
{ import = "astrocommunity.pack.yaml" },
{ import = "astrocommunity.pack.yaml" },
{ import = "astrocommunity.pack.python" },
{ import = "astrocommunity.pack.kotlin" },
{ import = "astrocommunity.pack.php" },
{ import = "astrocommunity.markdown-and-latex.vimtex" },
{ import = "astrocommunity.completion.cmp-latex-symbols" },
{ import = "astrocommunity.keybinding.nvcheatsheet-nvim" },
-- import/override with your plugins folder
}

View File

@@ -0,0 +1,32 @@
require("lazy").setup({
{
"AstroNvim/AstroNvim",
version = "^5", -- Remove version tracking to elect for nightly AstroNvim
import = "astronvim.plugins",
opts = { -- AstroNvim options must be set here with the `import` key
mapleader = " ", -- This ensures the leader key must be configured before Lazy is set up
maplocalleader = ",", -- This ensures the localleader key must be configured before Lazy is set up
icons_enabled = true, -- Set to false to disable icons (if no Nerd Font is available)
pin_plugins = nil, -- Default will pin plugins when tracking `version` of AstroNvim, set to true/false to override
update_notifications = true, -- Enable/disable notification about running `:Lazy update` twice to update pinned plugins
},
},
{ import = "community" },
{ import = "plugins" },
} --[[@as LazySpec]], {
-- Configure any other `lazy.nvim` configuration options here
install = { colorscheme = { "astrotheme", "habamax" } },
ui = { backdrop = 100 },
performance = {
rtp = {
-- disable some rtp plugins, add more to your liking
disabled_plugins = {
"gzip",
"netrwPlugin",
"tarPlugin",
"tohtml",
"zipPlugin",
},
},
},
} --[[@as LazyConfig]])

View File

@@ -0,0 +1,83 @@
-- AstroCore provides a central place to modify mappings, vim options, autocommands, and more!
-- Configuration documentation can be found with `:h astrocore`
-- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`)
-- as this provides autocomplete and documentation while editing
---@type LazySpec
return {
"AstroNvim/astrocore",
---@type AstroCoreOpts
opts = {
-- Configure core features of AstroNvim
features = {
large_buf = { size = 1024 * 256, lines = 10000 }, -- set global limits for large files for disabling features like treesitter
autopairs = true, -- enable autopairs at start
cmp = true, -- enable completion at start
diagnostics = { virtual_text = true, virtual_lines = false }, -- diagnostic settings on startup
highlighturl = true, -- highlight URLs at start
notifications = true, -- enable notifications at start
},
-- Diagnostics configuration (for vim.diagnostics.config({...})) when diagnostics are on
diagnostics = {
virtual_text = true,
underline = true,
},
-- passed to `vim.filetype.add`
filetypes = {
-- see `:h vim.filetype.add` for usage
extension = {
foo = "fooscript",
},
filename = {
[".foorc"] = "fooscript",
},
pattern = {
[".*/etc/foo/.*"] = "fooscript",
},
},
-- vim options can be configured here
options = {
opt = { -- vim.opt.<key>
relativenumber = true, -- sets vim.opt.relativenumber
number = true, -- sets vim.opt.number
spell = false, -- sets vim.opt.spell
signcolumn = "yes", -- sets vim.opt.signcolumn to yes
wrap = false, -- sets vim.opt.wrap
},
g = { -- vim.g.<key>
-- configure global vim variables (vim.g)
-- NOTE: `mapleader` and `maplocalleader` must be set in the AstroNvim opts or before `lazy.setup`
-- This can be found in the `lua/lazy_setup.lua` file
},
},
-- Mappings can be configured through AstroCore as well.
-- NOTE: keycodes follow the casing in the vimdocs. For example, `<Leader>` must be capitalized
mappings = {
-- first key is the mode
n = {
-- second key is the lefthand side of the map
-- navigate buffer tabs
["]b"] = { function() require("astrocore.buffer").nav(vim.v.count1) end, desc = "Next buffer" },
["[b"] = { function() require("astrocore.buffer").nav(-vim.v.count1) end, desc = "Previous buffer" },
-- mappings seen under group name "Buffer"
["<Leader>bd"] = {
function()
require("astroui.status.heirline").buffer_picker(
function(bufnr) require("astrocore.buffer").close(bufnr) end
)
end,
desc = "Close buffer from tabline",
},
-- tables with just a `desc` key will be registered with which-key if it's installed
-- this is useful for naming menus
-- ["<Leader>b"] = { desc = "Buffers" },
-- setting a mapping to false will disable it
-- ["<C-S>"] = false,
},
},
},
}

View File

@@ -0,0 +1,103 @@
-- AstroLSP allows you to customize the features in AstroNvim's LSP configuration engine
-- Configuration documentation can be found with `:h astrolsp`
-- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`)
-- as this provides autocomplete and documentation while editing
---@type LazySpec
return {
"AstroNvim/astrolsp",
---@type AstroLSPOpts
opts = {
-- Configuration table of features provided by AstroLSP
features = {
codelens = true, -- enable/disable codelens refresh on start
inlay_hints = false, -- enable/disable inlay hints on start
semantic_tokens = true, -- enable/disable semantic token highlighting
},
-- customize lsp formatting options
formatting = {
-- control auto formatting on save
format_on_save = {
enabled = true, -- enable or disable format on save globally
allow_filetypes = { -- enable format on save for specified filetypes only
-- "go",
},
ignore_filetypes = { -- disable format on save for specified filetypes
-- "python",
},
},
disabled = { -- disable formatting capabilities for the listed language servers
-- disable lua_ls formatting capability if you want to use StyLua to format your lua code
-- "lua_ls",
},
timeout_ms = 1000, -- default format timeout
-- filter = function(client) -- fully override the default formatting function
-- return true
-- end
},
-- enable servers that you already have installed without mason
servers = {
-- "pyright"
},
-- customize language server configuration options passed to `lspconfig`
---@diagnostic disable: missing-fields
config = {
-- clangd = { capabilities = { offsetEncoding = "utf-8" } },
},
-- customize how language servers are attached
handlers = {
-- a function without a key is simply the default handler, functions take two parameters, the server name and the configured options table for that server
-- function(server, opts) require("lspconfig")[server].setup(opts) end
-- the key is the server that is being setup with `lspconfig`
-- rust_analyzer = false, -- setting a handler to false will disable the set up of that language server
-- pyright = function(_, opts) require("lspconfig").pyright.setup(opts) end -- or a custom handler function can be passed
},
-- Configure buffer local auto commands to add when attaching a language server
autocmds = {
-- first key is the `augroup` to add the auto commands to (:h augroup)
lsp_codelens_refresh = {
-- Optional condition to create/delete auto command group
-- can either be a string of a client capability or a function of `fun(client, bufnr): boolean`
-- condition will be resolved for each client on each execution and if it ever fails for all clients,
-- the auto commands will be deleted for that buffer
cond = "textDocument/codeLens",
-- cond = function(client, bufnr) return client.name == "lua_ls" end,
-- list of auto commands to set
{
-- events to trigger
event = { "InsertLeave", "BufEnter" },
-- the rest of the autocmd options (:h nvim_create_autocmd)
desc = "Refresh codelens (buffer)",
callback = function(args)
if require("astrolsp").config.features.codelens then vim.lsp.codelens.refresh { bufnr = args.buf } end
end,
},
},
},
-- mappings to be set up on attaching of a language server
mappings = {
n = {
-- a `cond` key can provided as the string of a server capability to be required to attach, or a function with `client` and `bufnr` parameters from the `on_attach` that returns a boolean
gD = {
function() vim.lsp.buf.declaration() end,
desc = "Declaration of current symbol",
cond = "textDocument/declaration",
},
["<Leader>uY"] = {
function() require("astrolsp.toggles").buffer_semantic_tokens() end,
desc = "Toggle LSP semantic highlight (buffer)",
cond = function(client)
return client.supports_method "textDocument/semanticTokens/full" and vim.lsp.semantic_tokens ~= nil
end,
},
},
},
-- A custom `on_attach` function to be run after the default `on_attach` function
-- takes two parameters `client` and `bufnr` (`:h lspconfig-setup`)
on_attach = function(client, bufnr)
-- this would disable semanticTokensProvider for all clients
-- client.server_capabilities.semanticTokensProvider = nil
end,
},
}

View File

@@ -0,0 +1,37 @@
-- AstroUI provides the basis for configuring the AstroNvim User Interface
-- Configuration documentation can be found with `:h astroui`
-- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`)
-- as this provides autocomplete and documentation while editing
---@type LazySpec
return {
"AstroNvim/astroui",
---@type AstroUIOpts
opts = {
-- change colorscheme
colorscheme = "catppuccin",
-- AstroUI allows you to easily modify highlight groups easily for any and all colorschemes
highlights = {
init = { -- this table overrides highlights in all themes
-- Normal = { bg = "#000000" },
},
astrodark = { -- a table of overrides/changes when applying the astrotheme theme
-- Normal = { bg = "#000000" },
},
},
-- Icons can be configured throughout the interface
icons = {
-- configure the loading of the lsp in the status line
LSPLoading1 = "",
LSPLoading2 = "",
LSPLoading3 = "",
LSPLoading4 = "",
LSPLoading5 = "",
LSPLoading6 = "",
LSPLoading7 = "",
LSPLoading8 = "",
LSPLoading9 = "",
LSPLoading10 = "",
},
},
}

View File

@@ -0,0 +1,28 @@
if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE
-- Customize Mason
---@type LazySpec
return {
-- use mason-tool-installer for automatically installing Mason packages
{
"WhoIsSethDaniel/mason-tool-installer.nvim",
-- overrides `require("mason-tool-installer").setup(...)`
opts = {
-- Make sure to use the names found in `:Mason`
ensure_installed = {
-- install language servers
"lua-language-server",
-- install formatters
"stylua",
-- install debuggers
"debugpy",
-- install any other package
"tree-sitter-cli",
},
},
},
}

View File

@@ -0,0 +1,24 @@
if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE
-- Customize None-ls sources
---@type LazySpec
return {
"nvimtools/none-ls.nvim",
opts = function(_, opts)
-- opts variable is the default configuration table for the setup function call
-- local null_ls = require "null-ls"
-- Check supported formatters and linters
-- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/formatting
-- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics
-- Only insert new sources, do not replace the existing ones
-- (If you wish to replace, use `opts.sources = {}` instead of the `list_insert_unique` function)
opts.sources = require("astrocore").list_insert_unique(opts.sources, {
-- Set a formatter
-- null_ls.builtins.formatting.stylua,
-- null_ls.builtins.formatting.prettier,
})
end,
}

View File

@@ -0,0 +1,15 @@
if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE
-- Customize Treesitter
---@type LazySpec
return {
"nvim-treesitter/nvim-treesitter",
opts = {
ensure_installed = {
"lua",
"vim",
-- add more arguments for adding more treesitter parsers
},
},
}

View File

@@ -0,0 +1,125 @@
-- You can also add or configure plugins by creating files in this `plugins/` folder
-- PLEASE REMOVE THE EXAMPLES YOU HAVE NO INTEREST IN BEFORE ENABLING THIS FILE
-- Here are some examples:
---@type LazySpec
return {
-- == Examples of Adding Plugins ==
"andweeb/presence.nvim",
{
"ray-x/lsp_signature.nvim",
event = "BufRead",
config = function() require("lsp_signature").setup() end,
},
-- == Examples of Overriding Plugins ==
-- customize dashboard options
{
"folke/snacks.nvim",
opts = {
dashboard = {
preset = {
header = table.concat({
" █████ ███████ ████████ ██████ ██████ ",
"██ ██ ██ ██ ██ ██ ██ ██",
"███████ ███████ ██ ██████ ██ ██",
"██ ██ ██ ██ ██ ██ ██ ██",
"██ ██ ███████ ██ ██ ██ ██████ ",
"",
"███  ██ ██  ██ ██ ███  ███",
"████  ██ ██  ██ ██ ████  ████",
"██ ██  ██ ██  ██ ██ ██ ████ ██",
"██  ██ ██  ██  ██  ██ ██  ██  ██",
"██   ████   ████   ██ ██  ██",
}, "\n"),
},
},
},
},
-- You can disable default plugins as follows:
--{ "max397574/better-escape.nvim", enabled = false },
-- You can also easily customize additional setup of plugins that is outside of the plugin's setup call
{
"L3MON4D3/LuaSnip",
config = function(plugin, opts)
require "astronvim.plugins.configs.luasnip"(plugin, opts) -- include the default astronvim config that calls the setup call
-- add more custom luasnip configuration such as filetype extend or custom snippets
local luasnip = require "luasnip"
luasnip.filetype_extend("javascript", { "javascriptreact" })
end,
},
{
"windwp/nvim-autopairs",
config = function(plugin, opts)
require "astronvim.plugins.configs.nvim-autopairs"(plugin, opts) -- include the default astronvim config that calls the setup call
-- add more custom autopairs configuration such as custom rules
local npairs = require "nvim-autopairs"
local Rule = require "nvim-autopairs.rule"
local cond = require "nvim-autopairs.conds"
npairs.add_rules(
{
Rule("$", "$", { "tex", "latex" })
-- don't add a pair if the next character is %
:with_pair(cond.not_after_regex "%%")
-- don't add a pair if the previous character is xxx
:with_pair(
cond.not_before_regex("xxx", 3)
)
-- don't move right when repeat character
:with_move(cond.none())
-- don't delete if the next character is xx
:with_del(cond.not_after_regex "xx")
-- disable adding a newline when you press <cr>
:with_cr(cond.none()),
},
-- disable for .vim files, but it work for another filetypes
Rule("a", "a", "-vim")
)
end,
},
{
"obsidian-nvim/obsidian.nvim",
version = "*", -- recommended, use latest release instead of latest commit
lazy = true,
ft = "markdown",
-- Replace the above line with this if you only want to load obsidian.nvim for markdown files in your vault:
-- event = {
-- -- If you want to use the home shortcut '~' here you need to call 'vim.fn.expand'.
-- -- E.g. "BufReadPre " .. vim.fn.expand "~" .. "/my-vault/*.md"
-- -- refer to `:h file-pattern` for more examples
-- "BufReadPre path/to/my-vault/*.md",
-- "BufNewFile path/to/my-vault/*.md",
-- },
dependencies = {
-- Required.
"nvim-lua/plenary.nvim",
-- see above for full list of optional dependencies ☝️
},
---@module 'obsidian'
---@type obsidian.config.ClientOpts
opts = {
workspaces = {
{
name = "uni",
path = "~/Documents/uni",
},
},
-- Optional, completion of wiki links, local markdown links, and tags using nvim-cmp.
completion = {
-- Enables completion using nvim_cmp
nvim_cmp = false,
-- Enables completion using blink.cmp
blink = true,
-- Trigger completion at 2 chars.
min_chars = 2,
},
},
},
}

View File

@@ -0,0 +1,5 @@
if true then return end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE
-- This will run last in the setup process.
-- This is just pure lua so anything that doesn't
-- fit in the normal config locations above can go here

6
.config/nvim/neovim.yml Normal file
View File

@@ -0,0 +1,6 @@
---
base: lua51
globals:
vim:
any: true

8
.config/nvim/selene.toml Normal file
View File

@@ -0,0 +1,8 @@
std = "neovim"
[rules]
global_usage = "allow"
if_same_then_else = "allow"
incorrect_standard_library_use = "allow"
mixed_table = "allow"
multiple_statements = "allow"

View File

@@ -0,0 +1,34 @@
context.modules = [
{ name = libpipewire-module-filter-chain
args = {
node.description = "Noise Canceling source"
media.name = "Noise Canceling source"
filter.graph = {
nodes = [
{
type = ladspa
name = rnnoise
# needs pkg noise-suppression-for-voice
plugin = /usr/lib/ladspa/librnnoise_ladspa.so
label = noise_suppressor_mono
control = {
"VAD Threshold (%)" = 80.0
"VAD Grace Period (ms)" = 200
"Retroactive VAD Grace (ms)" = 0
}
}
]
}
capture.props = {
node.name = "capture.rnnoise_source"
node.passive = true
audio.rate = 48000
}
playback.props = {
node.name = "rnnoise_source"
media.class = Audio/Source
audio.rate = 48000
}
}
}
]

View File

@@ -24,7 +24,7 @@ underline_shortcut=1
wheel_scroll_lines=3
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\ai\0\0\x3\xff\0\0\0\0\0\0\0\0\0\0\a\x7f\0\0\x4\x37\0\0\0\0\x2\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\ai\0\0\x3\xff)
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\a\x80\0\0\0\0\0\0\v?\0\0\x3\x1b\0\0\0\0\0\0\0\0\0\0\x3\xae\0\0\x3\x1b\0\0\0\x1\x2\0\0\0\a\x80\0\0\a\x80\0\0\0\0\0\0\v?\0\0\x3\x1b)
[Troubleshooting]
force_raster_widgets=1

View File

@@ -1,6 +1,6 @@
[Appearance]
color_scheme_path=/usr/share/qt6ct/colors/airy.conf
custom_palette=false
color_scheme_path=/home/mpuchstein/.config/qt6ct/style-colors.conf
custom_palette=true
icon_theme=breeze-dark
standard_dialogs=gtk3
style=kvantum
@@ -25,7 +25,7 @@ underline_shortcut=1
wheel_scroll_lines=3
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\a\x80\0\0\0\0\0\0\v.\0\0\x3\xff\0\0\a\x80\0\0\0\0\0\0\v?\0\0\x4\x15\0\0\0\x1\x2\0\0\0\a\x80\0\0\a\x80\0\0\0\0\0\0\v.\0\0\x3\xff)
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\a\x80\0\0\0\0\0\0\v?\0\0\x2\xcb\0\0\0\0\0\0\0\0\0\0\x3\xbf\0\0\x2\n\0\0\0\x1\x2\0\0\0\a\x80\0\0\a\x80\0\0\0\0\0\0\v?\0\0\x2\xcb)
[Troubleshooting]
force_raster_widgets=1

View File

@@ -0,0 +1,4 @@
[ColorScheme]
active_colors=#ffdfdfdf, #ff4d4d4d, #ff535353, #ff474747, #ff282828, #ff323232, #ffdfdfdf, #ffffffff, #ffdfdfdf, #ff2c2c2c, #ff2c2c2c, #ff000000, #ff3584e4, #ffffffff, #ff0057ae, #ffe040fb, #ff2e2e2e, #ff000000, #ff000000, #ffefefef, #80dfdfdf, #ff308cc6
disabled_colors=#ff696969, #ff4d4d4d, #ff535353, #ff474747, #ff282828, #ff323232, #ff696969, #ffffffff, #ff696969, #ff2c2c2c, #ff2c2c2c, #ff000000, #ff3584e4, #66ffffff, #ff0057ae, #ffe040fb, #ff2e2e2e, #ff000000, #ff000000, #ffefefef, #80dfdfdf, #ff919191
inactive_colors=#ffdfdfdf, #ff4d4d4d, #ff535353, #ff474747, #ff282828, #ff323232, #ffdfdfdf, #ffffffff, #ffdfdfdf, #ff2c2c2c, #ff2c2c2c, #ff000000, #ff3584e4, #ffffffff, #ff0057ae, #ffe040fb, #ff2e2e2e, #ff000000, #ff000000, #ffefefef, #80dfdfdf, #ff308cc6

50
.config/satty/config.toml Normal file
View File

@@ -0,0 +1,50 @@
[general]
# Start Satty in fullscreen mode
fullscreen = false
# Exit directly after copy/save action
early-exit = true
# Draw corners of rectangles round if the value is greater than 0 (0 disables rounded corners)
corner-roundness = 12
# Select the tool on startup [possible values: pointer, crop, line, arrow, rectangle, text, marker, blur, brush]
initial-tool = "brush"
# Configure the command to be called on copy, for example `wl-copy`
copy-command = "wl-copy"
# Increase or decrease the size of the annotations
annotation-size-factor = 1
# Filename to use for saving action. Omit to disable saving to file. Might contain format specifiers: https://docs.rs/chrono/latest/chrono/format/strftime/index.html
output-filename = "/home/mpuchstein/Pictures/screenshots/%Y-%m-%d_%H-%M-%S.png"
# After copying the screenshot, save it to a file as well
save-after-copy = false
# Hide toolbars by default
default-hide-toolbars = false
# The primary highlighter to use, the other is accessible by holding CTRL at the start of a highlight [possible values: block, freehand]
primary-highlighter = "freehand"
# Disable notifications
disable-notifications = false
# Actions to trigger on right click (order is important)
# [possible values: save-to-clipboard, save-to-file, exit]
actions-on-right-click = ["save-to-file"]
# Actions to trigger on Enter key (order is important)
# [possible values: save-to-clipboard, save-to-file, exit]
actions-on-enter = ["save-to-clipboard"]
# Actions to trigger on Escape key (order is important)
# [possible values: save-to-clipboard, save-to-file, exit]
actions-on-escape = ["exit"]
# request no window decoration. Please note that the compositor has the final say in this. At this point. requires xdg-decoration-unstable-v1.
no-window-decoration = true
# experimental feature: adjust history size for brush input smooting (0: disabled, default: 0, try e.g. 5 or 10)
brush-smooth-history-size = 0
# Font to use for text annotations
[font]
family = "InconsolataGo Nerd Font Mono"
style = "Regular"
# Custom colours for the colour palette
[color-palette]
# These will be shown in the toolbar for quick selection
palette = ["#00ffff", "#a52a2a", "#dc143c", "#ff1493", "#ffd700", "#008000"]
# These will be available in the color picker as presets
# Leave empty to use GTK's default
custom = ["#00ffff", "#a52a2a", "#dc143c", "#ff1493", "#ffd700", "#008000"]

View File

@@ -1,7 +1,7 @@
[Setting]
spotify_path = $HOME/.local/share/spotify-launcher/install/usr/share/spotify/
current_theme = marketplace
color_scheme =
current_theme = Ziro
color_scheme = rose-pine
inject_theme_js = 1
replace_colors = 1
always_enable_devtools = 0
@@ -19,7 +19,7 @@ expose_apis = 1
[AdditionalOptions]
custom_apps = marketplace
sidebar_config = 1
sidebar_config = 0
home_config = 1
experimental_features = 1
extensions =
@@ -28,5 +28,5 @@ extensions =
; DO NOT CHANGE!
[Backup]
version = 1.2.56.502.ga68d2d4f
with = 2.39.5
version = 1.2.63.394.g126b0d89
with = 2.41.0

View File

@@ -1,228 +1,256 @@
@define-color cc-bg #32302f;
@define-color noti-border-color #32302f;
@define-color noti-bg #3c3836;
@define-color noti-bg-darker #3c3836;
@define-color noti-bg-hover rgb(27, 27, 43);
@define-color noti-bg-focus rgba(27, 27, 27, 0.6);
@define-color text-color #f9f5d7;
@define-color text-color-disabled #bdae93;
@define-color bg-selected #fabd2f;
@define-color rp-base #191724;
@define-color rp-surface #1f1d2e;
@define-color rp-overlay #26233a;
@define-color rp-hl-low #21202e;
@define-color rp-hl-med #403d52;
@define-color rp-hl-high #524f67;
* {
@define-color rp-muted #6e6a86;
@define-color rp-subtle #908caa;
@define-color rp-text #e0def4;
@define-color rp-love #eb6f92;
@define-color rp-gold #f6c177;
@define-color rp-rose #ebbcba;
@define-color rp-pine #31748f;
@define-color rp-foam #9ccfd8;
@define-color rp-iris #c4a7e7;
/* To use Rosé Pine Moon, replace:
rp-base: #232136; rp-surface: #2a273f; rp-overlay: #393552;
rp-hl-low: #2a283e; rp-hl-med: #44415a; rp-hl-high: #56526e;
rp-text: #e0def4; rp-subtle: #908caa; accents same.
For Dawn (light), youll likely also want to invert contrasts. */
@define-color cc-bg @rp-surface;
@define-color noti-border-color @rp-hl-high;
@define-color noti-bg @rp-overlay;
@define-color noti-bg-darker @rp-hl-low;
@define-color noti-bg-hover @rp-hl-med;
@define-color noti-bg-focus alpha(@rp-hl-high, 0.6);
@define-color text-color @rp-text;
@define-color text-color-disabled @rp-subtle;
@define-color bg-selected @rp-iris;
{
font-family: JetBrainsMono NFP;
font-weight: bold;
font-size: 14px
}
font-size: 14px;
}
.control-center .notification-row:focus,
.control-center .notification-row:hover {
opacity: 1;
background: @noti-bg-darker
opacity: 1;
background: @noti-bg-darker;
}
.notification-row {
outline: none;
margin: 20px;
padding: 0;
outline: none;
margin: 20px;
padding: 0;
}
.notification {
background: transparent;
margin: 0px;
background: transparent;
margin: 0px;
}
.notification-content {
background: @cc-bg;
padding: 7px;
border-radius: 0px;
border: 2px solid #85796f;
margin: 0;
background: @cc-bg;
padding: 7px;
border-radius: 0px;
border: 2px solid @noti-border-color;
margin: 0;
}
.close-button {
background: #d79921;
color: @cc-bg;
text-shadow: none;
padding: 0;
border-radius: 0px;
margin-top: 5px;
margin-right: 5px;
background: @rp-gold;
color: @cc-bg;
text-shadow: none;
padding: 0;
border-radius: 0px;
margin-top: 5px;
margin-right: 5px;
}
.close-button:hover {
box-shadow: none;
background: #fabd2f;
transition: all .15s ease-in-out;
border: none
box-shadow: none;
background: @rp-rose;
color: @cc-bg;
transition: all .15s ease-in-out;
border: none;
}
.notification-action {
color: #ebdbb2;
border: 2px solid #85796f;
border-top: none;
border-radius: 0px;
background: #32302F;
color: @text-color;
border: 2px solid @noti-border-color;
border-top: none;
border-radius: 0px;
background: @rp-base;
}
.notification-default-action:hover,
.notification-action:hover {
color: #ebdbb2;
background: #32302F;
color: @text-color;
background: @noti-bg-hover;
}
.summary {
padding-top: 7px;
font-size: 13px;
color: #ebdbb2;
padding-top: 7px;
font-size: 13px;
color: @text-color;
}
.time {
font-size: 11px;
color: #d79921;
margin-right: 24px
font-size: 11px;
color: @rp-gold;
margin-right: 24px;
}
.body {
font-size: 12px;
color: #ebdbb2;
font-size: 12px;
color: @text-color;
}
.control-center {
background: @cc-bg;
border: 2px solid #85796f;
border-radius: 0px;
background: @cc-bg;
border: 2px solid @noti-border-color;
border-radius: 0px;
}
.control-center-list {
background: transparent
background: transparent;
}
.control-center-list-placeholder {
opacity: .5
opacity: .5;
}
.floating-notifications {
background: transparent
background: transparent;
}
.blank-window {
background: alpha(black, 0.1)
background: alpha(@rp-base, 0.1);
}
.widget-title {
color: #f9f5d7;
background: @noti-bg-darker;
padding: 5px 10px;
margin: 10px 10px 5px 10px;
font-size: 1.5rem;
border-radius: 5px;
color: @text-color;
background: @noti-bg-darker;
padding: 5px 10px;
margin: 10px 10px 5px 10px;
font-size: 1.5rem;
border-radius: 5px;
}
.widget-title>button {
font-size: 1rem;
color: @text-color;
text-shadow: none;
background: @noti-bg;
box-shadow: none;
border-radius: 5px;
.widget-title > button {
font-size: 1rem;
color: @text-color;
text-shadow: none;
background: @noti-bg;
box-shadow: none;
border-radius: 5px;
}
.widget-title>button:hover {
background: #d79921;
color: @cc-bg;
.widget-title > button:hover {
background: @rp-gold;
color: @cc-bg;
}
.widget-dnd {
background: @noti-bg-darker;
padding: 5px 10px;
margin: 5px 10px 10px 10px;
border-radius: 5px;
font-size: large;
color: #f2e5bc;
background: @noti-bg-darker;
padding: 5px 10px;
margin: 5px 10px 10px 10px;
border-radius: 5px;
font-size: large;
color: @text-color;
}
.widget-dnd>switch {
border-radius: 4px;
background: #665c54;
.widget-dnd > switch {
border-radius: 4px;
background: @rp-muted;
}
.widget-dnd>switch:checked {
background: #d79921;
border: 1px solid #d79921;
.widget-dnd > switch:checked {
background: @rp-gold;
border: 1px solid @rp-gold;
}
.widget-dnd>switch slider {
background: @cc-bg;
border-radius: 5px
.widget-dnd > switch slider {
background: @cc-bg;
border-radius: 5px;
}
.widget-dnd>switch:checked slider {
background: @cc-bg;
border-radius: 5px
.widget-dnd > switch:checked slider {
background: @cc-bg;
border-radius: 5px;
}
.widget-label {
margin: 10px 10px 5px 10px;
margin: 10px 10px 5px 10px;
}
.widget-label>label {
font-size: 1rem;
color: @text-color;
.widget-label > label {
font-size: 1rem;
color: @text-color;
}
.widget-mpris {
color: @text-color;
background: @noti-bg-darker;
padding: 5px 10px 0px 0px;
margin: 5px 10px 5px 10px;
border-radius: 0px;
color: @text-color;
background: @noti-bg-darker;
padding: 5px 10px 0px 0px;
margin: 5px 10px 5px 10px;
border-radius: 0px;
}
.widget-mpris > box > button {
border-radius: 5px;
border-radius: 5px;
}
.widget-mpris-player {
padding: 5px 10px;
margin: 10px
padding: 5px 10px;
margin: 10px;
}
.widget-mpris-title {
font-weight: 700;
font-size: 1.25rem
font-weight: 700;
font-size: 1.25rem;
}
.widget-mpris-subtitle {
font-size: 1.1rem
font-size: 1.1rem;
color: @text-color-disabled;
}
.widget-buttons-grid {
font-size: x-large;
padding: 5px;
margin: 5px 10px 10px 10px;
border-radius: 5px;
background: @noti-bg-darker;
font-size: x-large;
padding: 5px;
margin: 5px 10px 10px 10px;
border-radius: 5px;
background: @noti-bg-darker;
}
.widget-buttons-grid>flowbox>flowboxchild>button {
margin: 3px;
background: @cc-bg;
border-radius: 5px;
color: @text-color
.widget-buttons-grid > flowbox > flowboxchild > button {
margin: 3px;
background: @cc-bg;
border-radius: 5px;
color: @text-color;
border: 1px solid @noti-border-color;
}
.widget-buttons-grid>flowbox>flowboxchild>button:hover {
background: #d79921;
color: @cc-bg;
.widget-buttons-grid > flowbox > flowboxchild > button:hover {
background: @rp-gold;
color: @cc-bg;
}
.widget-menubar>box>.menu-button-bar>button {
border: none;
background: transparent
.widget-menubar > box > .menu-button-bar > button {
border: none;
background: transparent;
color: @text-color;
}
.topbar-buttons>button {
border: none;
background: transparent
.topbar-buttons > button {
border: none;
background: transparent;
color: @text-color;
}

119
.config/tmux/tmux.conf Normal file
View File

@@ -0,0 +1,119 @@
#### GENERAL SETTINGS ####
set -g default-terminal "xterm-256color"
set -ga terminal-overrides ",xterm-256color:Tc" # truecolor support
set -g history-limit 10000
set -g mouse on
# Renaming
set -wg automatic-rename on
set -g renumber-window on
set -g allow-rename off
# Border status
setw -g pane-border-status top
#### KEYBINDINGS ####
# Use Alt-a as prefix
unbind C-b
set -g prefix M-a
bind M-a send-prefix
# Better split bindings
unbind '"'
unbind %
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}"
bind -n M-H split-window -h -b -c "#{pane_current_path}"
bind -n M-L split-window -h -c "#{pane_current_path}"
bind -n M-K split-window -v -b -c "#{pane_current_path}"
bind -n M-J split-window -v -c "#{pane_current_path}"
# Vim-like pane movement
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind -n M-h select-pane -L
bind -n M-j select-pane -D
bind -n M-k select-pane -U
bind -n M-l select-pane -R
# Alt+Tab to switch between last panes
bind -n M-Tab last-pane
# Resize panes with vimkeys
bind -n C-M-h resize-pane -L 5
bind -n C-M-j resize-pane -D 5
bind -n C-M-k resize-pane -U 5
bind -n C-M-l resize-pane -R 5
# Reload config
bind r source-file ~/.config/tmux/tmux.conf \; display-message "Config reloaded!"
#### COPY/CLIPBOARD SUPPORT ####
setw -g mode-keys vi
bind-key -T copy-mode-vi y send -X copy-pipe-and-cancel "kitty +kitten clipboard"
# For TPM, instead use `run ~/.tmux/plugins/tmux/catppuccin.tmux`
run ~/.config/tmux/plugins/tmux/catppuccin.tmux
# Catppuccin
set -g @catppuccin_flavor "mocha"
set -g @catppuccin_date_time_text '%d.%m.%y %H:%M'
set -g @tmux-weather-location "Nospelt"
# Windows
set -g @catppuccin_window_tabs_enabled "on"
set -g @catppuccin_window_number_position 'right'
set -g @catppuccin_window_status 'yes'
set -g @catppuccin_window_default_text '#W'
set -g @catppuccin_window_current_fill 'number'
set -g @catppuccin_window_current_text '#W'
set -g @catppuccin_window_current_color '#{E:@thm_surface_2}'
set -g @catppuccin_status_module_text_bg '#{E:@thm_mantle}'
set -g @catppuccin_window_status_style "slanted"
# Status
set -g status-justify "absolute-centre"
set -g @catppuccin_status_background "none"
# Left status
set -g status-left-length 100
set -g status-left ""
set -ga status-left "#{E:@catppuccin_status_user}"
set -ga status-left "#{E:@catppuccin_status_session}"
set -ga status-left "#{E:@catppuccin_status_application}"
set -g @catppuccin_host "on"
set -g @catppuccin_user "on"
# Right status
set -g status-right-length 100
set -g status-right ""
set -agF status-right "#{E:@catppuccin_status_cpu}"
set -ag status-right "#{E:@catppuccin_status_uptime}"
if 'test -r /sys/class/power_supply/BAT*' {
set -agF status-right '#{E:@catppuccin_status_battery}'
}
set -agF status-right "#{E:@catppuccin_status_weather}"
set -ag status-right "#{E:@catppuccin_status_date_time}"
set -ag status-right "#{E:@catppuccin_status_host}"
#### TMUX PLUGIN MANAGER + PLUGINS ####
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @plugin 'tmux-plugins/tmux-yank'
# style
set -g @plugin 'catppuccin/tmux'
set -g @plugin 'joshmedeski/tmux-nerd-font-window-name'
set -g @plugin 'tmux-plugins/tmux-cpu'
set -g @plugin 'tmux-plugins/tmux-battery'
set -g @plugin 'xamut/tmux-weather'
# Initialize TPM (must be last)
run '~/.config/tmux/plugins/tpm/tpm'

View File

@@ -10,7 +10,6 @@ export SDL_VIDEODRIVER=wayland,x11
export CLUTTER_BACKEND=wayland
export QT_QPA_PLATFORM=wayland;xcb
export QT_QPA_PLATFORM=wayland
export QT_QPA_PLATFORMTHEME=qt6ct
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
@@ -18,4 +17,5 @@ export ELECTRON_OZONE_PLATFORM_HINT=wayland
export MOZ_ENABLE_WAYLAND=1
export GRIMBLAST_EDITOR='swappy -f'
export GRIMBLAST_EDITOR='satty -f'

View File

@@ -1,235 +1,106 @@
app_launch_prefix = "uwsm app -- "
terminal= "alacritty"
terminal_title_flag = ""
locale = ""
close_when_open = false
theme = "vikingowl"
monitor = ""
hotreload_theme = false
as_window = false
timeout = 0
disable_click_to_close = false
force_keyboard_focus = false
force_keyboard_focus = false # forces keyboard forcus to stay in Walker
close_when_open = true # close walker when invoking while already opened
selection_wrap = false # wrap list if at bottom or top
global_argument_delimiter = "#" # query: firefox#https://benz.dev => part after delimiter will be ignored when querying. this should be the same as in the elephant config
keep_open_modifier = "shift" # won't close on activation, but rather select the next item in the list
exact_search_prefix = "'" # disable fuzzy searching
theme = "rose-pine" # theme to use
disable_mouse = false # disable mouse (on input and list only)
[keys]
accept_typeahead = ["tab"]
trigger_labels = "lalt"
next = ["down"]
prev = ["up"]
close = ["esc"]
remove_from_history = ["shift backspace"]
resume_query = ["ctrl r"]
toggle_exact_search = ["ctrl m"]
[shell]
anchor_top = true
anchor_bottom = true
anchor_left = true
anchor_right = true
[keys.activation_modifiers]
keep_open = "shift"
alternate = "alt"
[placeholders]
"default" = { input = "Search", list = "No Results" } # placeholders for input and empty list, key is the providers name, so f.e. "desktopapplications" or "menus:other"
[keys.ai]
clear_session = ["ctrl x"]
copy_last_response = ["ctrl c"]
resume_session = ["ctrl r"]
run_last_response = ["ctrl e"]
[keybinds]
close = "esc"
next = "down"
previous = "up"
toggle_exact = "ctrl e"
resume_last_query = "ctrl r"
[events]
on_activate = ""
on_selection = ""
on_exit = ""
on_launch = ""
on_query_change = ""
[providers]
default = [
"desktopapplications",
"calc",
"runner",
"menus",
"websearch",
] # providers to be queried by default
empty = ["desktopapplications"] # providers to be queried when query is empty
[list]
dynamic_sub = true
keyboard_scroll_style = "emacs"
max_entries = 50
show_initial_entries = true
single_click = true
visibility_threshold = 20
placeholder = "No Results"
[[providers.prefixes]]
prefix = ";"
provider = "providerlist"
[search]
argument_delimiter = "#"
placeholder = "Search..."
delay = 0
resume_last_query = false
[activation_mode]
labels = "jkl;asdf"
[builtins.applications]
weight = 5
name = "applications"
placeholder = "Applications"
prioritize_new = true
hide_actions_with_empty_query = true
context_aware = true
refresh = true
show_sub_when_single = true
show_icon_when_single = true
show_generic = true
history = true
[builtins.applications.actions]
enabled = true
hide_category = false
hide_without_query = true
[builtins.bookmarks]
weight = 5
placeholder = "Bookmarks"
name = "bookmarks"
icon = "bookmark"
switcher_only = true
[[builtins.bookmarks.entries]]
label = "Walker"
url = "https://github.com/abenz1267/walker"
keywords = ["walker", "github"]
[builtins.xdph_picker]
hidden = true
weight = 5
placeholder = "Screen/Window Picker"
show_sub_when_single = true
name = "xdphpicker"
switcher_only = true
[builtins.ai]
weight = 5
placeholder = "AI"
name = "ai"
icon = "help-browser"
switcher_only = true
[[builtins.ai.anthropic.prompts]]
model = "claude-3-5-sonnet-20241022"
temperature = 1
max_tokens = 1_000
label = "General Assistant"
prompt = "You are a helpful general assistant. Keep your answers short and precise."
[builtins.calc]
require_number = true
weight = 5
name = "calc"
icon = "accessories-calculator"
placeholder = "Calculator"
min_chars = 4
[builtins.windows]
weight = 5
icon = "view-restore"
name = "windows"
placeholder = "Windows"
show_icon_when_single = true
[builtins.clipboard]
exec = "wl-copy"
weight = 5
name = "clipboard"
avoid_line_breaks = true
placeholder = "Clipboard"
image_height = 300
max_entries = 10
switcher_only = true
[builtins.commands]
weight = 5
icon = "utilities-terminal"
switcher_only = true
name = "commands"
placeholder = "Commands"
[builtins.custom_commands]
weight = 5
icon = "utilities-terminal"
name = "custom_commands"
placeholder = "Custom Commands"
[builtins.emojis]
exec = "wl-copy"
weight = 5
name = "emojis"
placeholder = "Emojis"
switcher_only = true
history = true
typeahead = true
show_unqualified = false
[builtins.symbols]
after_copy = ""
weight = 5
name = "symbols"
placeholder = "Symbols"
switcher_only = true
history = true
typeahead = true
[builtins.finder]
use_fd = false
weight = 5
icon = "file"
name = "finder"
placeholder = "Finder"
switcher_only = true
ignore_gitignore = true
refresh = true
concurrency = 8
show_icon_when_single = true
[builtins.runner]
weight = 5
icon = "utilities-terminal"
name = "runner"
placeholder = "Runner"
typeahead = true
history = true
generic_entry = false
refresh = true
[builtins.ssh]
weight = 5
icon = "preferences-system-network"
name = "ssh"
placeholder = "SSH"
switcher_only = true
history = true
refresh = true
[builtins.switcher]
weight = 5
name = "switcher"
placeholder = "Switcher"
[[providers.prefixes]]
prefix = "/"
provider = "files"
[builtins.websearch]
weight = 5
icon = "applications-internet"
name = "websearch"
placeholder = "Websearch"
[[providers.prefixes]]
prefix = "."
provider = "symbols"
[[builtins.websearch.entries]]
name = "Google"
url = "https://www.google.com/search?q=%TERM%"
[[providers.prefixes]]
prefix = "="
provider = "calc"
[[builtins.websearch.entries]]
name = "DuckDuckGo"
url = "https://duckduckgo.com/?q=%TERM%"
switcher_only = true
[[providers.prefixes]]
prefix = "@"
provider = "websearch"
[[builtins.websearch.entries]]
name = "Ecosia"
url = "https://www.ecosia.org/search?q=%TERM%"
switcher_only = true
[[providers.prefixes]]
prefix = ":"
provider = "clipboard"
[[builtins.websearch.entries]]
name = "Yandex"
url = "https://yandex.com/search/?text=%TERM%"
switcher_only = true
[providers.calc]
click = "copy"
copy = "enter"
save = "ctrl s"
delete = "ctrl d"
[builtins.dmenu]
hidden = true
weight = 5
name = "dmenu"
placeholder = "Dmenu"
switcher_only = true
[providers.websearch]
click = "search"
search = "enter"
[providers.providerlist]
click = "activate"
activate = "enter"
[providers.clipboard]
time_format = "%d.%m. - %H:%M" # format for the clipboard item date
click = "copy"
copy = "enter"
delete = "ctrl d"
[providers.desktopapplications]
click = "start"
start = "enter"
[providers.files]
click = "open"
open = "enter"
open_dir = "ctrl enter"
copy_path = "ctrl shift C"
copy_file = "ctrl c"
[providers.runner]
click = "start"
start = "enter"
start_terminal = "shift enter"
[providers.dmenu]
click = "select"
select = "enter"
[providers.symbols]
click = "copy"
copy = "enter"
[providers.menus]
click = "activate"
activate = "enter"

View File

@@ -1,162 +0,0 @@
/* AUTO GENERATED. DO NOT EDIT. CHANGES WILL BE OVERWRITTEN. */
@define-color foreground rgba(255, 255, 255, 0.8);
@define-color background hsla(240, 12.7%, 13.9%, 0.98);
@define-color color1 hsl(172, 100%, 25.3%);
/* AUTO GENERATED. DO NOT EDIT. CHANGES WILL BE OVERWRITTEN. */
#window,
#box,
#aiScroll,
#aiList,
#search,
#password,
#input,
#prompt,
#clear,
#typeahead,
#list,
child,
scrollbar,
slider,
#item,
#text,
#label,
#bar,
#sub,
#activationlabel {
all: unset;
}
#cfgerr {
background: rgba(255, 0, 0, 0.4);
margin-top: 20px;
padding: 8px;
font-size: 1.2em;
}
#window {
color: @foreground;
}
#box {
border-radius: 2px;
background: @background;
padding: 32px;
border: 1px solid lighter(@background);
box-shadow:
0 19px 38px rgba(0, 0, 0, 0.3),
0 15px 12px rgba(0, 0, 0, 0.22);
}
#search {
box-shadow:
0 1px 3px rgba(0, 0, 0, 0.1),
0 1px 2px rgba(0, 0, 0, 0.22);
background: lighter(@background);
padding: 8px;
}
#prompt {
margin-left: 4px;
margin-right: 12px;
color: @foreground;
opacity: 0.2;
}
#clear {
color: @foreground;
opacity: 0.8;
}
#password,
#input,
#typeahead {
border-radius: 2px;
}
#input {
background: none;
}
#password {
}
#spinner {
padding: 8px;
}
#typeahead {
color: @foreground;
opacity: 0.8;
}
#input placeholder {
opacity: 0.5;
}
#list {
}
child {
padding: 8px;
border-radius: 2px;
}
child:selected,
child:hover {
background: alpha(@color1, 0.4);
}
#item {
}
#icon {
margin-right: 8px;
}
#text {
}
#label {
font-weight: 500;
}
#sub {
opacity: 0.5;
font-size: 0.8em;
}
#activationlabel {
}
#bar {
}
.barentry {
}
.activation #activationlabel {
}
.activation #text,
.activation #icon,
.activation #search {
opacity: 0.5;
}
.aiItem {
padding: 10px;
border-radius: 2px;
color: @foreground;
background: @background;
}
.aiItem.user {
padding-left: 0;
padding-right: 0;
}
.aiItem.assistant {
background: lighter(@background);
}

View File

@@ -1,103 +0,0 @@
# AUTO GENERATED. DO NOT EDIT. CHANGES WILL BE OVERWRITTEN.
[ui.anchors]
bottom = true
left = true
right = true
top = true
[ui.window]
h_align = "fill"
v_align = "fill"
[ui.window.box]
h_align = "center"
width = 450
[ui.window.box.bar]
orientation = "horizontal"
position = "end"
[ui.window.box.bar.entry]
h_align = "fill"
h_expand = true
[ui.window.box.bar.entry.icon]
h_align = "center"
h_expand = true
pixel_size = 24
theme = ""
[ui.window.box.margins]
top = 200
[ui.window.box.ai_scroll]
name = "aiScroll"
h_align = "fill"
v_align = "fill"
max_height = 300
min_width = 400
height = 300
width = 400
[ui.window.box.ai_scroll.margins]
top = 8
[ui.window.box.ai_scroll.list]
name = "aiList"
orientation = "vertical"
width = 400
spacing = 10
[ui.window.box.ai_scroll.list.item]
name = "aiItem"
h_align = "fill"
v_align = "fill"
x_align = 0
y_align = 0
wrap = true
[ui.window.box.scroll.list]
marker_color = "#1BFFE1"
max_height = 300
max_width = 400
min_width = 400
width = 400
[ui.window.box.scroll.list.item.activation_label]
h_align = "fill"
v_align = "fill"
width = 20
x_align = 0.5
y_align = 0.5
[ui.window.box.scroll.list.item.icon]
pixel_size = 26
theme = ""
[ui.window.box.scroll.list.margins]
top = 8
[ui.window.box.search.prompt]
name = "prompt"
icon = "edit-find"
theme = ""
pixel_size = 18
h_align = "center"
v_align = "center"
[ui.window.box.search.clear]
name = "clear"
icon = "edit-clear"
theme = ""
pixel_size = 18
h_align = "center"
v_align = "center"
[ui.window.box.search.input]
h_align = "fill"
h_expand = true
icons = true
[ui.window.box.search.spinner]
hide = true

View File

@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkBox" id="ItemBox">
<style>
<class name="item-box"></class>
</style>
<property name="orientation">horizontal</property>
<property name="spacing">0</property>
<child>
<object class="GtkImage" id="ItemImage">
<style>
<class name="item-image"></class>
</style>
<property name="icon-size">large</property>
</object>
</child>
<child>
<object class="GtkBox" id="ItemTextBox">
<style>
<class name="item-text-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="vexpand">true</property>
<property name="vexpand-set">true</property>
<property name="spacing">0</property>
<child>
<object class="GtkLabel" id="ItemText">
<style>
<class name="item-text"></class>
</style>
<property name="wrap">false</property>
<property name="vexpand_set">true</property>
<property name="vexpand">true</property>
<property name="xalign">0</property>
</object>
</child>
<child>
<object class="GtkLabel" id="ItemSubtext">
<style>
<class name="item-subtext"></class>
</style>
<property name="wrap">false</property>
<property name="vexpand_set">true</property>
<property name="vexpand">true</property>
<property name="xalign">0</property>
<property name="yalign">0</property>
</object>
</child>
</object>
</child>
</object>
</interface>

View File

@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkBox" id="ItemBox">
<style>
<class name="item-box"></class>
</style>
<property name="orientation">horizontal</property>
<property name="spacing">0</property>
<child>
<object class="GtkImage" id="ItemImage">
<style>
<class name="item-image"></class>
</style>
<property name="pixel-size">48</property>
</object>
</child>
<child>
<object class="GtkBox" id="ItemTextBox">
<style>
<class name="item-text-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="vexpand">true</property>
<property name="vexpand-set">true</property>
<property name="spacing">0</property>
<child>
<object class="GtkLabel" id="ItemText">
<style>
<class name="item-text"></class>
</style>
<property name="wrap">false</property>
<property name="vexpand_set">true</property>
<property name="vexpand">true</property>
<property name="xalign">0</property>
</object>
</child>
<child>
<object class="GtkLabel" id="ItemSubtext">
<style>
<class name="item-subtext"></class>
</style>
<property name="wrap">false</property>
<property name="vexpand_set">true</property>
<property name="vexpand">true</property>
<property name="xalign">0</property>
<property name="yalign">0</property>
</object>
</child>
</object>
</child>
</object>
</interface>

View File

@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkBox" id="ItemBox">
<style>
<class name="item-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="spacing">0</property>
<child>
<object class="GtkPicture" id="ItemImage">
<style>
<class name="item-image"></class>
</style>
<property name="content-fit">cover</property>
<property name="height-request">100</property>
</object>
</child>
<child>
<object class="GtkBox" id="ItemTextBox">
<style>
<class name="item-text-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="vexpand">true</property>
<property name="vexpand-set">true</property>
<property name="spacing">0</property>
<child>
<object class="GtkLabel" id="ItemText">
<style>
<class name="item-text"></class>
</style>
<property name="vexpand">true</property>
<property name="xalign">0</property>
<property name="lines">1</property>
<property name="ellipsize">3</property>
<property name="single-line-mode">true</property>
</object>
</child>
<child>
<object class="GtkLabel" id="ItemSubtext">
<style>
<class name="item-subtext"></class>
</style>
<property name="xalign">0</property>
</object>
</child>
</object>
</child>
</object>
</interface>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkBox" id="ItemBox">
<style>
<class name="item-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="spacing">0</property>
<child>
<object class="GtkBox" id="ItemTextBox">
<style>
<class name="item-text-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="vexpand">true</property>
<property name="vexpand-set">true</property>
<property name="spacing">0</property>
<child>
<object class="GtkLabel" id="ItemText">
<style>
<class name="item-text"></class>
</style>
<property name="vexpand">true</property>
<property name="xalign">0</property>
<property name="lines">1</property>
<property name="ellipsize">3</property>
<property name="single-line-mode">true</property>
</object>
</child>
</object>
</child>
</object>
</interface>

View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkBox" id="ItemBox">
<style>
<class name="item-box"></class>
</style>
<property name="orientation">horizontal</property>
<property name="spacing">0</property>
<child>
<object class="GtkImage" id="ItemImage">
<style>
<class name="item-image"></class>
</style>
<property name="icon-size">large</property>
</object>
</child>
<child>
<object class="GtkBox" id="ItemTextBox">
<style>
<class name="item-text-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="vexpand">true</property>
<property name="vexpand-set">true</property>
<property name="spacing">0</property>
<child>
<object class="GtkLabel" id="ItemText">
<style>
<class name="item-text"></class>
</style>
<property name="wrap">false</property>
<property name="vexpand_set">true</property>
<property name="vexpand">true</property>
<property name="xalign">0</property>
<property name="ellipsize">1</property>
</object>
</child>
</object>
</child>
</object>
</interface>

View File

@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkBox" id="ItemBox">
<style>
<class name="item-box"></class>
</style>
<property name="orientation">horizontal</property>
<property name="spacing">0</property>
<child>
<object class="GtkImage" id="ItemImage">
<style>
<class name="item-image"></class>
</style>
<property name="icon-size">large</property>
</object>
</child>
<child>
<object class="GtkBox" id="ItemTextBox">
<style>
<class name="item-text-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="vexpand">true</property>
<property name="vexpand-set">true</property>
<property name="spacing">0</property>
<child>
<object class="GtkLabel" id="ItemText">
<style>
<class name="item-text"></class>
</style>
<property name="wrap">false</property>
<property name="vexpand_set">true</property>
<property name="vexpand">true</property>
<property name="xalign">0</property>
</object>
</child>
</object>
</child>
</object>
</interface>

View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkBox" id="ItemBox">
<style>
<class name="item-box"></class>
</style>
<property name="orientation">horizontal</property>
<property name="spacing">0</property>
<child>
<object class="GtkLabel" id="ItemImage">
<style>
<class name="item-image"></class>
</style>
</object>
</child>
<child>
<object class="GtkBox" id="ItemTextBox">
<style>
<class name="item-text-box"></class>
</style>
<property name="orientation">vertical</property>
<property name="vexpand">true</property>
<property name="vexpand-set">true</property>
<property name="spacing">0</property>
<child>
<object class="GtkLabel" id="ItemText">
<style>
<class name="item-text"></class>
</style>
<property name="wrap">false</property>
<property name="vexpand_set">true</property>
<property name="vexpand">true</property>
<property name="xalign">0</property>
</object>
</child>
</object>
</child>
</object>
</interface>

View File

@@ -0,0 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkWindow" id="Window">
<style>
<class name="window"></class>
</style>
<property name="resizable">true</property>
<property name="title">Walker</property>
<child>
<object class="GtkBox" id="BoxWrapper">
<style>
<class name="box-wrapper"></class>
</style>
<property name="orientation">horizontal</property>
<property name="margin-top">300</property>
<property name="valign">start</property>
<property name="halign">center</property>
<child>
<object class="GtkBox" id="Box">
<style>
<class name="box"></class>
</style>
<property name="orientation">vertical</property>
<property name="hexpand-set">true</property>
<property name="hexpand">true</property>
<child>
<object class="GtkBox" id="SearchContainer">
<style>
<class name="search-container"></class>
</style>
<property name="orientation">horizontal</property>
<property name="halign">fill</property>
<property name="hexpand-set">true</property>
<property name="hexpand">true</property>
<child>
<object class="GtkEntry" id="Input">
<style>
<class name="input"></class>
</style>
<property name="halign">fill</property>
<property name="hexpand-set">true</property>
<property name="hexpand">true</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox" id="ContentContainer">
<style>
<class name="content-container"></class>
</style>
<property name="orientation">horizontal</property>
<child>
<object class="GtkLabel" id="Placeholder">
<style>
<class name="placeholder"></class>
</style>
<property name="label">No Results</property>
<property name="height-request">400</property>
<property name="width-request">500</property>
</object>
</child>
<child>
<object class="GtkScrolledWindow" id="Scroll">
<style>
<class name="scroll"></class>
</style>
<property name="can_focus">false</property>
<property name="overlay-scrolling">true</property>
<property name="max-content-width">500</property>
<property name="min-content-width">500</property>
<property name="max-content-height">400</property>
<property name="min-content-height">400</property>
<property name="propagate-natural-height">true</property>
<property name="propagate-natural-width">true</property>
<property name="hscrollbar-policy">automatic</property>
<property name="vscrollbar-policy">automatic</property>
<child>
<object class="GtkGridView" id="List">
<style>
<class name="list"></class>
</style>
<property name="max_columns">1</property>
<property name="can_focus">false</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox" id="Preview">
<style>
<class name="preview"></class>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="GtkLabel" id="Keybinds">
<style>
<class name="keybind-hints"></class>
</style>
<property name="xalign">1</property>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</interface>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0"></requires>
<object class="GtkBox" id="PreviewBox">
<style>
<class name="preview-box"></class>
</style>
<property name="height-request">300</property>
<property name="width-request">500</property>
<child>
<object class="GtkStack" id="PreviewStack">
<style>
<class name="preview-stack"></class>
</style>
<property name="hexpand">true</property>
<property name="vexpand">true</property>
</object>
</child>
</object>
</interface>

Some files were not shown because too many files have changed in this diff Show More