Stamp Stamp

A lightweight yet powerful tool that wraps many package managers into one.

Install, track, and restore without changing your tools.

One manifest. One command to restore it all.

$ curl -fsSL https://gostamp.dev/install | bash

Explore installation methods →

Features

[>]

Multi-Manager Wrapper

Install, search, and remove packages across 14 supported package managers (DNF, APT, Brew, Flatpak, Snap, Zypper, Pacman, Paru, MacPorts, Cargo, Npm, Pipx, Uv, and Go) through a single CLI. See per-manager feature support →

[+]

Cross-Platform

Works on Linux & macOS today. Windows support is planned.

[*]

Automatic Intent Tracking

Every install is recorded in a portable manifest.toml. Only your intentional choices, not dependency noise.

[<]

One-Command Restore

Drop your manifest.toml into ~/.config/stamp/ and run stamp restore to rebuild your entire environment on a new machine in minutes.

[/]

Safety Net Reconciliation

Forgot to use stamp? stamp reconcile detects packages installed outside the tool and tracks them automatically.

[#]

Unified Repository Management

Add, remove, and list third-party repositories — PPAs, taps, remotes — across all managers with the same interface.

[@]

Familiar Features

Homebrew casks, stamp provides, stamp autoremove, cache cleanup, version pinning — the native features you already know, unified. See the full list →

[%]

Speaks Your Language

Every stamp command has aliases matching your package manager's native syntax — stamp show (APT/DNF), stamp outdated (Brew/npm), stamp tap (Brew). See the matrix →

[?]

Self-Contained Docs

Built-in man pages (stamp man install), shell completions, and auto-generated CLI reference docs.

[!]

Context Preservation

Add --note to any install so you remember why you needed a package six months later.

[$]

UNIX Compliant

XDG Base Directory, NO_COLOR support, strict stdout/stderr separation, and TTY-aware sudo.

Explore the Feature Reference →

Usage

Install and track

$ stamp install htop
$ stamp install spotify --manager flatpak
$ stamp add lazygit -m brew --note "better git TUI"

Detect drift and reconcile

$ sudo dnf install ripgrep
$ stamp reconcile --dry-run   # preview drift
$ stamp reconcile              # auto-track changes

Restore on a new machine

$ cp manifest.toml ~/.config/stamp/   # copy your manifest to the stamp config dir
$ stamp restore -y              # rebuild everything

Keep everything fresh

$ stamp update                   # update all packages in all managers at once
$ stamp self-update              # update stamp itself

Diagnose your system

$ stamp doctor

▪ System Diagnosis (Stamp Doctor)

Package Managers:
  Name       Status     Path                   Details
  apt        ✓ Active   /usr/bin/apt           Default system manager (Debian/Ubuntu)
  dnf        ✓ Active   /usr/bin/dnf           Default system manager (Fedora/RHEL, alias yum)
  pacman     ✗ Not Found -                     Executable not found in $PATH
  paru       ✗ Not Found -                     Executable not found in $PATH
  zypper     ✗ Not Found -                     Executable not found in $PATH
  snap       ✓ Active   /usr/bin/snap          Universal Linux package manager
  flatpak    ✓ Active   /usr/bin/flatpak       Sandboxed application distribution
  brew       ✓ Active   /home/user/.linuxbrew/bin/brew User-space manager
  macports   ✗ Not Found -                     Executable not found in $PATH
  go         ✓ Active   /usr/local/go/bin/go   Language toolchain — go install
  npm        ✓ Active   /usr/bin/npm           Node.js package manager
  cargo      ✗ Not Found -                     Executable not found in $PATH
  pipx       ✓ Active   /usr/bin/pipx          Python tool installer
  uv         ✗ Not Found -                     Executable not found in $PATH

Manifest Integrity:
  Path:   /home/user/.config/stamp/manifest.toml
  Status: ✓ Healthy (42 package(s))

Configuration:
  Path:   /home/user/.config/stamp/config.toml
  Status: ✓ Valid

UNIX Compliance:
  NO_COLOR: ✗ Not set
  Version:  stamp v0.35.0
  Man Page: ✓ Up to date (v0.35.0)
  Completions: ✓ Installed (bash, zsh)

Output captured at v0.35.0; manager availability and paths vary by platform.

Explore all usage guides →