# Install fish with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, zypper

User-friendly command-line shell for UNIX-like operating systems. Version 4.8.0 via Homebrew; verified 2026-07-05.

## Install

```sh
sudo av install brew:fish
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install fish
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install fish
```

  Evidence: MacPorts ports tree: shells/fish/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add fish
```

  Evidence: Alpine Linux edge package indexes: fish from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install fish
```

  Evidence: Debian stable package indexes: fish from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install fish
```

  Evidence: Fedora Rawhide package metadata: fish from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#fish
```

  Evidence: nixpkgs package indexes: pkgs/by-name/fi/fish/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S fish
```

  Evidence: Arch Linux sync databases: fish from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install fish
```

  Evidence: openSUSE Tumbleweed package metadata: fish from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:fish
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/fish>
- **Version:** 4.8.0
- **Source summary:** User-friendly command-line shell for UNIX-like operating systems
- **Homepage:** <https://fishshell.com>
- **Repository:** <https://github.com/fish-shell/fish-shell>
- **Upstream docs:** <https://fishshell.com/docs/current>
- **License:** GPL-2.0-only
- **Source archive:** <https://github.com/fish-shell/fish-shell/releases/download/4.8.0/fish-4.8.0.tar.xz>
- **Last updated:** 2026-07-05T06:35:42Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- fish (cli)
- fish_indent (cli)
- fish_key_reader (cli)
- fish (alias)
- fish_indent (alias)
- fish_key_reader (alias)

## Dependencies

- pcre2

## Build dependencies

- cmake
- rust
- sphinx-doc

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 4.8.0
- Package-manager updated: 2026-07-05
- Local data: ok
- Upstream repository: https://github.com/fish-shell/fish-shell
- info: No cached GitHub release or tag data was available.
## Project history and usage

fish, the friendly interactive shell, is a Unix command-line shell focused on interactive ergonomics: syntax highlighting, autosuggestions, rich completions, a clean scripting language, and useful defaults without extensive configuration.

### Project history

fish grew as an alternative to traditional POSIX-family interactive shells by choosing user experience over strict POSIX compatibility. Official documentation still calls out that fish is not the default shell and that some behavior differs from bash-like shells, which is central to its identity.

The current upstream repository was created on GitHub in 2012, while the release notes preserve a longer line of 2.x, 3.x, and 4.x releases. Version 3.0.0 arrived in December 2018, 3.7.0 in January 2024, and 4.0.0 in February 2025, after a beta in December 2024.

### Adoption history

fish is widely packaged across Unix-like systems. The upstream README documents Homebrew, MacPorts, official installers, Linux packages through openSUSE Build Service and Ubuntu PPAs, WSL, Cygwin, and MSYS2; the Homebrew input also records packages for apk, Debian, Fedora, Nix, pacman, Ubuntu, and zypper.

### How it is used

Users commonly install fish alongside their system shell, run `fish` from an existing shell to try it, then make it their login shell if the syntax and interactive model fit. Configuration centers on `config.fish`, functions, completions, universal variables, and prompt/theme customization.

### Why package nerds care

fish matters in package-manager culture because it is both an application and a shell integration target. Packages often ship fish completions, prompts and plugin managers target its function/completion layout, and distributors track changes such as fish 4.x moving more implementation and packaging work into Rust/Cargo-era build requirements.

### Timeline

- 2012: Current GitHub repository created.
- 2018: fish 3.0.0 released.
- 2024: fish 3.7.0 released.
- 2025: fish 4.0.0 released.
- 2026: fish 4.8.0 released.

### Related projects

- Related projects include bash, zsh, POSIX sh, shell completion packages, prompt frameworks, fish-lsp, and editor integrations for fish scripts.

### Sources

- <https://fishshell.com/>
- <https://fishshell.com/docs/current/>
- <https://fishshell.com/docs/current/relnotes.html>
- <https://github.com/fish-shell/fish-shell>
- <https://github.com/fish-shell/fish-shell/releases>


## Security Notes

generalized runtime or code generation signal.

