dozeGitHubGet doze
Registry
Check against your doze

Which doze do you run?

doze 0.1.1newest · 2 Jul 2026doze 0.1.02 Jul 2026Stop checkingKept in this browser only. Nothing is sent anywhere.

PostgreSQL

OfficialSigned

Real local Postgres, declared not scripted.

doze/postgres
$ doze add postgres
Newest
0.2.4 · 2 Nov 2026
Needs
any doze
Runs
Postgres 14 – 18
Platforms
macOS arm64 · Linux arm64 · Linux x86_64
Licence
Apache-2.0
Not the newest: 0.2.4 is current.You are looking at 0.2.2 from 3 Jul 2026. What changed since
Go to 0.2.4

postgres 0.2.2

Superseded
Released
3 Jul 2026
Needs
any doze
Plugin protocol
1
Engines
Postgres 14–18
Platforms
3 of 3
Advisories
None known

0.2.2 sets no oldest doze, so it runs on every doze (0.1.0 and up).

What changed between 0.2.2 and 0.2.4

From doze-modules history
  1. 0.2.42 Nov
    A console: an Activity tab (sessions, their queries, Cancel or Terminate) and a databases table.
  2. 0.2.33 Jul
    No notes for this release.

Same plugin protocol (1) and the same engines (Postgres 14–18) throughout, so the upgrade needs no change to doze.hcl.

Projects pinned to 0.2.2 keep using it until someone runs doze modules upgrade. Nothing moves on its own: not doze up, not time, not a new release.

From doze 0.2: the newest release your doze can run
$ doze modules upgrade postgres

Release notes for 0.2.2

View on GitHub
  • The readiness check connects as -U postgres, not your OS user.

Artifacts

One signed archive per platform. Files live on GitHub; the registry lists them and signs their checksums.
PlatformFile (downloads from GitHub)SHA-256Signature (ed25519)
macOS arm64
aarch64-apple-darwin
postgres-plugin-0.2.2-aarch64-apple-darwin.tar.gz
242d0614a7ed3bcba1373d53634968899e69707cdee9a7e6452e2c04e30be3ac
OotS4bXF…7aBA==
Linux arm64
aarch64-unknown-linux-gnu
postgres-plugin-0.2.2-aarch64-unknown-linux-gnu.tar.gz
e92127bc120dad7f4b718254228345938d303b1531d7a1d1a553ece216931d74
20Qjek+v…/uBw==
Linux x86_64
x86_64-unknown-linux-gnu
postgres-plugin-0.2.2-x86_64-unknown-linux-gnu.tar.gz
a9c49d2ceeb9ff7ff43f1db4ca9aa8bbba530f1d2bc70f9dfb6e57f927664871
a/j1IUP9…WuAw==

Every file is under https://github.com/doze-dev/doze-modules/releases/download/postgres/. Intel Macs and Windows have no build; WSL2 uses the Linux x86_64 file.

Signing

The index is signed as a whole, and each archive is signed. doze checks both before anything runs, and refuses a module whose checksum or signature doesn't match.

Key
Nu5y8mbj…Wjw=
Where the key lives
Compiled into doze. doze never fetches or trusts a key on first use.
Namespace
doze
Publisher
doze-dev Official
Index signature
8aqfwb3Y…Cw==
What is signed
Each archive: its lowercase-hex SHA-256. The index: module, namespace, releases and channels as canonical JSON.
Not yet signed
The doze (oldest doze) field sits beside the signed part today. new The design moves it inside.
How signing works

Verify it yourself

[planned: doze modules verify] Today doze runs these checks itself on every download. The same checks by hand, for macOS arm64. Needs OpenSSL 3: the openssl that ships with macOS has no ed25519 (brew install openssl@3).

Checksum, then signature
# 1. download and hash; compare with the table above
$ curl -LO https://github.com/doze-dev/doze-modules/releases/download/postgres/postgres-plugin-0.2.2-aarch64-apple-darwin.tar.gz
$ shasum -a 256 postgres-plugin-0.2.2-aarch64-apple-darwin.tar.gz
242d0614a7ed3bcba1373d53634968899e69707cdee9a7e6452e2c04e30be3ac  postgres-plugin-0.2.2-aarch64-apple-darwin.tar.gz

# 2. the signature is over that hex string, with doze's public key
$ printf %s 242d0614a7ed3bcba1373d53634968899e69707cdee9a7e6452e2c04e30be3ac > digest.txt
$ echo 'OotS4bXFU0nt7GYDK32+IbbKW0VB/pAyA77PcviB/fY4TBuL5c/VOzL3qU99cvoxzwkooq/mQjYPXRh8w97aBA==' | base64 -d > sig.bin
$ (printf '\x30\x2a\x30\x05\x06\x03\x2b\x65\x70\x03\x21\x00'; echo 'Nu5y8mbjYv7XEtNFBXwPVl+C8SBteVApIROefBwGWjw=' | base64 -d) > doze-key.der
$ openssl pkeyutl -verify -pubin -keyform DER -inkey doze-key.der -rawin -in digest.txt -sigfile sig.bin
Signature Verified Successfully

What doze.lock records for 0.2.2

A project pinned to 0.2.2 carries this entry. doze modules upgrade replaces it whole: release, engines and checksums move together in one reviewable diff. Every platform's checksum goes in, so a teammate on Linux verifies against the same pin you made on a Mac. Pinned and cached means no network at all.

The engine itself is pinned separately, under engines:. Engine versions

doze.lock
modules:
    doze/postgres:
        version: 0.2.2
        protocol: 1
        engines:
            - "14"
            - "15"
            - "16"
            - "17"
            - "18"
        hashes:
            aarch64-apple-darwin: sha256:242d0614a7ed3bcba1373d53634968899e69707cdee9a7e6452e2c04e30be3ac
            aarch64-unknown-linux-gnu: sha256:e92127bc120dad7f4b718254228345938d303b1531d7a1d1a553ece216931d74
            x86_64-unknown-linux-gnu: sha256:a9c49d2ceeb9ff7ff43f1db4ca9aa8bbba530f1d2bc70f9dfb6e57f927664871
        # no doze: line; 0.2.2 sets no oldest doze