The Manual

Using nixarchy.podman

A walkthrough, from installing it to fixing the usual problems. For the reference tables (every key, every setting, IPC), see the README.

What it is

Podman for the Omarchy shell: containers, images, volumes and networks on four tabs. There are two ways in, with the same tabs and the same keys:

Requirements

Every command is run by name from PATH; nothing is wrapped or bundled.

Install on NixOS (nixarchy)

  1. Add the flake to your system flake’s inputs:

    inputs.nixarchy-podman = {
      url = "github:olafkfreund/nixarchy-podman";
      inputs.nixpkgs.follows = "nixpkgs";
    };
    
  2. Where you configure nixarchy (next to programs.nixarchy.enable), install the plugin, and make sure Podman is on:

    programs.nixarchy.plugins."nixarchy.podman".src =
      inputs.nixarchy-podman.packages.${pkgs.stdenv.hostPlatform.system}.default;
    
    virtualisation.podman.enable = true;              # not on by default in nixarchy
    environment.systemPackages = [ pkgs.podman-tui ]; # optional, for the `d` key
    
  3. Rebuild with nixos-rebuild switch. nixarchy validates the plugin during the build and links it into ~/.config/omarchy/plugins/nixarchy.podman.

  4. Enable it, once per machine. Enabling is runtime state that nixarchy leaves to you:

    omarchy plugin enable nixarchy.podman
    

    This also places the widget in the right section of the bar. To put it elsewhere:

    omarchy bar move nixarchy.podman --section left
    

Check it worked. A Podman glyph is in the bar, and the plugin shows as enabled:

omarchy plugin list | grep nixarchy.podman

Install without Nix

omarchy plugin add https://github.com/olafkfreund/nixarchy-podman
omarchy plugin enable nixarchy.podman

You still need Podman itself, running rootless: if podman ps works in a terminal without sudo, it is ready.

The bar popup

The glyph tells you the state at a glance:

Glyph Means
Dim Nothing is running
Bright (accent colour) At least one container is running
Red A running container needs attention: its health check reports unhealthy, or it is restarting

Hover it for a one-line summary, such as 1 of 2 running. Click to open the popup, and middle-click to re-read the containers. That is the glyph’s own list, not everything: u inside the panel refreshes the images, volumes and networks too.

The popup has four tabs:

The footer says what the tab holds and how much of it is reclaimable, on Containers, Images and Volumes alike. On Networks it gives the count and how many are unused; Podman reports no size for them.

The full-screen menu

Add it to the Omarchy menu

Open ~/.config/omarchy/extensions/omarchy-menu.jsonc and paste the "apps.podman" row from share/omarchy-menu.jsonc inside its top-level { }. Mind the comma between rows. Omarchy reloads the file when you save.

Now press Super+Alt+Space and type podman. The Podman row is under Apps; containers and docker find it too.

Give it a key

Add this line to ~/.config/hypr/bindings.lua:

o.bind("SUPER + ALT + O", "Podman", "omarchy-shell shell toggle nixarchy.podman '{}'")

The same key closes it again. To open it on a particular tab, pass the tab’s name:

omarchy-shell shell toggle nixarchy.podman '{"tab":"volumes"}'

How it differs from the popup

Everyday tasks

Both surfaces use the same keys. Press ? inside either to see them all.

To Do
Pick a tab 1–4, or h / l, or ← / →
Step through the tabs tab forward, shift+tab back, in the full-screen menu; in the popup tab moves to the next bar panel
See every shortcut ?. Press it again, or esc, to close the sheet
Dismiss Podman’s message esc while it is showing, or its ×
Move the cursor j / k, or ↑ / ↓
Start or stop a container Put the cursor on it, press enter or space
Restart a container r
Follow its logs o opens them in a terminal
Get a shell inside it s (running containers only)
Copy its name n
Copy an id, or a volume’s mount path c; on Images, Volumes and Networks, enter does the same
Remove one thing x. It asks first, and Cancel is the default. On an image, x removes the tag under the cursor; the image goes when its last tag does
Stop everything at once The stop button in the header, shown while anything is running. It asks first, naming up to three of the containers it will stop and counting the rest. Like a prune, it ignores the filter
Reclaim space on this tab p, or the footer button. It asks first, counting and naming what will go. A prune ignores the filter, and the question says so when one is set
Filter the list /, then type. ↓ returns to the list; if nothing matches, it stays in the filter. The first esc clears the text, the second leaves the filter
Refresh now u
Open podman-tui d

When Podman refuses something (a volume still in use, an image still referenced), its own reason appears under the list until you dismiss it.

Settings

Change these with omarchy bar set, which edits the widget’s entry in ~/.config/omarchy/shell.json. Pass --json so a value keeps its type; without it, false is stored as the text "false" and ignored:

omarchy bar set nixarchy.podman showStats false --json
omarchy bar set nixarchy.podman refreshIntervalSec 30 --json
omarchy bar set nixarchy.podman defaultTab '"Volumes"' --json

The settings are:

Setting Default What it changes
Refresh interval 15s How often the bar glyph re-reads Podman. An open surface refreshes every 3 seconds regardless.
Tab the panel opens on Containers Where both surfaces land when they open.
Show stopped containers on Off lists only running containers.
Show CPU and memory on Off skips podman stats entirely. Worth it on a laptop.
Measure what each volume costs on Off keeps the Volumes tab instant; per-volume sizes stay blank.
Hide the bar icon when empty off On hides the glyph until the Containers tab lists at least one container.

The bar popup applies a change at once. The full-screen menu picks it up only after the shell restarts, because of an Omarchy shell issue:

omarchy-restart-shell

Troubleshooting

The list says “Podman unreachable” or “No access to the Podman storage”. The plugin could not run podman ps.

The Volumes tab shows no sizes.

Podman is not in the Omarchy menu.

The old OmaPodman is still in the bar. An earlier install under the id abdullahmansoor.omapodman stays until you remove it:

omarchy plugin disable abdullahmansoor.omapodman
rm -rf ~/.config/omarchy/plugins/abdullahmansoor.omapodman

Its settings belong to the old id and do not carry over.

A rebuild does not update the plugin. nixarchy will not replace a real directory at ~/.config/omarchy/plugins/nixarchy.podman with its managed link. Such a directory comes from omarchy plugin add, a manual copy or a checkout. Remove that directory and rebuild.

d does nothing. podman-tui is not installed, or not on PATH. Install it with your package manager; on NixOS, add pkgs.podman-tui to environment.systemPackages.

Removal

omarchy plugin disable nixarchy.podman

Then either remove the programs.nixarchy.plugins."nixarchy.podman" line and rebuild, or, if you installed without Nix, run omarchy plugin remove nixarchy.podman. Take the apps.podman row out of omarchy-menu.jsonc, and the bind out of bindings.lua.

Your containers, images, volumes and networks are not touched.