Run i3 as a systemd user unit
This commit is contained in:
@@ -1,4 +1,7 @@
|
||||
[Unit]
|
||||
BindsTo=windowmanager.target
|
||||
After=windowmanager.target
|
||||
|
||||
Wants=blueman.service
|
||||
Wants=dpms.service
|
||||
Wants=dunst.service
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/blueman-applet
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/dunst -config %h/.config/dunstrc
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/firefox --setDefaultBrowser -P default
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
|
||||
5
autostart/services/i3.service
Normal file
5
autostart/services/i3.service
Normal file
@@ -0,0 +1,5 @@
|
||||
[Service]
|
||||
Type=exec
|
||||
ExecStart=i3 --config %h/.i3/config
|
||||
|
||||
Restart=no
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
ConditionEnvironment=MACHINE_HAS_KEEPASSX=true
|
||||
|
||||
[Service]
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
ConditionEnvironment=MACHINE_TYPE=laptop
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
ConditionEnvironment=MACHINE_HAS_NEXTCLOUD=true
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/nm-applet
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/pasystray
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/redshift-gtk -c %h/.config/redshift.conf
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Timer]
|
||||
OnCalendar=Mon..Fri 09:00:00
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
ConditionEnvironment=MACHINE_DEFAULT_SCREENPROFILE
|
||||
|
||||
[Service]
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/spotify
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
ConditionEnvironment=MACHINE_TYPE=laptop
|
||||
|
||||
[Service]
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Timer]
|
||||
OnActiveSec=0s
|
||||
|
||||
3
autostart/services/windowmanager.target
Normal file
3
autostart/services/windowmanager.target
Normal file
@@ -0,0 +1,3 @@
|
||||
[Unit]
|
||||
Requires=i3.service
|
||||
After=i3.service
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/yubikey-touch-detector -libnotify
|
||||
|
||||
@@ -20,13 +20,13 @@ fi
|
||||
|
||||
start_wm() {
|
||||
log "starting i3"
|
||||
exec i3 -c "$HOME/.i3/config" >> "$LOGDIR/i3/i3.log"
|
||||
systemctl --user start windowmanager.target
|
||||
sleep inf
|
||||
# exec systemd-run --user --unit i3_user --pty --setenv=DISPLAY=${DISPLAY} i3 -c "$HOME/.i3/config" >> "$LOGDIR/i3/i3.log"
|
||||
}
|
||||
|
||||
autostart() {
|
||||
log "Starting systemd user target \"autostart.target\""
|
||||
systemctl --user start autostart.target >>"${LOGFILE}" 2>&1
|
||||
}
|
||||
|
||||
exec >> "$LOGFILE" 2>&1
|
||||
|
||||
Reference in New Issue
Block a user