Use persistent systemd units for autostart

This commit is contained in:
2020-12-20 20:36:27 +01:00
parent f4fbae6683
commit 0f36baf30c
31 changed files with 194 additions and 182 deletions

View File

@@ -0,0 +1,19 @@
[Unit]
Wants=blueman.service
Wants=dunst.service
Wants=firefox.service
Wants=gpg-agent.service
Wants=keepassx.service
Wants=keyboard.service
Wants=laptop-lid.service
Wants=nextcloud.service
Wants=nm-applet.service
Wants=pasystray.service
Wants=redshift.service
Wants=restic.timer
Wants=screencfg.service
Wants=spotify.service
Wants=touchpad.service
Wants=wallpaper.timer
Wants=xresources.service
Wants=yubikey-touch-detector.service

View File

@@ -0,0 +1,5 @@
[Unit]
BindsTo=autostart.target
[Service]
ExecStart=/usr/bin/blueman-applet

View File

@@ -0,0 +1,5 @@
[Unit]
BindsTo=autostart.target
[Service]
ExecStart=/usr/bin/dunst -config %h/.config/dunstrc

View File

@@ -0,0 +1,5 @@
[Unit]
BindsTo=autostart.target
[Service]
ExecStart=/usr/bin/firefox --setDefaultBrowser -P default

View File

@@ -0,0 +1,6 @@
[Unit]
BindsTo=autostart.target
[Service]
Type=forking
ExecStart=/usr/bin/gpg-agent --homedir %h/.gnupg --no-detach --daemon

View File

@@ -0,0 +1,6 @@
[Unit]
BindsTo=autostart.target
ConditionEnvironment=MACHINE_HAS_KEEPASSX=true
[Service]
ExecStart=/usr/bin/keepassx --keyfile %h/.secret/main.key %h/.secret/main.kdbx

View File

@@ -0,0 +1,8 @@
[Unit]
BindsTo=autostart.target
[Service]
Type=oneshot
ExecStart=/usr/bin/setxkbmap -layout de -variant nodeadkeys
ExecStart=/usr/bin/xset r rate 150 50
RemainAfterExit=true

View File

@@ -0,0 +1,7 @@
[Unit]
BindsTo=autostart.target
ConditionEnvironment=MACHINE_TYPE=laptop
[Service]
ExecStart=/usr/bin/bash -c 'grep "^${ACPI_LID_NAME}.*enabled" /proc/acpi/wakeup && echo " ${ACPI_LID_NAME}" | sudo tee /proc/acpi/wakeup'

View File

@@ -0,0 +1,7 @@
[Unit]
BindsTo=autostart.target
ConditionEnvironment=MACHINE_HAS_NEXTCLOUD=true
[Service]
ExecStart=/usr/bin/nextcloud --background

View File

@@ -0,0 +1,5 @@
[Unit]
BindsTo=autostart.target
[Service]
ExecStart=/usr/bin/nm-applet

View File

@@ -0,0 +1,5 @@
[Unit]
BindsTo=autostart.target
[Service]
ExecStart=/usr/bin/pasystray

View File

@@ -0,0 +1,5 @@
[Unit]
BindsTo=autostart.target
[Service]
ExecStart=/usr/bin/redshift-gtk -c %h/.config/redshift.conf

View File

@@ -0,0 +1,7 @@
[Unit]
ConditionEnvironment=MACHINE_HAS_RESTIC_BACKUP=true
[Service]
Type=oneshot
ExecStart=%h/bin/restic-backup
RemainAfterExit=true

View File

@@ -0,0 +1,7 @@
[Unit]
BindsTo=autostart.target
[Timer]
OnCalendar=Mon..Fri 09:00:00
OnCalendar=Mon..Fri 12:00:00
OnCalendar=Mon..Fri 16:00:00

View File

@@ -0,0 +1,12 @@
[Unit]
BindsTo=autostart.target
ConditionEnvironment=MACHINE_DEFAULT_SCREENPROFILE
[Service]
Type=oneshot
# systemd.service(5):
# > The command to execute may contain spaces, but control characters are not
# > allowed.
ExecStart=bash -c '%h/.screencfg/${MACHINE_DEFAULT_SCREENPROFILE}.sh'
RemainAfterExit=true

View File

@@ -0,0 +1,5 @@
[Unit]
BindsTo=autostart.target
[Service]
ExecStart=/usr/bin/spotify

View File

@@ -0,0 +1,16 @@
[Unit]
BindsTo=autostart.target
ConditionEnvironment=MACHINE_TYPE=laptop
[Service]
Type=oneshot
ExecStart=/usr/bin/synclient VertEdgeScroll=0
ExecStart=/usr/bin/synclient VertTwoFingerScroll=1
ExecStart=/usr/bin/synclient MaxSpeed=2.2
ExecStart=/usr/bin/synclient AccelFactor=0.08
ExecStart=/usr/bin/synclient TapButton1=1
ExecStart=/usr/bin/synclient CoastingSpeed=0
ExecStart=/usr/bin/synclient PalmDetect=1
ExecStart=/usr/bin/synclient PalmMinWidth=20
ExecStart=/usr/bin/synclient PalmMinZ=1
RemainAfterExit=true

View File

@@ -0,0 +1,4 @@
[Service]
Type=oneshot
ExecStart=/usr/bin/setrandom --recursive --onlylarge --mode=stretch /usr/share/wallpapers
RemainAfterExit=true

View File

@@ -0,0 +1,8 @@
[Unit]
BindsTo=autostart.target
[Timer]
OnActiveSec=0s
OnCalendar=hourly
Unit=wallpaper.service
RemainAfterElapse=true

View File

@@ -0,0 +1,7 @@
[Unit]
BindsTo=autostart.target
[Service]
Type=oneshot
ExecStart=/usr/bin/xrdb -merge -I%h %h/.Xresources
RemainAfterExit=true

View File

@@ -0,0 +1,5 @@
[Unit]
BindsTo=autostart.target
[Service]
ExecStart=/usr/bin/yubikey-touch-detector -libnotify