diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in index 6a5d6a74d..6d2f5b2ac 100644 --- a/package/busybox/config/Config.in +++ b/package/busybox/config/Config.in @@ -4,7 +4,7 @@ # -config BUSYBOX_HAVE_DOT_CONFIG +config BUSYBOX_CONFIG_HAVE_DOT_CONFIG bool default y @@ -28,6 +28,14 @@ config BUSYBOX_CONFIG_NITPICK You have been warned. +config BUSYBOX_CONFIG_DESKTOP + bool "Enable options for full-blown desktop systems" + default n + help + Enable options and features which are not essential. + Select this only if you plan to use busybox on full-blown + desktop machine with common Linux distro, not on an embedded box. + choice prompt "Buffer allocation policy" default BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK @@ -74,8 +82,8 @@ config BUSYBOX_CONFIG_FEATURE_VERBOSE_USAGE config BUSYBOX_CONFIG_FEATURE_COMPRESS_USAGE bool "Store applet usage messages in compressed form" - default n - depends on BUSYBOX_CONFIG_SHOW_USAGE && BUSYBOX_CONFIG_NITPICK + default y + depends on BUSYBOX_CONFIG_SHOW_USAGE help Store usage messages in compressed form, uncompress them on-the-fly when --help is called. @@ -103,13 +111,11 @@ config BUSYBOX_CONFIG_LOCALE_SUPPORT busybox to support locale settings. config BUSYBOX_CONFIG_GETOPT_LONG - bool + bool "Enable support for --long-options" default y -# bool "Enable support for --long-options" -# default n -# help -# Enable this if you want busybox applets to use the gnu --long-option -# style, in addition to single character -a -b -c style options. + help + Enable this if you want busybox applets to use the gnu --long-option + style, in addition to single character -a -b -c style options. config BUSYBOX_CONFIG_FEATURE_DEVPTS bool "Use the devpts filesystem for Unix98 PTYs" @@ -149,6 +155,13 @@ config BUSYBOX_CONFIG_FEATURE_SUID are login, passwd, su, ping, traceroute, crontab, dnsd, ipcrm, ipcs, and vlock. +config BUSYBOX_CONFIG_FEATURE_SYSLOG + bool "Support for syslog" + default y + help + This option is auto-selected when you select any applet which may + send its output to syslog. You do not need to select it manually. + config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG bool "Runtime SUID/SGID configuration via /etc/busybox.conf" default n if BUSYBOX_CONFIG_FEATURE_SUID @@ -189,6 +202,14 @@ config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG_QUIET /etc/busybox.conf should be readable by the user needing the SUID, check this option to avoid users to be notified about missing permissions. +config BUSYBOX_CONFIG_FEATURE_HAVE_RPC + bool "RPC support" + default y + help + Select this if you have rpc support. + This automatically turns off all configuration options that rely + on RPC. + config BUSYBOX_CONFIG_SELINUX bool "Support NSA Security Enhanced Linux" default n @@ -251,7 +272,7 @@ config BUSYBOX_CONFIG_BUILD_LIBBUSYBOX config BUSYBOX_CONFIG_FEATURE_FULL_LIBBUSYBOX bool "Feature-complete libbusybox" - default n if !CONFIG_FEATURE_SHARED_BUSYBOX + default n if !BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX depends on BUSYBOX_CONFIG_BUILD_LIBBUSYBOX help Build a libbusybox with the complete feature-set, disregarding @@ -271,7 +292,7 @@ config BUSYBOX_CONFIG_FEATURE_FULL_LIBBUSYBOX config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX bool "Use shared libbusybox for busybox" default n if BUSYBOX_CONFIG_BUILD_LIBBUSYBOX - depends on !CONFIG_STATIC && BUSYBOX_CONFIG_BUILD_LIBBUSYBOX + depends on !BUSYBOX_CONFIG_STATIC && BUSYBOX_CONFIG_BUILD_LIBBUSYBOX help Use libbusybox.so also for busybox itself. You need to have a working dynamic linker to use this variant. @@ -279,7 +300,7 @@ config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX config BUSYBOX_CONFIG_LFS bool default y - select BUSYBOX_FDISK_SUPPORT_LARGE_DISKS + select BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS help If you want to build BusyBox with large file support, then enable this option. This will have no effect if your kernel or your C @@ -288,24 +309,6 @@ config BUSYBOX_CONFIG_LFS cp, mount, tar, and many others. If you want to access files larger than 2 Gigabytes, enable this option. Otherwise, leave it set to 'N'. -config BUSYBOX_USING_CROSS_COMPILER - bool - default y - help - Do you want to build BusyBox with a Cross Compiler? If so, - then enable this option. Otherwise leave it set to 'N'. - -config BUSYBOX_CROSS_COMPILER_PREFIX - string - default "mipsel-uclibc-" - depends on BUSYBOX_USING_CROSS_COMPILER - help - If you want to build BusyBox with a cross compiler, then you - will need to set this to the cross-compiler prefix. For example, - if my cross-compiler is /usr/i386-linux-uclibc/bin/i386-uclibc-gcc - then I would enter '/usr/i386-linux-uclibc/bin/i386-uclibc-' here, - which will ensure the correct compiler is used. - config BUSYBOX_CONFIG_BUILD_AT_ONCE bool "Compile all sources at once" default n @@ -442,8 +445,8 @@ config BUSYBOX_CONFIG_INSTALL_APPLET_DONT endchoice -config BUSYBOX_PREFIX - string +config BUSYBOX_CONFIG_PREFIX + string "BusyBox installation prefix" default "./_install" help Define your directory to install BusyBox files/subdirs in. @@ -472,3 +475,4 @@ source package/busybox/config/networking/Config.in source package/busybox/config/procps/Config.in source package/busybox/config/shell/Config.in source package/busybox/config/sysklogd/Config.in +source package/busybox/config/runit/Config.in diff --git a/package/busybox/config/archival/Config.in b/package/busybox/config/archival/Config.in index ac71d753a..d92d66085 100644 --- a/package/busybox/config/archival/Config.in +++ b/package/busybox/config/archival/Config.in @@ -128,7 +128,7 @@ config BUSYBOX_CONFIG_IPKG select BUSYBOX_CONFIG_WGET help ipkg is the itsy package management system. - + config BUSYBOX_CONFIG_RPM2CPIO bool "rpm2cpio" default n @@ -300,9 +300,9 @@ config BUSYBOX_CONFIG_FEATURE_DEB_TAR_LZMA depends on BUSYBOX_CONFIG_DPKG || BUSYBOX_CONFIG_DPKG_DEB help This allows dpkg and dpkg-deb to extract deb's that are compressed - internally with lzma instead of gzip. + internally with lzma instead of gzip. You only want this if you are creating your own custom debian - packages that use an internal control.tar.lzma or data.tar.lzma. + packages that use an internal control.tar.lzma or data.tar.lzma. endmenu diff --git a/package/busybox/config/console-tools/Config.in b/package/busybox/config/console-tools/Config.in index 1efe30098..661e8947c 100644 --- a/package/busybox/config/console-tools/Config.in +++ b/package/busybox/config/console-tools/Config.in @@ -58,6 +58,23 @@ config BUSYBOX_CONFIG_RESET This program is used to reset the terminal screen, if it gets messed up. +config BUSYBOX_CONFIG_RESIZE + bool "resize" + default n + help + This program is used to (re)set the width and height of your current + terminal. + +config BUSYBOX_CONFIG_FEATURE_RESIZE_PRINT + bool "print environment variables" + default n + depends on BUSYBOX_CONFIG_RESIZE + help + Prints the newly set size (number of columns and rows) of + the terminal. + E.g.: + COLUMNS=80;LINES=44;export COLUMNS LINES; + config BUSYBOX_CONFIG_SETCONSOLE bool "setconsole" default n diff --git a/package/busybox/config/coreutils/Config.in b/package/busybox/config/coreutils/Config.in index 3487fc742..91f93e19b 100644 --- a/package/busybox/config/coreutils/Config.in +++ b/package/busybox/config/coreutils/Config.in @@ -120,11 +120,11 @@ config BUSYBOX_CONFIG_FEATURE_DD_SIGNAL_HANDLING default y depends on BUSYBOX_CONFIG_DD help - sending a SIGUSR1 signal to a running `dd' process makes it - print to standard error the number of records read and written + sending a SIGUSR1 signal to a running `dd' process makes it + print to standard error the number of records read and written so far, then to resume copying. - $ dd if=/dev/zero of=/dev/null& pid=$! $ kill -USR1 $pid; sleep 1; kill $pid + $ dd if=/dev/zero of=/dev/null& pid=$! $ kill -USR1 $pid; sleep 1; kill $pid 10899206+0 records in 10899206+0 records out config BUSYBOX_CONFIG_FEATURE_DD_IBS_OBS @@ -704,6 +704,13 @@ config BUSYBOX_CONFIG_WC wc is used to print the number of bytes, words, and lines, in specified files. +config BUSYBOX_CONFIG_FEATURE_WC_LARGE + bool "Support very large files in wc" + default n + depends on BUSYBOX_CONFIG_WC + help + Use "unsigned long long" in wc for count variables + config BUSYBOX_CONFIG_WHO bool "who" default n @@ -744,9 +751,9 @@ config BUSYBOX_CONFIG_FEATURE_AUTOWIDTH depends on BUSYBOX_CONFIG_LS || BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TELNET help This option allows utilities such as 'ls', 'more' and 'telnet' - to determine the width of the screen, which can allow them to + to determine the width of the screen, which can allow them to display additional text or avoid wrapping text onto the next line. - If you leave this disabled, your utilities will be especially + If you leave this disabled, your utilities will be especially primitive and will be unable to determine the current screen width. comment "Common options for df, du, ls" diff --git a/package/busybox/config/findutils/Config.in b/package/busybox/config/findutils/Config.in index e70825988..dc0bbcec3 100644 --- a/package/busybox/config/findutils/Config.in +++ b/package/busybox/config/findutils/Config.in @@ -148,7 +148,7 @@ config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT is exceeded. config BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM - bool "Enable options -0" + bool "Enable null terminated option -0" default y depends on BUSYBOX_CONFIG_XARGS help diff --git a/package/busybox/config/init/Config.in b/package/busybox/config/init/Config.in index 3696f7017..b8ad0d664 100644 --- a/package/busybox/config/init/Config.in +++ b/package/busybox/config/init/Config.in @@ -8,6 +8,7 @@ menu "Init Utilities" config BUSYBOX_CONFIG_INIT bool "init" default y + select BUSYBOX_CONFIG_FEATURE_SYSLOG help init is the first program run when the system boots. diff --git a/package/busybox/config/libbb/Config.in b/package/busybox/config/libbb/Config.in index 7d84a7596..4919f9b0b 100644 --- a/package/busybox/config/libbb/Config.in +++ b/package/busybox/config/libbb/Config.in @@ -5,6 +5,13 @@ menu "Busybox Library Tuning" +config BUSYBOX_CONFIG_PASSWORD_MINLEN + int "Minimum password length" + default 6 + range 5 32 + help + Minimum allowable password length. + config BUSYBOX_CONFIG_MD5_SIZE_VS_SPEED int " MD5: Trade Bytes for Speed" default 2 diff --git a/package/busybox/config/loginutils/Config.in b/package/busybox/config/loginutils/Config.in index 33a764e35..268c8b6e7 100644 --- a/package/busybox/config/loginutils/Config.in +++ b/package/busybox/config/loginutils/Config.in @@ -14,7 +14,7 @@ config BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS publicly readable. config BUSYBOX_CONFIG_USE_BB_SHADOW - bool #" Use busybox shadow password functions" + bool " Use busybox shadow password functions" default n depends on BUSYBOX_CONFIG_USE_BB_PWD_GRP && BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS help @@ -80,6 +80,7 @@ config BUSYBOX_CONFIG_DELUSER config BUSYBOX_CONFIG_GETTY bool "getty" default n + select BUSYBOX_CONFIG_FEATURE_SYSLOG help getty lets you log in on a tty, it is normally invoked by init. @@ -103,12 +104,21 @@ config BUSYBOX_CONFIG_LOGIN bool "login" default n select BUSYBOX_CONFIG_FEATURE_SUID + select BUSYBOX_CONFIG_FEATURE_SYSLOG help login is used when signing onto a system. Note that Busybox binary must be setuid root for this applet to work properly. +config BUSYBOX_CONFIG_LOGIN_SCRIPTS + bool "Support for login scripts" + depends on BUSYBOX_CONFIG_LOGIN + default n + help + Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT + just prior to switching from root to logged-in user. + config BUSYBOX_CONFIG_FEATURE_SECURETTY bool "Support for /etc/securetty" default n @@ -122,6 +132,7 @@ config BUSYBOX_CONFIG_PASSWD bool "passwd" default y select BUSYBOX_CONFIG_FEATURE_SUID + select BUSYBOX_CONFIG_FEATURE_SYSLOG help passwd changes passwords for user and group accounts. A normal user may only change the password for his/her own account, the super user @@ -135,6 +146,7 @@ config BUSYBOX_CONFIG_SU bool "su" default n select BUSYBOX_CONFIG_FEATURE_SUID + select BUSYBOX_CONFIG_FEATURE_SYSLOG help su is used to become another user during a login session. Invoked without a username, su defaults to becoming the super user. @@ -142,9 +154,17 @@ config BUSYBOX_CONFIG_SU Note that Busybox binary must be setuid root for this applet to work properly. +config BUSYBOX_CONFIG_SU_SYSLOG + bool "Support for syslog in su" + default n + depends on BUSYBOX_CONFIG_SU + help + Enables support for syslog in su. + config BUSYBOX_CONFIG_SULOGIN bool "sulogin" default n + select BUSYBOX_CONFIG_FEATURE_SYSLOG help sulogin is invoked when the system goes into single user mode (this is done through an entry in inittab). diff --git a/package/busybox/config/miscutils/Config.in b/package/busybox/config/miscutils/Config.in index 407503dc4..4d5a9a1d3 100644 --- a/package/busybox/config/miscutils/Config.in +++ b/package/busybox/config/miscutils/Config.in @@ -23,6 +23,7 @@ config BUSYBOX_CONFIG_CROND bool "crond" default y select BUSYBOX_CONFIG_FEATURE_SUID + select BUSYBOX_CONFIG_FEATURE_SYSLOG help Crond is a background daemon that parses individual crontab files and executes commands on behalf of the users in question. @@ -66,8 +67,9 @@ config BUSYBOX_CONFIG_DC config BUSYBOX_CONFIG_DEVFSD bool "devfsd (obsolete)" default n + select BUSYBOX_CONFIG_FEATURE_SYSLOG help - This is deprecated, and will be going away in a future release. + This is deprecated, and will be removed at the end of 2008. Provides compatibility with old device names on a devfs systems. You should set it to true if you have devfs enabled. @@ -105,13 +107,12 @@ config BUSYBOX_CONFIG_FEATURE_DEVFS bool " Use devfs names for all devices (obsolete)" default y help + This is obsolete and will be going away at the end of 2008.. + This tells busybox to look for names like /dev/loop/0 instead of /dev/loop0. If your /dev directory has normal names instead of devfs names, you don't want this. - This is obsolete and will be going away someday. Consider it - deprecated. - config BUSYBOX_CONFIG_EJECT bool "eject" default n @@ -178,7 +179,7 @@ config BUSYBOX_CONFIG_HDPARM help Get/Set hard drive parameters. Primarily intended for ATA drives. Adds about 13k (or around 30k if you enable the - BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY option).... + FEATURE_HDPARM_GET_IDENTITY option).... config BUSYBOX_CONFIG_FEATURE_HDPARM_GET_IDENTITY bool "Support obtaining detailed information directly from drives" @@ -283,6 +284,35 @@ config BUSYBOX_CONFIG_MT to advance or rewind a tape past a specified number of archive files on the tape. +config BUSYBOX_CONFIG_NMETER + bool "nmeter" + default n + help + nmeter prints various system parameters continuously. + +config BUSYBOX_CONFIG_RAIDAUTORUN + bool "raidautorun" + default n + help + raidautorun tells the kernel md driver to + search and start RAID arrays. + +config BUSYBOX_CONFIG_READAHEAD + bool "readahead" + default n + help + Preload the files listed on the command line into RAM cache so that + subsequent reads on these files will not block on disk I/O. + + This applet just calls the readahead(2) system call on each file. + It is mainly useful in system startup scripts to preload files + or executables before they are used. When used at the right time + (in particular when a CPU boundprocess is running) it can + significantly speed up system startup. + + As readahead(2) blocks until each file has been read, it is best to + run this applet as a background job. + config BUSYBOX_CONFIG_RUNLEVEL bool "runlevel" default n @@ -315,13 +345,17 @@ config BUSYBOX_CONFIG_TASKSET bool "taskset" default n help - Retrieve or set a processes's CPU affinity + Retrieve or set a processes's CPU affinity. + This requires sched_{g,s}etaffinity support in your libc. -config BUSYBOX_CONFIG_TASKSET - bool "taskset" +config BUSYBOX_CONFIG_FEATURE_TASKSET_FANCY + bool "fancy output" default n + depends on BUSYBOX_CONFIG_TASKSET help - Retrieve or set a processes's CPU affinity (on linux) + Add code for fancy output. This merely silences a compiler-warning + and adds about 135 Bytes. May be needed for machines with alot + of CPUs. config BUSYBOX_CONFIG_TIME bool "time" diff --git a/package/busybox/config/modutils/Config.in b/package/busybox/config/modutils/Config.in index 4441632e8..d1e5c3a9e 100644 --- a/package/busybox/config/modutils/Config.in +++ b/package/busybox/config/modutils/Config.in @@ -43,7 +43,7 @@ config BUSYBOX_CONFIG_FEATURE_INSMOD_LOADINKMEM config BUSYBOX_CONFIG_FEATURE_INSMOD_LOAD_MAP bool "Enable load map (-m) option" default n - depends on BUSYBOX_CONFIG_INSMOD && BUSYBOX_CONFIG_FEATURE_2_4_MODULES + depends on BUSYBOX_CONFIG_INSMOD && ( BUSYBOX_CONFIG_FEATURE_2_4_MODULES || BUSYBOX_CONFIG_FEATURE_2_6_MODULES ) help Enabling this, one would be able to get a load map output on stdout. This makes kernel module debugging @@ -91,7 +91,8 @@ config BUSYBOX_CONFIG_MODPROBE module options from the configuration file. See option below. config BUSYBOX_CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS - bool "Multiple options parsing" + bool + prompt "Multiple options parsing" if BUSYBOX_CONFIG_NITPICK default n depends on BUSYBOX_CONFIG_MODPROBE help @@ -106,6 +107,16 @@ config BUSYBOX_CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS Saying Y here is not a bad idea if you're not that short on storage capacity. +config BUSYBOX_CONFIG_FEATURE_MODPROBE_FANCY_ALIAS + bool + prompt "Fancy alias parsing" if BUSYBOX_CONFIG_NITPICK + default n + depends on BUSYBOX_CONFIG_MODPROBE && BUSYBOX_CONFIG_FEATURE_2_6_MODULES + help + Say 'y' here to enable parsing of aliases with underscore/dash + mismatch between module name and file name, along with bus-specific + aliases (such as pci:... or usb:... aliases). + comment "Options common to multiple modutils" depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE || BUSYBOX_CONFIG_LSMOD @@ -124,7 +135,7 @@ config BUSYBOX_CONFIG_FEATURE_2_4_MODULES # Simulate indentation bool "Support version 2.2.x to 2.4.x Linux kernels" default y - depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD + depends on BUSYBOX_CONFIG_INSMOD || BUSYBOX_CONFIG_RMMOD || BUSYBOX_CONFIG_MODPROBE help Support module loading for 2.2.x and 2.4.x Linux kernels. @@ -140,7 +151,7 @@ config BUSYBOX_CONFIG_FEATURE_2_6_MODULES config BUSYBOX_CONFIG_FEATURE_QUERY_MODULE_INTERFACE bool default n - depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && !CONFIG_FEATURE_2_6_MODULES + depends on BUSYBOX_CONFIG_FEATURE_2_4_MODULES && !BUSYBOX_CONFIG_FEATURE_2_6_MODULES endmenu diff --git a/package/busybox/config/networking/Config.in b/package/busybox/config/networking/Config.in index 3e0cbc95d..bd1c64b5e 100644 --- a/package/busybox/config/networking/Config.in +++ b/package/busybox/config/networking/Config.in @@ -22,7 +22,7 @@ config BUSYBOX_CONFIG_DNSD bool "dnsd" default n help - Small and static DNS server daemon. + Small and static DNS server daemon. config BUSYBOX_CONFIG_ETHER_WAKE bool "ether-wake" @@ -33,6 +33,7 @@ config BUSYBOX_CONFIG_ETHER_WAKE config BUSYBOX_CONFIG_FAKEIDENTD bool "fakeidentd" default n + select BUSYBOX_CONFIG_FEATURE_SYSLOG help fakeidentd listens on the ident port and returns a predefined fake value on any query. @@ -52,7 +53,7 @@ config BUSYBOX_CONFIG_FTPPUT config BUSYBOX_CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS bool "Enable long options in ftpget/ftpput" default n - depends on BUSYBOX_CONFIG_GETOPT_LONG && (CONFIG_FTPGET || BUSYBOX_CONFIG_FTPPUT) + depends on BUSYBOX_CONFIG_GETOPT_LONG && (BUSYBOX_CONFIG_FTPGET || BUSYBOX_CONFIG_FTPPUT) help Support long options for the ftpget/ftpput applet. @@ -68,14 +69,6 @@ config BUSYBOX_CONFIG_HTTPD help Serve web pages via an HTTP server. -config BUSYBOX_CONFIG_FEATURE_HTTPD_WITHOUT_INETD - bool "Support using httpd as a daemon (not from inetd)" - default y - depends on BUSYBOX_CONFIG_HTTPD - help - This option enables uid and port options for the httpd applet, - and eliminates the need to be called from the inetd server daemon. - config BUSYBOX_CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP bool "Support reloading the global config file using hup signal" default n @@ -131,9 +124,9 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR default n depends on BUSYBOX_CONFIG_FEATURE_HTTPD_CGI help - This option enables support for running scripts through an - interpreter. Turn this on if you want PHP scripts to work - properly. You need to supply an addition line in your httpd + This option enables support for running scripts through an + interpreter. Turn this on if you want PHP scripts to work + properly. You need to supply an addition line in your httpd config file: *.php:/path/to/your/php @@ -210,8 +203,8 @@ config BUSYBOX_CONFIG_IFUPDOWN Activate or deactivate the specified interfaces. This applet makes use of either "ifconfig" and "route" or the "ip" command to actually configure network interfaces. Therefore, you will probably also want - to enable either BUSYBOX_CONFIG_IFCONFIG and BUSYBOX_CONFIG_ROUTE, or enable - BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP and the various BUSYBOX_CONFIG_IP options. Of + to enable either IFCONFIG and ROUTE, or enable + FEATURE_IFUPDOWN_IP and the various IP options. Of course you could use non-busybox versions of these programs, so against my better judgement (since this will surely result in plenty of support questions on the mailing list), I do not force you to @@ -238,20 +231,20 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN help Use the busybox iproute "ip" applet to implement "ifupdown". - If leave this disabled, you must install the full-blown iproute2 + If left disabled, you must install the full-blown iproute2 utility or the "ifup" and "ifdown" applets will not work. -config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN +config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN bool "Use busybox ifconfig and route applets" default n - depends on BUSYBOX_CONFIG_IFUPDOWN && !CONFIG_FEATURE_IFUPDOWN_IP + depends on BUSYBOX_CONFIG_IFUPDOWN && !BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP select BUSYBOX_CONFIG_IFCONFIG select BUSYBOX_CONFIG_ROUTE help Use the busybox iproute "ifconfig" and "route" applets to implement the "ifup" and "ifdown" utilities. - If leave this disabled, you must install the full-blown ifconfig + If left disabled, you must install the full-blown ifconfig and route utilities, or the "ifup" and "ifdown" applets will not work. @@ -288,6 +281,7 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING config BUSYBOX_CONFIG_INETD bool "inetd" default n + select BUSYBOX_CONFIG_FEATURE_SYSLOG help Internet superserver daemon @@ -330,9 +324,9 @@ config BUSYBOX_CONFIG_FEATURE_INETD_RPC bool "Support RPC services" default n depends on BUSYBOX_CONFIG_INETD + depends on BUSYBOX_CONFIG_FEATURE_HAVE_RPC help - Suuport Sun-RPC based services - + Support Sun-RPC based services config BUSYBOX_CONFIG_IP bool "ip" @@ -370,6 +364,13 @@ config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL help Add support for tunneling commands to "ip". +config BUSYBOX_CONFIG_FEATURE_IP_RULE + bool "ip rule" + default n + depends on BUSYBOX_CONFIG_IP + help + Add support for rule commands to "ip". + config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS bool "Support short forms of ip commands." default n @@ -404,6 +405,11 @@ config BUSYBOX_CONFIG_IPTUNNEL default n depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_TUNNEL +config BUSYBOX_CONFIG_IPRULE + bool + default n + depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_RULE + config BUSYBOX_CONFIG_IPCALC bool "ipcalc" default n @@ -428,6 +434,7 @@ config BUSYBOX_CONFIG_FEATURE_IPCALC_LONG_OPTIONS config BUSYBOX_CONFIG_NAMEIF bool "nameif" default n + select BUSYBOX_CONFIG_FEATURE_SYSLOG help nameif is used to rename network interface by its MAC address. Renamed interfaces MUST be in the down state. @@ -452,13 +459,21 @@ config BUSYBOX_CONFIG_NETMSG help simple program for sending udp broadcast messages -config BUSYBOX_CONFIG_NC_GAPING_SECURITY_HOLE - bool "gaping security hole" +config BUSYBOX_CONFIG_NC_SERVER + bool "Netcat server options (-lp)" default n depends on BUSYBOX_CONFIG_NC help - Add support for executing a program after making or receiving a - successful connection (-e option). + Allow netcat to act as a server. + +config BUSYBOX_CONFIG_NC_EXTRA + bool "Netcat extensions (-eiw and filename)" + default n + depends on BUSYBOX_CONFIG_NC + help + Add -e (support for executing the rest of the command line after + making or receiving a successful connection), -i (delay interval for + lines sent), -w (timeout for initial connection). config BUSYBOX_CONFIG_NETSTAT bool "netstat" @@ -537,6 +552,7 @@ config BUSYBOX_CONFIG_FEATURE_TELNET_AUTOLOGIN config BUSYBOX_CONFIG_TELNETD bool "telnetd" default y + select BUSYBOX_CONFIG_FEATURE_SYSLOG help A daemon for the TELNET protocol, allowing you to log onto the host running the daemon. Please keep in mind that the TELNET protocol @@ -548,8 +564,8 @@ config BUSYBOX_CONFIG_TELNETD Note that for busybox telnetd to work you need several things: First of all, your kernel needs: - BUSYBOX_CONFIG_UNIX98_PTYS=y - BUSYBOX_CONFIG_DEVPTS_FS=y + UNIX98_PTYS=y + DEVPTS_FS=y Next, you need a /dev/pts directory on your root filesystem: @@ -566,8 +582,8 @@ config BUSYBOX_CONFIG_TELNETD mount -t devpts devpts /dev/pts - You need to be sure that Busybox has BUSYBOX_CONFIG_LOGIN and - BUSYBOX_CONFIG_FEATURE_SUID enabled. And finally, you should make + You need to be sure that Busybox has LOGIN and + FEATURE_SUID enabled. And finally, you should make certain that Busybox has been installed setuid root: chown root.root /bin/busybox @@ -576,13 +592,12 @@ config BUSYBOX_CONFIG_TELNETD with all that done, telnetd _should_ work.... -config BUSYBOX_CONFIG_FEATURE_TELNETD_INETD - bool "Support call from inetd only" +config BUSYBOX_CONFIG_FEATURE_TELNETD_STANDALONE + bool "Support standalone telnetd (not inetd only)" default n depends on BUSYBOX_CONFIG_TELNETD help - Selecting this will make telnetd only callable from inetd, - removing the standalone support. + Selecting this will make telnetd able to run standalone. config BUSYBOX_CONFIG_TFTP bool "tftp" @@ -699,6 +714,7 @@ config BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS config BUSYBOX_CONFIG_ZCIP bool "zcip" default n + select BUSYBOX_CONFIG_FEATURE_SYSLOG help ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927. It's a daemon that allocates and defends a dynamically assigned diff --git a/package/busybox/config/networking/udhcp/Config.in b/package/busybox/config/networking/udhcp/Config.in index 741afa327..04a2ada17 100644 --- a/package/busybox/config/networking/udhcp/Config.in +++ b/package/busybox/config/networking/udhcp/Config.in @@ -3,8 +3,6 @@ # see scripts/kbuild/config-language.txt. # -menu "udhcp Server/Client" - config BUSYBOX_CONFIG_APP_UDHCPD bool "udhcp Server (udhcpd)" default n @@ -14,6 +12,26 @@ config BUSYBOX_CONFIG_APP_UDHCPD See http://udhcp.busybox.net for further details. +config BUSYBOX_CONFIG_APP_DHCPRELAY + bool "dhcprelay" + default n + depends on BUSYBOX_CONFIG_APP_UDHCPD + help + dhcprelay listens for dhcp requests on one or more interfaces + and forwards these requests to a different interface or dhcp + server. + +config BUSYBOX_CONFIG_APP_DUMPLEASES + bool "Lease display utility (dumpleases)" + default n + depends on BUSYBOX_CONFIG_APP_UDHCPD + help + dumpleases displays the leases written out by the udhcpd server. + Lease times are stored in the file by time remaining in lease, or + by the absolute time that it expires in seconds from epoch. + + See http://udhcp.busybox.net for further details. + config BUSYBOX_CONFIG_APP_UDHCPC bool "udhcp Client (udhcpc)" default y @@ -26,29 +44,19 @@ config BUSYBOX_CONFIG_APP_UDHCPC See http://udhcp.busybox.net for further details. -config BUSYBOX_CONFIG_APP_DUMPLEASES - bool "Lease display utility (dumpleases)" - default n - depends on BUSYBOX_CONFIG_APP_UDHCPD - help - dumpleases displays the leases written out by the udhcpd server. - Lease times are stored in the file by time remaining in lease, or - by the absolute time that it expires in seconds from epoch. - - See http://udhcp.busybox.net for further details. - config BUSYBOX_CONFIG_FEATURE_UDHCP_SYSLOG - bool " Log udhcp messages to syslog (instead of stdout)" + bool "Log udhcp messages to syslog" default n depends on BUSYBOX_CONFIG_APP_UDHCPD || BUSYBOX_CONFIG_APP_UDHCPC + select BUSYBOX_CONFIG_FEATURE_SYSLOG help - If selected, udhcpd will log all its messages to syslog, otherwise, - it will attempt to log them to stdout. + If not daemonized, udhcpd prints its messages to stdout/stderr. + If this option is selected, it will also log them to syslog. See http://udhcp.busybox.net for further details. config BUSYBOX_CONFIG_FEATURE_UDHCP_DEBUG - bool " Compile udhcp with noisy debugging messages" + bool "Compile udhcp with noisy debugging messages" default n depends on BUSYBOX_CONFIG_APP_UDHCPD || BUSYBOX_CONFIG_APP_UDHCPC help @@ -57,6 +65,3 @@ config BUSYBOX_CONFIG_FEATURE_UDHCP_DEBUG the background. See http://udhcp.busybox.net for further details. - -endmenu - diff --git a/package/busybox/config/runit/Config.in b/package/busybox/config/runit/Config.in new file mode 100644 index 000000000..3938f9cc2 --- /dev/null +++ b/package/busybox/config/runit/Config.in @@ -0,0 +1,66 @@ +# +# For a description of the syntax of this configuration file, +# see scripts/kbuild/config-language.txt. +# + +menu "Runit Utilities" + +config BUSYBOX_CONFIG_RUNSV + bool "runsv" + default n + help + runsv starts and monitors a service and optionally an appendant log + service. + +config BUSYBOX_CONFIG_RUNSVDIR + bool "runsvdir" + default n + help + runsvdir starts a runsv process for each subdirectory, or symlink to + a directory, in the services directory dir, up to a limit of 1000 + subdirectories, and restarts a runsv process if it terminates. + +config BUSYBOX_CONFIG_SV + bool "sv" + default n + help + sv reports the current status and controls the state of services + monitored by the runsv supervisor. + +config BUSYBOX_CONFIG_SVLOGD + bool "svlogd" + default n + help + svlogd continuously reads log data from its standard input, optionally + filters log messages, and writes the data to one or more automatically + rotated logs. + +config BUSYBOX_CONFIG_CHPST + bool "chpst" + default n + help + chpst changes the process state according to the given options, and + execs specified program. + +config BUSYBOX_CONFIG_SETUIDGID + bool "setuidgid" + help + Sets soft resource limits as specified by options + +config BUSYBOX_CONFIG_ENVUIDGID + bool "envuidgid" + help + Sets $UID to account's uid and $GID to account's gid + +config BUSYBOX_CONFIG_ENVDIR + bool "envdir" + help + Sets various environment variables as specified by files + in the given directory + +config BUSYBOX_CONFIG_SOFTLIMIT + bool "softlimit" + help + Sets soft resource limits as specified by options + +endmenu diff --git a/package/busybox/config/shell/Config.in b/package/busybox/config/shell/Config.in index 373c7461a..d4cd52dad 100644 --- a/package/busybox/config/shell/Config.in +++ b/package/busybox/config/shell/Config.in @@ -257,6 +257,7 @@ config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING_VI config BUSYBOX_CONFIG_FEATURE_COMMAND_HISTORY int "History size" + range 0 99999 default 15 depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING help diff --git a/package/busybox/config/sysklogd/Config.in b/package/busybox/config/sysklogd/Config.in index f12069566..12e08d3a9 100644 --- a/package/busybox/config/sysklogd/Config.in +++ b/package/busybox/config/sysklogd/Config.in @@ -89,6 +89,7 @@ config BUSYBOX_CONFIG_KLOGD bool "klogd" default y depends on BUSYBOX_CONFIG_SYSLOGD + select BUSYBOX_CONFIG_FEATURE_SYSLOG help klogd is a utility which intercepts and logs all messages from the Linux kernel and sends the messages @@ -99,6 +100,7 @@ config BUSYBOX_CONFIG_KLOGD config BUSYBOX_CONFIG_LOGGER bool "logger" default y + select BUSYBOX_CONFIG_FEATURE_SYSLOG help The logger utility allows you to send arbitrary text messages to the system log (i.e. the 'syslogd' utility) so diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in index b7a8ae91f..ab3dc3731 100644 --- a/package/busybox/config/util-linux/Config.in +++ b/package/busybox/config/util-linux/Config.in @@ -17,6 +17,26 @@ config BUSYBOX_CONFIG_DMESG are also logged to the system console. Enable this option if you wish to enable the 'dmesg' utility. +config BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY + bool "pretty dmesg output" + default y + depends on BUSYBOX_CONFIG_DMESG + help + If you wish to scrub the syslog level from the output, say 'Y' here. + The syslog level is a string prefixed to every line with the form "<#>". + + With this option you will see: + # dmesg + Linux version 2.6.17.4 ..... + BIOS-provided physical RAM map: + BIOS-e820: 0000000000000000 - 000000000009f000 (usable) + + Without this option you will see: + # dmesg + <5>Linux version 2.6.17.4 ..... + <6>BIOS-provided physical RAM map: + <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable) + config BUSYBOX_CONFIG_FBSET bool "fbset" default n @@ -72,8 +92,8 @@ config BUSYBOX_CONFIG_FDISK can be used to list and edit the set of partitions or BSD style 'disk slices' that are defined on a hard drive. -config BUSYBOX_FDISK_SUPPORT_LARGE_DISKS - bool +config BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS + bool "support over 4GB disks" default y depends on BUSYBOX_CONFIG_FDISK help @@ -307,7 +327,7 @@ config BUSYBOX_CONFIG_FEATURE_MKSWAP_V0 bool "version 0 support" default n depends on BUSYBOX_CONFIG_MKSWAP -# depends on BUSYBOX_CONFIG_MKSWAP && BUSYBOX_CONFIG_DEPRECATED +# depends on MKSWAP && BUSYBOX_CONFIG_DEPRECATED help Enable support for the old v0 style. If your kernel is older than 2.1.117, then v0 support is the @@ -325,7 +345,7 @@ config BUSYBOX_CONFIG_MORE config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS bool "Use termios to manipulate the screen" - default y + default n depends on BUSYBOX_CONFIG_MORE help This option allows utilities such as 'more' and 'top' to determine @@ -349,8 +369,34 @@ config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS bool "Support mounting NFS file systems" default y depends on BUSYBOX_CONFIG_MOUNT + depends on BUSYBOX_CONFIG_FEATURE_HAVE_RPC + select BUSYBOX_CONFIG_FEATURE_SYSLOG help - Enable mounting of NFS file systems. + Enable mounting of NFS file systems. + +config BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS + bool "Support mounting CIFS/SMB file systems" + default y + depends on BUSYBOX_CONFIG_MOUNT + help + Enable support for samba mounts. + +config BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS + depends on BUSYBOX_CONFIG_MOUNT + bool "Support lots of -o flags in mount" + default y + help + Without this, mount only supports ro/rw/remount. With this, it + supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime, + noatime, diratime, nodiratime, loud, bind, move, shared, slave, + private, unbindable, rshared, rslave, rprivate, and runbindable. + +config BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB + depends on BUSYBOX_CONFIG_MOUNT + bool "Support /etc/fstab and -a" + default y + help + Support mount all and looking for files in /etc/fstab. config BUSYBOX_CONFIG_PIVOT_ROOT bool "pivot_root" diff --git a/scripts/gen_busybox_menuconfig.pl b/scripts/gen_busybox_menuconfig.pl index 5fe64783e..0128bf78d 100755 --- a/scripts/gen_busybox_menuconfig.pl +++ b/scripts/gen_busybox_menuconfig.pl @@ -16,9 +16,9 @@ my %config; open CONFIG, $DEFCONFIG or die 'cannot open config file'; while () { - /^([\w_]+)=([ym])/ and $config{$1} = $2; - /^([\w_]+)=(\d+)/ and $config{$1} = $2; - /^([\w_]+)=(".+")/ and $config{$1} = $2; + /^CONFIG_([\w_]+)=([ym])/ and $config{$1} = $2; + /^CONFIG_([\w_]+)=(\d+)/ and $config{$1} = $2; + /^CONFIG_([\w_]+)=(".+")/ and $config{$1} = $2; } close CONFIG; @@ -39,8 +39,8 @@ while () { next if $line =~ /^\s*mainmenu/; # FIXME: make this dynamic - $line =~ s/default CONFIG_FEATURE_BUFFERS_USE_MALLOC/default CONFIG_FEATURE_BUFFERS_GO_ON_STACK/; - $line =~ s/default BUSYBOX_CONFIG_FEATURE_SH_IS_NONE/default BUSYBOX_CONFIG_FEATURE_SH_IS_ASH/; + $line =~ s/default FEATURE_BUFFERS_USE_MALLOC/default FEATURE_BUFFERS_GO_ON_STACK/; + $line =~ s/default FEATURE_SH_IS_NONE/default FEATURE_SH_IS_ASH/; if ($line =~ /^\s*config\s*([\w_]+)/) { $cur = $1; @@ -52,10 +52,12 @@ while () { } $line =~ s/^(\s*source\s+)/$1package\/busybox\/config\//; - $line =~ s/(\s+)((CONFIG|FDISK|USING|CROSS|EXTRA|PREFIX|FEATURE|HAVE|BUSYBOX)[\w_]*)/$1BUSYBOX_$2/g; + $line =~ s/^(\s*(prompt "[^"]+" if|config|depends|depends on|select|default|default \w if)\s+\!?)([A-Z_])/$1BUSYBOX_CONFIG_$3/g; + $line =~ s/(( \|\| | \&\& | \( )!?)([A-Z_])/$1BUSYBOX_CONFIG_$3/g; + $line =~ s/(\( ?!?)([A-Z_]+ (\|\||&&))/$1BUSYBOX_CONFIG_$2/g; if ($cur) { - ($cur !~ /^CONFIG/ or $cur eq 'CONFIG_LFS') and do { + ($cur eq 'LFS') and do { $line =~ s/^(\s*(bool|tristate|string))\s*".+"$/$1/; }; if ($line =~ /^\s*default/) {