summaryrefslogtreecommitdiff
path: root/dotfiles/system/.xinitrc
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/system/.xinitrc')
-rwxr-xr-xdotfiles/system/.xinitrc73
1 files changed, 72 insertions, 1 deletions
diff --git a/dotfiles/system/.xinitrc b/dotfiles/system/.xinitrc
index 85833a5..d37c50f 100755
--- a/dotfiles/system/.xinitrc
+++ b/dotfiles/system/.xinitrc
@@ -1,2 +1,73 @@
#!/bin/sh
-startdwm
+# Craig Jennings <c@cjennings.net>
+# X11 session initialization
+
+# ============================================================================
+# Gnome Keyring Integration
+# ============================================================================
+# Start gnome-keyring-daemon and export environment variables
+# This ensures SSH agent, secrets, and GPG agent integration work properly
+eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)
+export SSH_AUTH_SOCK
+
+# Update D-Bus activation environment with keyring variables
+# This allows apps started via D-Bus to access the keyring
+dbus-update-activation-environment --systemd DISPLAY XAUTHORITY SSH_AUTH_SOCK
+
+# ============================================================================
+# DWM Session Startup
+# ============================================================================
+# Set logfile for dwm output
+logdir="$HOME/.local/var/log"
+[ -d "$logdir" ] || mkdir -p "$logdir"
+logfile="$logdir/$(date +%Y-%m-%d_%H-%M-%S-%3N.dwm.log)"
+
+# X Org environment
+export XAUTHORITY=$HOME/.Xauthority
+export DISPLAY=:0.0
+
+# Allow sudo use of display
+xhost +si:localuser:root
+
+# Merge local configuration for X client applications
+[ -f ~/.Xresources ] && xrdb -merge -I $HOME ~/.Xresources
+
+# Merge xmodmap configuration
+[[ -f ~/.Xmodmap ]] && xmodmap ~/.Xmodmap
+
+# Info in the status bar
+(conky | while read LINE; do xsetroot -name "$LINE"; done) &
+
+# Map short-pressed Ctrl to Escape (commented out)
+# xcape -e 'Control_L=Escape' &
+
+# Map shift backspace to delete (commented out)
+# xcape -e 'Shift_L=Delete'
+
+# Make CapsLock behave like Ctrl
+setxkbmap -option ctrl:nocaps
+
+# Start background services
+xautolock -time 5 -locker slock &
+# picom &
+sxhkd &
+nitrogen --restore &
+nm-applet &
+blueman-applet &
+caffeine &
+caffeine-indicator &
+battery_monitor &
+mpd &
+dunst &
+redshift &
+sudo powertop --auto-tune &
+flameshot &
+insync start &
+touchpad-indicator-start &
+signal-desktop --start-in-tray &
+protonmail-bridge --no-window &
+# warpinator-start &
+
+# Start dwm window manager
+echo "$(date): Starting dwm" >> "$logfile" 2>&1
+exec dwm > $logfile 2>&1