summaryrefslogtreecommitdiff
path: root/doc/snac.1
diff options
context:
space:
mode:
authorGravatar default2022-10-03 20:14:20 +0200
committerGravatar default2022-10-03 20:14:20 +0200
commit99c43fbc41074dd9bf0170823f2a247aeebb1fad (patch)
treee93e152b86650d2db030f5974fe47002513aadbb /doc/snac.1
parentVersion 2.01 RELEASED. (diff)
downloadpenes-snac2-99c43fbc41074dd9bf0170823f2a247aeebb1fad.tar.gz
penes-snac2-99c43fbc41074dd9bf0170823f2a247aeebb1fad.tar.xz
penes-snac2-99c43fbc41074dd9bf0170823f2a247aeebb1fad.zip
Imported documentation from snac 1.x.
Diffstat (limited to 'doc/snac.1')
-rw-r--r--doc/snac.1208
1 files changed, 208 insertions, 0 deletions
diff --git a/doc/snac.1 b/doc/snac.1
new file mode 100644
index 0000000..f2ed24d
--- /dev/null
+++ b/doc/snac.1
@@ -0,0 +1,208 @@
1.Dd $Mdocdate$
2.Dt SNAC 1
3.Os
4.Sh NAME
5.Nm snac
6.Nd A simple, minimalistic ActivityPub instance
7.Sh SYNOPSIS
8.Nm
9.Cm command
10.Ar basedir
11.Op Ar option ...
12.Sh DESCRIPTION
13The
14.Nm
15daemon processes messages from other servers in the Fediverse
16using the ActivityPub protocol.
17.Pp
18This is the user manual and expects an already running
19.Nm
20installation. For the administration manual, see
21.Xr snac 8 .
22For file and data formats, see
23.Xr snac 5 .
24.Ss Web Interface
25The web interface provided by
26.Nm
27is split in two data streams: the public timeline and the
28private timeline. There are no other feeds like the server-scoped
29or the federated firehoses provided by other similar ActivityPub
30implementations like Mastodon or Pleroma.
31.Pp
32The public timeline, also called the local timeline, is what an
33external visitor sees about the activity of a
34.Nm
35user: that is, only the list of public notes, boosts and likes
36the user generates or participates into. This is, obviously,
37read-only, and not very remarkable, unless the user publishes
38messages of staggering genious. A set of history links, grouped
39by month, will also be available at the bottom of the page.
40.Pp
41The private timeline, or simply the timeline, is the private,
42password-protected area of a
43.Nm
44server where the user really interacts with the rest of the
45Fediverse.
46.Pp
47The top area of the timeline provides a big text area to write
48notes for the public (i.e. for the user followers). As this is
49the second most important activity on the Fediverse, this is
50located in the most prominent area of the user page. You can
51enter plain text, @user@host mentions and other things. See the
52.Xr snac 5
53manual for more information on the allowed markup.
54.Pp
55More options are hidden under a toggle control. They are the
56following:
57.Bl -tag -offset indent
58.It Follow (by URL or user@host)
59Fill the input area with a user 'actor' URL or a user@host
60Fediverse identifier to follow.
61.It Boost (by URL)
62Fill the input area with the URL of a Fediverse note to be
63boosted.
64.It User setup...
65This option opens the user setup dialog.
66.El
67.Pp
68The user setup dialog allows some user information to be
69changed, specifically:
70.Bl -tag -offset indent
71.It User name
72Your user name, or not really that. People like to include
73emojis, flags and strange symbols for some reason.
74.It Avatar URL
75The URL of a picture to be used as your avatar in timelines
76around the world.
77.It Bio
78Enter here a bunch of self-indulgent blurb about yourself.
79The same markup options available for text notes apply here.
80.It Password
81Write the same string in these two fields to change your
82password. Don't write anything if you don't want to do this.
83.El
84.Pp
85The rest of the page contains your timeline in reverse
86chronological order (i.e., newest interactions first).
87.Nm
88shows the conversations as nested trees, unlike other Fediverse
89software; everytime something new is added to a conversation,
90the full thread is bumped up, so new interactions are shown
91always at the top of the page while the forgotten ones languish
92at the bottom.
93.Pp
94Private notes (a.k.a. direct messages) are also shown in
95the timeline as normal messages, but marked with a cute lock
96to mark them as non-public. Replies to direct messages are
97also private and cannot be liked nor boosted.
98.Pp
99For each entry in the timeline, a set of reasonable actions
100in the form of buttons will be shown. These can be:
101.Bl -tag -offset indent
102.It Reply
103Unveils a text area to write your intelligent and acute comment
104to an uninformed fellow. This note is sent to the original
105author as well as to your followers. The note can include
106mentions in the @user@format; these people will also become
107recipients of the message. If you reply to a boost or like,
108you are really replying to the note, not to the admirer of it.
109.It Like
110Click this if you admire this post. The poster and your
111followers will be informed.
112.It Boost
113Click this if you want to propagate this post to all your
114followers. The original author will also be informed.
115.It Follow
116Click here if you want to start receiving all the shenanigans
117the original author of the post will write in the future.
118.It Unfollow
119Click here if you are fed up of this fellow's activities.
120.It Delete
121Click here to send this post to the bin. If it's an activity
122written by you, the appropriate message is sent to the rest
123of involved parts telling them that you no longer want your
124thing in their servers (not all implementations really obey
125this kind of requirements, though).
126.It MUTE
127This is the most important button in
128.Nm
129and the Fediverse in general. Click it if you don't want
130to read crap from this user again in the forseeable future.
131.El
132.Ss Command-line options
133The command-line tool provide the following commands:
134.Bl -tag -offset indent
135.It Cm init Op basedir
136Initializes the database. This is an interactive command; necessary
137information will be prompted for. The
138.Ar basedir
139directory must not exist.
140.It Cm check Ar basedir Op uid
141Does a minimal health check to the database and its users. If a
142user id is provided, only this user will be checked.
143.It Cm purge Ar basedir Op uid
144Purges old data from the timeline of all users. If a user id is
145provided, only this user's timeline will be purged.
146.It Cm adduser Ar basedir Op uid
147Adds a new user to the server. This is an interactive command;
148necessary information will be prompted for. Also, a copy of
149the server
150.Pa style.css
151is installed in the user's
152.Pa static/
153directory.
154.It Cm httpd Ar basedir
155Starts the daemon.
156.It Cm queue Ar basedir Ar uid
157Processes the output queue of the specied user, sending all
158enqueued messages and re-enqueing the failing ones. This command
159must not be executed if the server is running.
160.It Cm update Ar basedir Ar uid
161Enqueues a user information Update message to all followers.
162.It Cm passwd Ar basedir Ar uid
163Changes the password for a user (interactive).
164.It Cm follow Ar basedir Ar uid Ar actor
165Sends a Follow message for the specified actor URL.
166.It Cm unfollow Ar basedir Ar uid Ar actor
167Sends an Unfollow message for the specified actor URL.
168.It Cm mute Ar basedir Ar uid Ar actor
169Mutes an actor for the specified user. This is the most important
170command for the Fediverse. The user will no longer receive nor
171read another activity from the specified moron.
172.It Cm unmute Ar basedir Ar uid Ar actor
173In case a muted moron is no longer a moron, it can be unmuted
174this way. This is the least used command ever.
175.It Cm like Ar basedir Ar uid Ar url
176Enqueues a Like message for a post given its url.
177.It Cm announce Ar basedir Ar uid Ar url
178Enqueues an Announce (boost) message for a message post its url.
179.It Cm request Ar basedir Ar uid Ar url
180Requests an object and dumps it to stdout. This is a very low
181level command that is not very useful to you.
182.It Cm note Ar basedir Ar uid Ar text
183Enqueues a Create + Note message to all followers. If the
184.Ar text
185argument is - (a lonely hyphen), the external editor defined
186by the EDITOR environment variable will be invoked to prepare
187a message.
188.El
189.Sh ENVIRONMENT
190.Bl -tag -width Ds
191.It Ev DEBUG
192Overrides the debugging level from the server 'dbglevel' configuration
193variable. Set it to an integer value. The higher, the deeper in meaningless
194verbiage you'll find yourself into.
195.It Ev EDITOR
196The user-preferred interactive text editor to prepare messages.
197.El
198.Sh SEE ALSO
199.Xr snac 5 ,
200.Xr snac 8
201.Sh AUTHORS
202.An grunfink
203.Sh LICENSE
204See the LICENSE file for details.
205.Sh CAVEATS
206Use the Fediverse sparingly. Don't fear the mute button.
207.Sh BUGS
208Plenty. Some issues may be documented in the TODO.md file.