Skip to content

punix list

List packages installed in the active profile.

punix list [-v] [--format text|tsv|json] [--profile-root PATH]

What it does

Reads the active generation manifest under ~/.punix/current/ and prints one line per installed package. The default output is brew-shape — pname + version, nothing else. Use -v for a paragraph per package with the module name and store path.

No PCL evaluation, no network — just reads the on-disk manifest.

Example — default (compact)

$ punix install just
$ punix install atuin
$ punix install wget
$ punix list
atuin  18.3.0
just   1.51.0
wget   1.25.0

One line per package, pname padded to align versions. No header, no extra columns. Fits any terminal width.

Example — verbose (-v)

$ punix list -v
atuin 18.3.0
  module     atuin
  store      ~/.punix/store/abcd1234…-atuin-18.3.0

just 1.51.0
  module     just
  store      ~/.punix/store/dd306ffa…-just-1.51.0

wget 1.25.0
  module     wget
  store      ~/.punix/store/cfd552eb…-wget-1.25.0

One paragraph per package. Use this when you need to know the exact store path (e.g. to inspect a build) or the underlying module name (the identifier used by punix install MODULE).

Output formats

Auto-detects TTY vs pipe:

  • TTY — padded columns (default) or paragraph (-v).
  • Pipe — tab-separated, one line per record. Default emits 2 columns (pname\tversion); -v emits 4 (pname\tversion\tmodule\tstore_path).
  • --format json — machine-readable; always includes every field regardless of -v. Empty profile is [].
  • --format text / --format tsv — force a specific mode.

For an empty profile, text prints nothing installed (no active profile) and tsv prints nothing (grep convention).

Options

  • -v / --verbose — paragraph per package (module name + store path).
  • --format text|tsv|json — output format (default auto: TTY → text, pipe → tsv).
  • --profile-root PATH — profile root (default ~/.punix/current).

Piping to jq

$ punix list --format json | jq -r '.[] | "\(.pname)=\(.version)"'
atuin=18.3.0
just=1.51.0
wget=1.25.0

See also