- **Geiger risk:** yellow / medium
- generalized runtime or code generation signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: $XDG_CONFIG_HOME/fish/config.fish, ~/.config/fish/config.fish
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** fish
- **Aliases:** fishfish
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - fish - 4.0.2-1: normalized package name match | Debian stable package indexes: fish from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | friendly interactive shell | http://fishshell.com/
- Debian apt - fish-common - 4.0.2-1: normalized package name match | Debian stable package indexes: fish-common from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | friendly interactive shell (architecture-independent files) | http://fishshell.com/
- Nix - fish: normalized package name match | nixpkgs package indexes: pkgs/by-name/fi/fish/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - fish - 3.7.0-1: normalized package name match | Ubuntu 24.04 LTS package indexes: fish from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | friendly interactive shell | http://fishshell.com/
- Ubuntu apt - fish-common - 3.7.0-1: normalized package name match | Ubuntu 24.04 LTS package indexes: fish-common from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | friendly interactive shell (architecture-independent files) | http://fishshell.com/
- apk - fish - 4.6.0-r1: normalized package name match | Alpine Linux edge package indexes: fish from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Modern interactive commandline shell | https://fishshell.com/
- apk - fish-dev - 4.6.0-r1: normalized package name match | Alpine Linux edge package indexes: fish-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Modern interactive commandline shell (development files) | https://fishshell.com/
- apk - fish-doc - 4.6.0-r1: normalized package name match | Alpine Linux edge package indexes: fish-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Modern interactive commandline shell (documentation) | https://fishshell.com/
- apk - fish-tools - 4.6.0-r1: normalized package name match | Alpine Linux edge package indexes: fish-tools from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Modern interactive commandline shell (tools) | https://fishshell.com/
- dnf - fish - 4.6.0-1.fc45: normalized package name match | Fedora Rawhide package metadata: fish from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Friendly interactive shell | https://fishshell.com
- pacman - fish - 4.7.1-1: normalized package name match | Arch Linux sync databases: fish from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Smart and user friendly shell intended mostly for interactive use | https://fishshell.com/
- zypper - fish - 4.7.1-1.1: normalized package name match | openSUSE Tumbleweed package metadata: fish from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | The "friendly interactive shell" | https://fishshell.com/
- zypper - fish-devel - 4.7.1-1.1: normalized package name match | openSUSE Tumbleweed package metadata: fish-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Devel files for the fish shell | https://fishshell.com/
- MacPorts - fish: normalized package name match | MacPorts ports tree: shells/fish/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [pcre2](https://www.automicvault.com/pkg/brew/pcre2/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [rust](https://www.automicvault.com/pkg/brew/rust/) - Build dependency declared by Homebrew.
- [sphinx-doc](https://www.automicvault.com/pkg/brew/sphinx-doc/) - Build dependency declared by Homebrew.
- [virtualfish](https://www.automicvault.com/pkg/brew/virtualfish/) - Popular package that depends on this formula.
- [zsh](https://www.automicvault.com/pkg/brew/zsh/) - Shares av.db curated category or tags: cli, developer-tools, scripting, shell, unix.
- [bar](https://www.automicvault.com/pkg/brew/bar/) - Shares av.db curated category or tags: cli, developer-tools, scripting, shell.
- [shc](https://www.automicvault.com/pkg/brew/shc/) - Shares av.db curated category or tags: cli, developer-tools, shell, unix.
- [xonsh](https://www.automicvault.com/pkg/brew/xonsh/) - Shares av.db curated category or tags: cli, developer-tools, scripting, shell.
- [aliae](https://www.automicvault.com/pkg/brew/aliae/) - Shares av.db curated category or tags: cli, developer-tools, shell.
- [checkbashisms](https://www.automicvault.com/pkg/brew/checkbashisms/) - Shares av.db curated category or tags: cli, developer-tools, shell.
- [desk](https://www.automicvault.com/pkg/brew/desk/) - Shares av.db curated category or tags: cli, developer-tools, shell.
- [fizsh](https://www.automicvault.com/pkg/brew/fizsh/) - Shares av.db curated category or tags: cli, developer-tools, shell.
- [fish-lsp](https://www.automicvault.com/pkg/brew/fish-lsp/) - Package names and metadata indicate a similar tool family. Shared terms: cli, developer, developer-tools, fish, shell.
- [powershell](https://www.automicvault.com/pkg/brew/powershell/) - Local package facts share a topical domain. Shared terms: cli, command-line, developer, developer-tools, line.

## Combined YAML source

View the package source record on GitHub. [combined/fish.yml](https://github.com/automic-vault/db/blob/main/combined/fish.yml)


## Sources

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