# This is a system unit for launching AGL compositor with auto-login as the # user configured here. # # AGL compositor and Weston must be built with systemd support, and your # weston.ini must load the plugin systemd-notify.so. # # Attention: # If you will add new tty dependency setting, you need to update # agl-compositor-guest.conf. [Unit] Description=AGL compositor Documentation=man:weston(1) man:weston.ini(5) Documentation=http://wayland.freedesktop.org/ # Make sure we are started after logins are permitted. Requires=systemd-user-sessions.service After=systemd-user-sessions.service # D-Bus is necessary for contacting logind. Logind is required. Wants=dbus.socket After=dbus.socket # Ensure the socket is present Requires=agl-compositor.socket # Since we are part of the graphical session, make sure we are started before # it is complete. Before=graphical.target # Prevent starting on systems without virtual consoles, Weston requires one # for now. ConditionPathExists=/dev/tty0 [Service] # Requires systemd-notify.so Weston plugin. Type=notify EnvironmentFile=-/etc/default/agl-compositor ExecStart=/usr/bin/agl-compositor --modules=systemd-notify.so # Watchdog setup TimeoutStartSec=60 WatchdogSec=20 # The user to run as. User=agl-driver Group=agl-driver # Make sure the working directory is the users home directory WorkingDirectory=/home/agl-driver # Set up a full user session for the user PAMName=agl-compositor-autologin # A virtual terminal is needed. TTYPath=/dev/tty7 TTYReset=yes TTYVHangup=yes TTYVTDisallocate=yes # Fail to start if not controlling the tty. StandardInput=tty-fail StandardOutput=journal StandardError=journal # Log this user with utmp, letting it show up with commands 'w' and 'who'. UtmpIdentifier=tty7 UtmpMode=user [Install] # Note: If you only want weston to start on-demand, remove this line with a # service drop file WantedBy=graphical.target