How to Install Starship on Debian: The Minimal, Blazing-Fast Shell Prompt

Starship is a minimal, blazing-fast and infinitely customisable prompt that works with virtually any shell. Written in Rust, it renders contextual information — the current Git branch and status, the active language runtime version, a Python virtualenv, a Kubernetes context, command duration and much more — while staying fast enough that you never notice it. Because a single binary drives Bash, Zsh, Fish and others, you get one consistent prompt everywhere.

Starship releases regularly and is not carried in the official Debian repositories. The upstream install script fetches a binary directly, placing it outside APT’s management, which makes upgrades and clean removal a manual job.

The unofficial deb.griffo.io repository offers a tidier approach: an up-to-date, prebuilt Starship package that installs with apt and updates alongside the rest of your system.

What Makes Starship Special?

  • ⚡ Blazing-fast rendering - written in Rust, it adds no perceptible latency to your prompt
  • 🐚 Works with any shell - one binary drives Bash, Zsh, Fish, PowerShell, Nushell and more
  • 🌿 Rich Git integration - shows the current branch, dirty state and ahead/behind counts at a glance
  • 🈚 Language-aware modules - surfaces versions for Node, Python, Rust, Go and dozens of other tools
  • ☸️ Context modules - display Kubernetes context, AWS profile, Docker context and command duration
  • 🎨 Fully customisable - a single TOML file controls every module, symbol and colour
  • 📦 Presets included - ship with ready-made themes like Nerd Font Symbols and Pastel Powerline
  • 🧩 Zero configuration to start - looks great immediately, with sensible defaults out of the box

Why Use the deb.griffo.io Repository?

  • Easy installation and updates through the APT package manager
  • Automatic dependency management handled by Debian packaging
  • Always tracks upstream releases so new Starship versions arrive promptly
  • No install script fetching an unmanaged binary onto your system
  • Works across supported Debian releases including Bookworm, Trixie and Sid

Prerequisites

Before you begin, make sure you have:

  • A Debian-based system (Bookworm 12, Trixie 13, or Sid)
  • sudo privileges
  • curl installed (run sudo apt install curl if needed)
  • A Nerd Font installed and selected in your terminal, for the icons Starship uses

Step 1: Add the deb.griffo.io Repository

Add the repository’s GPG key and source entry:

# Create the keyrings directory
sudo install -d -m 0755 /etc/apt/keyrings

# Download and install the repository GPG key
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg

# Add the repository (auto-detects your distro codename)
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null

# Update the package list
sudo apt update

What each command does:

  1. Create the keyrings directory with the correct permissions for the signing key.
  2. Install the GPG key, dearmoring it into a keyring APT can verify against.
  3. Add the repository, using lsb_release -sc to detect your Debian codename automatically.
  4. Update the package list so APT sees the new packages.

Step 2: Update the Package List

If you skipped the final command above, refresh the index now:

sudo apt update

Step 3: Install Starship

Install Starship with a single command:

sudo apt install starship

APT downloads the latest packaged release and resolves any dependencies.

Step 4: Verify the Installation

Confirm Starship is installed and on your PATH:

starship --version

You should see a version number such as:

starship 1.23.0

Getting Started with Starship

Installing the binary is only half the job — Starship becomes your prompt once you add an init line to your shell.

Enabling Starship in Your Shell

Add the appropriate initialisation line to the end of your shell’s config file.

For Bash, edit ~/.bashrc:

# ~/.bashrc
eval "$(starship init bash)"

For Zsh, edit ~/.zshrc:

# ~/.zshrc
eval "$(starship init zsh)"

For Fish, edit ~/.config/fish/config.fish:

# ~/.config/fish/config.fish
starship init fish | source

Reload the shell (for Bash, run source ~/.bashrc) or open a new terminal, and the Starship prompt appears immediately.

Configuring the Prompt

All configuration lives in ~/.config/starship.toml. Create it if it does not exist:

mkdir -p ~/.config
touch ~/.config/starship.toml

A small example that adds a blank line between prompts, customises the Git branch symbol and hides the package module:

# ~/.config/starship.toml

# Insert a blank line between shell prompts
add_newline = true

# Change the default prompt character
[character]
success_symbol = "[➜](bold green)"
error_symbol = "[➜](bold red)"

[git_branch]
symbol = " "

[package]
disabled = true

Changes take effect the moment you press Enter — there is no reload step for the config file itself.

Using a Preset

Starship ships with polished presets you can apply in one command. For example, the Nerd Font Symbols preset writes a ready-made config for you:

# Apply the Nerd Font Symbols preset
starship preset nerd-font-symbols -o ~/.config/starship.toml

# List every available preset
starship preset --list

Handy Utilities

A couple of built-in commands help when tuning your prompt:

# Print the fully-resolved configuration Starship is using
starship config

# Time how long each module takes to render, to spot slow ones
starship timings

# Explain what each module in the current prompt is doing
starship explain

Keeping Starship Updated

Because Starship is installed through APT, updates come with your regular system maintenance:

sudo apt update && sudo apt upgrade

Whenever a new release is packaged, this pulls it in automatically.

Other Tools from deb.griffo.io

The deb.griffo.io repository packages many other terminal tools for Debian:

  • zoxide - a smarter cd that learns your habits
  • eza - a modern, maintained replacement for ls
  • fzf - a blazing-fast command-line fuzzy finder
  • lazygit - a terminal UI that makes Git a pleasure to use

Troubleshooting

GPG or Key Issues

If APT reports the repository cannot be verified, re-add the signing key:

# Re-download and install the repository GPG key
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg

# Refresh the package list
sudo apt update

Package Not Found

If APT cannot find the starship package:

  1. Make sure you ran sudo apt update after adding the repository.
  2. Confirm your Debian release is supported (Bookworm, Trixie or Sid).
  3. Check the source entry was written correctly:
cat /etc/apt/sources.list.d/deb.griffo.io.list

The Prompt Shows Broken Symbols

If your prompt is peppered with empty boxes or question marks, your terminal is not using a Nerd Font. Install one, select it in your terminal’s font settings and restart the terminal. Alternatively, apply a plain preset that avoids special glyphs:

starship preset plain-text-symbols -o ~/.config/starship.toml

Uninstalling

To remove Starship:

sudo apt remove starship

Remember to delete the eval "$(starship init ...)" line from your shell config so your old prompt returns. To remove the repository as well:

sudo rm /etc/apt/sources.list.d/deb.griffo.io.list
sudo rm /etc/apt/keyrings/deb.griffo.io.gpg
sudo apt update

Conclusion

Starship gives you a fast, informative and beautiful prompt with almost no effort. Out of the box it surfaces the context you care about — Git state, runtime versions, command timing — and a single TOML file lets you shape every detail to taste. Because one binary drives every shell, your prompt looks and behaves identically whether you are in Bash, Zsh or Fish.

Installed through the deb.griffo.io repository, Starship stays under APT’s control on Debian: one apt install, one init line in your shell config, and future releases arriving with your normal updates. It is a cleaner arrangement than a standalone install script, and it keeps your prompt current with no manual effort.

Resources


Disclaimer: The deb.griffo.io repository is an unofficial community project and is not affiliated with the official Debian or Ubuntu projects, or with the upstream Starship project.