mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-21 14:31:02 +02:00
systemd: enable systemd-timesyncd
In the process clean up moving units from /etc to /usr, the current goo was sloppy and sometimes missed when systemd added new things to /etc. For example we didn't move systemd-networkd.socket, added in 219.
This commit is contained in:
parent
dc626a669e
commit
9b5c37fa39
@ -340,6 +340,8 @@ multilib_src_install() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
multilib_src_install_all() {
|
multilib_src_install_all() {
|
||||||
|
local unitdir=$(systemd_get_unitdir)
|
||||||
|
|
||||||
prune_libtool_files --modules
|
prune_libtool_files --modules
|
||||||
einstalldocs
|
einstalldocs
|
||||||
|
|
||||||
@ -347,9 +349,9 @@ multilib_src_install_all() {
|
|||||||
local prefix
|
local prefix
|
||||||
use symlink-usr && prefix=/usr
|
use symlink-usr && prefix=/usr
|
||||||
for app in halt poweroff reboot runlevel shutdown telinit; do
|
for app in halt poweroff reboot runlevel shutdown telinit; do
|
||||||
dosym "/${ROOTPREFIX-/usr}/bin/systemctl" ${prefix}/sbin/${app}
|
dosym "${ROOTPREFIX-/usr}/bin/systemctl" ${prefix}/sbin/${app}
|
||||||
done
|
done
|
||||||
dosym "/${ROOTPREFIX-/usr}/lib/systemd/systemd" ${prefix}/sbin/init
|
dosym "${ROOTPREFIX-/usr}/lib/systemd/systemd" ${prefix}/sbin/init
|
||||||
else
|
else
|
||||||
# we just keep sysvinit tools, so no need for the mans
|
# we just keep sysvinit tools, so no need for the mans
|
||||||
rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
|
rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
|
||||||
@ -369,31 +371,32 @@ multilib_src_install_all() {
|
|||||||
systemd_dotmpfilesd "${FILESDIR}"/systemd-resolv.conf
|
systemd_dotmpfilesd "${FILESDIR}"/systemd-resolv.conf
|
||||||
|
|
||||||
# Don't default to graphical.target
|
# Don't default to graphical.target
|
||||||
rm "${D}"/usr/lib/systemd/system/default.target || die
|
rm "${D}${unitdir}"/default.target || die
|
||||||
dosym multi-user.target /usr/lib/systemd/system/default.target
|
dosym multi-user.target "${unitdir}"/default.target
|
||||||
|
|
||||||
# If we install these symlinks, there is no way for the sysadmin to remove them
|
# Move a few services enabled in /etc to /usr, delete files individually
|
||||||
# permanently.
|
# so builds fail if systemd adds any new unexpected stuff to /etc
|
||||||
rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die
|
local f
|
||||||
rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die
|
for f in \
|
||||||
rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
|
getty.target.wants/getty@tty1.service \
|
||||||
rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
|
multi-user.target.wants/remote-fs.target \
|
||||||
|
multi-user.target.wants/systemd-networkd.service \
|
||||||
|
multi-user.target.wants/systemd-resolved.service \
|
||||||
|
network-online.target.wants/systemd-networkd-wait-online.service \
|
||||||
|
sockets.target.wants/systemd-networkd.socket \
|
||||||
|
sysinit.target.wants/systemd-timesyncd.service
|
||||||
|
do
|
||||||
|
local s="${f#*/}" t="${f%/*}"
|
||||||
|
local u="${s/@*.service/@.service}"
|
||||||
|
|
||||||
# Move a few services enabled in /etc to /usr
|
# systemd_enable_service doesn't understand template units
|
||||||
# systemd-timesyncd is left disabled, we currently use ntpd
|
einfo "Enabling ${s} via ${t}"
|
||||||
rm -f "${D}"/etc/systemd/system/getty.target.wants/getty@tty1.service
|
dodir "${unitdir}/${t}"
|
||||||
rm -f "${D}"/etc/systemd/system/multi-user.target.wants/remote-fs.target
|
dosym "../${u}" "${unitdir}/${t}/${s}"
|
||||||
|
|
||||||
rm -f "${D}"/etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service
|
rm "${D}/etc/systemd/system/${f}" || die
|
||||||
rmdir "${D}"/etc/systemd/system/getty.target.wants \
|
done
|
||||||
"${D}"/etc/systemd/system/multi-user.target.wants \
|
rmdir "${D}"/etc/systemd/system/*.wants || die
|
||||||
|| die
|
|
||||||
|
|
||||||
dosym ../getty@.service /usr/lib/systemd/system/getty.target.wants/getty@tty1.service
|
|
||||||
systemd_enable_service multi-user.target remote-fs.target
|
|
||||||
systemd_enable_service multi-user.target systemd-networkd.service
|
|
||||||
systemd_enable_service multi-user.target systemd-resolved.service
|
|
||||||
systemd_enable_service network-online.target systemd-networkd-wait-online.service
|
|
||||||
|
|
||||||
# Grant networkd access to set the transient host name
|
# Grant networkd access to set the transient host name
|
||||||
insinto /usr/share/polkit-1/rules.d
|
insinto /usr/share/polkit-1/rules.d
|
||||||
@ -405,7 +408,7 @@ multilib_src_install_all() {
|
|||||||
doins "${FILESDIR}"/99-default.preset
|
doins "${FILESDIR}"/99-default.preset
|
||||||
|
|
||||||
# Disable the "First Boot Wizard" by default, it isn't very applicable to CoreOS
|
# Disable the "First Boot Wizard" by default, it isn't very applicable to CoreOS
|
||||||
rm "${D}"/usr/lib/systemd/system/sysinit.target.wants/systemd-firstboot.service
|
rm "${D}${unitdir}"/sysinit.target.wants/systemd-firstboot.service
|
||||||
|
|
||||||
# Do not ship distro-specific files (nsswitch.conf pam.d)
|
# Do not ship distro-specific files (nsswitch.conf pam.d)
|
||||||
rm -rf "${D}"/usr/share/factory
|
rm -rf "${D}"/usr/share/factory
|
||||||
|
Loading…
x
Reference in New Issue
Block a user