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