1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 config ADK_RUNTIME_HOSTNAME
5 string "hostname for the embedded system"
8 Set your target hostname.
12 depends on !ADK_APPLIANCE_TOOLCHAIN
13 default ADK_RUNTIME_INIT_SYSV if ADK_PACKAGE_BUSYBOX
15 config ADK_RUNTIME_INIT_SYSV
16 bool "Use busybox init"
17 depends on ADK_PACKAGE_BUSYBOX
19 config ADK_RUNTIME_INIT_SYSVINIT
20 bool "Use system V init"
21 select ADK_PACKAGE_SYSVINIT
22 select ADK_PACKAGE_AGETTY
23 select ADK_PACKAGE_GAWK
25 select ADK_PACKAGE_MOUNT
27 config ADK_RUNTIME_INIT_S6
28 bool "Use s6 init and supervision"
30 select ADK_PACKAGE_S6_PORTABLE_UTILS
31 select ADK_PACKAGE_S6_LINUX_UTILS
33 config ADK_RUNTIME_INIT_SYSTEMD
34 bool "Use systemd init and supervision"
35 select ADK_PACKAGE_SYSTEMD
36 depends on ADK_TARGET_LIB_GLIBC
38 config ADK_RUNTIME_INIT_SIMPLEINIT
39 bool "Use a very simple init"
40 select ADK_PACKAGE_SIMPLEINIT
45 prompt "system for /dev management"
46 depends on !ADK_APPLIANCE_TOOLCHAIN
47 default ADK_RUNTIME_DEV_STATIC if ADK_TARGET_WITHOUT_MMU || ADK_TARGET_ARCH_CRIS
48 default ADK_RUNTIME_DEV_MDEV
50 config ADK_RUNTIME_DEV_MDEV
52 select ADK_KERNEL_DEVTMPFS
53 select ADK_KERNEL_DEVTMPFS_MOUNT
54 depends on ADK_PACKAGE_BUSYBOX
56 config ADK_RUNTIME_DEV_UDEV
58 select ADK_PACKAGE_UDEV if !ADK_PACKAGE_SYSTEMD
59 # needs depmod for module dependency generation on host
60 select ADK_HOST_BUILD_KMOD
61 select ADK_KERNEL_DEVTMPFS
62 select ADK_KERNEL_DEVTMPFS_MOUNT
64 config ADK_RUNTIME_DEV_STATIC
65 bool "Use static /dev"
70 prompt "base applications"
71 depends on !ADK_APPLIANCE_TOOLCHAIN
72 default ADK_RUNTIME_BASE_BUSYBOX
74 config ADK_RUNTIME_BASE_BUSYBOX
76 select ADK_PACKAGE_BUSYBOX
78 config ADK_RUNTIME_BASE_TOYBOX
80 select ADK_PACKAGE_TOYBOX
82 config ADK_RUNTIME_BASE_COREUTILS
84 select ADK_PACKAGE_COREUTILS
85 select ADK_PACKAGE_GREP
86 select ADK_PACKAGE_FIND
90 config ADK_RUNTIME_FIX_PERMISSION
91 bool "fix permissions for target files (suid bit, ..)"
92 select ADK_HOST_BUILD_FAKEROOT
93 depends on ADK_TARGET_ROOTFS_GENIMAGE
95 Use fakeroot to fix permissions for target dir before image
98 config ADK_RUNTIME_SSH_PUBKEY
99 string "SSH public key (root user only)"
100 depends on ADK_PACKAGE_OPENSSH_SERVER || ADK_PACKAGE_DROPBEAR
103 Paste your generated SSH public key here and it will be embedded into
104 the built image, so you can use it to login instantly.
106 config ADK_RUNTIME_PASSWORD
107 string "root password for the embedded system"
108 default "$1$bJoW4DmS$7fUVat.9iFSAePzA4j4Jm."
110 Predefine the root password enabled in the built image.
111 Use ./host_*/usr/bin/mkcrypt to generate the hash.
112 Default password is linux123
114 config ADK_RUNTIME_ADDUSER
118 Enable this option to add an unprivileged user.
119 Fixed UID/GID 100 is used. A group with the same name is added.
121 config ADK_RUNTIME_USER_NAME
124 depends on ADK_RUNTIME_ADDUSER
126 config ADK_RUNTIME_USER_PASSWORD
127 string "user password"
128 default "$1$bJoW4DmS$7fUVat.9iFSAePzA4j4Jm."
129 depends on ADK_RUNTIME_ADDUSER
131 Predefine the user password enabled in the built image.
132 Use ./host_*/usr/bin/mkcrypt to generate the hash.
133 Default password is linux123
135 config ADK_RUNTIME_USER_HOME
136 string "user home directory"
138 depends on ADK_RUNTIME_ADDUSER
140 Set the home directory to use.
142 config ADK_RUNTIME_USER_SHELL
145 depends on ADK_RUNTIME_ADDUSER
147 Set the shell to use.
149 config ADK_RUNTIME_START_SERVICES
150 bool "start services by default"
153 Enable this option to start selected services on boot.
155 source "target/config/Config.in.scripts"
157 config ADK_RUNTIME_TMPFS_SIZE
158 string "size of /tmp in memory (kB)"
159 default "16384" if ADK_TARGET_VBOX
160 default "16384" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
161 default "32768" if ADK_TARGET_SYSTEM_IBM_X40
162 default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI
163 default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI2
164 default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI3
165 default "32768" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
166 default "8192" if ADK_TARGET_SYSTEM_MIKROTIK_RB532
168 depends on !ADK_RUNTIME_INIT_SIMPLEINIT
170 Size of /tmp in memory in Kilobyte.
172 config ADK_RUNTIME_TIMEZONE
173 string "timezone for the embedded system"
174 default "Europe/Berlin"
176 Predefine the timezone for the embedded system.
178 config ADK_RUNTIME_ENABLE_LOCALE
179 bool "enable locale (i18n) support"
180 select ADK_TARGET_LIBC_ICONV if ADK_TARGET_LIB_UCLIBC_NG
181 select BUSYBOX_LOCALE_SUPPORT
183 Enable locale support for the target.
185 config ADK_RUNTIME_DEFAULT_LOCALE
186 string "default locale"
187 depends on ADK_RUNTIME_ENABLE_LOCALE
190 Set locale to be set in the target system as default.
193 prompt "bootup messages from kernel"
195 config ADK_RUNTIME_VERBOSE_KERNEL_VGA_ONLY
196 bool "output via VGA only"
197 depends on ADK_TARGET_WITH_VGA
199 config ADK_RUNTIME_VERBOSE_KERNEL_SERIAL_ONLY
200 bool "output via serial console only"
201 depends on ADK_TARGET_WITH_SERIAL \
205 config ADK_RUNTIME_VERBOSE_KERNEL_VGA_SERIAL
206 bool "output via VGA and serial console"
207 depends on ADK_TARGET_WITH_SERIAL && \
210 Output is via VGA and serial console.
211 Init can use only serial via /dev/console.
213 config ADK_RUNTIME_VERBOSE_KERNEL_SERIAL_VGA
214 bool "output via serial console and VGA"
215 depends on ADK_TARGET_WITH_SERIAL && \
218 Output is via serial console and VGA.
219 Init can use only VGA via /dev/console.
221 config ADK_RUNTIME_QUIET_KERNEL
222 bool "no output from the kernel"
224 Make bootup quiet without messages from the kernel.
229 prompt "bootup messages from initscripts"
230 default ADK_RUNTIME_VERBOSE_INIT_VGA if ADK_TARGET_WITH_VGA
231 default ADK_RUNTIME_VERBOSE_INIT_SERIAL
233 config ADK_RUNTIME_VERBOSE_INIT_VGA
234 bool "output via VGA"
235 depends on ADK_TARGET_WITH_VGA
236 depends on ADK_RUNTIME_VERBOSE_KERNEL_SERIAL_VGA || \
237 ADK_RUNTIME_VERBOSE_KERNEL_VGA_ONLY || \
238 ADK_RUNTIME_QUIET_KERNEL
240 config ADK_RUNTIME_VERBOSE_INIT_SERIAL
241 bool "output via serial"
242 depends on ADK_TARGET_WITH_SERIAL \
245 depends on ADK_RUNTIME_VERBOSE_KERNEL_VGA_SERIAL || \
246 ADK_RUNTIME_VERBOSE_KERNEL_SERIAL_ONLY || \
247 ADK_RUNTIME_QUIET_KERNEL
249 config ADK_RUNTIME_QUIET_INIT
255 prompt "start getty or shell after bootup"
256 default ADK_RUNTIME_GETTY
258 config ADK_RUNTIME_GETTY
259 bool "start a getty after bootup"
261 Start a getty after bootup.
263 config ADK_RUNTIME_SHELL
264 bool "start a shell after bootup"
266 Start a shell after bootup.
268 config ADK_RUNTIME_NONE
269 bool "start no shell nor getty after bootup"
271 Do not start a shell or getty after bootup.
275 config ADK_RUNTIME_GETTY_VGA
276 bool "start getty on VGA console (tty1-tty6)"
277 depends on ADK_RUNTIME_GETTY && ADK_TARGET_WITH_VGA
278 default y if ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
279 default y if ADK_TARGET_QEMU_WITH_GRAPHIC
280 default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
281 default y if ADK_TARGET_SYSTEM_RASPBERRY_PI2
282 default y if ADK_TARGET_SYSTEM_RASPBERRY_PI3
283 default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
284 default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
285 default y if ADK_TARGET_SYSTEM_IBM_X40
286 default y if ADK_TARGET_SYSTEM_ARANYM_M68K
287 default y if ADK_TARGET_MODEL_PCENGINES_ALIX1C
288 default y if ADK_TARGET_VBOX
291 Start getty on VGA console. (tty1-tty6)
293 config ADK_RUNTIME_GETTY_SERIAL
294 bool "start getty on serial console"
295 depends on ADK_RUNTIME_GETTY && ( ADK_TARGET_WITH_SERIAL \
298 default n if ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
299 default n if ADK_TARGET_QEMU_WITH_GRAPHIC
300 default n if ADK_TARGET_SYSTEM_RASPBERRY_PI
301 default n if ADK_TARGET_SYSTEM_RASPBERRY_PI2
302 default n if ADK_TARGET_SYSTEM_RASPBERRY_PI3
303 default n if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
304 default n if ADK_TARGET_SYSTEM_IBM_X40
305 default n if ADK_TARGET_SYSTEM_ARANYM_M68K
306 default n if ADK_TARGET_MODEL_PCENGINES_ALIX1C
307 default n if ADK_TARGET_VBOX
310 Start getty on serial console.
312 config ADK_RUNTIME_CONSOLE_VGA_DEVICE
313 string "VGA console device"
314 depends on ADK_TARGET_WITH_VGA
317 config ADK_RUNTIME_CONSOLE_SERIAL_DEVICE
318 string "serial console device"
319 depends on ADK_TARGET_WITH_SERIAL \
322 default "hvc0" if ADK_TARGET_SYSTEM_QEMU_PPC64
323 default "ttyBF0" if ADK_TARGET_ARCH_BFIN
324 default "ttyUL0" if ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800 \
325 || ADK_TARGET_SYSTEM_NUMATO_MIMASV2
326 default "ttyARC0" if ADK_TARGET_SYSTEM_NSIM_ARCV1 \
327 || ADK_TARGET_SYSTEM_NSIM_ARCV2
328 default "ttyAMA0" if ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB \
329 || ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB_NOMMU \
330 || ADK_TARGET_SYSTEM_QEMU_ARM_REALVIEW_EB_MPCORE \
331 || ADK_TARGET_SYSTEM_QEMU_ARM_VEXPRESS_A9 \
332 || ADK_TARGET_SYSTEM_ARM_FM \
333 || ADK_TARGET_SYSTEM_QEMU_AARCH64
334 default "ttySC1" if ADK_TARGET_SYSTEM_QEMU_SH
335 default "ttySC0" if ADK_TARGET_SYSTEM_SIM_H8300H
336 default "ttymxc0" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
337 default "ttyAMA0" if ADK_TARGET_SYSTEM_RASPBERRY_PI
338 default "ttyAMA0" if ADK_TARGET_SYSTEM_RASPBERRY_PI2
339 default "ttyDA1" if ADK_TARGET_SYSTEM_QEMU_METAG
340 default "ttyS2" if ADK_TARGET_SYSTEM_KINETIS_K70
341 default "ttyPS0" if ADK_TARGET_SYSTEM_QEMU_ARM_XILINX_ZYNQ
342 default "ttysclp0" if ADK_TARGET_SYSTEM_QEMU_S390
343 default "ttyO2" if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
344 default "ttyS4" if ADK_TARGET_SYSTEM_IMGTEC_CI20
347 config ADK_RUNTIME_CONSOLE_SERIAL_SPEED
348 string "serial console speed"
349 depends on ADK_TARGET_WITH_SERIAL \
352 default "9600" if ADK_TARGET_SYSTEM_FON_FON2100
353 default "9600" if ADK_TARGET_SYSTEM_NUMATO_MIMASV2
354 default "9600" if ADK_TARGET_SYSTEM_SGI_O2
355 default "38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP
356 default "38400" if ADK_TARGET_SYSTEM_ANDES_AG101P
359 config ADK_RUNTIME_KBD_LAYOUT
360 string "keyboard layout for the embedded system"
361 depends on ADK_TARGET_WITH_INPUT
362 default "de-latin1-nodeadkeys"
364 Predefine the keyboard layout for the embedded system.
365 For example use de-latin1-nodeadkeys.
368 prompt "initial login shell for the root user"
369 default ADK_ROOTSH_HUSH if ADK_TARGET_WITHOUT_MMU
370 default ADK_ROOTSH_MKSH
372 config ADK_ROOTSH_MKSH
373 bool "mksh (MirBSD Korn Shell)"
374 select ADK_PACKAGE_MKSH if !ADK_APPLIANCE_TOOLCHAIN && !ADK_TARGET_ARCH_OR1K
376 Use mksh (a Korn Shell variant) as standard login shell
379 config ADK_ROOTSH_HUSH
380 bool "hush (busybox shell compatible with non-MMU systems)"
381 select BUSYBOX_HUSH if !ADK_APPLIANCE_TOOLCHAIN
382 select BUSYBOX_FEATURE_SH_IS_HUSH if !ADK_APPLIANCE_TOOLCHAIN
384 hush shell from busybox.
386 config ADK_ROOTSH_SASH
387 bool "sash (Shell compatible with non-MMU systems)"
388 select ADK_PACKAGE_SASH if !ADK_APPLIANCE_TOOLCHAIN
392 config ADK_ROOTSH_ASH
393 bool "ash (busybox shell)"
395 select BUSYBOX_FEATURE_SH_IS_ASH
397 Use the minimalistic ash variant that is part of busybox
398 as standard login shell for the superuser. This is the
399 default, but discouraged due to its frugality.
401 config ADK_ROOTSH_BASH
402 bool "bash (GNU Bourne-Again Shell)"
403 select ADK_PACKAGE_BASH
405 Use GNU bash as standard login shell for the superuser.
407 config ADK_ROOTSH_TCSH
408 bool "tcsh (Tenex C Shell)"
409 select ADK_PACKAGE_TCSH
411 Use tcsh (a C Shell variant) as standard login shell
414 config ADK_ROOTSH_ZSH
415 bool "zsh (The Z Shell)"
416 select ADK_PACKAGE_ZSH
418 Use zsh as standard login shell for the superuser.
423 prompt "system /bin/sh (POSIX script shell)"
424 default ADK_BINSH_HUSH if ADK_TARGET_WITHOUT_MMU
425 default ADK_BINSH_MKSH
427 config ADK_BINSH_MKSH
428 bool "mksh (MirBSD Korn Shell)"
429 select ADK_PACKAGE_MKSH if !ADK_APPLIANCE_TOOLCHAIN
431 Use mksh (a Korn Shell variant) as system shell, which is
432 both small and powerful, so quite suited for this task.
434 config ADK_BINSH_HUSH
435 bool "hush (busybox)"
436 select ADK_PACKAGE_HUSH if !ADK_APPLIANCE_TOOLCHAIN
440 config ADK_BINSH_SASH
441 bool "sash (Standalone Shell)"
442 select ADK_PACKAGE_SASH if !ADK_APPLIANCE_TOOLCHAIN
450 Use the minimalistic ash variant that is part of busybox
451 as system shell. This is the default and rather small and
452 fast, but lacks scripting features.
454 config ADK_BINSH_BASH
455 bool "bash (GNU Bourne-Again Shell)"
456 select ADK_PACKAGE_BASH
458 Use GNU bash as system shell. This is discouraged due to
459 its size and slowness.
462 bool "zsh (The Z Shell)"
463 select ADK_PACKAGE_ZSH
465 Use zsh as system shell. This is probably a bad idea.
469 # workaround for USB ethernet f.e. Raspberry Pi 2/3
470 config ADK_RUNTIME_WAIT_FOR_ETHERNET
472 default y if ADK_TARGET_SYSTEM_RASPBERRY_PI2
473 default y if ADK_TARGET_SYSTEM_RASPBERRY_PI3
475 config ADK_SIMPLE_NETWORK_CONFIG
476 bool "simple network configuration"
478 Manually change network config
480 menu "eth0 Configuration"
481 depends on ADK_SIMPLE_NETWORK_CONFIG
485 default ADK_SIMPLE_NETWORK_CONFIG_ETH0_TYPE_MANUAL
487 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
488 bool "static IP configuration"
490 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_DHCP
493 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_NONE
494 bool "no configuration"
499 prompt "configure default Gateway"
500 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
502 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC_WITH_GW
505 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC_WITHOUT_GW
506 bool "without Gateway"
510 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_IP
512 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
515 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_NM
517 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
518 default "255.255.255.0"
520 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_GW
522 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC_WITH_GW
527 menu "wlan0 Configuration"
528 depends on ADK_SIMPLE_NETWORK_CONFIG
529 depends on ADK_TARGET_WITH_WIFI
533 default ADK_SIMPLE_NETWORK_CONFIG_WLAN0_NONE
535 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_NONE
536 bool "No configuration"
538 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
539 bool "static IP configuration"
541 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_DHCP
547 prompt "configure default Gateway"
548 depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
550 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC_WITH_GW
553 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC_WITHOUT_GW
554 bool "without Gateway"
558 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_IP
560 depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
561 default "192.168.1.2"
563 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_NM
565 depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
566 default "255.255.255.0"
568 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_GW
570 depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC_WITH_GW
571 default "192.168.1.1"
576 prompt "WLAN Security"
577 depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC || ADK_SIMPLE_NETWORK_CONFIG_WLAN0_DHCP
578 default ADK_SIMPLE_NETWORK_CONFIG_WLAN0_NOSEC
580 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_NOSEC
583 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2
588 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2_SSID
590 depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2
593 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2_PW
595 depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2
598 menu "eth1 Configuration"
599 depends on ADK_SIMPLE_NETWORK_CONFIG && \
600 ADK_TARGET_SYSTEM_MIKROTIK_RB532
604 default ADK_SIMPLE_NETWORK_CONFIG_ETH1_NONE
606 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
607 bool "static IP configuration"
609 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_DHCP
612 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_NONE
613 bool "no configuration"
618 prompt "configure default Gateway"
619 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
621 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC_WITH_GW
624 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC_WITHOUT_GW
625 bool "without Gateway"
629 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_IP
631 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
634 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_NM
636 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
637 default "255.255.0.0"
639 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_GW
641 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC_WITH_GW
646 config ADK_SIMPLE_NETWORK_CONFIG_NS
648 depends on ADK_SIMPLE_NETWORK_CONFIG
649 depends on !ADK_SIMPLE_NETWORK_CONFIG_ETH0_DHCP
650 depends on !ADK_SIMPLE_NETWORK_CONFIG_ETH1_DHCP
651 depends on !ADK_SIMPLE_NETWORK_CONFIG_WLAN0_DHCP
654 config ADK_SIMPLE_NETWORK_CONFIG_PROXY
655 string "HTTP-Proxy (f.e. http://10.0.0.2:8080)"
656 depends on ADK_SIMPLE_NETWORK_CONFIG