source: freewrt/package/busybox/config/shell/Config.in@ 6be9a4d9

freewrt_1_0 freewrt_2_0
Last change on this file since 6be9a4d9 was 6be9a4d9, checked in by Thorsten Glaser <tg@…>, 19 years ago

let the user decide which of the available shells he
wants as /bin/sh - not only these included with busybox

(ash and mksh are probably the only ones which will
work, but like this I won't affect any existing con-
figuration)

git-svn-id: svn://www.freewrt.org/trunk/freewrt@437 afb5a338-a214-0410-bd46-81f09a774fd1

  • Property mode set to 100644
File size: 8.4 KB
Line 
1#
2# For a description of the syntax of this configuration file,
3# see scripts/kbuild/config-language.txt.
4#
5
6menu "Shells"
7
8config BUSYBOX_CONFIG_ASH
9 bool "ash"
10 default y
11 select BUSYBOX_CONFIG_TEST
12 help
13 Tha 'ash' shell adds about 60k in the default configuration and is
14 the most complete and most pedantically correct shell included with
15 busybox. This shell is actually a derivative of the Debian 'dash'
16 shell (by Herbert Xu), which was created by porting the 'ash' shell
17 (written by Kenneth Almquist) from NetBSD.
18
19comment "Ash Shell Options"
20 depends on BUSYBOX_CONFIG_ASH
21
22config BUSYBOX_CONFIG_ASH_JOB_CONTROL
23 bool " Enable Job control"
24 default y
25 depends on BUSYBOX_CONFIG_ASH
26 help
27 Enable job control in the ash shell.
28
29config BUSYBOX_CONFIG_ASH_READ_NCHARS
30 bool " Enable 'read -n N' and 'read -s' support"
31 default n
32 depends on BUSYBOX_CONFIG_ASH
33 help
34 'read -n N' will return a value after N characters have been read.
35 'read -s' will read without echoing the user's input.
36
37config BUSYBOX_CONFIG_ASH_READ_TIMEOUT
38 bool " Enable 'read -t S' support."
39 default y
40 depends on BUSYBOX_CONFIG_ASH
41 help
42 'read -t S' will return a value after S seconds have passed.
43 This implementation will allow fractional seconds, expressed
44 as a decimal fraction, e.g. 'read -t 2.5 foo'.
45
46config BUSYBOX_CONFIG_ASH_ALIAS
47 bool " Enable alias support"
48 default y
49 depends on BUSYBOX_CONFIG_ASH
50 help
51 Enable alias support in the ash shell.
52
53config BUSYBOX_CONFIG_ASH_MATH_SUPPORT
54 bool " Enable Posix math support"
55 default y
56 depends on BUSYBOX_CONFIG_ASH
57 help
58 Enable math support in the ash shell.
59
60config BUSYBOX_CONFIG_ASH_MATH_SUPPORT_64
61 bool " Extend Posix math support to 64 bit"
62 default n
63 depends on BUSYBOX_CONFIG_ASH_MATH_SUPPORT
64 help
65 Enable 64-bit math support in the ash shell. This will make
66 the shell slightly larger, but will allow computation with very
67 large numbers.
68
69config BUSYBOX_CONFIG_ASH_GETOPTS
70 bool " Enable getopts builtin to parse positional parameters"
71 default y
72 depends on BUSYBOX_CONFIG_ASH
73 help
74 Enable getopts builtin in the ash shell.
75
76config BUSYBOX_CONFIG_ASH_CMDCMD
77 bool " Enable cmdcmd to override shell builtins"
78 default y
79 depends on BUSYBOX_CONFIG_ASH
80 help
81 Enable support for the ash 'command' builtin, which allows
82 you to run the specified command with the specified arguments,
83 even when there is an ash builtin command with the same name.
84
85config BUSYBOX_CONFIG_ASH_BUILTIN_ECHO
86 bool " Enable builtin version of 'echo'"
87 default y
88 depends on BUSYBOX_CONFIG_ASH
89 help
90 Enable support for echo, built in to ash.
91
92# this entry also appears in coreutils/Config.in, next to the echo applet
93config BUSYBOX_CONFIG_FEATURE_FANCY_ECHO
94 bool " Enable echo options (-n and -e)"
95 default y
96 depends on BUSYBOX_CONFIG_ASH_BUILTIN_ECHO
97 help
98 This adds options (-n and -e) to echo.
99
100config BUSYBOX_CONFIG_ASH_MAIL
101 bool " Check for new mail on interactive shells"
102 default n
103 depends on BUSYBOX_CONFIG_ASH
104 help
105 Enable "check for new mail" in the ash shell.
106
107config BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE
108 bool " Optimize for size instead of speed"
109 default y
110 depends on BUSYBOX_CONFIG_ASH
111 help
112 Compile ash for reduced size at the price of speed.
113
114config BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT
115 bool " Enable pseudorandom generator and variable $RANDOM"
116 default n
117 depends on BUSYBOX_CONFIG_ASH
118 help
119 Enable pseudorandom generator and dynamic variable "$RANDOM".
120 Each read of "$RANDOM" will generate a new pseudorandom value.
121 You can reset the generator by using a specified start value.
122 After "unset RANDOM" then generator will switch off and this
123 variable will no longer have special treatment.
124
125config BUSYBOX_CONFIG_ASH_EXPAND_PRMT
126 bool " Expand prompt string"
127 default n
128 depends on BUSYBOX_CONFIG_ASH
129 help
130 "PS#" may be contain volatile content, such as backquote commands.
131 This option recreates the prompt string from the environment
132 variable each time it is displayed.
133
134config BUSYBOX_CONFIG_HUSH
135 bool "hush"
136 default n
137 select BUSYBOX_CONFIG_TRUE
138 select BUSYBOX_CONFIG_FALSE
139 select BUSYBOX_CONFIG_TEST
140 help
141 hush is a very small shell (just 18k) and it has fairly complete
142 Bourne shell grammar. It even handles all the normal flow control
143 options such as if/then/elif/else/fi, for/in/do/done, while loops,
144 etc.
145
146 It does not handle case/esac, select, function, here documents ( <<
147 word ), arithmetic expansion, aliases, brace expansion, tilde
148 expansion, &> and >& redirection of stdout+stderr, etc.
149
150
151config BUSYBOX_CONFIG_LASH
152 bool "lash"
153 default n
154 select BUSYBOX_CONFIG_TRUE
155 select BUSYBOX_CONFIG_FALSE
156 select BUSYBOX_CONFIG_TEST
157 help
158 lash is the very smallest shell (adds just 10k) and it is quite
159 usable as a command prompt, but it is not suitable for any but the
160 most trivial scripting (such as an initrd that calls insmod a few
161 times) since it does not understand any Bourne shell grammar. It
162 does handle pipes, redirects, and job control though. Adding in
163 command editing makes it a very nice lightweight command prompt.
164
165
166config BUSYBOX_CONFIG_MSH
167 bool "msh"
168 default n
169 select BUSYBOX_CONFIG_TRUE
170 select BUSYBOX_CONFIG_FALSE
171 select BUSYBOX_CONFIG_TEST
172 help
173 The minix shell (adds just 30k) is quite complete and handles things
174 like for/do/done, case/esac and all the things you expect a Bourne
175 shell to do. It is not always pedantically correct about Bourne
176 shell grammar (try running the shell testscript "tests/sh.testcases"
177 on it and compare vs bash) but for most things it works quite well.
178 It also uses only vfork, so it can be used on uClinux systems.
179
180comment "Bourne Shell Options"
181 depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH
182
183config BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET
184 bool "Hide message on interactive shell startup"
185 default n
186 depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH
187 help
188 Remove the busybox introduction when starting a shell.
189
190config BUSYBOX_CONFIG_FEATURE_SH_STANDALONE_SHELL
191 bool "Standalone shell"
192 default n
193 depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH
194 help
195 This option causes the selected busybox shell to use busybox applets
196 in preference to executables in the PATH whenever possible. For
197 example, entering the command 'ifconfig' into the shell would cause
198 busybox to use the ifconfig busybox applet. Specifying the fully
199 qualified executable name, such as '/sbin/ifconfig' will still
200 execute the /sbin/ifconfig executable on the filesystem. This option
201 is generally used when creating a statically linked version of busybox
202 for use as a rescue shell, in the event that you screw up your system.
203
204 Note that when using this option, the shell will attempt to directly
205 run '/bin/busybox'. If you do not have the busybox binary sitting in
206 that exact location with that exact name, this option will not work at
207 all.
208
209config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
210 bool "command line editing"
211 default y
212 depends on BUSYBOX_CONFIG_MSH || BUSYBOX_CONFIG_LASH || BUSYBOX_CONFIG_HUSH || BUSYBOX_CONFIG_ASH
213 help
214 Enable command editing in shell.
215
216config BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING_VI
217 bool "vi-style line editing commands"
218 default n
219 depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
220 help
221 Enable vi-style line editing in the shell. This mode can be
222 turned on and off with "set -o vi" and "set +o vi".
223
224config BUSYBOX_CONFIG_FEATURE_COMMAND_HISTORY
225 int "history size"
226 default 15
227 depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
228 help
229 Specify command history size in shell.
230
231config BUSYBOX_CONFIG_FEATURE_COMMAND_SAVEHISTORY
232 bool "history saving"
233 default n
234 depends on BUSYBOX_CONFIG_ASH && BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
235 help
236 Enable history saving in ash shell.
237
238config BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION
239 bool "tab completion"
240 default y
241 depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
242 help
243 Enable tab completion in shell.
244
245config BUSYBOX_CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION
246 bool "username completion"
247 default n
248 depends on BUSYBOX_CONFIG_FEATURE_COMMAND_TAB_COMPLETION
249 help
250 Enable username completion in shell.
251
252config BUSYBOX_CONFIG_FEATURE_SH_FANCY_PROMPT
253 bool "Fancy shell prompts"
254 default y
255 depends on BUSYBOX_CONFIG_FEATURE_COMMAND_EDITING
256 help
257 Setting this option allows for prompts to use things like \w and
258 \$ and also using escape codes.
259
260endmenu
Note: See TracBrowser for help on using the repository browser.