[RFC PATCH 02/28] cli: Add LIL shell

Sean Anderson seanga2 at gmail.com
Wed Jul 7 15:46:20 CEST 2021


On 7/7/21 4:15 AM, Wolfgang Denk wrote:
> Dear Tom,
> 
> In message <20210706154346.GT9516 at bill-the-cat> you wrote:
>>
>> I'm pretty confident that exactly zero people have written complex
>> U-Boot scripts and then been happy about the experience.
> 
> I have seen many U-Boot scripts which were pretty complex, but
> working absolutely reliably.
> 
>> TCL has its fans.  csh has it's fans.  The question isn't what's the
>> best desktop shell or general scripting language, but what's the most
>> useful in our environment an use cases.
> 
> Maybe you should try and do a poll of our user base which CLI they
> _want_?  I doubt there will be any significant percentage voting for
> Tcl.
>
> I know of a large number of systems which offer a shell interface on
> their command line, and those who don't usually use completely
> proprietary code.  I know of very few examples where Tcl is being
> used.

Off the top of my head, most of the tooling for FPGAs uses TCL for
scripting. OpenOCD uses it too.

>> I don't know if it's right either.  But drawing on my comment just now
>> and above about complex boot scripts, I also don't know if "it's sh but
>> quirky and incomplete, WHY DOESN'T THIS WORK RIGHT" is better than "It's
>> TCL?  I don't know that, let me hit stackoverflow and do a little
>> reading" as would be the common experience.  Especially if we document
>> up-front what the quirks we have are.
> 
> 
> Point taken.  But if you think this to an end, the result is: lets
> write some documentation and explain the limitations of a shell in
> U-Boot environment, and document the warts and bugs of this (or an
> updated) version of hush.  This should make more users happy than
> completely new and incompatible stuff.
> 
> 
> Frankly, I believe when you run into problems with hush in U-Boot
> (even the current version) you should lean back and think about what
> you are doing.
> 
> U-Boot is a boot loader, and while it is powerful enough to do
> complex things, this is not necessarily the most clever approach.
> 15 years ago, I've written complex update scripts for U-Boot. This
> was easy enough to do, and worked perfectly.  But there are so many
> limitations in a boot loader environment.  We don't do this any
> more.  Instead, we use an OS suitable for such tasks (Linux with
> SWUpdate).
> 
> 
> And talking about problems and limitations in U-Boot... Is the CLI
> really our biggest concern right now?  None of our users (customers)
> has asked for a better command interpreter - the question we hear
> are more like: "When will you support IPv6?", "NFS does not work
> with recent Linux distros, will this be fixed?", "Can I download
> over WiFi?", "Can I download using HTTP/HTTPS?", "How can I harden
> U-Boot for security-critical environments?", etc.

I wanted a better shell, so I worked on it.

--Sean


More information about the U-Boot mailing list