POSIX shell that might get finished
Find a file
2025-05-16 20:07:22 -06:00
.woodpecker add error hell to the pipeline 2025-04-18 23:44:01 -06:00
src preform static assert only if its available, this is mostly for compiling with tcc 2025-05-16 20:07:22 -06:00
.clang-format more clang format! 2025-04-17 15:14:45 -06:00
.envrc Add nix direnv, package, and fix an unused result Werror 2025-03-04 16:34:13 -07:00
.gitignore Properly gitignore result 2025-04-17 17:45:42 -06:00
flake.lock Add nix direnv, package, and fix an unused result Werror 2025-03-04 16:34:13 -07:00
flake.nix g 2025-04-17 19:08:57 -06:00
LICENSE Initial commit 2025-01-29 02:12:44 -07:00
Makefile fix make clean 2025-05-09 22:17:05 -06:00
package.nix g 2025-04-17 19:08:57 -06:00
README.md add ERROR_HELL to the makefile, this enables all (meaningful) errors in clang 2025-04-18 23:42:38 -06:00

rash

rash, or really awesome shell (or rat ass shell if you prefer), is a rudimentary shell written in C.

Currently it supports a handful of builtins, but not scripting functionality.

Building

To build rash, you just need to run make in the root of the souce code.

This will make an executable in ./build/rash, however by default it is a debug build with optimizations turned off.

To make a build without debug symbols that is highly optimized type make DEBUG=0

Contributing

To contibute, make a branch (or fork) with a general name of what you are trying to do. This branch will then be merged (or declined) after review.

Before you commit code it is a good idea to run it through valgrind, and run make using make ERROR_HELL=1. This requires clang, and enables all (meaningful) errors. If your code has an error here, you should probably fix it.