Skip to content
This repository was archived by the owner on Apr 29, 2024. It is now read-only.

Commit 43c3024

Browse files
committed
docs: receipt files
Signed-off-by: Austin Seipp <aseipp@pobox.com> Change-Id: I2ec80034effbf4281f1d7263b9decbd4
1 parent d250647 commit 43c3024

File tree

1 file changed

+155
-0
lines changed

1 file changed

+155
-0
lines changed

docs/receipt-files.md

Lines changed: 155 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
Every time you run `nix build` on this repository to build PostgreSQL, the
2+
installation directory comes with a _receipt_ file that tells you what's inside
3+
of it. Primarily, this tells you:
4+
5+
- The version of PostgreSQL,
6+
- The installed extensions, and
7+
- The version of nixpkgs.
8+
9+
The intent of the receipt file is to provide a mechanism for tooling to
10+
understand installation directories and provide things like upgrade paths or
11+
upgrade mechanisms.
12+
13+
## Example receipt
14+
15+
For example:
16+
17+
```
18+
nix build .#psql_15/bin
19+
```
20+
21+
```
22+
austin@GANON:~/work/nix-postgres$ nix build .#psql_15/bin
23+
austin@GANON:~/work/nix-postgres$ ls result
24+
bin include lib receipt.json share
25+
```
26+
27+
The receipt is in JSON format, under `receipt.json`. Here's an example of what
28+
it would look like:
29+
30+
```json
31+
{
32+
"extensions": [
33+
{
34+
"name": "pgsql-http",
35+
"version": "1.5.0"
36+
},
37+
{
38+
"name": "pg_plan_filter",
39+
"version": "unstable-2021-09-23"
40+
},
41+
{
42+
"name": "pg_net",
43+
"version": "0.7.2"
44+
},
45+
{
46+
"name": "pg_hashids",
47+
"version": "unstable-2022-09-17"
48+
},
49+
{
50+
"name": "pgsodium",
51+
"version": "3.1.8"
52+
},
53+
{
54+
"name": "pg_graphql",
55+
"version": "unstable-2023-08-01"
56+
},
57+
{
58+
"name": "pg_stat_monitor",
59+
"version": "1.0.1"
60+
},
61+
{
62+
"name": "pg_jsonschema",
63+
"version": "unstable-2023-07-23"
64+
},
65+
{
66+
"name": "vault",
67+
"version": "0.2.9"
68+
},
69+
{
70+
"name": "hypopg",
71+
"version": "1.3.1"
72+
},
73+
{
74+
"name": "pg_tle",
75+
"version": "1.0.4"
76+
},
77+
{
78+
"name": "supabase-wrappers",
79+
"version": "unstable-2023-07-31"
80+
},
81+
{
82+
"name": "supautils",
83+
"version": "1.7.3"
84+
}
85+
],
86+
"nixpkgs": {
87+
"extensions": [
88+
{
89+
"name": "postgis",
90+
"version": "3.3.3"
91+
},
92+
{
93+
"name": "pgrouting",
94+
"version": "3.5.0"
95+
},
96+
{
97+
"name": "pgtap",
98+
"version": "1.2.0"
99+
},
100+
{
101+
"name": "pg_cron",
102+
"version": "1.5.2"
103+
},
104+
{
105+
"name": "pgaudit",
106+
"version": "1.7.0"
107+
},
108+
{
109+
"name": "pgjwt",
110+
"version": "unstable-2021-11-13"
111+
},
112+
{
113+
"name": "plpgsql_check",
114+
"version": "2.3.4"
115+
},
116+
{
117+
"name": "pg-safeupdate",
118+
"version": "1.4"
119+
},
120+
{
121+
"name": "timescaledb",
122+
"version": "2.11.1"
123+
},
124+
{
125+
"name": "wal2json",
126+
"version": "2.5"
127+
},
128+
{
129+
"name": "plv8",
130+
"version": "3.1.5"
131+
},
132+
{
133+
"name": "rum",
134+
"version": "1.3.13"
135+
},
136+
{
137+
"name": "pgvector",
138+
"version": "0.4.4"
139+
},
140+
{
141+
"name": "pg_repack",
142+
"version": "1.4.8"
143+
},
144+
{
145+
"name": "pgroonga",
146+
"version": "3.0.8"
147+
}
148+
],
149+
"revision": "750fc50bfd132a44972aa15bb21937ae26303bc4"
150+
},
151+
"psql-version": "15.3",
152+
"receipt-version": "1",
153+
"revision": "vcs=d250647+20230814"
154+
}
155+
```

0 commit comments

Comments
 (0)