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.1 from 2 Jul 2026. What changed since
Go to 0.2.4

postgres 0.2.1

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

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

What changed between 0.2.1 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.
  3. 0.2.23 Jul
    The readiness check connects as -U postgres, not your OS user.

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.1 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.1

View on GitHub
  • The first postgres release in the signed index (protocol 1).

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.1-aarch64-apple-darwin.tar.gz
58e2a5bf4cf90e9b919581cb254f5445c698e7adff3ad0c1c85a007fc37df305
CUay+yn0…1ADQ==
Linux arm64
aarch64-unknown-linux-gnu
postgres-plugin-0.2.1-aarch64-unknown-linux-gnu.tar.gz
787bd6d42c6777aa2610d1784b70000c92b4a48304ab33f2c364af3e32d7b9bf
ZN/PzzWX…xRBw==
Linux x86_64
x86_64-unknown-linux-gnu
postgres-plugin-0.2.1-x86_64-unknown-linux-gnu.tar.gz
56a50ca979d03c1ca63915be2f81cd0d49a77c8dc84116c2584e48a4abbaf1e2
HjDho0Ko…YsDA==

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.1-aarch64-apple-darwin.tar.gz
$ shasum -a 256 postgres-plugin-0.2.1-aarch64-apple-darwin.tar.gz
58e2a5bf4cf90e9b919581cb254f5445c698e7adff3ad0c1c85a007fc37df305  postgres-plugin-0.2.1-aarch64-apple-darwin.tar.gz

# 2. the signature is over that hex string, with doze's public key
$ printf %s 58e2a5bf4cf90e9b919581cb254f5445c698e7adff3ad0c1c85a007fc37df305 > digest.txt
$ echo 'CUay+yn0/9HHmYNEpYs+y4RcO6hupRo/0eBiuYs/yQXkx8huBZHUa3z+Od9Gnk8PhurIX14wqpOAVNd17E1ADQ==' | 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.1

A project pinned to 0.2.1 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.1
        protocol: 1
        engines:
            - "14"
            - "15"
            - "16"
            - "17"
            - "18"
        hashes:
            aarch64-apple-darwin: sha256:58e2a5bf4cf90e9b919581cb254f5445c698e7adff3ad0c1c85a007fc37df305
            aarch64-unknown-linux-gnu: sha256:787bd6d42c6777aa2610d1784b70000c92b4a48304ab33f2c364af3e32d7b9bf
            x86_64-unknown-linux-gnu: sha256:56a50ca979d03c1ca63915be2f81cd0d49a77c8dc84116c2584e48a4abbaf1e2
        # no doze: line; 0.2.1 sets no oldest doze