[Unit] Description=Kodi standalone (X11) After=remote-fs.target systemd-user-sessions.service network-online.target nss-lookup.target sound.target bluetooth.target polkit.service upower.service mysqld.service lircd.service Wants=network-online.target polkit.service upower.service Conflicts=getty@tty1.service [Service] User=kodi Group=kodi SupplementaryGroups=audio video optical power EnvironmentFile=-/etc/conf.d/kodi-standalone PAMName=login TTYPath=/dev/tty1 ExecStart=/usr/bin/xinit /usr/bin/kodi-standalone -- :0 -quiet -nolisten tcp vt1 ExecStop=/usr/bin/killall --exact --wait kodi.bin Restart=on-abort StandardInput=tty StandardOutput=journal # Some distributions require additional group membership via drop-in overrides: # Ubuntu >=20: add 'render' to SupplementaryGroups= for hardware acceleration # Ubuntu tty access: add 'dialout' to SupplementaryGroups= # Example drop-in at /etc/systemd/system/kodi-x11.service.d/override.conf: # [Service] # SupplementaryGroups=render [Install] Alias=display-manager.service