1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
.\" Generated by scdoc 1.11.1
.\" Complete documentation for this program is not available as a GNU info page
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.nh
.ad l
.\" Begin generated content:
.TH "adenosine-pds" "1" "2022-11-11" "adenosine PDS Server Manual Page"
.P
.SH NAME
.P
adenosine-pds: small-world atproto.\&com Personal Data Server
.P
.SH SYNOPSIS
.P
adenosine-pds [OPTIONS] <COMMAND> <ARGS>
.P
.SH DESCRIPTION
.P
This is a simple, enthusiast-grade AT Protocol (atproto.\&com) personal data
server ("PDS") implementation.\& It targets "small-world" uses cases of the
protocol, for example personal or organizational self-hosting.\&
.P
This is a work-in-progress, is not spec-compliant, will not be
backwards/forwards compatible, and does not have an upgrade/migration path.\&
.P
.SH COMMANDS
.P
\fBgenerate-secret\fR
.RS 4
Creates a new random secret key for PDS use
.P
.RE
\fBserve\fR [OPTIONS]
.RS 4
Runs the server.\& See options below
.P
.RE
\fBimport\fR <car-path> [--alias <alias>]
.RS 4
Loads a CAR file into the repository blockstore
.P
.RE
\fBinspect\fR
.RS 4
Prints information about repositories in the blockstore (likely to deprecate)
.P
.P
.RE
.SH OPTIONS
.P
\fB-h, --help\fR
.RS 4
Prints help information
.P
.RE
\fB-V, --version\fR
.RS 4
Prints version information
.P
.RE
\fB-v, --verbose\fR
.RS 4
Pass many times for more log output
By default, it'll only report errors.\& Passing `-v` one time also prints warnings, `-vv` enables info logging, `-vvv` debug, and `-vvvv` trace.\&
.P
.RE
\fB--atp-db <path>\fR [env: ATP_ATP_DB]
.RS 4
File path of sqlite database holding system/application data
.P
.RE
\fB--block-db <path>\fR [env: ATP_BLOCK_DB]
.RS 4
File path of sqlite database holding repository data (blockstore)
.P
.RE
.SS SERVE OPTIONS
.P
\fB--homepage-handle <homepage-handle>\fR [env: ATP_PDS_HOMEPAGE_HANDLE]
.RS 4
Optionally, override domain name check and force the homepage to display the account page for this handle
.P
.RE
\fB--invite-code <invite-code>\fR [env: ATP_PDS_INVITE_CODE]
.RS 4
Optionally, require an invite code to sign up.\& This is just a single secret value
.P
.RE
\fB--pds-secret-key <pds-secret-key>\fR [env: ATP_PDS_SECRET_KEY]
.RS 4
Secret key, encoded in hex.\& Use 'generate-secret' to create a new one
.P
.RE
\fB--port <port>\fR [env: ATP_PDS_PORT] [default: 3030]
.RS 4
Localhost port to listen on
.P
.RE
\fB--public-url <public-url>\fR [env: ATP_PDS_PUBLIC_URL]
.RS 4
A "public URL" for the PDS gets embedded in DID documents.\& If one is not
provided, a localhost value will be used, which will not actually work for
inter-PDS communication
.P
.RE
\fB--registration-domain <registration-domain>\fR [env: ATP_PDS_REGISTRATION_DOMAIN]
.RS 4
If provided, allow registration for the given base domain name
.P
.P
.RE
.SH GETTING STARTED
.P
TODO
|