This series highlights best-of-breed utilities. We cover a wide range of utilities including tools that boost your productivity, help you manage your workflow, and lots more besides.
The shell is a program that takes commands from the keyboard and gives them to the operating system to perform. This environment lets users run commands, programs, and shell scripts. The shell is both an interactive command language and a scripting language, and is used by the operating system to control the execution of the system using shell scripts.
The first Unix shell was the Thompson shell, sh, written by Ken Thompson at Bell Labs back in the early 1970s. Nowadays, on many Linux systems, bash (which stands for Bourne Again SHell) acts as the shell program. But there are lots of other free and open source shells available for Linux.
Nushell is billed as a new type of shell. The aim of the project is to adopt the Unix philosophy of shells where pipes connect commands together. It’s written in the Rust programming language and published under the MIT license.
There are various ways to install Nushell. The project provides pre-built binaries for Linux (including ARM), macOS and Windows. Instead, we installed the software under Manjaro using the package from their official repositories (community).
As the full source code is available, we can also build from source.
We can use the brew command in Linux and macOS.
After installing the software, there are a few steps next to take.
To change your default shell to Nushell, use the
chsh -l lists the shells installed on your system. Re-run the command
chsh and choose /bin/nushell as your default shell.
When you first start Nushell you’re presented with an introductory banner with instructions on how to remove that banner. It’s a simple modification to the config.nu file.
Next page: Page 2 – In Operation
Pages in this article:
Page 1 – Introduction / Installation
Page 2 – In Operation
Page 3 – Summary
Complete list of articles in this series:
|Abricotine||Markdown editor with inline preview functionality|
|AES Crypt||Encrypt files using the Advanced Encryption Standard|
|Ananicy||Shell daemon created to manage processes’ IO and CPU priorities|
|broot||Next gen tree explorer and customizable launcher|
|Cerebro||Fast application launcher|
|cheat.sh||Community driven unified cheat sheet|
|CopyQ||Advanced clipboard manager|
|croc||Securely transfer files and folders from the command-line|
|Deskreen||Live streaming your desktop to a web browser|
|duf||Disk usage utility with more polished presentation than the classic df|
|exa||A turbo-charged alternative to the venerable ls command|
|Extension Manager||Browse, install and manage GNOME Shell Extensions|
|fd||Wonderful alternative to the venerable find|
|fkill||Kill processes quick and easy|
|fontpreview||Quickly search and preview fonts|
|horcrux||File splitter with encryption and redundancy|
|Kooha||Simple screen recorder|
|KOReader||Document viewer for a wide variety of file formats|
|Imagine||A simple yet effective image optimization tool|
|LanguageTool||Style and grammar checker for 30+ languages|
|Liquid Prompt||Adaptive prompt for Bash & Zsh|
|lnav||Advanced log file viewer for the small-scale; great for troubleshooting|
|lsd||Like exa, lsd is a turbo-charged alternative to ls|
|McFly||Navigate through your bash shell history|
|mdless||Formatted and highlighted view of Markdown files|
|Nushell||Flexible cross-platform shell with a modern feel|
|nvitop||GPU process management for NVIDIA graphics cards|
|OCRmyPDF||Add OCR text layer to scanned PDFs|
|Oh My Zsh||Framework to manage your Zsh configuration|
|Paperwork||Designed to simplify the management of your paperwork|
|PDF Mix Tool||Perform common editing operations on PDF files|
|peco||Simple interactive filtering tool that's remarkably useful|
|ripgrep||Recursively search directories for a regex pattern|
|Rnote||Sketch and take handwritten notes|
|scrcpy||Display and control Android devices|
|Sticky||Simulates the traditional “sticky note” style stationery on your desktop|
|tldr||Simplified and community-driven man pages|
|tmux||A terminal multiplexer that offers a massive boost to your workflow|
|Tusk||An unofficial Evernote client with bags of potential|
|Ulauncher||Sublime application launcher|
|Watson||Track the time spent on projects|
|Whoogle Search||Self-hosted and privacy-focused metasearch engine|
|Zellij||Terminal workspace with batteries included|
Nushell looks promising but I prefer Zsh to be honest.