diff --git a/home/.config/hypr/hypridle.conf b/home/.config/hypr/hypridle.conf index 12557f2..63be9da 100644 --- a/home/.config/hypr/hypridle.conf +++ b/home/.config/hypr/hypridle.conf @@ -47,7 +47,7 @@ listener { # On low battery, or after HibernateDelaySec (/etc/systemd/sleep.conf), the system # will enter full hibernation listener { - timeout = 600 + timeout = 600, on-timeout = systemctl suspend-then-hibernate } diff --git a/home/.config/hypr/hyprland.d/exec.conf b/home/.config/hypr/hyprland.d/exec.conf index ee6742e..e517ccb 100644 --- a/home/.config/hypr/hyprland.d/exec.conf +++ b/home/.config/hypr/hyprland.d/exec.conf @@ -1,4 +1,11 @@ -exec-once = uwsm finalize -exec-once = uwsm app vesktop +exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_TYPE GTK_THEME QT_QPA_PLATFORMTHEME QT_STYLE_OVERRIDE +exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP GTK_THEME QT_QPA_PLATFORMTHEME QT_STYLE_OVERRIDE + +# 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 diff --git a/home/.config/hypr/hyprland.d/keybinds.conf b/home/.config/hypr/hyprland.d/keybinds.conf index 941e987..d794599 100644 --- a/home/.config/hypr/hyprland.d/keybinds.conf +++ b/home/.config/hypr/hyprland.d/keybinds.conf @@ -23,22 +23,23 @@ bind = SUPER_SHIFT, S, layoutmsg, togglesplit # ### PROGRAMS ### # ################ -bind = SUPER, R, exec, uwsm app -- $(uwsm app -- wofi --show drun --define=drun-print_desktop_file=true) -bind = SUPER_SHIFT, V, exec, uwsm app -- clipman pick -t wofi +bind = SUPER, R, exec, wofi --show drun +bind = SUPER_SHIFT, Return, exec, wofi --show run +bind = SUPER_SHIFT, V, exec, clipman pick -t wofi -bind = SUPER, Return, exec, uwsm app -- kitty -bind = SUPER, X, exec, uwsm app -- pcmanfm-qt -bind = SUPER, B, exec, uwsm app -- firefox -bind = SUPER, C, exec, uwsm app -- qalculate-gtk -bind = , XF86Calculator, exec, uwsm app -- qalculate-gtk +bind = SUPER, Return, exec, kitty +bind = SUPER, X, exec, pcmanfm-qt +bind = SUPER, B, exec, firefox +bind = SUPER, C, exec, qalculate-gtk +bind = , XF86Calculator, exec, qalculate-gtk # ##################### # ### DE/WM CONTROL ### # ##################### -bind = SUPER_SHIFT, Q, exec, uwsm app -- menuquit +bind = SUPER_SHIFT, Q, exec, menuquit bind = SUPER_CTRL, L, exec, loginctl lock-session -bind = SUPER_SHIFT, L, exec, uwsm app -- wlogout -p layer-shell +bind = SUPER_SHIFT, L, exec, wlogout -p layer-shell bind = SUPER_SHIFT, T, exec, toggle-idle # ################### @@ -62,8 +63,8 @@ bind = SUPER_ALT, Print, exec, ocr && notify-send "OCR" "Text copied to clipboar # XF86Favorites key for recording # (don't question me, I had it free) -bind = , 164, exec, uwsm app -- quick-record --notify toggle -bind = SUPER, 164, exec, uwsm -- app quick-record toggle +bind = , 164, exec, quick-record --notify toggle +bind = SUPER, 164, exec, quick-record toggle # ##################### # ### NOTIFICATIONS ### @@ -282,7 +283,7 @@ bind = CTRL, F10, pass, ^(com\.obsproject\.Studio)$ # Isolating group to prevent keybind capturing (for games etc) # SUPER + End -bind = SUPER, End, exec, hyprctl dispatch submap isolate && notify-send "Keybind isolation" "Keybind isolation on (Super + END to disable)" +bind = SUPER, End, exec, hyprctl dispatch submap isolate && notify-send "Keybind isolation" "Keybind isolation on" submap = isolate bind = SUPER, End, exec, hyprctl dispatch submap reset && notify-send "Keybind isolation" "Keybind isolation off" submap = reset diff --git a/home/.config/hyprland-monitord/added.sh b/home/.config/hyprland-monitord/added.sh index 41a6f90..2ae53cb 100755 --- a/home/.config/hyprland-monitord/added.sh +++ b/home/.config/hyprland-monitord/added.sh @@ -5,5 +5,4 @@ MONITOR_ID="$1" MONITOR_NAME="$2" MONITOR_DESCRIPTION="$3" -systemctl --user start eww-window@bar1.service -#eww open bar1 +eww open bar1 diff --git a/home/.config/hyprland-monitord/init.sh b/home/.config/hyprland-monitord/init.sh index 23fffde..4236d92 100755 --- a/home/.config/hyprland-monitord/init.sh +++ b/home/.config/hyprland-monitord/init.sh @@ -9,15 +9,11 @@ if [ "$MONITORS_AMT" -lt 1 ]; then fi if [ "$MONITORS_AMT" -eq 2 ]; then - systemctl --user start eww-window@bar1.service - #eww open bar1 + eww open bar1 fi if [ "$MONITORS_AMT" -eq 1 ]; then - if eww active-windows | grep "bar1"; then - systemctl --user stop eww-window@bar1.service - #eww close bar1 - fi + eww active-windows | grep "bar1" && eww close bar1 fi if [ "$MONITORS_AMT" -gt 2 ]; then diff --git a/home/.config/hyprland-monitord/removed.sh b/home/.config/hyprland-monitord/removed.sh index b9b7a10..e9b0900 100755 --- a/home/.config/hyprland-monitord/removed.sh +++ b/home/.config/hyprland-monitord/removed.sh @@ -3,5 +3,4 @@ set -euo pipefail MONITOR_NAME="$1" -systemctl --user stop eww-window@bar1.service -# eww close bar1 +eww close bar1 diff --git a/home/.config/shell/environment b/home/.config/shell/environment index 5a90cef..c923617 100755 --- a/home/.config/shell/environment +++ b/home/.config/shell/environment @@ -8,17 +8,18 @@ # which means the XDG definitions will be ignored anyway, and # defining them may break programs when root is actually logged in. + # Add all folders in ~/.local/bin into PATH # Some window managers require this line to be in profile not in .zshenv if [ -d "$HOME/.local/bin" ]; then - PATH+=":$(find -L ~/.local/bin -type d | tr '\n' ':' | sed 's/:$//')" + PATH+=":${$(find -L ~/.local/bin -type d | tr '\n' ':')%%:}" fi if [ -d "$HOME/.local/share/npm/bin" ]; then - PATH+=":$HOME/.local/share/npm/bin" + PATH+=":$HOME/.local/share/npm/bin" fi -# Prepend rye shims to PATH, to have rye python executables +# Prepend rye shims to PATH, to have rye python executables # take priority over the system-wide python. if [ -d "${RYE_HOME:-$HOME/.rye}/shims" ]; then PATH="${RYE_HOME:-$HOME/.rye}/shims:$PATH" @@ -96,7 +97,6 @@ export NODE_REPL_HISTORY="$XDG_DATA_HOME/node_repl_history" export DOTNET_CLI_HOME="$XDG_DATA_HOME/dotnet" export JUPYTER_CONFIG_DIR="$XDG_CONFIG_HOME/jupyter" export RYE_HOME="$XDG_CONFIG_HOME/rye" -export OMNISHARPHOME="$XDG_CONFIG_HOME"/omnisharp # Theming export GTK_THEME="Tokyonight-Dark" diff --git a/home/.config/systemd/user/battery-notification.service b/home/.config/systemd/user/battery-notification.service index bb03ae7..c63c50d 100644 --- a/home/.config/systemd/user/battery-notification.service +++ b/home/.config/systemd/user/battery-notification.service @@ -1,14 +1,13 @@ [Unit] -Description=Show a notification when the battery is low -Requires=graphical-session.target +Description="Show a notification when the battery is low" +PartOf=graphical-session.target [Service] -Type=oneshot ExecStart=%h/.local/bin/scripts/gui/battery-notification +Type=oneshot RemainAfterExit=false Restart=on-failure -Slice=background-graphical.slice +RestartSec=3s [Install] -WantedBy=graphical-session.target - +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/battery-notification.timer b/home/.config/systemd/user/battery-notification.timer index ec0044a..cdc31e1 100644 --- a/home/.config/systemd/user/battery-notification.timer +++ b/home/.config/systemd/user/battery-notification.timer @@ -1,12 +1,9 @@ [Unit] -Description=Timer for low battery notification sendout -After=graphical-session.target -Requires=graphical-session.target +Description="Timer for low battery notification sendout" PartOf=graphical-session.target [Timer] OnUnitActiveSec=20s [Install] -WantedBy=graphical-session.target - +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/clipman.service b/home/.config/systemd/user/clipman.service index a0815bb..2c1b376 100644 --- a/home/.config/systemd/user/clipman.service +++ b/home/.config/systemd/user/clipman.service @@ -1,13 +1,10 @@ [Unit] -Description=Clipman clipboard manager -After=graphical-session.target -Requires=graphical-session.target +Description="Clipboard clipboard manager" +PartOf=graphical-session.target [Service] ExecStart=/usr/bin/wl-paste -t text --watch /usr/bin/clipman store --no-persist Restart=on-failure -Slice=background-graphical.slice [Install] -WantedBy=graphical-session.target - +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/default.target.wants/systemd-lock-handler.service b/home/.config/systemd/user/default.target.wants/systemd-lock-handler.service deleted file mode 120000 index b7c9720..0000000 --- a/home/.config/systemd/user/default.target.wants/systemd-lock-handler.service +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/systemd/user/systemd-lock-handler.service \ No newline at end of file diff --git a/home/.config/systemd/user/dunst.service b/home/.config/systemd/user/dunst.service new file mode 100644 index 0000000..7a67667 --- /dev/null +++ b/home/.config/systemd/user/dunst.service @@ -0,0 +1,10 @@ +[Unit] +Description="Dunst daemon" +PartOf=graphical-session.target + +[Service] +ExecStart=/usr/bin/dunst +Restart=on-failure + +[Install] +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/eww-window@.service b/home/.config/systemd/user/eww-window@.service index 158eb1f..161113d 100644 --- a/home/.config/systemd/user/eww-window@.service +++ b/home/.config/systemd/user/eww-window@.service @@ -1,18 +1,17 @@ [Unit] -Description=Open %I eww window -After=graphical-session.target +Description="Open %I eww window" +PartOf=graphical-session.target After=eww.service PartOf=eww.service [Service] -Type=oneshot ExecStartPre=/usr/bin/eww ping ExecStart=/usr/bin/eww open %i ExecStop=/usr/bin/eww close %i +Type=oneshot RemainAfterExit=true Restart=on-failure RestartSec=3s -Slice=background-graphical.slice [Install] -WantedBy=graphical-session.target +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/eww.service b/home/.config/systemd/user/eww.service index c4038f2..185beb8 100644 --- a/home/.config/systemd/user/eww.service +++ b/home/.config/systemd/user/eww.service @@ -1,14 +1,11 @@ [Unit] -Description=Eww daemon -After=graphical-session.target -After=pipewire.service -Requires=graphical-session.target -Requires=pipewire.service +Description="Eww daemon" +PartOf=graphical-session.target [Service] ExecStart=/usr/bin/eww daemon --no-daemonize Restart=always -Slice=background-graphical.slice +RestartSec=3s [Install] -WantedBy=graphical-session.target +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/gh-notification.service b/home/.config/systemd/user/gh-notification.service index c4cabf0..4d6ec65 100644 --- a/home/.config/systemd/user/gh-notification.service +++ b/home/.config/systemd/user/gh-notification.service @@ -1,14 +1,14 @@ [Unit] -Description=Show unread GitHub notifications -Requires=graphical-session.target +Description="Show unread GitHub notifications" +PartOf=graphical-session.target +After=dunst.service [Service] -Type=oneshot ExecStart=%h/.local/bin/scripts/gui/gh-notification -vv +Type=oneshot RemainAfterExit=false Restart=on-failure -Slice=background-graphical.slice +RestartSec=3s [Install] -WantedBy=graphical-session.target - +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/gh-notification.timer b/home/.config/systemd/user/gh-notification.timer index 8350a3c..b7e8ff4 100644 --- a/home/.config/systemd/user/gh-notification.timer +++ b/home/.config/systemd/user/gh-notification.timer @@ -1,12 +1,9 @@ [Unit] -Description=Timer for GitHub notification sendout -After=graphical-session.target -Requires=graphical-session.target +Description="Timer for GitHub notification sendout" PartOf=graphical-session.target [Timer] OnUnitActiveSec=1m [Install] -WantedBy=graphical-session.target - +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/gpg-agent.service.d/override.conf b/home/.config/systemd/user/gpg-agent.service.d/override.conf deleted file mode 100644 index 4a95f51..0000000 --- a/home/.config/systemd/user/gpg-agent.service.d/override.conf +++ /dev/null @@ -1,2 +0,0 @@ -[Service] -Environment="GNUPGHOME=%h/.local/share/gnupg" diff --git a/home/.config/systemd/user/graphical-session.target.wants/hypridle.service b/home/.config/systemd/user/graphical-session.target.wants/hypridle.service deleted file mode 120000 index 55da293..0000000 --- a/home/.config/systemd/user/graphical-session.target.wants/hypridle.service +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/systemd/user/hypridle.service \ No newline at end of file diff --git a/home/.config/systemd/user/graphical-session.target.wants/swaync.service b/home/.config/systemd/user/graphical-session.target.wants/swaync.service deleted file mode 120000 index 9c6a60f..0000000 --- a/home/.config/systemd/user/graphical-session.target.wants/swaync.service +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/systemd/user/swaync.service \ No newline at end of file diff --git a/home/.config/systemd/user/hypridle.service b/home/.config/systemd/user/hypridle.service new file mode 100644 index 0000000..f4721b5 --- /dev/null +++ b/home/.config/systemd/user/hypridle.service @@ -0,0 +1,10 @@ +[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 diff --git a/home/.config/systemd/user/hypridle.service.d/override.conf b/home/.config/systemd/user/hypridle.service.d/override.conf deleted file mode 100644 index e639392..0000000 --- a/home/.config/systemd/user/hypridle.service.d/override.conf +++ /dev/null @@ -1,2 +0,0 @@ -[Service] -Slice=background-graphical.slice diff --git a/home/.config/systemd/user/hyprland-monitord.service b/home/.config/systemd/user/hyprland-monitord.service index b954eaf..3b2836d 100644 --- a/home/.config/systemd/user/hyprland-monitord.service +++ b/home/.config/systemd/user/hyprland-monitord.service @@ -1,14 +1,10 @@ [Unit] -Description=Daemon watching for Hyprland monitor updates -After=wayland-session@hyprland.desktop.target -After=eww.service -Requires=eww.service -Requires=wayland-session@hyprland.desktop.target +Description="Daemon watching for Hyprland monitor updates" +PartOf=graphical-session.target [Service] ExecStart=%h/.local/bin/scripts/gui/hyprland/hyprland-monitord Restart=on-failure -Slice=background-graphical.slice [Install] -WantedBy=wayland-session@hyprland.desktop.target +WantedBy=wayland-session.target diff --git a/home/.config/systemd/user/hyprlock.service b/home/.config/systemd/user/hyprlock.service index 3140220..7e408c9 100644 --- a/home/.config/systemd/user/hyprlock.service +++ b/home/.config/systemd/user/hyprlock.service @@ -1,6 +1,6 @@ [Unit] Description=Run hyprlock screenlocker on lock dbus event (using systemd-lock-handler) -Requisite=graphical-session.target +Requisite=wm-ready.target # if hyprlock exists cleanly, enter a 'unlock' target OnSuccess=unlock.target # When lock.target is stopped, stop this unit too @@ -9,10 +9,9 @@ PartOf=lock.target [Service] ExecStart=/usr/bin/hyprlock StandardOutput=journal +ExecStop=/bin/kill -s SIGUSR1 $MAINPID ExecStopPost=/bin/loginctl unlock-session Restart=on-failure -Slice=background-graphical.slice [Install] WantedBy=lock.target - diff --git a/home/.config/systemd/user/hyprpaper.service b/home/.config/systemd/user/hyprpaper.service new file mode 100644 index 0000000..ae0545e --- /dev/null +++ b/home/.config/systemd/user/hyprpaper.service @@ -0,0 +1,12 @@ +[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 diff --git a/home/.config/systemd/user/hyprpaper.service.d/override.conf b/home/.config/systemd/user/hyprpaper.service.d/override.conf deleted file mode 100644 index ac8a77e..0000000 --- a/home/.config/systemd/user/hyprpaper.service.d/override.conf +++ /dev/null @@ -1,3 +0,0 @@ -[Service] -ExecCondition=/lib/systemd/systemd-xdg-autostart-condition "Hyprland" "" -Slice=background-graphical.slice diff --git a/home/.config/systemd/user/policykit-agent.service b/home/.config/systemd/user/policykit-agent.service index a41b847..2523617 100644 --- a/home/.config/systemd/user/policykit-agent.service +++ b/home/.config/systemd/user/policykit-agent.service @@ -1,12 +1,10 @@ [Unit] Description="PolicyKit authentication agent" -After=graphical-session.target -Requires=graphical-session.target +PartOf=graphical-session.target [Service] ExecStart=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 Restart=on-failure -Slice=background-graphical.slice [Install] -WantedBy=graphical-session.target +WantedBy=wm-ready.target diff --git a/home/.config/systemd/user/swaync-inhibit-lock.service b/home/.config/systemd/user/swaync-inhibit-lock.service index fab3e5d..8361f71 100644 --- a/home/.config/systemd/user/swaync-inhibit-lock.service +++ b/home/.config/systemd/user/swaync-inhibit-lock.service @@ -4,10 +4,8 @@ Requisite=swaync.service Before=lock.target [Service] -Type=oneshot ExecStart=/usr/bin/swaync-client --inhibitor-add screen-locker -Slice=background-graphical.slice +Type=oneshot [Install] WantedBy=lock.target - diff --git a/home/.config/systemd/user/swaync-inhibit-unlock.service b/home/.config/systemd/user/swaync-inhibit-unlock.service index 1497e13..6b36c81 100644 --- a/home/.config/systemd/user/swaync-inhibit-unlock.service +++ b/home/.config/systemd/user/swaync-inhibit-unlock.service @@ -4,9 +4,8 @@ Requisite=swaync.service After=unlock.target [Service] -Type=oneshot ExecStart=/usr/bin/swaync-client --inhibitor-remove screen-locker -Slice=background-graphical.slice +Type=oneshot [Install] WantedBy=unlock.target diff --git a/home/.config/systemd/user/swaync.service b/home/.config/systemd/user/swaync.service new file mode 100644 index 0000000..e26d41e --- /dev/null +++ b/home/.config/systemd/user/swaync.service @@ -0,0 +1,10 @@ +[Unit] +Description="Swaync daemon" +PartOf=graphical-session.target + +[Service] +ExecStart=/usr/bin/swaync +Restart=on-failure + +[Install] +WantedBy=wayland-session.target diff --git a/home/.config/systemd/user/swaync.service.d/override.conf b/home/.config/systemd/user/swaync.service.d/override.conf deleted file mode 100644 index e639392..0000000 --- a/home/.config/systemd/user/swaync.service.d/override.conf +++ /dev/null @@ -1,2 +0,0 @@ -[Service] -Slice=background-graphical.slice diff --git a/home/.config/systemd/user/wayland-session.target b/home/.config/systemd/user/wayland-session.target new file mode 100644 index 0000000..e7b42ca --- /dev/null +++ b/home/.config/systemd/user/wayland-session.target @@ -0,0 +1,6 @@ +[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 diff --git a/home/.config/systemd/user/wayland-session.target.wants/hypridle.service b/home/.config/systemd/user/wayland-session.target.wants/hypridle.service new file mode 120000 index 0000000..0646888 --- /dev/null +++ b/home/.config/systemd/user/wayland-session.target.wants/hypridle.service @@ -0,0 +1 @@ +/home/itsdrike/.config/systemd/user/hypridle.service \ No newline at end of file diff --git a/home/.config/systemd/user/wayland-session@hyprland.desktop.target.wants/hyprland-monitord.service b/home/.config/systemd/user/wayland-session.target.wants/hyprland-monitord.service similarity index 100% rename from home/.config/systemd/user/wayland-session@hyprland.desktop.target.wants/hyprland-monitord.service rename to home/.config/systemd/user/wayland-session.target.wants/hyprland-monitord.service diff --git a/home/.config/systemd/user/graphical-session.target.wants/hyprpaper.service b/home/.config/systemd/user/wayland-session.target.wants/hyprpaper.service similarity index 100% rename from home/.config/systemd/user/graphical-session.target.wants/hyprpaper.service rename to home/.config/systemd/user/wayland-session.target.wants/hyprpaper.service diff --git a/home/.config/systemd/user/graphical-session.target.wants/wl-gammarelay.service b/home/.config/systemd/user/wayland-session.target.wants/wl-gammarelay.service similarity index 100% rename from home/.config/systemd/user/graphical-session.target.wants/wl-gammarelay.service rename to home/.config/systemd/user/wayland-session.target.wants/wl-gammarelay.service diff --git a/home/.config/systemd/user/wl-gammarelay.service b/home/.config/systemd/user/wl-gammarelay.service index 3ce392a..86e8ff7 100644 --- a/home/.config/systemd/user/wl-gammarelay.service +++ b/home/.config/systemd/user/wl-gammarelay.service @@ -1,12 +1,10 @@ [Unit] -Description=Redshift and brightness control for Wayland -After=graphical-session.target -Requires=graphical-session.target +Description="Redshift and brightness control for Wayland" +BindsTo=wayland-session.target [Service] ExecStart=/usr/bin/wl-gammarelay-rs run Restart=on-failure -Slice=background-graphical.slice [Install] -WantedBy=graphical-session.target +WantedBy=wayland-session.target diff --git a/home/.config/systemd/user/wm-ready.target b/home/.config/systemd/user/wm-ready.target new file mode 100644 index 0000000..33ae807 --- /dev/null +++ b/home/.config/systemd/user/wm-ready.target @@ -0,0 +1,7 @@ +[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 diff --git a/home/.config/systemd/user/graphical-session.target.wants/battery-notification.timer b/home/.config/systemd/user/wm-ready.target.wants/battery-notification.timer similarity index 100% rename from home/.config/systemd/user/graphical-session.target.wants/battery-notification.timer rename to home/.config/systemd/user/wm-ready.target.wants/battery-notification.timer diff --git a/home/.config/systemd/user/graphical-session.target.wants/clipman.service b/home/.config/systemd/user/wm-ready.target.wants/clipman.service similarity index 100% rename from home/.config/systemd/user/graphical-session.target.wants/clipman.service rename to home/.config/systemd/user/wm-ready.target.wants/clipman.service diff --git a/home/.config/systemd/user/graphical-session.target.wants/eww-window@bar0.service b/home/.config/systemd/user/wm-ready.target.wants/eww-window@bar0.service similarity index 100% rename from home/.config/systemd/user/graphical-session.target.wants/eww-window@bar0.service rename to home/.config/systemd/user/wm-ready.target.wants/eww-window@bar0.service diff --git a/home/.config/systemd/user/graphical-session.target.wants/eww.service b/home/.config/systemd/user/wm-ready.target.wants/eww.service similarity index 100% rename from home/.config/systemd/user/graphical-session.target.wants/eww.service rename to home/.config/systemd/user/wm-ready.target.wants/eww.service diff --git a/home/.config/systemd/user/graphical-session.target.wants/gh-notification.timer b/home/.config/systemd/user/wm-ready.target.wants/gh-notification.timer similarity index 100% rename from home/.config/systemd/user/graphical-session.target.wants/gh-notification.timer rename to home/.config/systemd/user/wm-ready.target.wants/gh-notification.timer diff --git a/home/.config/systemd/user/graphical-session.target.wants/policykit-agent.service b/home/.config/systemd/user/wm-ready.target.wants/policykit-agent.service similarity index 100% rename from home/.config/systemd/user/graphical-session.target.wants/policykit-agent.service rename to home/.config/systemd/user/wm-ready.target.wants/policykit-agent.service diff --git a/home/.config/uwsm/default-id b/home/.config/uwsm/default-id deleted file mode 100644 index 1dd96b8..0000000 --- a/home/.config/uwsm/default-id +++ /dev/null @@ -1 +0,0 @@ -hyprland-uwsm.desktop diff --git a/home/.config/uwsm/env b/home/.config/uwsm/env deleted file mode 100644 index 545b154..0000000 --- a/home/.config/uwsm/env +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -source "$HOME"/.config/shell/environment diff --git a/home/.local/bin/scripts/gui/hyprland/toggle-idle b/home/.local/bin/scripts/gui/hyprland/toggle-idle index ecc1361..4edf63c 100755 --- a/home/.local/bin/scripts/gui/hyprland/toggle-idle +++ b/home/.local/bin/scripts/gui/hyprland/toggle-idle @@ -1,12 +1,18 @@ #!/usr/bin/env bash set -euo pipefail -serv="hypridle.service" +idleprog="hypridle" # or swayidle -if systemctl --user is-active --quiet "$serv"; then - systemctl --user stop "$serv" - notify-send "Idle-Toggle" "Idle timeouts disabled" +pid="$(pidof "$idleprog" || true)" +if [ -n "$pid" ]; then + # is process suspended? + if ps -o stat= -p "$pid" | grep T >/dev/null; then + kill -CONT "$pid" + notify-send "Idle-Toggle" "Idle timeouts enabled" + else + kill -STOP "$pid" + notify-send "Idle-Toggle" "Idle timeouts disabled" + fi else - systemctl --user start "$serv" - notify-send "Idle-Toggle" "Idle timeouts enabled" + notify-send "Idle-Toggle" "$idleprog not running!" fi diff --git a/install_gui.sh b/install_gui.sh index 47ec471..a799dc9 100755 --- a/install_gui.sh +++ b/install_gui.sh @@ -99,8 +99,7 @@ paru -S --noconfirm --needed \ # Wayland WM essentials paru -S --noconfirm --needed \ - wl-clipboard xdg-desktop-portal xdg-desktop-portal-gtk qt5-wayland qt6-wayland wev wl-gammarelay-rs wdisplays \ - uwsm + wl-clipboard xdg-desktop-portal xdg-desktop-portal-gtk qt5-wayland qt6-wayland wev wl-gammarelay-rs wdisplays # Utilities paru -S --noconfirm --needed \ diff --git a/root/etc/greetd/config.toml b/root/etc/greetd/config.toml index 2ac1c1a..3bb1a06 100644 --- a/root/etc/greetd/config.toml +++ b/root/etc/greetd/config.toml @@ -7,7 +7,7 @@ vt = 1 # If the user logs out, greetd will render the default session [initial_session] user = "itsdrike" -command = "/usr/local/bin/greetd-session-wrapper uwsm start hyprland.desktop" +command = "/usr/local/bin/greetd-session-wrapper Hyprland" # The default session, also known as the greeter. [default_session]