1 menu "System configuration"
3 config BR2_TARGET_GENERIC_HOSTNAME
4 string "System hostname"
7 Select system hostname to be stored in /etc/hostname.
9 Leave empty to not create /etc/hostname, or to keep the
10 one from a custom skeleton.
12 config BR2_TARGET_GENERIC_ISSUE
13 string "System banner"
14 default "Welcome to Buildroot"
16 Select system banner (/etc/issue) to be displayed at login.
18 Leave empty to not create /etc/issue, or to keep the
19 one from a custom skeleton.
22 bool "Passwords encoding"
23 default BR2_TARGET_GENERIC_PASSWD_MD5
25 Choose the password encoding scheme to use when Buildroot
26 needs to encode a password (eg. the root password, below).
28 Note: this is used at build-time, and *not* at runtime.
30 config BR2_TARGET_GENERIC_PASSWD_DES
33 Use standard 56-bit DES-based crypt(3) to encode passwords.
35 Old, wildly available, but also the weakest, very susceptible to
38 config BR2_TARGET_GENERIC_PASSWD_MD5
41 Use MD5 to encode passwords.
43 The default. Wildly available, and pretty good.
44 Although pretty strong, MD5 is now an old hash function, and
45 suffers from some weaknesses, which makes it susceptible to
48 config BR2_TARGET_GENERIC_PASSWD_SHA256
51 Use SHA256 to encode passwords.
53 Very strong, but not ubiquitous, although available in glibc
54 for some time now. Choose only if you are sure your C library
55 understands SHA256 passwords.
57 config BR2_TARGET_GENERIC_PASSWD_SHA512
60 Use SHA512 to encode passwords.
62 Extremely strong, but not ubiquitous, although available in glibc
63 for some time now. Choose only if you are sure your C library
64 understands SHA512 passwords.
66 endchoice # Passwd encoding
68 config BR2_TARGET_GENERIC_PASSWD_METHOD
70 default "des" if BR2_TARGET_GENERIC_PASSWD_DES
71 default "md5" if BR2_TARGET_GENERIC_PASSWD_MD5
72 default "sha-256" if BR2_TARGET_GENERIC_PASSWD_SHA256
73 default "sha-512" if BR2_TARGET_GENERIC_PASSWD_SHA512
77 default BR2_INIT_BUSYBOX
79 config BR2_INIT_BUSYBOX
81 select BR2_PACKAGE_BUSYBOX
85 select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # sysvinit
86 select BR2_PACKAGE_SYSVINIT
88 config BR2_INIT_SYSTEMD
90 depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS
91 depends on BR2_TOOLCHAIN_USES_GLIBC
92 depends on BR2_LARGEFILE
93 depends on BR2_USE_WCHAR
94 depends on BR2_INET_IPV6
95 depends on BR2_TOOLCHAIN_HAS_THREADS
96 depends on BR2_TOOLCHAIN_HAS_SSP
97 depends on BR2_USE_MMU
98 depends on !BR2_STATIC_LIBS
99 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
100 select BR2_PACKAGE_SYSTEMD
102 comment 'systemd needs an (e)glibc toolchain, headers >= 3.7'
103 depends on !(BR2_TOOLCHAIN_USES_GLIBC \
104 && BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7)
112 prompt "/dev management" if !BR2_INIT_SYSTEMD
113 default BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS
115 config BR2_ROOTFS_DEVICE_CREATION_STATIC
116 bool "Static using device table"
118 config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS
119 bool "Dynamic using devtmpfs only"
121 config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV
122 bool "Dynamic using mdev"
123 select BR2_PACKAGE_BUSYBOX
125 config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV
126 bool "Dynamic using eudev"
127 depends on BR2_LARGEFILE
128 depends on BR2_USE_WCHAR
129 depends on !BR2_STATIC_LIBS
130 depends on BR2_USE_MMU # eudev
131 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9
132 select BR2_PACKAGE_EUDEV
134 comment "eudev needs a toolchain w/ largefile, wchar, dynamic library, headers >= 3.9"
135 depends on BR2_USE_MMU
136 depends on !BR2_LARGEFILE || !BR2_USE_WCHAR || BR2_STATIC_LIBS \
137 || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9
141 comment "/dev management using udev (from systemd)"
142 depends on BR2_INIT_SYSTEMD
144 config BR2_ROOTFS_DEVICE_TABLE
145 string "Path to the permission tables"
146 default "system/device_table.txt"
148 Specify a space-separated list of permission table locations,
149 that will be passed to the makedevs utility to assign
150 correct owners and permissions on various files in the
153 See package/makedevs/README for details on the usage and
154 syntax of these files.
156 config BR2_ROOTFS_STATIC_DEVICE_TABLE
157 string "Path to the device tables"
158 default "system/device_table_dev.txt"
159 depends on BR2_ROOTFS_DEVICE_CREATION_STATIC
161 Specify a space-separated list of device table locations,
162 that will be passed to the makedevs utility to create all
163 the special device files under /dev.
165 See package/makedevs/README for details on the usage and
166 syntax of these files.
169 prompt "Root FS skeleton"
171 config BR2_ROOTFS_SKELETON_DEFAULT
172 bool "default target skeleton"
174 Use default target skeleton
176 config BR2_ROOTFS_SKELETON_CUSTOM
177 bool "custom target skeleton"
179 Use custom target skeleton.
183 if BR2_ROOTFS_SKELETON_CUSTOM
184 config BR2_ROOTFS_SKELETON_CUSTOM_PATH
185 string "custom target skeleton path"
186 default "system/skeleton"
188 Path to custom target skeleton.
191 if BR2_ROOTFS_SKELETON_DEFAULT
193 config BR2_TARGET_GENERIC_ROOT_PASSWD
194 string "Root password"
197 Set the initial root password (in clear). It will be md5-encrypted.
199 If set to empty (the default), then no root password will be set,
200 and root will need no password to log in.
203 Although pretty strong, MD5 is now an old hash function, and
204 suffers from some weaknesses, which makes it susceptible to attacks.
205 It is showing its age, so this root password should not be trusted
206 to properly secure any product that can be shipped to the wide,
210 The password appears in clear in the .config file, and may appear
211 in the build log! Avoid using a valuable password if either the
212 .config file or the build log may be distributed!
216 default BR2_SYSTEM_BIN_SH_DASH if !BR2_PACKAGE_BUSYBOX
218 Select which shell will provide /bin/sh.
220 # busybox has shells that work on noMMU
221 config BR2_SYSTEM_BIN_SH_BUSYBOX
222 bool "busybox' default shell"
223 depends on BR2_PACKAGE_BUSYBOX
225 config BR2_SYSTEM_BIN_SH_BASH
227 depends on BR2_USE_MMU # bash
228 depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
229 select BR2_PACKAGE_BASH
231 config BR2_SYSTEM_BIN_SH_DASH
233 depends on BR2_USE_MMU # dash
234 depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
235 select BR2_PACKAGE_DASH
237 config BR2_SYSTEM_BIN_SH_ZSH
239 depends on BR2_USE_MMU # zsh
240 depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
241 select BR2_PACKAGE_ZSH
243 comment "bash, dash, zsh need BR2_PACKAGE_BUSYBOX_SHOW_OTHERS"
244 depends on !BR2_PACKAGE_BUSYBOX_SHOW_OTHERS && BR2_PACKAGE_BUSYBOX
246 config BR2_SYSTEM_BIN_SH_NONE
251 config BR2_SYSTEM_BIN_SH
253 default "/bin/busybox" if BR2_SYSTEM_BIN_SH_BUSYBOX
254 default "/bin/bash" if BR2_SYSTEM_BIN_SH_BASH
255 default "/bin/dash" if BR2_SYSTEM_BIN_SH_DASH
256 default "/bin/zsh" if BR2_SYSTEM_BIN_SH_ZSH
258 config BR2_TARGET_GENERIC_GETTY
259 bool "Run a getty (login prompt) after boot"
262 if BR2_TARGET_GENERIC_GETTY
264 config BR2_TARGET_GENERIC_GETTY_PORT
268 Specify a port to run a getty on.
272 default BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP
274 Select a baudrate to use.
276 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP
277 bool "keep kernel default"
278 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600
280 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200
282 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400
284 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600
286 config BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200
290 config BR2_TARGET_GENERIC_GETTY_BAUDRATE
292 default "0" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP
293 default "9600" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600
294 default "19200" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200
295 default "38400" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400
296 default "57600" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600
297 default "115200" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200
299 config BR2_TARGET_GENERIC_GETTY_TERM
300 string "TERM environment variable"
305 config BR2_TARGET_GENERIC_GETTY_OPTIONS
306 string "other options to pass to getty"
309 Any other flags you want to pass to getty,
310 Refer to getty --help for details.
314 config BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW
315 bool "remount root filesystem read-write during boot"
318 The root filesystem is typically mounted read-only at boot.
319 By default, buildroot remounts it in read-write mode early during the
321 Say no here if you would rather like your root filesystem to remain
325 endif # BR2_ROOTFS_SKELETON_DEFAULT
328 config BR2_SYSTEM_DHCP
329 string "Network interface to configure through DHCP"
331 depends on !BR2_PACKAGE_SYSTEMD_NETWORKD && (BR2_PACKAGE_BUSYBOX || BR2_PACKAGE_IFUPDOWN)
333 Enter here the name of the network interface (E.G. eth0) to
334 automatically configure through DHCP at bootup.
336 If left empty, no automatic DHCP requests will take place.
338 For more complicated network setups use an overlay to overwrite
339 /etc/network/interfaces or add a networkd configuration file.
341 comment "automatic network configuration via DHCP is not compatible with networkd"
342 depends on BR2_PACKAGE_SYSTEMD_NETWORKD
344 comment "automatic network configuration via DHCP needs ifupdown or busybox"
345 depends on !(BR2_PACKAGE_BUSYBOX || BR2_PACKAGE_IFUPDOWN)
347 config BR2_TARGET_TZ_INFO
348 bool "Install timezone info"
349 # No timezone for musl; only for uClibc or (e)glibc.
350 depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC
351 select BR2_PACKAGE_TZDATA if BR2_TOOLCHAIN_USES_GLIBC
352 select BR2_PACKAGE_TZ if BR2_TOOLCHAIN_USES_UCLIBC
354 Say 'y' here to install timezone info.
356 if BR2_TARGET_TZ_INFO
358 config BR2_TARGET_TZ_ZONELIST
359 string "timezone list"
362 Space-separated list of time zones to compile.
364 The value "default" includes all commonly used time zones. Note
365 that this set consumes around 5.5M for (e)glibc and 2.1M for uClibc.
367 The full list is the list of files in the time zone database source,
368 not including the build and .tab files.
370 config BR2_TARGET_LOCALTIME
371 string "default local time"
373 The time zone to install as the default local time, expressed as a
374 tzdata location, such as:
381 If empty, no local time will be set, and the dates will be
384 endif # BR2_TARGET_TZ_INFO
386 config BR2_ROOTFS_USERS_TABLES
387 string "Path to the users tables"
389 Specify a space-separated list of users table locations,
390 that will be passed to the mkusers utility to create
391 users on the system, with home directory, password, etc.
393 See manual for details on the usage and syntax of these files.
395 config BR2_ROOTFS_OVERLAY
396 string "Root filesystem overlay directories"
399 Specify a list of directories that are copied over the target
400 root filesystem after the build has finished and before it is
401 packed into the selected filesystem images.
403 They are copied as-is into the rootfs, excluding files ending with
404 ~ and .git, .svn and .hg directories.
406 config BR2_ROOTFS_POST_BUILD_SCRIPT
407 string "Custom scripts to run before creating filesystem images"
410 Specify a space-separated list of scripts to be run after the build
411 has finished and before Buildroot starts packing the files into
412 selected filesystem images.
414 This gives users the opportunity to do board-specific cleanups,
415 add-ons and the like, so the generated files can be used directly
416 without further processing.
418 These scripts are called with the target directory name as first
419 argument. Make sure the exit code of those scripts are 0, otherwise
420 make will stop after calling them.
422 config BR2_ROOTFS_POST_IMAGE_SCRIPT
423 string "Custom scripts to run after creating filesystem images"
426 Specify a space-separated list of scripts to be run after
427 the build has finished and after Buildroot has packed the
428 files into selected filesystem images.
430 This can for example be used to call a tool building a
431 firmware image from different images generated by Buildroot,
432 or automatically extract the tarball root filesystem image
433 into some location exported by NFS, or any other custom
436 These scripts are called with the images directory name as
437 first argument. The script is executed from the main Buildroot
438 source directory as the current directory.
440 config BR2_ROOTFS_POST_SCRIPT_ARGS
441 string "Extra post-{build,image} arguments"
442 depends on BR2_ROOTFS_POST_BUILD_SCRIPT != "" || BR2_ROOTFS_POST_IMAGE_SCRIPT != ""
444 Pass these additional arguments to each post-build or post-image
447 Note that all the post-build and post-image scripts will be passed
448 the same set of arguments, you can not pass different arguments to
451 Note also, as stated in their respective help text, that the first
452 argument to each post-build or post-image script is the target
453 directory / images directory. The arguments in this option will be
454 passed *after* those.