Automic VaultAutomic Vault

brew

Install nsh with Homebrew, apk, MacPorts, Nix

Fish-like, POSIX-compatible shell. Version 0.4.2 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install nsh

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install nsh

MacPorts ports tree · shells/nsh/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add nsh

Alpine Linux edge package indexes · nsh · source: dl-cdn.alpinelinux.org

Nixverified · 92%
nix profile install nixpkgs#nsh

nixpkgs package indexes · pkgs/by-name/ns/nsh/package.nix · source: api.github.com

overview

Package summary

Fish-like, POSIX-compatible shell

Commands and aliases

  • nsh

history

Project history and usage

nsh is a Rust command-line shell that aims to combine fish-like interactive convenience with POSIX-compatible shell syntax and some Bash extensions. Its README lists tab completion, syntax highlighting, Bash completion support by invoking Bash internally, and zero-configuration interactive features.

Project history

The GitHub repository was created on October 5, 2018, and the crates.io package was created on December 19, 2018. A Rust users forum announcement from December 17, 2018 framed the motivation as wanting fish-like out-of-the-box features while keeping traditional shell syntax and Bash scripting features.

Adoption history

nsh is an experimental/alpha shell rather than a mainstream login shell. The README explicitly asks for help to make it practical for daily use and notes missing Bash features and likely bugs. Still, it drew developer interest: the GitHub repository had about 963 stars when queried on 2026-07-01, crates.io reported 33,186 total downloads and 20 versions, and Homebrew, MacPorts, Nix, and Alpine package it.

How it is used

Package users try it as an interactive shell with `nsh`, often via `cargo install nsh` or `brew install nsh`, to get completions and highlighting without adopting fish's non-POSIX language. The realistic usage is experimentation or personal shell sessions, not relying on it as `/bin/sh` for production scripts.

Why package nerds care

nsh sits in the recurring shell-design niche: keep Bourne/POSIX familiarity, borrow fish's interactive ergonomics, and implement it in Rust. For package catalogs it is best described as an interesting alternative shell with modest packaging footprint and alpha-stage caveats.

Timeline

  • 2018-10-05: GitHub repository created.
  • 2018-12-17: author announced nsh on users.rust-lang.org.
  • 2018-12-19: crates.io package created.
  • 2021-07-21: crates.io metadata updated to version 0.4.2.
  • 2023-02-11: GitHub repository pushed timestamp observed by API query.

security posture

Risk level: yellow

generalized runtime or code generation signal.

Risk classifier

yellow risk · medium confidence · runtime

Why

  • generalized runtime or code generation signal

Signals

  • text:shell

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 13 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
nshcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version0.4.2
manager updated
local dataok
upstreamcurrent
latest detectedv0.4.2

https://github.com/nuta/nsh

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:nsh
Version0.4.2
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/nsh
Homepagehttps://github.com/nuta/nsh
Repositoryhttps://github.com/nuta/nsh
Upstream docshttps://github.com/nuta/nsh#readme
LicenseCC0-1.0 OR MIT
Source archivehttps://github.com/nuta/nsh/archive/refs/tags/v0.4.2.tar.gz
Build dependenciesrust
Bottleavailable (on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namensh
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

nsh

nix profile install nixpkgs#nsh
  • normalized package name match
  • Matched by: Nsh
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/ns/nsh/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

nsh 0.4.2-r1

A command-line shell like fish, but POSIX compatible

https://github.com/nuta/nsh

sudo apk add nsh
  • License: CC0-1.0 OR MIT
  • Architecture: x86_64
  • Source Package: nsh
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Nsh
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: nsh from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
apk95%

nsh-dbg 0.4.2-r1

A command-line shell like fish, but POSIX compatible (debug symbols)

https://github.com/nuta/nsh

sudo apk add nsh-dbg
  • License: CC0-1.0 OR MIT
  • Architecture: x86_64
  • Source Package: nsh
  • 1 dependencies
  • normalized package name match
  • Matched by: Nsh
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: nsh-dbg from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
MacPorts95%

nsh

sudo port install nsh
  • normalized package name match
  • Matched by: Nsh
MacPorts ports tree · api.github.com · MacPorts ports tree: shells/nsh/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment