mirror of
https://github.com/ItsDrike/dotfiles.git
synced 2025-02-26 21:18:55 +00:00
Move to UWSM
This commit is contained in:
parent
510d01ef47
commit
3993fb896d
41 changed files with 79 additions and 101 deletions
|
@ -1,11 +1,4 @@
|
||||||
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_TYPE GTK_THEME QT_QPA_PLATFORMTHEME QT_STYLE_OVERRIDE
|
exec-once = uwsm finalize
|
||||||
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP GTK_THEME QT_QPA_PLATFORMTHEME QT_STYLE_OVERRIDE
|
exec-once = uwsm app vesktop
|
||||||
|
|
||||||
# Hyprland socket sometimes isn't yet loaded, sleep for sec
|
|
||||||
exec-once = sleep 1 && systemctl --user start wayland-session.target
|
|
||||||
|
|
||||||
exec-once = sleep 3 && vesktop
|
|
||||||
# exec-once = sleep 3 && discord
|
|
||||||
# exec-once = sleep 3 && webcord --start-minimized
|
|
||||||
|
|
||||||
# vi: ft=hyprlang
|
# vi: ft=hyprlang
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Show a notification when the battery is low"
|
Description=Show a notification when the battery is low
|
||||||
|
Requires=graphical-session.target
|
||||||
PartOf=graphical-session.target
|
PartOf=graphical-session.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=%h/.local/bin/scripts/gui/battery-notification
|
|
||||||
Type=oneshot
|
Type=oneshot
|
||||||
|
ExecStart=%h/.local/bin/scripts/gui/battery-notification
|
||||||
RemainAfterExit=false
|
RemainAfterExit=false
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
RestartSec=3s
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wm-ready.target
|
WantedBy=graphical-session.target
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Timer for low battery notification sendout"
|
Description=Timer for low battery notification sendout
|
||||||
|
After=graphical-session.target
|
||||||
|
Requires=graphical-session.target
|
||||||
PartOf=graphical-session.target
|
PartOf=graphical-session.target
|
||||||
|
|
||||||
[Timer]
|
[Timer]
|
||||||
OnUnitActiveSec=20s
|
OnUnitActiveSec=20s
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wm-ready.target
|
WantedBy=graphical-session.target
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,14 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Clipboard clipboard manager"
|
Description=Clipman clipboard manager
|
||||||
|
After=graphical-session.target
|
||||||
|
Requires=graphical-session.target
|
||||||
PartOf=graphical-session.target
|
PartOf=graphical-session.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/bin/wl-paste -t text --watch /usr/bin/clipman store --no-persist
|
ExecStart=/usr/bin/wl-paste -t text --watch /usr/bin/clipman store --no-persist
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wm-ready.target
|
WantedBy=graphical-session.target
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/user/systemd-lock-handler.service
|
|
@ -1,10 +0,0 @@
|
||||||
[Unit]
|
|
||||||
Description="Dunst daemon"
|
|
||||||
PartOf=graphical-session.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
ExecStart=/usr/bin/dunst
|
|
||||||
Restart=on-failure
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=wm-ready.target
|
|
|
@ -1,17 +1,15 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Open %I eww window"
|
Description=Open %I eww window
|
||||||
PartOf=graphical-session.target
|
|
||||||
After=eww.service
|
After=eww.service
|
||||||
PartOf=eww.service
|
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
ExecStartPre=/usr/bin/eww ping
|
ExecStartPre=/usr/bin/eww ping
|
||||||
ExecStart=/usr/bin/eww open %i
|
ExecStart=/usr/bin/eww open %i
|
||||||
ExecStop=/usr/bin/eww close %i
|
ExecStop=/usr/bin/eww close %i
|
||||||
Type=oneshot
|
|
||||||
RemainAfterExit=true
|
RemainAfterExit=true
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
RestartSec=3s
|
RestartSec=3s
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wm-ready.target
|
WantedBy=graphical-session.target
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Eww daemon"
|
Description=Eww daemon
|
||||||
PartOf=graphical-session.target
|
PartOf=graphical-session.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/bin/eww daemon --no-daemonize
|
ExecStart=/usr/bin/eww daemon --no-daemonize
|
||||||
Restart=always
|
Restart=always
|
||||||
RestartSec=3s
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wm-ready.target
|
WantedBy=graphical-session.target
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Show unread GitHub notifications"
|
Description=Show unread GitHub notifications
|
||||||
|
Requires=graphical-session.target
|
||||||
PartOf=graphical-session.target
|
PartOf=graphical-session.target
|
||||||
After=dunst.service
|
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=%h/.local/bin/scripts/gui/gh-notification -vv
|
|
||||||
Type=oneshot
|
Type=oneshot
|
||||||
|
ExecStart=%h/.local/bin/scripts/gui/gh-notification -vv
|
||||||
RemainAfterExit=false
|
RemainAfterExit=false
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
RestartSec=3s
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wm-ready.target
|
WantedBy=graphical-session.target
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Timer for GitHub notification sendout"
|
Description=Timer for GitHub notification sendout
|
||||||
|
After=graphical-session.target
|
||||||
|
Requires=graphical-session.target
|
||||||
PartOf=graphical-session.target
|
PartOf=graphical-session.target
|
||||||
|
|
||||||
[Timer]
|
[Timer]
|
||||||
OnUnitActiveSec=1m
|
OnUnitActiveSec=1m
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wm-ready.target
|
WantedBy=graphical-session.target
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[Service]
|
||||||
|
Environment="GNUPGHOME=%h/.local/share/gnupg"
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/user/hypridle.service
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/user/swaync.service
|
|
@ -1,10 +0,0 @@
|
||||||
[Unit]
|
|
||||||
Description="Idle management daemon"
|
|
||||||
PartOf=graphical-session.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
ExecStart=/usr/bin/stdbuf -oL /usr/bin/hypridle
|
|
||||||
Restart=on-failure
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=wayland-session.target
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[Service]
|
||||||
|
Slice=background-graphical.slice
|
|
@ -1,10 +1,13 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Daemon watching for Hyprland monitor updates"
|
Description=Daemon watching for Hyprland monitor updates
|
||||||
PartOf=graphical-session.target
|
After=wayland-session@hyprland.desktop.target
|
||||||
|
Requires=wayland-session@hyprland.desktop.target
|
||||||
|
PartOf=wayland-session@hyprland.desktop.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=%h/.local/bin/scripts/gui/hyprland/hyprland-monitord
|
ExecStart=%h/.local/bin/scripts/gui/hyprland/hyprland-monitord
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wayland-session.target
|
WantedBy=wayland-session@hyprland.desktop.target
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Run hyprlock screenlocker on lock dbus event (using systemd-lock-handler)
|
Description=Run hyprlock screenlocker on lock dbus event (using systemd-lock-handler)
|
||||||
Requisite=wm-ready.target
|
Requisite=graphical-session.target
|
||||||
# if hyprlock exists cleanly, enter a 'unlock' target
|
# if hyprlock exists cleanly, enter a 'unlock' target
|
||||||
OnSuccess=unlock.target
|
OnSuccess=unlock.target
|
||||||
# When lock.target is stopped, stop this unit too
|
# When lock.target is stopped, stop this unit too
|
||||||
|
@ -9,9 +9,10 @@ PartOf=lock.target
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/bin/hyprlock
|
ExecStart=/usr/bin/hyprlock
|
||||||
StandardOutput=journal
|
StandardOutput=journal
|
||||||
ExecStop=/bin/kill -s SIGUSR1 $MAINPID
|
|
||||||
ExecStopPost=/bin/loginctl unlock-session
|
ExecStopPost=/bin/loginctl unlock-session
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=lock.target
|
WantedBy=lock.target
|
||||||
|
|
||||||
|
|
|
@ -1,12 +0,0 @@
|
||||||
[Unit]
|
|
||||||
Description="Hyprpaper (Hyprland wallpaper daemon"
|
|
||||||
PartOf=graphical-session.target
|
|
||||||
After=graphical-session.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
Type=simple
|
|
||||||
ExecStart=/usr/bin/hyprpaper
|
|
||||||
Restart=on-failure
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=wayland-session.target
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
[Service]
|
||||||
|
ExecCondition=/lib/systemd/systemd-xdg-autostart-condition "Hyprland" ""
|
||||||
|
Slice=background-graphical.slice
|
|
@ -1,10 +1,13 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="PolicyKit authentication agent"
|
Description="PolicyKit authentication agent"
|
||||||
|
After=graphical-session.target
|
||||||
|
Requires=graphical-session.target
|
||||||
PartOf=graphical-session.target
|
PartOf=graphical-session.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
ExecStart=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wm-ready.target
|
WantedBy=graphical-session.target
|
||||||
|
|
|
@ -4,8 +4,10 @@ Requisite=swaync.service
|
||||||
Before=lock.target
|
Before=lock.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/bin/swaync-client --inhibitor-add screen-locker
|
|
||||||
Type=oneshot
|
Type=oneshot
|
||||||
|
ExecStart=/usr/bin/swaync-client --inhibitor-add screen-locker
|
||||||
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=lock.target
|
WantedBy=lock.target
|
||||||
|
|
||||||
|
|
|
@ -4,8 +4,9 @@ Requisite=swaync.service
|
||||||
After=unlock.target
|
After=unlock.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/bin/swaync-client --inhibitor-remove screen-locker
|
|
||||||
Type=oneshot
|
Type=oneshot
|
||||||
|
ExecStart=/usr/bin/swaync-client --inhibitor-remove screen-locker
|
||||||
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=unlock.target
|
WantedBy=unlock.target
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
[Unit]
|
|
||||||
Description="Swaync daemon"
|
|
||||||
PartOf=graphical-session.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
ExecStart=/usr/bin/swaync
|
|
||||||
Restart=on-failure
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=wayland-session.target
|
|
2
home/.config/systemd/user/swaync.service.d/override.conf
Normal file
2
home/.config/systemd/user/swaync.service.d/override.conf
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[Service]
|
||||||
|
Slice=background-graphical.slice
|
|
@ -1,6 +0,0 @@
|
||||||
[Unit]
|
|
||||||
Description=Waylnad compositor loaded and ready
|
|
||||||
BindsTo=wm-ready.target
|
|
||||||
Wants=xdg-desktop-portal.service
|
|
||||||
Wants=xdg-desktop-portal-hyprland.service
|
|
||||||
Wants=systemd-lock-handler.service
|
|
|
@ -1 +0,0 @@
|
||||||
/home/itsdrike/.config/systemd/user/hypridle.service
|
|
|
@ -1,10 +1,13 @@
|
||||||
[Unit]
|
[Unit]
|
||||||
Description="Redshift and brightness control for Wayland"
|
Description=Redshift and brightness control for Wayland
|
||||||
BindsTo=wayland-session.target
|
After=graphical-session.target
|
||||||
|
Requires=graphical-session.target
|
||||||
|
PartOf=graphical-session.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/bin/wl-gammarelay-rs run
|
ExecStart=/usr/bin/wl-gammarelay-rs run
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
Slice=background-graphical.slice
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=wayland-session.target
|
WantedBy=graphical-session.target
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
[Unit]
|
|
||||||
Description=Window Manager loaded and ready
|
|
||||||
BindsTo=graphical-session.target
|
|
||||||
Wants=wireplumber.service
|
|
||||||
Wants=pipewire-pulse.socket
|
|
||||||
Wants=usbguard-notifier.service
|
|
||||||
Wants=gnome-keyring-daemon.service
|
|
1
home/.config/uwsm/default-id
Normal file
1
home/.config/uwsm/default-id
Normal file
|
@ -0,0 +1 @@
|
||||||
|
hyprland-uwsm.desktop
|
3
home/.config/uwsm/env
Normal file
3
home/.config/uwsm/env
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
source "$HOME"/.config/shell/environment
|
|
@ -99,7 +99,8 @@ paru -S --noconfirm --needed \
|
||||||
|
|
||||||
# Wayland WM essentials
|
# Wayland WM essentials
|
||||||
paru -S --noconfirm --needed \
|
paru -S --noconfirm --needed \
|
||||||
wl-clipboard xdg-desktop-portal xdg-desktop-portal-gtk qt5-wayland qt6-wayland wev wl-gammarelay-rs wdisplays
|
wl-clipboard xdg-desktop-portal xdg-desktop-portal-gtk qt5-wayland qt6-wayland wev wl-gammarelay-rs wdisplays \
|
||||||
|
uwsm
|
||||||
|
|
||||||
# Utilities
|
# Utilities
|
||||||
paru -S --noconfirm --needed \
|
paru -S --noconfirm --needed \
|
||||||
|
|
|
@ -7,7 +7,7 @@ vt = 1
|
||||||
# If the user logs out, greetd will render the default session
|
# If the user logs out, greetd will render the default session
|
||||||
[initial_session]
|
[initial_session]
|
||||||
user = "itsdrike"
|
user = "itsdrike"
|
||||||
command = "/usr/local/bin/greetd-session-wrapper Hyprland"
|
command = "/usr/local/bin/greetd-session-wrapper uwsm start hyprland.desktop"
|
||||||
|
|
||||||
# The default session, also known as the greeter.
|
# The default session, also known as the greeter.
|
||||||
[default_session]
|
[default_session]
|
||||||
|
|
Loading…
Add table
Reference in a new issue