summaryrefslogtreecommitdiff
path: root/guix/build/bournish.scm
AgeCommit message (Collapse)Author
2020-04-02bournish: Prevent inlining of run-time support procedures.Ludovic Courtès
On Guile 3, those procedures could be inlined, leading to unbound-variable errors: scheme@(guile-user)> ,bournish Welcome to Bournish, a minimal Bourne-like shell! To switch back, type `,L scheme'. bournish@(guile-user)> ls ice-9/boot-9.scm:1669:16: In procedure raise-exception: Unbound variable: ls-command-implementation Reported by Ricardo Wurmus. * guix/build/bournish.scm (define-command-runtime): New macro. (ls-command-implementation, wc-command-implementation) (wc-l-command-implementation, wc-c-command-implementation): Use it instead of 'define'.
2017-05-13bournish: 'ls' adjusts the column width depending on the entries.Ludovic Courtès
* guix/build/bournish.scm (display-tabulated): Remove #:columns and #:column-width parameters. Add #:terminal-width and #:column-gap. Compute COLUMN-WIDTH and COLUMNS.
2017-05-13bournish: 'ls' lists directory contents.Ludovic Courtès
Suggested by Ricardo Wurmus. * guix/build/bournish.scm (ls-command-implementation): When FILE is a directory, list its contents rather than FILE itself.
2017-01-26bournish: Extend 'rm' command.Ricardo Wurmus
* guix/build/bournish.scm (rm-command): New procedure. (%commands): Use it. * tests/bournish.scm: Add tests for "rm" and "rm -r".
2016-10-10bournish: Add 'reboot' command.Ludovic Courtès
Suggested by Ricardo Wurmus. * guix/build/bournish.scm (reboot-command): New procedure. (%commands): Add it.
2016-06-23bournish: Add 'wc' command.Efraim Flashner
* guix/build/bournish.scm (lines+chars, file-exists?*, wc-print) (wc-l-print, wc-c-print, wc-command, wc-command-implementation) (wc-l-command-implementation, wc-c-command-implementation): New procedures. (%commands): Add 'wc'. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-06-06bournish: Allow compilation of multiple expressions.Ludovic Courtès
* guix/build/bournish.scm (%bournish-language): Add a joiner to SCHEME. Compile only to Scheme. * tests/bournish.scm: New file. * Makefile.am (SCM_TESTS): Add it.
2016-06-06bournish: Handle EOF in the reader.Ludovic Courtès
* guix/build/bournish.scm (read-bournish): Add case for EOF.
2016-02-08Add (guix build bournish) and use it in the initrd.Ludovic Courtès
* guix/build/bournish.scm: New file. * Makefile.am (MODULES): Add it. * gnu/system/linux-initrd.scm (base-initrd): Add (guix build bournish) and use it.