Rob Landley | 5bcc7ea | 2014-09-20 13:20:17 -0500 | [diff] [blame] | 1 | mainmenu "Toybox Configuration" |
landley | 5257cf5 | 2006-10-31 23:30:06 -0500 | [diff] [blame] | 2 | |
Rob Landley | 76ec485 | 2012-10-21 17:57:23 -0500 | [diff] [blame] | 3 | |
| 4 | source generated/Config.probed |
| 5 | source generated/Config.in |
| 6 | |
| 7 | comment "" |
| 8 | |
Rob Landley | 3a9241a | 2012-08-25 14:25:22 -0500 | [diff] [blame] | 9 | menu "Toybox global settings" |
landley | 5257cf5 | 2006-10-31 23:30:06 -0500 | [diff] [blame] | 10 | |
Rob Landley | a8bee46 | 2014-08-18 19:10:45 -0500 | [diff] [blame] | 11 | # This entry controls the multiplexer, disabled for single command builds |
Rob Landley | 2896480 | 2008-01-19 17:08:39 -0600 | [diff] [blame] | 12 | config TOYBOX |
| 13 | bool |
Rob Landley | d04dc1f | 2013-08-30 01:53:31 -0500 | [diff] [blame] | 14 | default y |
Rob Landley | d06c58d | 2007-10-11 15:36:36 -0500 | [diff] [blame] | 15 | help |
Rob Landley | cefc0a2 | 2016-10-05 13:29:55 -0500 | [diff] [blame] | 16 | usage: toybox [--long | --help | --version | [command] [arguments...]] |
Rob Landley | d06c58d | 2007-10-11 15:36:36 -0500 | [diff] [blame] | 17 | |
Rob Landley | 26c0045 | 2013-04-14 12:35:25 -0500 | [diff] [blame] | 18 | With no arguments, shows available commands. First argument is |
Rob Landley | 2896480 | 2008-01-19 17:08:39 -0600 | [diff] [blame] | 19 | name of a command to run, followed by any arguments to that command. |
Rob Landley | d06c58d | 2007-10-11 15:36:36 -0500 | [diff] [blame] | 20 | |
Rob Landley | 8431692 | 2014-06-10 21:57:05 -0500 | [diff] [blame] | 21 | --long Show path to each command |
| 22 | |
| 23 | To install command symlinks, try: |
| 24 | for i in $(/bin/toybox --long); do ln -s /bin/toybox $i; done |
| 25 | |
Rob Landley | cefc0a2 | 2016-10-05 13:29:55 -0500 | [diff] [blame] | 26 | Most toybox commands also understand the following arguments: |
| 27 | |
| 28 | --help Show command help (only) |
| 29 | --version Show toybox version (only) |
| 30 | |
| 31 | The filename "-" means stdin, "--" stops argument parsing, |
| 32 | and numerical arguments accept a single letter suffix for |
| 33 | kilo, mega, giga, tera, peta, and exabytes, plus an additional |
| 34 | "d" to indicate decimal 1000's instead of 1024. |
| 35 | |
Rob Landley | e0377fb | 2010-01-05 12:17:05 -0600 | [diff] [blame] | 36 | config TOYBOX_SUID |
| 37 | bool "SUID support" |
| 38 | default y |
| 39 | help |
Rob Landley | 26c0045 | 2013-04-14 12:35:25 -0500 | [diff] [blame] | 40 | Support for the Set User ID bit, to install toybox suid root and drop |
| 41 | permissions for commands which do not require root access. To use |
| 42 | this change ownership of the file to the root user and set the suid |
| 43 | bit in the file permissions: |
| 44 | |
| 45 | chown root:root toybox; chmod +s toybox |
Rob Landley | e0377fb | 2010-01-05 12:17:05 -0600 | [diff] [blame] | 46 | |
Rob Landley | 08f51b5 | 2015-04-15 20:53:00 -0500 | [diff] [blame] | 47 | choice |
| 48 | prompt "Security Blanket" |
| 49 | default TOYBOX_LSM_NONE |
| 50 | help |
| 51 | Select a Linux Security Module to complicate your system |
| 52 | until you can't find holes in it. |
| 53 | |
| 54 | config TOYBOX_LSM_NONE |
| 55 | bool "None" |
| 56 | help |
| 57 | Don't try to achieve "watertight" by plugging the holes in a |
| 58 | collander, instead use conventional unix security (and possibly |
| 59 | Linux Containers) for a simple straightforward system. |
| 60 | |
Elliott Hughes | 7e2af1c | 2015-01-16 13:36:53 -0600 | [diff] [blame] | 61 | config TOYBOX_SELINUX |
Rob Landley | 08f51b5 | 2015-04-15 20:53:00 -0500 | [diff] [blame] | 62 | bool "SELinux support" |
| 63 | help |
| 64 | Include SELinux options in commands such as ls, and add |
| 65 | SELinux-specific commands such as chcon to the Android menu. |
| 66 | |
| 67 | config TOYBOX_SMACK |
| 68 | bool "SMACK support" |
| 69 | help |
| 70 | Include SMACK options in commands like ls for systems like Tizen. |
| 71 | |
| 72 | endchoice |
Elliott Hughes | 7e2af1c | 2015-01-16 13:36:53 -0600 | [diff] [blame] | 73 | |
Rob Landley | adef5dc | 2016-07-15 04:45:08 -0500 | [diff] [blame] | 74 | config TOYBOX_LIBCRYPTO |
| 75 | bool "Use libcrypto (OpenSSL/BoringSSL)" |
| 76 | default n |
| 77 | help |
| 78 | Use faster hash functions out of exteral -lcrypto library. |
| 79 | |
Elliott Hughes | de3e5ea | 2017-04-26 15:01:41 -0700 | [diff] [blame] | 80 | config TOYBOX_LIBZ |
| 81 | bool "Use libz (zlib)" |
| 82 | default n |
| 83 | help |
| 84 | Use libz for gz support. |
| 85 | |
Rob Landley | f01503d | 2012-02-02 07:26:39 -0600 | [diff] [blame] | 86 | config TOYBOX_FLOAT |
| 87 | bool "Floating point support" |
| 88 | default y |
| 89 | help |
| 90 | Include floating point support infrastructure and commands that |
| 91 | require it. |
| 92 | |
Rob Landley | 36ffc5a | 2013-04-14 21:43:22 -0500 | [diff] [blame] | 93 | config TOYBOX_HELP |
Rob Landley | d683b17 | 2013-06-16 20:00:11 -0500 | [diff] [blame] | 94 | bool "Help messages" |
Rob Landley | 36ffc5a | 2013-04-14 21:43:22 -0500 | [diff] [blame] | 95 | default y |
| 96 | help |
| 97 | Include help text for each command. |
| 98 | |
Rob Landley | 953722e | 2013-06-30 15:58:24 -0500 | [diff] [blame] | 99 | config TOYBOX_HELP_DASHDASH |
Rob Landley | 29e75d5 | 2016-10-01 15:52:00 -0500 | [diff] [blame] | 100 | bool "--help and --version" |
Rob Landley | 953722e | 2013-06-30 15:58:24 -0500 | [diff] [blame] | 101 | default y |
| 102 | depends on TOYBOX_HELP |
| 103 | help |
| 104 | Support --help argument in all commands, even ones with a NULL |
Rob Landley | 29e75d5 | 2016-10-01 15:52:00 -0500 | [diff] [blame] | 105 | optstring. (Use TOYFLAG_NOHELP to disable.) Produces the same output |
| 106 | as "help command". --version shows toybox version. |
Rob Landley | 953722e | 2013-06-30 15:58:24 -0500 | [diff] [blame] | 107 | |
Felix Janda | 250e005 | 2012-11-21 20:38:29 +0100 | [diff] [blame] | 108 | config TOYBOX_I18N |
Rob Landley | 26c0045 | 2013-04-14 12:35:25 -0500 | [diff] [blame] | 109 | bool "Internationalization support" |
Felix Janda | 250e005 | 2012-11-21 20:38:29 +0100 | [diff] [blame] | 110 | default y |
| 111 | help |
Rob Landley | 26c0045 | 2013-04-14 12:35:25 -0500 | [diff] [blame] | 112 | Support for UTF-8 character sets, and some locale support. |
Felix Janda | 250e005 | 2012-11-21 20:38:29 +0100 | [diff] [blame] | 113 | |
Rob Landley | de05a70 | 2007-01-31 14:37:01 -0500 | [diff] [blame] | 114 | config TOYBOX_FREE |
landley | 5257cf5 | 2006-10-31 23:30:06 -0500 | [diff] [blame] | 115 | bool "Free memory unnecessarily" |
| 116 | default n |
| 117 | help |
| 118 | When a program exits, the operating system will clean up after it |
Rob Landley | 26c0045 | 2013-04-14 12:35:25 -0500 | [diff] [blame] | 119 | (free memory, close files, etc). To save size, toybox usually relies |
| 120 | on this behavior. If you're running toybox under a debugger or |
landley | 5257cf5 | 2006-10-31 23:30:06 -0500 | [diff] [blame] | 121 | without a real OS (ala newlib+libgloss), enable this to make toybox |
| 122 | clean up after itself. |
| 123 | |
Rob Landley | 977e48e | 2014-10-20 19:52:29 -0500 | [diff] [blame] | 124 | config TOYBOX_NORECURSE |
| 125 | bool "Disable recursive execution" |
| 126 | default n |
| 127 | help |
| 128 | When one toybox command calls another, usually it just calls the new |
| 129 | command's main() function rather than searching the $PATH and calling |
| 130 | exec on another file (which is much slower). |
| 131 | |
| 132 | This disables that optimization, so toybox will run external commands |
| 133 | even when it has a built-in version of that command. This requires |
| 134 | toybox symlinks to be installed in the $PATH, or re-invoking the |
| 135 | "toybox" multiplexer command by name. |
| 136 | |
Rob Landley | de05a70 | 2007-01-31 14:37:01 -0500 | [diff] [blame] | 137 | config TOYBOX_DEBUG |
Rob Landley | 8324b89 | 2006-11-19 02:49:22 -0500 | [diff] [blame] | 138 | bool "Debugging tests" |
| 139 | default n |
| 140 | help |
Rob Landley | a8bee46 | 2014-08-18 19:10:45 -0500 | [diff] [blame] | 141 | Enable extra checks for debugging purposes. All of them catch |
Rob Landley | 39f2e91 | 2015-07-31 03:05:24 -0500 | [diff] [blame] | 142 | things that can only go wrong at development time, not runtime. |
Rob Landley | a8bee46 | 2014-08-18 19:10:45 -0500 | [diff] [blame] | 143 | |
Rob Landley | cb8e5ad | 2017-03-20 12:41:22 -0500 | [diff] [blame] | 144 | config TOYBOX_PEDANTIC_ARGS |
| 145 | bool "Pedantic argument checking" |
| 146 | default n |
| 147 | help |
| 148 | Check arguments for commands that have no arguments. |
| 149 | |
Rob Landley | a8bee46 | 2014-08-18 19:10:45 -0500 | [diff] [blame] | 150 | config TOYBOX_UID_SYS |
| 151 | int "First system UID" |
| 152 | default 100 |
| 153 | help |
| 154 | When commands like useradd/groupadd allocate system IDs, start here. |
| 155 | |
| 156 | config TOYBOX_UID_USR |
| 157 | int "First user UID" |
| 158 | default 500 |
| 159 | help |
| 160 | When commands like useradd/groupadd allocate user IDs, start here. |
Rob Landley | 8c588d8 | 2015-08-29 22:12:56 -0500 | [diff] [blame] | 161 | |
| 162 | config TOYBOX_MUSL_NOMMU_IS_BROKEN |
| 163 | bool "Workaround for musl-libc breakage on nommu systems." |
| 164 | default n |
| 165 | help |
| 166 | When using musl-libc on a nommu system, you'll need to say "y" here. |
| 167 | |
| 168 | Although uclibc lets you detect support for things like fork() and |
| 169 | daemon() at compile time, musl intentionally includes broken versions |
| 170 | that always return -ENOSYS on nommu systems, and goes out of its way |
| 171 | to prevent any cross-compile compatible compile-time probes for a |
Rob Landley | 71921dc | 2017-05-08 22:09:08 -0500 | [diff] [blame] | 172 | nommu system. (It doesn't even #define __MUSL__ in features.h.) |
Rob Landley | 8c588d8 | 2015-08-29 22:12:56 -0500 | [diff] [blame] | 173 | |
| 174 | Musl does this despite the fact that a nommu system can't even run |
| 175 | standard ELF binaries, and requires specially packaged executables. |
Rob Landley | 8c588d8 | 2015-08-29 22:12:56 -0500 | [diff] [blame] | 176 | So our only choice is to manually provide a musl nommu bug workaround |
| 177 | you can manually select to enable (larger, slower) nommu support with |
| 178 | musl. |
| 179 | |
landley | 5257cf5 | 2006-10-31 23:30:06 -0500 | [diff] [blame] | 180 | endmenu |