diff --git a/.config/zsh/.zprofile b/.config/zsh/.zprofile
index 30e90b65..04b743a5 100644
--- a/.config/zsh/.zprofile
+++ b/.config/zsh/.zprofile
@@ -120,7 +120,6 @@ unset SSH_AGENT_PID
 if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
     export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
 fi
-gpgconf --launch gpg-agent
 
 if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ]; then
     exec startx $XINITRC
diff --git a/.config/zsh/.zshrc b/.config/zsh/.zshrc
index ec7c8d46..061ddedc 100644
--- a/.config/zsh/.zshrc
+++ b/.config/zsh/.zshrc
@@ -15,5 +15,5 @@ for f in $ZDOTDIR/configs/autogenerated/*; do
 done
 
 export GPG_TTY=$(tty)
-setsid -f gpg-connect-agent updatestartuptty /bye 1>/dev/null
+gpg-connect-agent updatestartuptty /bye >/dev/null 2>&1 --no-autostart
 clear
diff --git a/.local/libexec/dwm/autostart.d/90setup b/.local/libexec/dwm/autorun.d/90setup
similarity index 100%
rename from .local/libexec/dwm/autostart.d/90setup
rename to .local/libexec/dwm/autorun.d/90setup
diff --git a/.local/libexec/dwm/autostart.d/20gpgagent b/.local/libexec/dwm/autostart.d/20gpgagent
deleted file mode 100755
index 25c9c3a7..00000000
--- a/.local/libexec/dwm/autostart.d/20gpgagent
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-gpgconf --launch gpg-agent
diff --git a/.local/libexec/dwm/autostart.d/20pipewire b/.local/libexec/dwm/autostart.d/20pipewire
deleted file mode 100755
index 36f74019..00000000
--- a/.local/libexec/dwm/autostart.d/20pipewire
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-pipewire
diff --git a/.local/libexec/dwm/autostart.d/30dunst b/.local/libexec/dwm/autostart.d/30dunst
deleted file mode 100755
index 039e710e..00000000
--- a/.local/libexec/dwm/autostart.d/30dunst
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-dunst
diff --git a/.local/libexec/dwm/autostart.d/40dwmblocks b/.local/libexec/dwm/autostart.d/40dwmblocks
deleted file mode 100755
index 122ded8a..00000000
--- a/.local/libexec/dwm/autostart.d/40dwmblocks
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-env PATH="$HOME/.local/libexec/statusbar:$PATH" dwmblocks
diff --git a/.local/libexec/dwm/autostart.d/40unclutter b/.local/libexec/dwm/autostart.d/40unclutter
deleted file mode 100755
index 461a5e4d..00000000
--- a/.local/libexec/dwm/autostart.d/40unclutter
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-unclutter -noevents -idle 3
diff --git a/.local/libexec/dwm/autostart.d/50runsvdir b/.local/libexec/dwm/autostart.d/50runsvdir
deleted file mode 100755
index ae3b7697..00000000
--- a/.local/libexec/dwm/autostart.d/50runsvdir
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-runsvdir $SVDIR
diff --git a/.local/libexec/dwm/autostart.d/90lf b/.local/libexec/dwm/autostart.d/90lf
deleted file mode 100755
index 2c2b483a..00000000
--- a/.local/libexec/dwm/autostart.d/90lf
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-lf -server
diff --git a/.local/libexec/dwm/autostart.d/90syncthingtray b/.local/libexec/dwm/autostart.d/90syncthingtray
deleted file mode 100755
index 39b8b77d..00000000
--- a/.local/libexec/dwm/autostart.d/90syncthingtray
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-syncthingtray
diff --git a/.local/libexec/dwm/autostart.d/30xsecurelock b/.local/libexec/dwm/locker
similarity index 94%
rename from .local/libexec/dwm/autostart.d/30xsecurelock
rename to .local/libexec/dwm/locker
index 6c45bd7b..dc20bb17 100755
--- a/.local/libexec/dwm/autostart.d/30xsecurelock
+++ b/.local/libexec/dwm/locker
@@ -16,4 +16,4 @@ env \
     XSECURELOCK_SAVER="/usr/libexec/xscreensaver/cubicgrid" \
     XSECURELOCK_SHOW_USERNAME=1 \
     XSECURELOCK_SHOW_HOSTNAME=1 \
-    xss-lock -n /usr/libexec/xsecurelock/dimmer -l -- sh -c "xsecurelock -- playerctl pause || kill -9 -1" &
+    xss-lock -n /usr/libexec/xsecurelock/dimmer -l -- sh -c "xsecurelock -- playerctl pause || kill -9 -1"