config BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS bool # see src/shared/architecture.h default y if BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || \ BR2_mipsel || BR2_powerpc || BR2_powerpc64 || \ BR2_powerpc64le || BR2_sh4 || BR2_sh4eb || \ BR2_sh4a || BR2_sh4aeb || BR2_sparc || BR2_x86_64 || \ BR2_aarch64 || BR2_m68k || BR2_arc menuconfig BR2_PACKAGE_SYSTEMD bool "systemd" depends on BR2_INIT_SYSTEMD depends on !BR2_STATIC_LIBS # kmod depends on BR2_TOOLCHAIN_HAS_THREADS # dbus depends on BR2_USE_MMU # dbus select BR2_PACKAGE_HAS_UDEV select BR2_PACKAGE_DBUS # runtime dependency only select BR2_PACKAGE_LIBCAP select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBBLKID select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT select BR2_PACKAGE_UTIL_LINUX_BINARIES select BR2_PACKAGE_UTIL_LINUX_MOUNT select BR2_PACKAGE_UTIL_LINUX_NOLOGIN select BR2_PACKAGE_UTIL_LINUX_FSCK select BR2_PACKAGE_KMOD select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # kmod-tools select BR2_PACKAGE_KMOD_TOOLS select BR2_TARGET_TZ_INFO select BR2_NEEDS_HOST_UTF8_LOCALE help systemd is a system and service manager for Linux, compatible with SysV and LSB init scripts. systemd provides aggressive parallelization capabilities, uses socket and D-Bus activation for starting services, offers on-demand starting of daemons, keeps track of processes using Linux cgroups, supports snapshotting and restoring of the system state, maintains mount and automount points and implements an elaborate transactional dependency-based service control logic. It can work as a drop-in replacement for sysvinit. Systemd requires a Linux kernel >= 3.0 with the following options enabled: - CONFIG_CGROUPS - CONFIG_INOTIFY_USER - CONFIG_FHANDLE - CONFIG_AUTOFS4_FS - CONFIG_TMPFS_POSIX_ACL - CONFIG_TMPFS_XATTR These options will be automatically enabled by Buildroot if it is responsible for building the kernel. Otherwise, if you are building your kernel outside of Buildroot, make sure these options are enabled. Systemd also provides udev, the userspace device daemon. The selection of other packages will enable some features: - acl package will add support for multi-seat. - xz and/or l4 packages will add compression support in journal and coredump. - libcurl package will add support for systemd-journal-upload. - libgcrypt package will add support for journal sealing and DNSSEC verification in resolved. Notice that systemd selects the fsck wrapper from util-linux but no particular fsck. is selected. You must choose the apropriate ones (e.g. e2fsck, from the e2fsprogs package) according to the system configuration. http://freedesktop.org/wiki/Software/systemd if BR2_PACKAGE_SYSTEMD config BR2_PACKAGE_PROVIDES_UDEV default "systemd" config BR2_PACKAGE_SYSTEMD_JOURNAL_GATEWAY bool "HTTP server for journal events" select BR2_PACKAGE_LIBMICROHTTPD help systemd-journal-gatewayd serves journal events over the network. Clients must connect using HTTP. The server listens on port 19531 by default. http://www.freedesktop.org/software/systemd/man/systemd-journal-gatewayd.service.html config BR2_PACKAGE_SYSTEMD_BACKLIGHT bool "enable backlight support" help systemd-backlight is a service that restores the display backlight brightness at early boot and saves it at shutdown. http://www.freedesktop.org/software/systemd/man/systemd-backlight@.service.html config BR2_PACKAGE_SYSTEMD_BINFMT bool "enable binfmt tool" help systemd-binfmt is an early boot service that registers additional binary formats for executables in the kernel. http://www.freedesktop.org/software/systemd/man/systemd-binfmt.service.html config BR2_PACKAGE_SYSTEMD_COREDUMP bool "enable coredump hook" help systemd-coredump can be used as a helper binary by the kernel when a user space program receives a fatal signal and dumps core. http://www.freedesktop.org/software/systemd/man/systemd-coredump.html config BR2_PACKAGE_SYSTEMD_FIRSTBOOT bool "enable firstboot support" help systemd-firstboot initializes the most basic system settings interactively on the first boot. http://www.freedesktop.org/software/systemd/man/systemd-firstboot.html config BR2_PACKAGE_SYSTEMD_HIBERNATE bool "enable hibernation support" help When this features is enabled, additional tools and services are built to support suspending and resuming the system. http://www.freedesktop.org/software/systemd/man/systemd-sleep.html config BR2_PACKAGE_SYSTEMD_HOSTNAMED bool "enable hostname daemon" default y help systemd-hostnamed is a system service that may be used as a mechanism to change the system's hostname. http://www.freedesktop.org/software/systemd/man/systemd-hostnamed.service.html config BR2_PACKAGE_SYSTEMD_HWDB bool "enable hwdb installation" default y help Enables hardware database installation to /usr/lib/udev/hwdb.d Disabling this option improves first boot time (or every boot time in case of initramfs images) and saves several MB space. https://www.freedesktop.org/software/systemd/man/hwdb.html config BR2_PACKAGE_SYSTEMD_IMPORTD bool "enable import daemon" depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt select BR2_PACKAGE_LIBCURL select BR2_PACKAGE_LIBGCRYPT select BR2_PACKAGE_BZIP2 select BR2_PACKAGE_LZ4 select BR2_PACKAGE_XZ select BR2_PACKAGE_ZLIB help systemd-importd is a system service that manages virtual machine and container images for systemd-machined and machinectl. http://www.freedesktop.org/software/systemd/man/machinectl.html#Image%20Transfer%20Commands config BR2_PACKAGE_SYSTEMD_LOCALED bool "enable locale daemon" help systemd-localed is a system service that may be used as mechanism to change the system locale settings, as well as the console key mapping and default X11 key mapping. http://www.freedesktop.org/software/systemd/man/systemd-localed.service.html config BR2_PACKAGE_SYSTEMD_LOGIND bool "enable login daemon" help systemd-logind is a system service that manages user logins. http://www.freedesktop.org/software/systemd/man/systemd-logind.service.html config BR2_PACKAGE_SYSTEMD_MACHINED bool "enable machine daemon" help systemd-machined is a system service that keeps track of virtual machines and containers, and processes belonging to them. http://www.freedesktop.org/software/systemd/man/systemd-machined.service.html config BR2_PACKAGE_SYSTEMD_MYHOSTNAME bool "enable myhostname NSS plugin" default y help nss-myhostname is a plug-in module for the GNU Name Service Switch (NSS) functionality of the GNU C Library (glibc), primarily providing hostname resolution for the locally configured system hostname as returned by gethostname(2). http://www.freedesktop.org/software/systemd/man/nss-myhostname.html config BR2_PACKAGE_SYSTEMD_NETWORKD bool "enable network manager" default y help systemd-networkd is a system service that manages networks. It detects and configures network devices as they appear, as well as creating virtual network devices. This simple network configuration solution is an alternative to dhcpcd or ISC dhcp. http://www.freedesktop.org/software/systemd/man/systemd-networkd.html config BR2_PACKAGE_SYSTEMD_POLKIT bool "enable polkit support" depends on BR2_TOOLCHAIN_USES_GLIBC # polkit select BR2_PACKAGE_POLKIT help If enabled, systemd is built with polkit support and policy files for its services are generated and installed. It is useful for allowing unprivileged processes to speak to systemd's many privileged processes. http://wiki.freedesktop.org/www/Software/polkit/ comment "polkit support needs a glibc toolchain" depends on !BR2_TOOLCHAIN_USES_GLIBC config BR2_PACKAGE_SYSTEMD_QUOTACHECK bool "enable quotacheck tools" help systemd-quotacheck is a service responsible for file system quota checks. It is run once at boot after all necessary file systems are mounted. It is pulled in only if at least one file system has quotas enabled. http://www.freedesktop.org/software/systemd/man/systemd-quotacheck.service.html config BR2_PACKAGE_SYSTEMD_RANDOMSEED bool "enable random-seed support" help systemd-random-seed is a service that restores the random seed of the system at early boot and saves it at shutdown. Saving/restoring the random seed across boots increases the amount of available entropy early at boot. http://www.freedesktop.org/software/systemd/man/systemd-random-seed.service.html config BR2_PACKAGE_SYSTEMD_RESOLVED bool "enable resolve daemon" default y help systemd-resolved is a system service that provides network name resolution to local applications. It implements a caching and validating DNS/DNSSEC stub resolver, as well as an LLMNR resolver and responder. http://www.freedesktop.org/software/systemd/man/systemd-resolved.html config BR2_PACKAGE_SYSTEMD_RFKILL bool "enable rfkill tools" help systemd-rfkill is a service that restores the RF kill switch state at early boot and saves it at shutdown. http://www.freedesktop.org/software/systemd/man/systemd-rfkill@.service.html config BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT bool "enable SMACK support" select BR2_PACKAGE_ATTR select BR2_PACKAGE_SMACK help Enable support for SMACK, the Simple Mandatory Access Control Kernel, a minimal approach to Access Control implemented as a kernel LSM. This feature requires a kernel >= 3.8. When this feature is enabled, Systemd mounts smackfs and manages security labels for sockets. config BR2_PACKAGE_SYSTEMD_SYSUSERS bool "enable sysusers support" help systemd-sysusers creates system users and groups, based on the file format and location specified in sysusers.d(5). http://www.freedesktop.org/software/systemd/man/systemd-sysusers.html config BR2_PACKAGE_SYSTEMD_TIMEDATED bool "enable timedate daemon" default y help systemd-timedated is a system service that may be used as a mechanism to change the system clock and timezone, as well as to enable/disable NTP time synchronization. http://www.freedesktop.org/software/systemd/man/systemd-timedated.service.html config BR2_PACKAGE_SYSTEMD_TIMESYNCD bool "enable timesync daemon" default y help systemd-timesyncd is a service that may be used to synchronize the local system clock with a Network Time Protocol server. This simple NTP solution is an alternative to sntp/ntpd from the ntp package. http://www.freedesktop.org/software/systemd/man/systemd-timesyncd.html config BR2_PACKAGE_SYSTEMD_TMPFILES bool "enable tmpfiles support" default y help systemd-tmpfiles creates, deletes, and cleans up volatile and temporary files and directories, based on the configuration file format and location specified in tmpfiles.d(5). http://www.freedesktop.org/software/systemd/man/systemd-tmpfiles.html config BR2_PACKAGE_SYSTEMD_VCONSOLE bool "enable vconsole tool" default y help systemd-vconsole-setup is an early boot service that configures the virtual console font and console keymap. http://www.freedesktop.org/software/systemd/man/systemd-vconsole-setup.service.html endif