]> Sergey Matveev's repositories - public-inbox.git/blob - Documentation/public-inbox-init.pod
t/init: fix test when ~/.public-inbox/ does not exist
[public-inbox.git] / Documentation / public-inbox-init.pod
1 =head1 NAME
2
3 public-inbox-init - create or reinitialize a public-inbox
4
5 =head1 SYNOPSIS
6
7 B<public-inbox-init> [OPTIONS] NAME INBOX_DIR HTTP_URL ADDRESS [ADDRESS..]
8
9 =head1 DESCRIPTION
10
11 Creates an empty public-inbox or reinitializes an existing one.
12 It updates C<~/.public-inbox/config> by creating a
13 C<[publicinbox "NAME"]> section where
14 C<publicinbox.NAME.inboxdir> is C<INBOX_DIR>,
15 C<publicinbox.NAME.url> is C<HTTP_URL>, and
16 C<publicinbox.NAME.address> is C<ADDRESS>.  Multiple addresses
17 may be specified for inboxes with multiple addresses.
18
19 =head1 OPTIONS
20
21 =over
22
23 =item -V, --version FORMAT_VERSION
24
25 Specify C<2> here to use the scalable L<public-inbox-v2-format(5)>
26 if you have L<DBD::SQLite> installed.
27
28 The default is C<1> for the old L<public-inbox-v1-format(5)>,
29 but C<2> is strongly recommended for scalability if you have
30 L<DBD::SQLite>.
31
32 Default: C<1>
33
34 =item --indexlevel <basic|medium|full>
35
36 Controls the indexing level for L<public-inbox-index(1)>
37
38 See L<public-inbox-config(5)> for more information.
39
40 Default: C<full>
41
42 =item -N, --skip-artnum
43
44 This option allows archivists to publish incomplete archives
45 with only new mail while allowing NNTP article numbers
46 to be reserved for yet-to-be-archived old mail.
47
48 This is mainly intended for users of C<--skip-epoch> (documented below)
49 but may be of use to L<public-inbox-v1-format(5)> users.
50
51 There is no automatic way to use reserved NNTP article numbers
52 when old mail is found, yet.
53
54 Available since public-inbox 1.6.0 (PENDING).
55
56 Default: unset, no NNTP article numbers are skipped
57
58 =item -S, --skip-epoch
59
60 For C<-V2> (L<public-inbox-v2-format(5)>) inboxes only, this option
61 allows archivists to publish incomplete archives with newer
62 mail while allowing "0.git" (or "1.git" and so on) epochs to be
63 added-after-the-fact (without affecting "git clone" followers).
64
65 Available since public-inbox 1.2.0.
66
67 Default: unset, no epochs are skipped
68
69 =item -j, --jobs=JOBS
70
71 Control the number of Xapian index shards in a
72 C<-V2> (L<public-inbox-v2-format(5)>) inbox.
73
74 It is useful to use a single shard (C<-j1>) for inboxes on
75 high-latency storage (e.g. rotational HDD) unless the system has
76 enough RAM to cache 5-10x the size of the git repository.
77
78 It is generally not useful to specify higher values than the
79 default due to contention in the top-level producer process.
80
81 Default: the number of online CPUs, up to 4
82
83 =back
84
85 =head1 ENVIRONMENT
86
87 =over 8
88
89 =item PI_CONFIG
90
91 Used to override the default C<~/.public-inbox/config> value.
92
93 =back
94
95 =head1 LIMITATIONS
96
97 This tool predates NNTP support in public-inbox and is missing
98 C<newsgroup> and many of the options documented in
99 L<public-inbox-config(5)>.  See L<public-inbox-config(5)> for all the
100 options which may be applied to a given inbox.
101
102 =head1 CONTACT
103
104 Feedback welcome via plain-text mail to L<mailto:meta@public-inbox.org>
105
106 The mail archives are hosted at L<https://public-inbox.org/meta/>
107 and L<http://hjrcffqmbrq6wope.onion/meta/>
108
109 =head1 COPYRIGHT
110
111 Copyright 2019-2020 all contributors L<mailto:meta@public-inbox.org>
112
113 License: AGPL-3.0+ L<https://www.gnu.org/licenses/agpl-3.0.txt>
114
115 =head1 SEE ALSO
116
117 L<git-init(1)>, L<git-config(1)>, L<public-inbox-v1-format(5)>,
118 L<public-inbox-v2-format(5)>