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)
sudoprivilegescurlinstalled (runsudo apt install curlif 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:
- Create the keyrings directory with the correct permissions for the signing key.
- Install the GPG key, dearmoring it into a keyring APT can verify against.
- Add the repository, using
lsb_release -scto detect your Debian codename automatically. - 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
cdthat 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:
- Make sure you ran
sudo apt updateafter adding the repository. - Confirm your Debian release is supported (Bookworm, Trixie or Sid).
- 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
- Starship Official Website
- Starship Configuration Docs
- Starship GitHub Repository
- deb.griffo.io Repository
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.