diff options
Diffstat (limited to 'meta/recipes-graphics/wayland/weston-init/weston.service')
-rw-r--r-- | meta/recipes-graphics/wayland/weston-init/weston.service | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/meta/recipes-graphics/wayland/weston-init/weston.service b/meta/recipes-graphics/wayland/weston-init/weston.service new file mode 100644 index 0000000000..e09625b31c --- /dev/null +++ b/meta/recipes-graphics/wayland/weston-init/weston.service | |||
@@ -0,0 +1,71 @@ | |||
1 | # This is a system unit for launching Weston with auto-login as the | ||
2 | # user configured here. | ||
3 | # | ||
4 | # Weston must be built with systemd support, and your weston.ini must load | ||
5 | # the plugin systemd-notify.so. | ||
6 | [Unit] | ||
7 | Description=Weston, a Wayland compositor, as a system service | ||
8 | Documentation=man:weston(1) man:weston.ini(5) | ||
9 | Documentation=http://wayland.freedesktop.org/ | ||
10 | |||
11 | # Make sure we are started after logins are permitted. | ||
12 | Requires=systemd-user-sessions.service | ||
13 | After=systemd-user-sessions.service | ||
14 | |||
15 | # If Plymouth is used, we want to start when it is on its way out. | ||
16 | After=plymouth-quit-wait.service | ||
17 | |||
18 | # D-Bus is necessary for contacting logind. Logind is required. | ||
19 | Wants=dbus.socket | ||
20 | After=dbus.socket | ||
21 | |||
22 | # Ensure the socket is present | ||
23 | Requires=weston.socket | ||
24 | |||
25 | # Since we are part of the graphical session, make sure we are started before | ||
26 | # it is complete. | ||
27 | Before=graphical.target | ||
28 | |||
29 | # Prevent starting on systems without virtual consoles, Weston requires one | ||
30 | # for now. | ||
31 | ConditionPathExists=/dev/tty0 | ||
32 | |||
33 | [Service] | ||
34 | # Requires systemd-notify.so Weston plugin. | ||
35 | Type=notify | ||
36 | EnvironmentFile=/etc/default/weston | ||
37 | ExecStart=/usr/bin/weston --modules=systemd-notify.so | ||
38 | |||
39 | # Optional watchdog setup | ||
40 | TimeoutStartSec=60 | ||
41 | WatchdogSec=20 | ||
42 | |||
43 | # The user to run Weston as. | ||
44 | User=weston | ||
45 | Group=weston | ||
46 | |||
47 | # Make sure the working directory is the users home directory | ||
48 | WorkingDirectory=/home/weston | ||
49 | |||
50 | # Set up a full user session for the user, required by Weston. | ||
51 | PAMName=weston-autologin | ||
52 | |||
53 | # A virtual terminal is needed. | ||
54 | TTYPath=/dev/tty7 | ||
55 | TTYReset=yes | ||
56 | TTYVHangup=yes | ||
57 | TTYVTDisallocate=yes | ||
58 | |||
59 | # Fail to start if not controlling the tty. | ||
60 | StandardInput=tty-fail | ||
61 | StandardOutput=journal | ||
62 | StandardError=journal | ||
63 | |||
64 | # Log this user with utmp, letting it show up with commands 'w' and 'who'. | ||
65 | UtmpIdentifier=tty7 | ||
66 | UtmpMode=user | ||
67 | |||
68 | [Install] | ||
69 | # Note: If you only want weston to start on-demand, remove this line with a | ||
70 | # service drop file | ||
71 | WantedBy=graphical.target | ||