Installation
Download an installer
Each release on the GitHub Releases page ships a native installer per platform:
| Platform | File |
|---|---|
| macOS (Intel + Apple silicon) | pgCowboy-v{VERSION}-macos-universal.dmg |
| Windows 10/11 (x64) | pgCowboy-v{VERSION}-windows-amd64.msi |
| Debian, Ubuntu (x64) | pgCowboy-v{VERSION}-linux-amd64.deb |
| Fedora, RHEL, openSUSE (x64) | pgCowboy-v{VERSION}-linux-amd64.rpm |
{VERSION} here and in the commands below stands for the release you downloaded, e.g. 1.0.0.
System requirements
pgCowboy draws its interface with the operating system’s own web engine, so the engine version — not just the OS version — matters.
| Platform | Requirement |
|---|---|
| macOS | 12 Monterey or later, kept up to date. |
| Windows | 10 or 11 with the WebView2 runtime, which Windows installs and updates automatically. |
| Linux | WebKitGTK 2.38 or later (libwebkit2gtk-4.1-0), which the .deb/.rpm pull in. Ships with Ubuntu 22.04+, Debian 12+ and Fedora 37+. |
Each release description opens with what is new in that version; the changelog covers every version in one page.
macOS
Open the .dmg and drag pgCowboy to the Applications folder, then eject the disk image. Gatekeeper blocks the first launch of an unsigned app; clear the quarantine flag once:
xattr -dr com.apple.quarantine /Applications/pgCowboy.appopen -a pgCowboyTo uninstall, move /Applications/pgCowboy.app to the Trash.
Windows
Run the .msi. It installs to C:\Program Files\pgCowboy, adds a Start-menu entry, and registers an uninstaller under Settings → Apps. Installing a newer version upgrades in place, keeping the install location.
Silent install (per machine, needs an elevated prompt):
msiexec /i pgCowboy-v{VERSION}-windows-amd64.msi /qnLinux
The packages install /usr/bin/pgCowboy plus a desktop entry and icon, and pull in the GTK and WebKit runtime libraries.
# Debian / Ubuntusudo apt install ./pgCowboy-v{VERSION}-linux-amd64.deb
# Fedora / RHELsudo dnf install ./pgCowboy-v{VERSION}-linux-amd64.rpmTo remove: sudo apt remove pgcowboy or sudo dnf remove pgcowboy.
Configuration files
On first launch the app writes two default files, which you can edit in the app (Clusters and Settings tabs) or on disk.
| OS | Directory |
|---|---|
| macOS | ~/Library/Application Support/pgCowboy/ |
| Linux | ~/.config/pgcowboy/ |
| Windows | %AppData%\pgCowboy\ |
config.yaml holds call templates and app settings; clusters.yaml holds your clusters, their groups, and the remembered target selection. See config.example.yaml and clusters.example.yaml for references, and Configuration for what each part does.
Upgrading from DbAccounts
The app was called DbAccounts up to v1.0.0. Settings are not migrated: pgCowboy uses a new configuration directory and writes fresh defaults on first launch. To keep your clusters, groups, templates and any saved per-cluster passwords, copy both files across before you start it:
| OS | From | To |
|---|---|---|
| macOS | ~/Library/Application Support/DbAccounts/ | ~/Library/Application Support/pgCowboy/ |
| Linux | ~/.config/dbaccounts/ | ~/.config/pgcowboy/ |
| Windows | %AppData%\DbAccounts\ | %AppData%\pgCowboy\ |
The old directory is left untouched, so you can delete it once you have confirmed everything came across. The application itself does not upgrade in place either — remove /Applications/DbAccounts.app on macOS, or sudo apt remove dbaccounts / sudo dnf remove dbaccounts on Linux. The Windows installer does replace the old install automatically.
Credentials
The app resolves credentials the way psql does. First match wins:
- User — the cluster’s Username, else
PGUSER, else your OS login name. - Password — the cluster’s Password, else
PGPASSWORD, else a match in~/.pgpass, else none (works with trust auth or an empty password).
Database privileges
pgCowboy requires a superuser connection.
The requirement comes from the operations, not from the app. The built-in templates are plain PostgreSQL DDL, so each operation needs exactly the privilege its statement needs — and the set the role form offers, taken together, adds up to a superuser. Required privileges breaks it down per operation.
Building from source is covered under Building from source.