Brush (Bo(u)rn(e) RUsty SHell) a POSIX and Bash-Compatible Shell in Rust

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. oils

    Oils is our upgrade path from bash to a better language and runtime. It's also for Python and JavaScript users who avoid shell!

    I am not sure if this helps or not, but if you want a bash-compatible shell, translating Oils to Ada or porting it to Windows could be easier than adding bash arrays.

    It is extremely hairy, and it differs from bash version to version

    https://news.ycombinator.com/item?id=43910883

    I mentioned in another comment that Koichi Murase, who is a bash contributor, and wrote the largest shell program in the world, just overhauled the bash array support in OSH

    Relevant tests -- he added a huge number recently, and made them work:

    https://oils.pub/release/0.29.0/test/spec.wwz/osh-py/array-s...

    https://oils.pub/release/0.29.0/test/spec.wwz/osh-py/array-a...

    https://oils.pub/release/0.29.0/test/spec.wwz/osh-py/ble-idi...

    Our tests are thorough enough that we ROUTINELY find bugs in bash, like integer overflow bugs.

    Koichi also knows about the differences between say bash 4.3, 4.4, 5.0, 5.1, etc. Because he has a very large program that uses bash arrays all over the place.

    ---

    Feel free to use our tests in any case (other shells like the Scheme shell used to bootstrap Guix have)

    And feel free to post a message to https://github.com/oils-for-unix/oils if you're interested or have questions

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. fish-shell

    The user-friendly command line shell.

    I didn't realize fish was written in Rust, and it was my primary shell for a few years. Looks like they couldn't resist the rewrite it in Rust meme :-D

    https://github.com/fish-shell/fish-shell/tree/c2eaef7273c555...

    vs the C++

    https://github.com/fish-shell/fish-shell/tree/d9d3557fcfbce1...

  4. PowerShell

    PowerShell for every system!

    "can" is doing some heavy lifting there, especially based on my experience with VSCodium (which by definition is forced to work within Microsoft's opinion of build systems)

    Anyway, uh-huh:

    https://github.com/PowerShell/PowerShell/blob/v7.5.1/.github... -> https://github.com/PowerShell/PowerShell/blob/v7.5.1/.github...

    https://github.com/PowerShell/PowerShell/blob/v7.5.1/.github... -> https://github.com/PowerShell/PowerShell/blob/v7.5.1/.github...

    As a frame of reference, to build bash one only needs /bin/sh not a pre-built copy of bash itself https://git.savannah.gnu.org/cgit/bash.git/tree/configure?h=...

  5. brush

    🐚bash/POSIX-compatible shell implemented in Rust 🦀 (by reubeno)

  6. nix

    Nix, the purely functional package manager

    This is interesting to me given https://github.com/NixOS/nix/issues/10823

    We have a decent amount of code in bash that I'd like to get working on Windows too, once Nix on Windows is ready. I'm happy to rewrite it to a better language, but if I can get a non-CygWin/MSYS2 bash-compatible shell, that's a very nice thing to try out.

  7. nushell

    A new type of shell

    Since everyone is sharing shells written in Rust, I've become quite fond of Nushell: https://www.nushell.sh/

    I'd love to see more shell exploring things beyond POSIX. Text based stdin/stdout will always have its place, but having ways to express, serialize, and pass along data in more structured ways is quite nice.

  8. nsh

    A command-line shell like fish, but POSIX compatible.

    Another POSIX shell in Rust I remember: https://github.com/nuta/nsh

    But it no longer seems to be in active development.

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. wezterm

    A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • My Shell Setup

    8 projects | dev.to | 26 Nov 2022
  • My coding setup (2022)

    9 projects | dev.to | 21 Feb 2022
  • Brains. Bugs. Dopamine. how to trick yourself into loving code again

    5 projects | dev.to | 19 Jun 2025
  • Shellfirm: Your Terminal's New Best Friend (and Accidental Data Loss Savior!)

    1 project | dev.to | 24 Mar 2025
  • Shellfirm – intercept risky patterns in interactive shell

    1 project | news.ycombinator.com | 23 Mar 2025