Rev 3300 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 3300 | post | 1 | This is a very brain dead shell. It needs some love, coffee or perhaps beer. |
| 2 | Currently, you can't even really call it a shell, its more of a CLI that |
||
| 3 | offers some shell like creature comforts. |
||
| 4 | |||
| 5 | This was written in a hurry to provide some means of testing persistent file |
||
| 6 | systems in HelenOS. It does its job, its nowhere near complete but it is |
||
| 7 | actively developed. If your reading this, its likely that you're looking for |
||
| 8 | some functionality that is not yet present. Prior to filing a bug report, |
||
| 9 | please make sure that what you want is not on the list below. |
||
| 10 | |||
| 11 | A list of things to do: |
||
| 12 | ----------------------- |
||
| 13 | |||
| 14 | * cmds/modules : ls_scope and rm_scope are basically carbon copies of each |
||
| 15 | other, put this in util.c and make it a shared function. |
||
| 16 | |||
| 17 | * rm: add support for recursively removing directories and files therein |
||
| 18 | |||
| 19 | * Better sanity checking in modules that take multiple arguments |
||
| 20 | |||
| 21 | * Port an editor (vim?) |
||
| 22 | |||
| 23 | * Finish cat |
||
| 24 | |||
| 25 | * Feed task_spawn absolute paths if path doesn't begin with / |
||
| 26 | |||
| 27 | * Some getopt / getopt_long implementation |
||
| 28 | |||
| 29 | * Support basic redirection (i.e ls > foo.txt) |
||
| 30 | |||
| 31 | * Expand wildcards (i.e. *.txt), don't worry about variables for now |
||
| 32 | |||
| 33 | * Basic scripting |
||
| 34 | |||
| 35 | * Hash previously found commands |
||
| 36 | |||
| 37 | * Improve input, add history / etc (port libedit?) |
||
| 38 | |||
| 39 | * Add wrappers for signal, sigaction to make ports to modules easier |
||
| 40 | |||
| 41 | * Add 'echo' and 'printf' modules. |
||
| 42 | |||
| 43 | Regarding POSIX: |
||
| 44 | ---------------- |
||
| 45 | POSIX is a standard for Unix-like operating systems. HelenOS is (mostly) just |
||
| 46 | a kernel at this point with a few userspace programs that facilitate testing |
||
| 47 | of the kernel and file systems. |
||
| 48 | |||
| 49 | HelenOS is not a Unix-like operating system. HelenOS is its own thing, a modern |
||
| 50 | microkernel OS and many directions are not yet set. |
||
| 51 | |||
| 52 | Please do not e-mail me to point out that modular implementations that resemble |
||
| 53 | typical core utilities do not conform to some POSIX standard, these are temporary |
||
| 54 | and serve the useful purpose of testing persistent file systems. |
||
| 55 | |||
| 56 | Contributing: |
||
| 57 | ------------- |
||
| 58 | If you feel like doing any of the above to-do items, I am echo@echoreply.us. Please |
||
| 59 | e-mail me and let me know your working on something so that I do not unwittingly |
||
| 60 | duplicate your efforts. You can also e-mail the HelenOS list directly: |
||
| 61 | |||
| 62 | HelenOS development mailing list <helenos-devel@lists.modry.cz> |
||
| 63 | Subscribe here if you like: http://lists.modry.cz/cgi-bin/listinfo/helenos-devel |
||
| 64 | |||
| 65 | Cheers and happy hacking! |
||
| 66 | --Tim |