kumquat-buildroot/package/systemd/Config.in
Marcin Niestroj 42f9d9e37b package/systemd: Optionally disable hwdb
By default hwdb files are installed in /usr/lib/udev/hwdb.d
Currently they take about ~5MB. After first boot, systemd-hwdb tool
parses them and creates a binary in /etc/udev/hwdb.bin, which takes
another ~6.5MB.

In case of initramfs images, hwdb parsing is done every boot. This adds
about 2-3 seconds to boot time in case of rootfs on SDHC class 10
card (benchmarked with am335x board). NAND boot takes even longer.

Add config option to disable hwdb in systemd, for smaller images and
better boot performance.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-06-15 23:21:33 +02:00

185 lines
6.0 KiB
Plaintext

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
config BR2_PACKAGE_SYSTEMD
bool "systemd"
depends on BR2_INIT_SYSTEMD
depends on BR2_USE_WCHAR # util-linux
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_KMOD
select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # kmod-tools
select BR2_PACKAGE_KMOD_TOOLS
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.
http://freedesktop.org/wiki/Software/systemd
if BR2_PACKAGE_SYSTEMD
config BR2_PACKAGE_PROVIDES_UDEV
default "systemd"
config BR2_PACKAGE_SYSTEMD_KDBUS
bool "enable kdbus support"
help
Enable kdbus support for 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_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_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_VCONSOLE
bool "enable vconsole tool"
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
config BR2_PACKAGE_SYSTEMD_BOOTCHART
bool "enable bootchart tool"
help
systemd-bootchart is a tool, usually run at system startup,
that collects the CPU load, disk load, memory usage, as well
as per-process information from a running system. Collected
results are output as an SVG graph.
http://www.freedesktop.org/software/systemd/man/systemd-bootchart.html
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_NETWORKD
bool "enable network manager"
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_TIMESYNCD
bool "enable SNTP client"
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_COMPAT
bool "enable compatibility libraries"
help
Since systemd 209, the following libraries have been merged into
libsystemd.so:
- libsystemd-daemon
- libsystemd-id128
- libsystemd-journal
- libsystemd-login
This option enables the installation of compatibility *.pc files.
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.
endif