]>
Commit | Line | Data |
---|---|---|
5c23128d | 1 | units = [ |
37efbbd8 ZJS |
2 | ['basic.target', ''], |
3 | ['bluetooth.target', ''], | |
4 | ['cryptsetup-pre.target', 'HAVE_LIBCRYPTSETUP'], | |
5 | ['cryptsetup.target', 'HAVE_LIBCRYPTSETUP', | |
6 | 'sysinit.target.wants/'], | |
7 | ['dev-hugepages.mount', '', | |
8 | 'sysinit.target.wants/'], | |
9 | ['dev-mqueue.mount', '', | |
10 | 'sysinit.target.wants/'], | |
11 | ['emergency.target', ''], | |
12 | ['exit.target', ''], | |
13 | ['final.target', ''], | |
14 | ['getty.target', '', | |
15 | 'multi-user.target.wants/'], | |
16 | ['graphical.target', '', | |
17 | 'runlevel5.target default.target'], | |
18 | ['halt.target', ''], | |
19 | ['hibernate.target', 'ENABLE_HIBERNATE'], | |
20 | ['hybrid-sleep.target', 'ENABLE_HIBERNATE'], | |
21 | ['initrd-fs.target', ''], | |
22 | ['initrd-root-device.target', ''], | |
23 | ['initrd-root-fs.target', ''], | |
24 | ['initrd-switch-root.target', ''], | |
25 | ['initrd.target', ''], | |
26 | ['kexec.target', ''], | |
27 | ['ldconfig.service', 'ENABLE_LDCONFIG', | |
28 | 'sysinit.target.wants/'], | |
29 | ['local-fs-pre.target', ''], | |
30 | ['local-fs.target', ''], | |
31 | ['machine.slice', 'ENABLE_MACHINED'], | |
32 | ['machines.target', 'ENABLE_MACHINED', | |
33 | join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')], | |
34 | ['multi-user.target', '', | |
35 | 'runlevel2.target runlevel3.target runlevel4.target'], | |
36 | ['network-online.target', ''], | |
37 | ['network-pre.target', ''], | |
38 | ['network.target', ''], | |
39 | ['nss-lookup.target', ''], | |
40 | ['nss-user-lookup.target', ''], | |
41 | ['paths.target', ''], | |
42 | ['poweroff.target', '', | |
43 | 'runlevel0.target'], | |
44 | ['printer.target', ''], | |
45 | ['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT', | |
46 | 'sysinit.target.wants/'], | |
47 | ['proc-sys-fs-binfmt_misc.mount', 'ENABLE_BINFMT'], | |
48 | ['reboot.target', '', | |
49 | 'runlevel6.target ctrl-alt-del.target'], | |
50 | ['remote-fs-pre.target', ''], | |
51 | ['remote-fs.target', '', | |
52 | join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')], | |
53 | ['rescue.target', '', | |
54 | 'runlevel1.target'], | |
55 | ['rpcbind.target', ''], | |
56 | ['shutdown.target', ''], | |
57 | ['sigpwr.target', ''], | |
58 | ['sleep.target', ''], | |
59 | ['slices.target', ''], | |
60 | ['smartcard.target', ''], | |
61 | ['sockets.target', ''], | |
62 | ['sound.target', ''], | |
63 | ['suspend.target', ''], | |
64 | ['swap.target', ''], | |
65 | ['sys-fs-fuse-connections.mount', '', | |
66 | 'sysinit.target.wants/'], | |
67 | ['sys-kernel-config.mount', '', | |
68 | 'sysinit.target.wants/'], | |
69 | ['sys-kernel-debug.mount', '', | |
70 | 'sysinit.target.wants/'], | |
71 | ['sysinit.target', ''], | |
72 | ['syslog.socket', ''], | |
73 | ['system-update.target', ''], | |
74 | ['system.slice', ''], | |
75 | ['systemd-ask-password-console.path', '', | |
76 | 'sysinit.target.wants/'], | |
77 | ['systemd-ask-password-wall.path', '', | |
78 | 'multi-user.target.wants/'], | |
79 | ['systemd-coredump.socket', 'ENABLE_COREDUMP', | |
80 | 'sockets.target.wants/'], | |
81 | ['systemd-initctl.socket', '', | |
82 | 'sockets.target.wants/'], | |
1c9f1314 | 83 | ['systemd-journal-gatewayd.socket', 'ENABLE_REMOTE HAVE_MICROHTTPD'], |
84 | ['systemd-journal-remote.socket', 'ENABLE_REMOTE HAVE_MICROHTTPD'], | |
37efbbd8 ZJS |
85 | ['systemd-journald-audit.socket', '', |
86 | 'sockets.target.wants/'], | |
87 | ['systemd-journald-dev-log.socket', '', | |
88 | 'sockets.target.wants/'], | |
89 | ['systemd-journald.socket', '', | |
90 | 'sockets.target.wants/'], | |
91 | ['systemd-networkd.socket', '', | |
92 | join_paths(pkgsysconfdir, 'system/sockets.target.wants/')], | |
93 | ['systemd-rfkill.socket', 'ENABLE_RFKILL'], | |
94 | ['systemd-tmpfiles-clean.timer', '', | |
95 | 'timers.target.wants/'], | |
96 | ['systemd-udevd-control.socket', '', | |
97 | 'sockets.target.wants/'], | |
98 | ['systemd-udevd-kernel.socket', '', | |
99 | 'sockets.target.wants/'], | |
100 | ['time-sync.target', ''], | |
101 | ['timers.target', ''], | |
102 | ['umount.target', ''], | |
103 | ['user.slice', ''], | |
78d1039d FS |
104 | ['var-lib-machines.mount', 'ENABLE_MACHINED', |
105 | 'remote-fs.target.wants/ machines.target.wants/'], | |
082ef2ad | 106 | ] |
5c23128d ZJS |
107 | |
108 | in_units = [ | |
37efbbd8 ZJS |
109 | ['debug-shell.service', ''], |
110 | ['emergency.service', ''], | |
111 | ['halt-local.service', 'HAVE_SYSV_COMPAT'], | |
112 | ['initrd-cleanup.service', ''], | |
113 | ['initrd-parse-etc.service', ''], | |
114 | ['initrd-switch-root.service', ''], | |
115 | ['initrd-udevadm-cleanup-db.service', ''], | |
116 | ['kmod-static-nodes.service', 'HAVE_KMOD ENABLE_TMPFILES', | |
117 | 'sysinit.target.wants/'], | |
118 | ['quotaon.service', 'ENABLE_QUOTACHECK'], | |
119 | ['rc-local.service', 'HAVE_SYSV_COMPAT'], | |
120 | ['rescue.service', ''], | |
121 | ['system-update-cleanup.service', ''], | |
122 | ['systemd-ask-password-console.service', ''], | |
123 | ['systemd-ask-password-wall.service', ''], | |
124 | ['systemd-backlight@.service', 'ENABLE_BACKLIGHT'], | |
125 | ['systemd-binfmt.service', 'ENABLE_BINFMT', | |
126 | 'sysinit.target.wants/'], | |
127 | ['systemd-coredump@.service', 'ENABLE_COREDUMP'], | |
128 | ['systemd-exit.service', ''], | |
129 | ['systemd-firstboot.service', 'ENABLE_FIRSTBOOT', | |
130 | 'sysinit.target.wants/'], | |
131 | ['systemd-fsck-root.service', ''], | |
132 | ['systemd-fsck@.service', ''], | |
133 | ['systemd-halt.service', ''], | |
134 | ['systemd-hibernate-resume@.service', 'ENABLE_HIBERNATE'], | |
135 | ['systemd-hibernate.service', 'ENABLE_HIBERNATE'], | |
136 | ['systemd-hybrid-sleep.service', 'ENABLE_HIBERNATE'], | |
137 | ['systemd-hostnamed.service', 'ENABLE_HOSTNAMED', | |
138 | 'dbus-org.freedesktop.hostname1.service'], | |
139 | ['systemd-hwdb-update.service', 'ENABLE_HWDB', | |
140 | 'sysinit.target.wants/'], | |
141 | ['systemd-importd.service', 'ENABLE_IMPORTD', | |
142 | 'dbus-org.freedesktop.import1.service'], | |
143 | ['systemd-initctl.service', ''], | |
144 | ['systemd-journal-catalog-update.service', '', | |
145 | 'sysinit.target.wants/'], | |
146 | ['systemd-journal-flush.service', '', | |
147 | 'sysinit.target.wants/'], | |
148 | ['systemd-journal-gatewayd.service', 'ENABLE_REMOTE HAVE_MICROHTTPD'], | |
149 | ['systemd-journal-remote.service', 'ENABLE_REMOTE HAVE_MICROHTTPD'], | |
150 | ['systemd-journal-upload.service', 'ENABLE_REMOTE HAVE_LIBCURL'], | |
151 | ['systemd-journald.service', '', | |
152 | 'sysinit.target.wants/'], | |
153 | ['systemd-kexec.service', ''], | |
154 | ['systemd-localed.service', 'ENABLE_LOCALED', | |
155 | 'dbus-org.freedesktop.locale1.service'], | |
156 | ['systemd-logind.service', 'ENABLE_LOGIND', | |
157 | 'multi-user.target.wants/ dbus-org.freedesktop.login1.service'], | |
158 | ['systemd-machine-id-commit.service', '', | |
159 | 'sysinit.target.wants/'], | |
160 | ['systemd-machined.service', 'ENABLE_MACHINED', | |
161 | 'dbus-org.freedesktop.machine1.service'], | |
162 | ['systemd-modules-load.service', 'HAVE_KMOD', | |
163 | 'sysinit.target.wants/'], | |
164 | ['systemd-networkd-wait-online.service', 'ENABLE_NETWORKD', | |
165 | join_paths(pkgsysconfdir, 'system/network-online.target.wants/')], | |
166 | ['systemd-nspawn@.service', ''], | |
167 | ['systemd-poweroff.service', ''], | |
168 | ['systemd-quotacheck.service', 'ENABLE_QUOTACHECK'], | |
169 | ['systemd-random-seed.service', 'ENABLE_RANDOMSEED', | |
170 | 'sysinit.target.wants/'], | |
171 | ['systemd-reboot.service', ''], | |
172 | ['systemd-remount-fs.service', '', | |
173 | 'local-fs.target.wants/'], | |
174 | ['systemd-rfkill.service', 'ENABLE_RFKILL'], | |
175 | ['systemd-suspend.service', ''], | |
176 | ['systemd-sysctl.service', '', | |
177 | 'sysinit.target.wants/'], | |
178 | ['systemd-sysusers.service', 'ENABLE_SYSUSERS', | |
179 | 'sysinit.target.wants/'], | |
180 | ['systemd-timedated.service', 'ENABLE_TIMEDATED', | |
181 | 'dbus-org.freedesktop.timedate1.service'], | |
182 | ['systemd-timesyncd.service', 'ENABLE_TIMESYNCD', | |
183 | join_paths(pkgsysconfdir, 'system/sysinit.target.wants/')], | |
184 | ['systemd-tmpfiles-clean.service', 'ENABLE_TMPFILES'], | |
185 | ['systemd-tmpfiles-setup-dev.service', 'ENABLE_TMPFILES', | |
186 | 'sysinit.target.wants/'], | |
187 | ['systemd-tmpfiles-setup.service', 'ENABLE_TMPFILES', | |
188 | 'sysinit.target.wants/'], | |
189 | ['systemd-udev-settle.service', ''], | |
190 | ['systemd-udev-trigger.service', '', | |
191 | 'sysinit.target.wants/'], | |
192 | ['systemd-udevd.service', '', | |
193 | 'sysinit.target.wants/'], | |
194 | ['systemd-update-done.service', '', | |
195 | 'sysinit.target.wants/'], | |
196 | ['systemd-update-utmp-runlevel.service', 'HAVE_UTMP HAVE_SYSV_COMPAT', | |
197 | 'multi-user.target.wants/ graphical.target.wants/ rescue.target.wants/'], | |
198 | ['systemd-update-utmp.service', 'HAVE_UTMP', | |
199 | 'sysinit.target.wants/'], | |
200 | ['systemd-user-sessions.service', '', | |
201 | 'multi-user.target.wants/'], | |
202 | ['systemd-vconsole-setup.service', 'ENABLE_VCONSOLE'], | |
203 | ['systemd-volatile-root.service', ''], | |
082ef2ad ZJS |
204 | ] |
205 | ||
206 | m4_units = [ | |
37efbbd8 ZJS |
207 | ['getty@.service', '', |
208 | 'autovt@.service ' + | |
209 | join_paths(pkgsysconfdir, 'system/getty.target.wants/getty@tty1.service')], | |
210 | ['serial-getty@.service', ''], | |
211 | ['tmp.mount', '', | |
212 | 'local-fs.target.wants/'], | |
082ef2ad ZJS |
213 | ] |
214 | ||
215 | m4_in_units = [ | |
37efbbd8 ZJS |
216 | ['console-getty.service', ''], |
217 | ['container-getty@.service', ''], | |
218 | ['systemd-networkd.service', 'ENABLE_NETWORKD', | |
08936cea | 219 | join_paths(pkgsysconfdir, 'system/dbus-org.freedesktop.network1.service') + ' ' + |
37efbbd8 ZJS |
220 | join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')], |
221 | ['systemd-resolved.service', 'ENABLE_RESOLVED', | |
08936cea | 222 | join_paths(pkgsysconfdir, 'system/dbus-org.freedesktop.resolve1.service') + ' ' + |
37efbbd8 ZJS |
223 | join_paths(pkgsysconfdir, 'system/multi-user.target.wants/')], |
224 | ['user@.service', ''], | |
082ef2ad ZJS |
225 | ] |
226 | ||
227 | foreach tuple : m4_in_units | |
37efbbd8 | 228 | file = tuple[0] |
082ef2ad | 229 | |
37efbbd8 ZJS |
230 | gen = configure_file( |
231 | input : file + '.m4.in', | |
232 | output : file + '.m4', | |
233 | configuration : substs) | |
082ef2ad | 234 | |
37efbbd8 | 235 | m4_units += [[file, tuple.get(1, ''), tuple.get(2, ''), gen]] |
082ef2ad | 236 | endforeach |
5c23128d | 237 | |
2d9f0c68 | 238 | foreach tuple : in_units |
37efbbd8 | 239 | file = tuple[0] |
082ef2ad | 240 | |
37efbbd8 ZJS |
241 | # we do this here because install_data does not accept custom_target output |
242 | conds = tuple[1].split(' ') | |
2c201c21 ZJS |
243 | install = ((conds.get(0, '') == '' or conf.get(conds[0], false)) and |
244 | (conds.get(1, '') == '' or conf.get(conds[1], false))) | |
5c23128d | 245 | |
37efbbd8 ZJS |
246 | gen1 = configure_file( |
247 | input : file + '.in', | |
248 | output : file + '.tmp', | |
249 | configuration : substs) | |
250 | gen2 = custom_target( | |
251 | file, | |
252 | input : gen1, | |
253 | output : file, | |
254 | command : [sed, '/^## /d', '@INPUT@'], | |
255 | capture : true, | |
256 | install : install, | |
257 | install_dir : systemunitdir) | |
2d9f0c68 | 258 | |
37efbbd8 ZJS |
259 | if install and tuple.length() > 2 |
260 | foreach target : tuple[2].split() | |
261 | meson.add_install_script('meson-add-wants.sh', systemunitdir, target, file) | |
262 | endforeach | |
263 | endif | |
5c23128d ZJS |
264 | endforeach |
265 | ||
2d9f0c68 | 266 | foreach tuple : m4_units |
37efbbd8 ZJS |
267 | file = tuple[0] |
268 | input = tuple.get(3, file + '.m4') | |
082ef2ad | 269 | |
37efbbd8 ZJS |
270 | # we do this here because install_data does not accept custom_target output |
271 | conds = tuple[1].split(' ') | |
2c201c21 ZJS |
272 | install = ((conds.get(0, '') == '' or conf.get(conds[0], false)) and |
273 | (conds.get(1, '') == '' or conf.get(conds[1], false))) | |
5c23128d | 274 | |
37efbbd8 ZJS |
275 | custom_target( |
276 | file, | |
277 | input : input, | |
278 | output: file, | |
279 | command : [m4, '-P'] + m4_defines + ['@INPUT@'], | |
280 | capture : true, | |
281 | install : install, | |
282 | install_dir : systemunitdir) | |
2d9f0c68 | 283 | |
37efbbd8 ZJS |
284 | if tuple.length() > 2 and install |
285 | foreach target : tuple[2].split() | |
286 | meson.add_install_script('meson-add-wants.sh', systemunitdir, target, file) | |
287 | endforeach | |
288 | endif | |
5c23128d ZJS |
289 | endforeach |
290 | ||
082ef2ad | 291 | foreach tuple : units |
37efbbd8 ZJS |
292 | file = tuple[0] |
293 | input = tuple.get(3, file) | |
5c23128d | 294 | |
37efbbd8 | 295 | conds = tuple[1].split(' ') |
2c201c21 ZJS |
296 | install = ((conds.get(0, '') == '' or conf.get(conds[0], false)) and |
297 | (conds.get(1, '') == '' or conf.get(conds[1], false))) | |
5c23128d | 298 | |
37efbbd8 ZJS |
299 | if install |
300 | install_data(input, | |
301 | install_dir : systemunitdir) | |
2d9f0c68 | 302 | |
37efbbd8 ZJS |
303 | if tuple.length() > 2 |
304 | foreach target : tuple[2].split() | |
305 | meson.add_install_script( | |
306 | 'meson-add-wants.sh', systemunitdir, target, file) | |
307 | endforeach | |
308 | endif | |
309 | endif | |
5c23128d ZJS |
310 | endforeach |
311 | ||
082ef2ad ZJS |
312 | ############################################################ |
313 | ||
7b76fce1 | 314 | meson.add_install_script(meson_make_symlink, |
e17e5ba9 MB |
315 | join_paths(pkgsysconfdir, 'user'), |
316 | join_paths(sysconfdir, 'xdg/systemd/user')) | |
7b76fce1 | 317 | meson.add_install_script(meson_make_symlink, |
e17e5ba9 MB |
318 | join_paths(dbussystemservicedir, 'org.freedesktop.systemd1.service'), |
319 | join_paths(dbussessionservicedir, 'org.freedesktop.systemd1.service')) | |
2c201c21 | 320 | if conf.get('HAVE_SYSV_COMPAT', false) |
37efbbd8 ZJS |
321 | foreach i : [1, 2, 3, 4, 5] |
322 | meson.add_install_script( | |
323 | 'sh', '-c', | |
324 | mkdir_p | |
325 | .format(join_paths(systemunitdir, 'runlevel@0@.target.wants'.format(i)))) | |
326 | endforeach | |
94e75a54 ZJS |
327 | endif |
328 | ||
5c23128d | 329 | subdir('user') |