43 developer tools, always updated — new upstream releases land in apt within hours. Join the Discord

📅 From , the apt mirror will require a subscription. See pricing · 🆓 There is an always-free mirror

💠 Install Latest Oh My Posh on Ubuntu

A prompt theme engine for any shell

Latest version: 30.6.5 · updated 2026-08-12
SourceVersion
deb.griffo.io30.6.5 ✅
Official Ubuntu🚫 not packaged
← Back to home

What is Oh My Posh?

Oh My Posh is a prompt theme engine for any shell, created by Jan De Dobbeleer and written in Go. One engine, one theme format — the same beautiful, information-rich prompt in bash, zsh, fish, PowerShell, Nushell, elvish, xonsh and cmd. With tens of thousands of GitHub stars and a huge theme ecosystem, it has become the go-to way to get a consistent prompt across every machine and shell you use.

😤 Prompt Pain Points: Hand-rolling PS1 escape codes? Married to a prompt framework that only works in one shell? Rebuilding your prompt from scratch every time you switch between zsh at home and bash on servers? Oh My Posh gives you one configuration that follows you everywhere.
🚀 Always ahead of the official archives: Debian and Ubuntu freeze package versions when a release ships — this repository publishes new upstream releases typically within hours. A simple apt upgrade keeps you on the latest version.

⚡ Key Features of Oh My Posh

🐚 Any Shell, One Config

Identical prompt in bash, zsh, fish, PowerShell, Nushell, elvish, xonsh and cmd. Configure once, use everywhere — including over SSH.

🎨 125+ Themes Included

This package ships every built-in theme to /usr/share/oh-my-posh/themes/ — ready to preview and use offline, no extra downloads.

🧩 Rich Segments

Git status, exit codes, execution time, battery, kubernetes context, cloud accounts, and language versions (Go, Python, Node, Rust and dozens more) — shown only when relevant.

📝 Your Theme, Your Format

Write custom themes in JSON, YAML or TOML with a documented schema. Start from any built-in theme and make it yours.

✨ Transient & Tooltips

Transient prompts keep scrollback clean, tooltips react to what you type, and right-aligned segments make use of the full terminal width.

⚡ Fast by Design

A single Go binary with concurrent segment rendering — the prompt stays instant even with many segments enabled.

🏆 Why install it with apt?

  • No curl-pipe-bash: a GPG-signed repository instead of piping installer scripts into your shell
  • Themes included: all built-in themes land in /usr/share/oh-my-posh/themes/, version-matched to the binary
  • Automatic updates: new upstream releases arrive with your normal apt upgrade
  • Clean removal: apt remove takes everything with it — no stray binaries in ~/bin
  • Multi-arch: amd64, arm64 and armhf — the same setup on your desktop and your Raspberry Pi

📦 Installation from deb.griffo.io

Run the commands

Step 1: Add Repository

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
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
sudo apt update
install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update

🆓 Free forever alternative. Oh My Posh is also in the always-free mirror at deb-free.griffo.io — no account, no subscription, at most 2 months behind upstream, and security fixes published immediately. Add that repository instead of the one above:

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb-free.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb-free.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb-free.griffo.io.gpg] https://deb-free.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb-free.griffo.io.list > /dev/null
sudo apt update
install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb-free.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb-free.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb-free.griffo.io.gpg] https://deb-free.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb-free.griffo.io.list > /dev/null
apt update

How the free mirror works →

Step 2: Install Oh My Posh

sudo apt install -y oh-my-posh
apt install -y oh-my-posh

🚀 Set up your shell

Pick a theme from /usr/share/oh-my-posh/themes/ and initialize your shell. For bash, add this to ~/.bashrc:

eval "$(oh-my-posh init bash --config /usr/share/oh-my-posh/themes/jandedobbeleer.omp.json)"

For zsh, add the same line with zsh to ~/.zshrc; for fish, add oh-my-posh init fish --config /usr/share/oh-my-posh/themes/jandedobbeleer.omp.json | source to ~/.config/fish/config.fish. Most themes look best with a Nerd Font — or run oh-my-posh font install.

📦 Package Build Repository

The Ubuntu packages are automatically built and maintained in this GitHub repository:

🔗 Related Packages

Also available from deb.griffo.io:

🎯 Perfect for: Developers who work across multiple shells and machines, terminal customization enthusiasts, anyone who wants git status and context at a glance, and teams that want a consistent prompt setup that installs with one apt command.

💝 Support This Project

If this repository saves you time and effort, please consider supporting it!

⭐ Star on GitHub 🐦 Share on Twitter

Just after the command? See apt install oh-my-posh — one page covering Debian and Ubuntu.

📦 Recent releases from this repository

📚 Release-specific install guides

❓ Frequently asked questions

Is Oh My Posh in the official Ubuntu repositories?

No — Oh My Posh is not packaged in the official Ubuntu archives. This repository is currently the only apt source, serving Oh My Posh 30.6.5.

How do I install the latest Oh My Posh on Ubuntu?

Add the deb.griffo.io repository once using the instructions above, then run: sudo apt install oh-my-posh. New releases arrive through the normal sudo apt upgrade.

Are the packages signed and how are they built?

Every package is signed with the repository's GPG key (EA0F721D231FDD3A0A17B9AC7808B4DD62C41256) and built from upstream releases in public GitHub packaging repositories that anyone can inspect.

Which Ubuntu releases are supported?

Ubuntu 22.04 Jammy, 24.04 Noble, 25.10 Questing and 26.04 Resolute.