b019490adf
A new entry has been added to the "System Configuration" menu to allow the user to set the location of additional user tables (besides the ones defined in packages). A user table is a text file, formatted using the mkusers syntax, which describes the users on the target system, with their UID/GID, home directory, password, etc. The target root file system will be populated according the content of these files. Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr> [yann.morin.1998@free.fr: use plural TABLES; we need to remove the intermediate users_table file, as it is no longer generated in one shot, in case a previous run failed and did not remove it] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
393 lines
11 KiB
Plaintext
393 lines
11 KiB
Plaintext
menu "System configuration"
|
|
|
|
config BR2_TARGET_GENERIC_HOSTNAME
|
|
string "System hostname"
|
|
default "buildroot"
|
|
help
|
|
Select system hostname to be stored in /etc/hostname.
|
|
|
|
Leave empty to not create /etc/hostname, or to keep the
|
|
one from a custom skeleton.
|
|
|
|
config BR2_TARGET_GENERIC_ISSUE
|
|
string "System banner"
|
|
default "Welcome to Buildroot"
|
|
help
|
|
Select system banner (/etc/issue) to be displayed at login.
|
|
|
|
Leave empty to not create /etc/issue, or to keep the
|
|
one from a custom skeleton.
|
|
|
|
choice
|
|
bool "Passwords encoding"
|
|
default BR2_TARGET_GENERIC_PASSWD_MD5
|
|
help
|
|
Choose the password encoding scheme to use when Buildroot
|
|
needs to encode a password (eg. the root password, below).
|
|
|
|
Note: this is used at build-time, and *not* at runtime.
|
|
|
|
config BR2_TARGET_GENERIC_PASSWD_DES
|
|
bool "des"
|
|
help
|
|
Use standard 56-bit DES-based crypt(3) to encode passwords.
|
|
|
|
Old, wildly available, but also the weakest, very susceptible to
|
|
brute-force attacks.
|
|
|
|
config BR2_TARGET_GENERIC_PASSWD_MD5
|
|
bool "md5"
|
|
help
|
|
Use MD5 to encode passwords.
|
|
|
|
The default. Wildly available, and pretty good.
|
|
Although pretty strong, MD5 is now an old hash function, and
|
|
suffers from some weaknesses, which makes it susceptible to
|
|
brute-force attacks.
|
|
|
|
config BR2_TARGET_GENERIC_PASSWD_SHA256
|
|
bool "sha-256"
|
|
help
|
|
Use SHA256 to encode passwords.
|
|
|
|
Very strong, but not ubiquitous, although available in glibc
|
|
for some time now. Choose only if you are sure your C library
|
|
understands SHA256 passwords.
|
|
|
|
config BR2_TARGET_GENERIC_PASSWD_SHA512
|
|
bool "sha-512"
|
|
help
|
|
Use SHA512 to encode passwords.
|
|
|
|
Extremely strong, but not ubiquitous, although available in glibc
|
|
for some time now. Choose only if you are sure your C library
|
|
understands SHA512 passwords.
|
|
|
|
endchoice # Passwd encoding
|
|
|
|
config BR2_TARGET_GENERIC_PASSWD_METHOD
|
|
string
|
|
default "des" if BR2_TARGET_GENERIC_PASSWD_DES
|
|
default "md5" if BR2_TARGET_GENERIC_PASSWD_MD5
|
|
default "sha-256" if BR2_TARGET_GENERIC_PASSWD_SHA256
|
|
default "sha-512" if BR2_TARGET_GENERIC_PASSWD_SHA512
|
|
|
|
choice
|
|
prompt "Init system"
|
|
default BR2_INIT_BUSYBOX
|
|
|
|
config BR2_INIT_BUSYBOX
|
|
bool "Busybox"
|
|
select BR2_PACKAGE_BUSYBOX
|
|
|
|
config BR2_INIT_SYSV
|
|
bool "systemV"
|
|
select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # sysvinit
|
|
select BR2_PACKAGE_SYSVINIT
|
|
|
|
config BR2_INIT_SYSTEMD
|
|
bool "systemd"
|
|
depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS
|
|
depends on BR2_TOOLCHAIN_USES_GLIBC
|
|
depends on BR2_LARGEFILE
|
|
depends on BR2_USE_WCHAR
|
|
depends on BR2_INET_IPV6
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
depends on BR2_TOOLCHAIN_HAS_SSP
|
|
depends on BR2_USE_MMU
|
|
depends on !BR2_PREFER_STATIC_LIB
|
|
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
|
|
select BR2_PACKAGE_SYSTEMD
|
|
|
|
comment 'systemd needs an (e)glibc toolchain, headers >= 3.8'
|
|
depends on !(BR2_TOOLCHAIN_USES_GLIBC \
|
|
&& BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8)
|
|
|
|
config BR2_INIT_NONE
|
|
bool "None"
|
|
|
|
endchoice
|
|
|
|
choice
|
|
prompt "/dev management" if !BR2_INIT_SYSTEMD
|
|
default BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS
|
|
|
|
config BR2_ROOTFS_DEVICE_CREATION_STATIC
|
|
bool "Static using device table"
|
|
|
|
config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS
|
|
bool "Dynamic using devtmpfs only"
|
|
|
|
config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV
|
|
bool "Dynamic using mdev"
|
|
select BR2_PACKAGE_BUSYBOX
|
|
|
|
config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV
|
|
bool "Dynamic using eudev"
|
|
depends on !BR2_avr32 # eudev
|
|
depends on BR2_LARGEFILE
|
|
depends on BR2_USE_WCHAR
|
|
depends on !BR2_PREFER_STATIC_LIB
|
|
depends on BR2_USE_MMU # eudev
|
|
select BR2_PACKAGE_EUDEV
|
|
|
|
comment "eudev needs a toolchain w/ largefile, wchar, dynamic library"
|
|
depends on !BR2_avr32 # eudev
|
|
depends on BR2_USE_MMU
|
|
depends on !BR2_LARGEFILE || !BR2_USE_WCHAR || BR2_PREFER_STATIC_LIB
|
|
|
|
endchoice
|
|
|
|
comment "/dev management using udev (from systemd)"
|
|
depends on BR2_INIT_SYSTEMD
|
|
|
|
config BR2_ROOTFS_DEVICE_TABLE
|
|
string "Path to the permission tables"
|
|
default "system/device_table.txt"
|
|
help
|
|
Specify a space-separated list of permission table locations,
|
|
that will be passed to the makedevs utility to assign
|
|
correct owners and permissions on various files in the
|
|
target filesystem.
|
|
|
|
See package/makedevs/README for details on the usage and
|
|
syntax of these files.
|
|
|
|
config BR2_ROOTFS_STATIC_DEVICE_TABLE
|
|
string "Path to the device tables"
|
|
default "system/device_table_dev.txt"
|
|
depends on BR2_ROOTFS_DEVICE_CREATION_STATIC
|
|
help
|
|
Specify a space-separated list of device table locations,
|
|
that will be passed to the makedevs utility to create all
|
|
the special device files under /dev.
|
|
|
|
See package/makedevs/README for details on the usage and
|
|
syntax of these files.
|
|
|
|
choice
|
|
prompt "Root FS skeleton"
|
|
|
|
config BR2_ROOTFS_SKELETON_DEFAULT
|
|
bool "default target skeleton"
|
|
help
|
|
Use default target skeleton
|
|
|
|
config BR2_ROOTFS_SKELETON_CUSTOM
|
|
bool "custom target skeleton"
|
|
help
|
|
Use custom target skeleton.
|
|
|
|
endchoice
|
|
|
|
if BR2_ROOTFS_SKELETON_CUSTOM
|
|
config BR2_ROOTFS_SKELETON_CUSTOM_PATH
|
|
string "custom target skeleton path"
|
|
default "system/skeleton"
|
|
help
|
|
Path custom target skeleton.
|
|
endif
|
|
|
|
if BR2_ROOTFS_SKELETON_DEFAULT
|
|
|
|
config BR2_TARGET_GENERIC_ROOT_PASSWD
|
|
string "Root password"
|
|
default ""
|
|
help
|
|
Set the initial root password (in clear). It will be md5-encrypted.
|
|
|
|
If set to empty (the default), then no root password will be set,
|
|
and root will need no password to log in.
|
|
|
|
WARNING! WARNING!
|
|
Although pretty strong, MD5 is now an old hash function, and
|
|
suffers from some weaknesses, which makes it susceptible to attacks.
|
|
It is showing its age, so this root password should not be trusted
|
|
to properly secure any product that can be shipped to the wide,
|
|
hostile world.
|
|
|
|
WARNING! WARNING!
|
|
The password appears in clear in the .config file, and may appear
|
|
in the build log! Avoid using a valuable password if either the
|
|
.config file or the build log may be distributed!
|
|
|
|
config BR2_TARGET_GENERIC_GETTY
|
|
bool "Run a getty (login prompt) after boot"
|
|
default y
|
|
|
|
if BR2_TARGET_GENERIC_GETTY
|
|
menu "getty options"
|
|
config BR2_TARGET_GENERIC_GETTY_PORT
|
|
string "TTY port"
|
|
default "ttyS0"
|
|
help
|
|
Specify a port to run a getty on.
|
|
|
|
choice
|
|
prompt "Baudrate"
|
|
default BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200
|
|
help
|
|
Select a baudrate to use.
|
|
|
|
config BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP
|
|
bool "keep kernel default"
|
|
config BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600
|
|
bool "9600"
|
|
config BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200
|
|
bool "19200"
|
|
config BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400
|
|
bool "38400"
|
|
config BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600
|
|
bool "57600"
|
|
config BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200
|
|
bool "115200"
|
|
endchoice
|
|
|
|
config BR2_TARGET_GENERIC_GETTY_BAUDRATE
|
|
string
|
|
default "0" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP
|
|
default "9600" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600
|
|
default "19200" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200
|
|
default "38400" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400
|
|
default "57600" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600
|
|
default "115200" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200
|
|
|
|
config BR2_TARGET_GENERIC_GETTY_TERM
|
|
string "TERM environment variable"
|
|
default "vt100"
|
|
help
|
|
Specify a TERM type.
|
|
|
|
config BR2_TARGET_GENERIC_GETTY_OPTIONS
|
|
string "other options to pass to getty"
|
|
default ""
|
|
help
|
|
Any other flags you want to pass to getty,
|
|
Refer to getty --help for details.
|
|
endmenu
|
|
endif
|
|
|
|
config BR2_TARGET_TZ_INFO
|
|
bool "Install timezone info"
|
|
# No timezone for musl; only for uClibc or (e)glibc.
|
|
depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC
|
|
select BR2_PACKAGE_TZDATA if BR2_TOOLCHAIN_USES_GLIBC
|
|
select BR2_PACKAGE_TZ if BR2_TOOLCHAIN_USES_UCLIBC
|
|
help
|
|
Say 'y' here to install timezone info.
|
|
|
|
if BR2_TARGET_TZ_INFO
|
|
|
|
config BR2_TARGET_TZ_ZONELIST
|
|
string "timezone list"
|
|
default "default"
|
|
help
|
|
Space-separated list of time zones to compile.
|
|
|
|
The value "default" includes all commonly used time zones. Note
|
|
that this set consumes around 5.5M for (e)glibc and 2.1M for uClibc.
|
|
|
|
The full list is the list of files in the time zone database source,
|
|
not including the build and .tab files.
|
|
|
|
config BR2_TARGET_LOCALTIME
|
|
string "default local time"
|
|
help
|
|
The time zone to install as the default local time, expressed as a
|
|
tzdata location, such as:
|
|
GMT
|
|
Europe/Paris
|
|
America/New_York
|
|
Pacific/Wallis
|
|
...
|
|
|
|
If empty, no local time will be set, and the dates will be
|
|
expressed in UTC.
|
|
|
|
endif # BR2_TARGET_TZ_INFO
|
|
|
|
config BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW
|
|
bool "remount root filesystem read-write during boot"
|
|
default y
|
|
help
|
|
The root filesystem is typically mounted read-only at boot.
|
|
By default, buildroot remounts it in read-write mode early during the
|
|
boot process.
|
|
Say no here if you would rather like your root filesystem to remain
|
|
read-only.
|
|
If unsure, say Y.
|
|
|
|
endif # BR2_ROOTFS_SKELETON_DEFAULT
|
|
|
|
config BR2_ROOTFS_USERS_TABLES
|
|
string "Path to the users tables"
|
|
help
|
|
Specify a space-separated list of users table locations,
|
|
that will be passed to the mkusers utility to create
|
|
users on the system, with home directory, password, etc.
|
|
|
|
See manual for details on the usage and syntax of these files.
|
|
|
|
config BR2_ROOTFS_OVERLAY
|
|
string "Root filesystem overlay directories"
|
|
default ""
|
|
help
|
|
Specify a list of directories that are copied over the target
|
|
root filesystem after the build has finished and before it is
|
|
packed into the selected filesystem images.
|
|
|
|
They are copied as-is into the rootfs, excluding files ending with
|
|
~ and .git, .svn and .hg directories.
|
|
|
|
config BR2_ROOTFS_POST_BUILD_SCRIPT
|
|
string "Custom scripts to run before creating filesystem images"
|
|
default ""
|
|
help
|
|
Specify a space-separated list of scripts to be run after the build
|
|
has finished and before Buildroot starts packing the files into
|
|
selected filesystem images.
|
|
|
|
This gives users the oportunity to do board-specific cleanups,
|
|
add-ons and the like, so the generated files can be used directly
|
|
without further processing.
|
|
|
|
These scripts are called with the target directory name as first
|
|
argument. Make sure the exit code of those scripts are 0, otherwise
|
|
make will stop after calling them.
|
|
|
|
config BR2_ROOTFS_POST_IMAGE_SCRIPT
|
|
string "Custom scripts to run after creating filesystem images"
|
|
default ""
|
|
help
|
|
Specify a space-separated list of scripts to be run after
|
|
the build has finished and after Buildroot has packed the
|
|
files into selected filesystem images.
|
|
|
|
This can for example be used to call a tool building a
|
|
firmware image from different images generated by Buildroot,
|
|
or automatically extract the tarball root filesystem image
|
|
into some location exported by NFS, or any other custom
|
|
action.
|
|
|
|
These scripts are called with the images directory name as
|
|
first argument. The script is executed from the main Buildroot
|
|
source directory as the current directory.
|
|
|
|
config BR2_ROOTFS_POST_SCRIPT_ARGS
|
|
string "Extra post-{build,image} arguments"
|
|
depends on BR2_ROOTFS_POST_BUILD_SCRIPT != "" || BR2_ROOTFS_POST_IMAGE_SCRIPT != ""
|
|
help
|
|
Pass these aditional arguments to each post-build or post-image
|
|
scripts.
|
|
|
|
Note that all the post-build and post-image scripts will be passed
|
|
the same set of arguments, you can not pass different arguments to
|
|
each script.
|
|
|
|
Note also, as stated in their respective help text, that the first
|
|
argument to each post-build or post-image script is the target
|
|
directory / images directory. The arguments in this option will be
|
|
passed *after* those.
|
|
|
|
endmenu
|