statusline

A blazingly-fast successor to purplesyringa's shell, rewritten in Rust.

Requirements

Installation

  1. Install rustup and nightly rust. bash pacman -S rustup rustup toolchain add nightly Visit rustup.rs if not on Arch-based distro to see how to install on other distros. You may need to run rustup installation with superuser rights

  2. Install statusline from cargo bash cargo +nightly install statusline

  3. Check if statusline is in path. bash statusline If "bash: statusline: command not found" is shown, check your $PATH and ~/.bashrc, a folder where cargo install placed statusline binary should be there.

    If you wish to not add the directory to $PATH, you can just use full path instead of short one in statusline --env below

  4. Set preferred statusline icons' mode. Do not add this line for defaults! Available modes are:

  5. Install the statusline to shell bash echo 'eval "$(statusline --env)"' >> ~/.bashrc

  6. Apply changes immediately bash source ~/.bashrc

Don't forget to check PATH and update from time to time.

You may wish to add RUSTFLAGS="-C target-feature=+avx2" to cargo install statusline for packaging and distributing reasons. For simple uses, this may be ignored as statusline compiles itself for current machine by default to maximize possible speed without throwing random SIGILL.

Features

How is this different from purplesyringa's shell?

Command line options

statusline Display simple message "how to use". Useless, but may be used to check if statusline is in path statusline --env Print commands for `.bashrc` statusline --run [return_code:N/A [jobs_count:0 [elapsed_time:N/A]]] Print statusline as PS1 prompt. Is not meant to be invoked directly, however--- Expects third fd to exist, will kill itself when something passed to it statusline --colorize <str> Colorize <str> like hostname and username. Can be used to choose hostname which has the color you want

This should have some better formatting but I'm too lazy for this