]> git.ipfire.org Git - thirdparty/systemd.git/blame - units/system-update-cleanup.service
Merge pull request #10495 from poettering/login-boot-hookup
[thirdparty/systemd.git] / units / system-update-cleanup.service
CommitLineData
a7df2d1e
ZJS
1# SPDX-License-Identifier: LGPL-2.1+
2#
953bf460
ZJS
3# This file is part of systemd.
4#
5# systemd is free software; you can redistribute it and/or modify it
6# under the terms of the GNU Lesser General Public License as published by
7# the Free Software Foundation; either version 2.1 of the License, or
8# (at your option) any later version.
9
10[Unit]
11Description=Remove the Offline System Updates symlink
12Documentation=man:systemd.special(5) man:systemd.offline-updates(7)
13After=system-update.target
14DefaultDependencies=no
15Conflicts=shutdown.target
0b9ad5bf 16Before=shutdown.target
94a1d03e 17SuccessAction=reboot
953bf460
ZJS
18
19# system-update-generator uses laccess("/system-update"), while a plain
20# ConditionPathExists=/system-update uses access("/system-update"), so
21# we need an alternate condition to cover the case of a dangling symlink.
22#
23# This service is only invoked if /system-update exists, i.e. if the
24# condition tested by system-update-generator remains true and the system
25# would be diverted into system-update.target again after reboot. This way
26# we guard against being diverted into system-update.target again, which
27# works as a safety measure, but we will not step on the toes of the
28# update script if it successfully removed the symlink and scheduled a
29# reboot or some other action on its own.
30ConditionPathExists=|/system-update
31ConditionPathIsSymbolicLink=|/system-update
32
33[Service]
34Type=oneshot
35ExecStart=/bin/rm -fv /system-update