From 30b47a716fb02221cbffa4f91d1859ed9c450881 Mon Sep 17 00:00:00 2001 From: grunfink Date: Wed, 28 May 2025 09:15:18 +0200 Subject: Updated documentation. --- doc/snac.8 | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc') diff --git a/doc/snac.8 b/doc/snac.8 index 1537f89..729848d 100644 --- a/doc/snac.8 +++ b/doc/snac.8 @@ -277,6 +277,9 @@ the usual one, like in smtp://mail.example.com:587. .It Ic smtp_user .It Ic smtp_password To be filled if the SMTP server defined by the previous directive needs credentials. +.It Ic rss_hashtag_poll_hours +The periodic number of hours hashtag RSS are polled (default: 4). It has a minimum +value of 1 to avoid hammering servers. .El .Pp You must restart the server to make effective these changes. -- cgit v1.2.3 From fc8e688e1b2e1685e6e32adfcde1639c008c5b28 Mon Sep 17 00:00:00 2001 From: grunfink Date: Wed, 28 May 2025 09:21:48 +0200 Subject: Updated documentation. --- doc/snac.1 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 92e30b7..a1139db 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -85,7 +85,9 @@ liked. This option opens the user setup dialog. .It Followed hashtags... Enter here the list of hashtags you want to follow, one -per line, with or without the # symbol. +per line, with or without the # symbol. Since version 2.78, +URLs to RSS feeds of ActivityPub objects are also allowed +(like e.g. https://mastodon.social/tags/bloomscrolling). .It Blocked hashtags... Enter here the list of hashtags you want to block, one per line, with or without the # symbol. -- cgit v1.2.3 From e41e5974c7943f1eb02497051ce5e8d5c5b40aed Mon Sep 17 00:00:00 2001 From: grunfink Date: Fri, 30 May 2025 19:22:43 +0200 Subject: Updated documentation. --- doc/snac.1 | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index a1139db..d9eea5d 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -410,6 +410,14 @@ You can obtain an API Token by connecting to the following URL: https://$SNAC_HOST/oauth/x-snac-get-token .Ed .Pp +.Ss Webhook for notifications +Since version 2.78, users can set the URL to a webhook that will receive +an HTTP POST with every notification (in JSON format). This can be used to +implement some automation whenever a new activity happens. The +.Pa examples/ +subdirectory contains a tiny Python program that implements an auto-follower +for every new follow. +.Pp .Sh ENVIRONMENT .Bl -tag -width Ds .It SNAC_BASEDIR -- cgit v1.2.3 From 0621742a3e7d5e56bf2f155a1f829fa2508c34a0 Mon Sep 17 00:00:00 2001 From: grunfink Date: Fri, 30 May 2025 19:37:32 +0200 Subject: Updated documentation. --- doc/snac.8 | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc') diff --git a/doc/snac.8 b/doc/snac.8 index 729848d..85d08dd 100644 --- a/doc/snac.8 +++ b/doc/snac.8 @@ -280,6 +280,9 @@ To be filled if the SMTP server defined by the previous directive needs credenti .It Ic rss_hashtag_poll_hours The periodic number of hours hashtag RSS are polled (default: 4). It has a minimum value of 1 to avoid hammering servers. +.It Ic disable_notify_webhook +Since version 2.78, users can set a webhook URL to receive notifications. Set this +to true if you don't want your users to have this privilege. .El .Pp You must restart the server to make effective these changes. -- cgit v1.2.3 From 6a233d5ba051f8018e819c0dcf5217aba66558a2 Mon Sep 17 00:00:00 2001 From: grunfink Date: Fri, 30 May 2025 19:55:36 +0200 Subject: Updated documentation. --- doc/snac.1 | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index d9eea5d..51673d4 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -127,6 +127,10 @@ standard ntfy.sh server), fill the two provided fields (ntfy server/topic and, if protected, the token). You need to refer to the https://ntfy.sh web site for more information on this process. +.It Notify webhook +If this is set to an URL, an HTTP POST will be sent to it +whenever a new notification happens (see the 'Webhook for +notifications' section below for more information). .It Maximum days to keep posts This numeric value specifies the number of days to pass before posts (yours and others') will be purged. This value overrides -- cgit v1.2.3 From 955b591a74399d48d54d52ac8899e3e70d369939 Mon Sep 17 00:00:00 2001 From: grunfink Date: Fri, 30 May 2025 20:52:15 +0200 Subject: Updated documentation. --- doc/snac.1 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 51673d4..5fcb0c6 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -417,7 +417,8 @@ https://$SNAC_HOST/oauth/x-snac-get-token .Ss Webhook for notifications Since version 2.78, users can set the URL to a webhook that will receive an HTTP POST with every notification (in JSON format). This can be used to -implement some automation whenever a new activity happens. The +implement some automation whenever a new activity happens, like autorepliers +or chatbots or whatever. The .Pa examples/ subdirectory contains a tiny Python program that implements an auto-follower for every new follow. -- cgit v1.2.3 From a136f7533d223865adec2a0794b9c290be631290 Mon Sep 17 00:00:00 2001 From: grunfink Date: Sun, 1 Jun 2025 17:07:23 +0200 Subject: Updated documentation. --- doc/snac.1 | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 5fcb0c6..d4e9af7 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -417,11 +417,24 @@ https://$SNAC_HOST/oauth/x-snac-get-token .Ss Webhook for notifications Since version 2.78, users can set the URL to a webhook that will receive an HTTP POST with every notification (in JSON format). This can be used to -implement some automation whenever a new activity happens, like autorepliers -or chatbots or whatever. The +implement some automation whenever a new activity happens, like autorepliers, +chatbots, interactive textual games or whatever. The .Pa examples/ subdirectory contains a tiny Python program that implements an auto-follower -for every new follow. +for every new follow. The JSON notification object includes the following data: +.Bd -literal -offset indent +id: a unique notification identifier +actor: the origin actor id +target: the target actor id +date: the notification date +message: the full ActivityPub action JSON object +objid: the object identifier (extracted from message, may be null) +type: the action type (extracted from message) +utype: the action subtype (extracted from message, may be null) +uid: the user identifier (account name) +basedir: the server base directory +baseurl: the server base URL +.Ed .Pp .Sh ENVIRONMENT .Bl -tag -width Ds -- cgit v1.2.3 From 4c7cc83708a0e335b383071df7594e13c5f05798 Mon Sep 17 00:00:00 2001 From: grunfink Date: Sun, 1 Jun 2025 17:19:59 +0200 Subject: Updated documentation. --- doc/snac.1 | 37 ++++++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 13 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index d4e9af7..583fe2f 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -422,19 +422,30 @@ chatbots, interactive textual games or whatever. The .Pa examples/ subdirectory contains a tiny Python program that implements an auto-follower for every new follow. The JSON notification object includes the following data: -.Bd -literal -offset indent -id: a unique notification identifier -actor: the origin actor id -target: the target actor id -date: the notification date -message: the full ActivityPub action JSON object -objid: the object identifier (extracted from message, may be null) -type: the action type (extracted from message) -utype: the action subtype (extracted from message, may be null) -uid: the user identifier (account name) -basedir: the server base directory -baseurl: the server base URL -.Ed +.Bl -tag -offset indent +.It id +a unique notification identifier +.It actor +the origin actor id +.It target +the target actor id +.It date +the notification date +.It message +the full ActivityPub action JSON object +.It objid +the object identifier (extracted from message, may be null) +.It type +the action type (extracted from message) +.It utype +the action subtype (extracted from message, may be null) +.It uid +the user identifier (account name) +.It basedir +the server base directory +.It baseurl +the server base URL +.El .Pp .Sh ENVIRONMENT .Bl -tag -width Ds -- cgit v1.2.3 From 6e26dc7e2a045168d13711b646257471cc830b17 Mon Sep 17 00:00:00 2001 From: grunfink Date: Sat, 7 Jun 2025 07:56:21 +0200 Subject: Updated documentation. --- doc/snac.1 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 583fe2f..7a1fec3 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -291,9 +291,9 @@ blocked without further inspection. .It Cm unblock Ar basedir Ar instance_url Unblocks a previously blocked instance. .It Cm verify_links Ar basedir Ar uid -Verifies all links stored as metadata for the given user. This verification -is done by downloading the link content and searching for a link back to -the +Verifies all links or account handles stored as metadata for the given user. +This verification is done by downloading the link content and searching for +a link back to the .Nm user url that also contains a rel="me" attribute. These links are specially marked as verified in the user's public timeline and also via the Mastodon API. -- cgit v1.2.3 From e4ecaea5df064189eda16859251d5b8727107179 Mon Sep 17 00:00:00 2001 From: grunfink Date: Wed, 11 Jun 2025 06:23:35 +0200 Subject: Updated documentation. --- doc/snac.1 | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 7a1fec3..f68a29f 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -24,9 +24,9 @@ For file and data formats, see .Ss Web Interface The web interface provided by .Nm -is split in two data streams: the public timeline and the -private timeline. There are no other feeds like the server-scoped -or the federated firehoses provided by other similar ActivityPub +is split in three data streams: the public timeline, the private +timeline and the instance timeline. There are no other feeds like +the federated firehoses provided by other similar ActivityPub implementations like Mastodon or Pleroma. .Pp The public timeline, also called the local timeline, is what an @@ -67,9 +67,23 @@ sent to those people you mention in the post body. If you fill this optional text field with the URL of another one's post, your text will be considered as a reply to it, not a standalone one. +.It Draft +If you set this checkbox, your text will not be sent when you +push the Post button, but stored for later modification in +the "Drafts" section. +.It Scheduled post... +This dropdown menu allows setting a date and time for the +post publication. +.It Attachments... +This dropdown menu allows uploading media attachments (images, +audio, video, etc.) to your post. +.It Poll... +this dropdown menu gives access to the voting options, that +will make your post a poll. You can set the options to be +voted, if it's a multiple choice poll and the due date. .El .Pp -More options are hidden under a toggle control. They are the +More options are hidden under dropdown menus. They are the following: .Bl -tag -offset indent .It Follow (by URL or user@host) -- cgit v1.2.3 From 74084f3d9b6423bf29766b9648320fa7c8b62d16 Mon Sep 17 00:00:00 2001 From: grunfink Date: Sun, 15 Jun 2025 09:46:15 +0200 Subject: Updated documentation. --- doc/snac.1 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index f68a29f..5e020a4 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -374,10 +374,10 @@ subdirectory of a user's directory inside the server base directory. Prints the name of the user created lists. .It Cm list_members Ar basedir Ar uid Ar name Prints the list of actors in the named list. -.It Cm create_list Ar basedir Ar uid Ar name +.It Cm list_create Ar basedir Ar uid Ar name Creates a new list. -.It Cm delete_list Ar basedir Ar uid Ar name -Deletes an existing list. +.It Cm list_remove Ar basedir Ar uid Ar name +Removes an existing list. .It Cm list_add Ar basedir Ar uid Ar name Ar account Adds an account (by its @name@host handle or actor URL) to a list. .It Cm list_del Ar basedir Ar uid Ar name Ar actor_url -- cgit v1.2.3 From 10701e56deb3594505efc5deb63a4967b6d037d6 Mon Sep 17 00:00:00 2001 From: grunfink Date: Mon, 16 Jun 2025 18:20:32 +0200 Subject: Updated documentation. --- doc/snac.1 | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 5e020a4..5dc419b 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -459,6 +459,8 @@ the user identifier (account name) the server base directory .It baseurl the server base URL +.It reply +the activity this post is a reply to (may not exist) .El .Pp .Sh ENVIRONMENT -- cgit v1.2.3 From 8985a115bab24d0b3c1fa1dd7a58d8d566098c1b Mon Sep 17 00:00:00 2001 From: grunfink Date: Mon, 16 Jun 2025 18:25:10 +0200 Subject: Updated documentation. --- doc/snac.1 | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 5dc419b..778a46a 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -459,6 +459,8 @@ the user identifier (account name) the server base directory .It baseurl the server base URL +.It account +the origin actor object .It reply the activity this post is a reply to (may not exist) .El -- cgit v1.2.3 From ce773d17d6f7f53543715acc1e5ea21b4125e19c Mon Sep 17 00:00:00 2001 From: grunfink Date: Mon, 16 Jun 2025 18:27:54 +0200 Subject: Updated documentation. --- doc/snac.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 778a46a..40f07af 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -445,7 +445,7 @@ the origin actor id the target actor id .It date the notification date -.It message +.It msg the full ActivityPub action JSON object .It objid the object identifier (extracted from message, may be null) -- cgit v1.2.3 From d362a91c4c59c06228005a9645e58a67ec038a9f Mon Sep 17 00:00:00 2001 From: grunfink Date: Mon, 16 Jun 2025 18:30:08 +0200 Subject: Updated documentation. --- doc/snac.1 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 40f07af..d0a37a4 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -448,11 +448,11 @@ the notification date .It msg the full ActivityPub action JSON object .It objid -the object identifier (extracted from message, may be null) +the object identifier (extracted from msg, may be null) .It type -the action type (extracted from message) +the action type (extracted from msg) .It utype -the action subtype (extracted from message, may be null) +the action subtype (extracted from msg, may be null) .It uid the user identifier (account name) .It basedir -- cgit v1.2.3 From 0155c794087875ad8da73b194a2d719b379ac0d9 Mon Sep 17 00:00:00 2001 From: grunfink Date: Tue, 17 Jun 2025 08:32:38 +0200 Subject: Updated documentation. --- doc/snac.1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index d0a37a4..0ab46d1 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -479,9 +479,9 @@ Overrides the debugging level from the server 'dbglevel' configuration variable. Set it to an integer value. The higher, the deeper in meaningless verbiage you'll find yourself into. .It Ev EDITOR -The user-preferred interactive text editor to prepare messages. +The user-preferred interactive text editor to prepare notes. .It Ev LANG -The language of the post when sending messages. +The language of the post when sending notes from the command line. .El .Sh SEE ALSO .Xr snac 5 , -- cgit v1.2.3 From c0a2625672a3d6181a3ce66f1c4d09101cc1a835 Mon Sep 17 00:00:00 2001 From: grunfink Date: Wed, 18 Jun 2025 09:42:35 +0200 Subject: Updated documentation. --- doc/snac.8 | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc') diff --git a/doc/snac.8 b/doc/snac.8 index 85d08dd..39081f2 100644 --- a/doc/snac.8 +++ b/doc/snac.8 @@ -283,6 +283,8 @@ value of 1 to avoid hammering servers. .It Ic disable_notify_webhook Since version 2.78, users can set a webhook URL to receive notifications. Set this to true if you don't want your users to have this privilege. +.It Ic favicon_url +The URL to a favicon. If it's not set, the default one is used instead. .El .Pp You must restart the server to make effective these changes. -- cgit v1.2.3 From 883c4b7e765a4114c00cc6a411f923a347e9e5f3 Mon Sep 17 00:00:00 2001 From: grunfink Date: Thu, 19 Jun 2025 22:40:57 +0200 Subject: Updated documentation. --- doc/snac.1 | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 0ab46d1..30bf1d4 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -320,6 +320,13 @@ subdirectory inside the user directory: .Pa blocked_accounts.csv , .Pa lists.csv , and .Pa following_accounts.csv . +.It Cm export_posts Ar basedir Ar uid +Exports all posts written by the user to the file +.Pa outbox.json +inside the +.Pa export/ +subdirectory inside the user directory. The format is compatible with the +one generated by the equivalent option in Mastodon. .It Cm alias Ar basedir Ar uid Ar "@account@remotehost" Sets an account as an alias of this one. This is a necessary step to migrate an account to a remote Mastodon instance (see -- cgit v1.2.3 From cbe18516b17112bfb7c8fee178f2c2ce422ec677 Mon Sep 17 00:00:00 2001 From: grunfink Date: Thu, 26 Jun 2025 10:44:58 +0200 Subject: Updated documentation. --- doc/snac.1 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 30bf1d4..674ef82 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -284,7 +284,7 @@ Requests an object and dumps it to stdout. This is a very low level command that is not very useful to you. .It Cm announce Ar basedir Ar uid Ar url Announces (boosts) a post via its URL. -.It Cm note Ar basedir Ar uid Ar text Op file file ... +.It Cm note Ar basedir Ar uid Ar text Op file file ... Op -r inReplyTo Enqueues a Create + Note message to all followers. If the .Ar text argument is -e, the external editor defined by the EDITOR @@ -292,10 +292,11 @@ environment variable will be invoked to prepare a message; if it's - (a lonely hyphen), the post content will be read from stdin. The rest of command line arguments are treated as media files to be attached to the post. The LANG environment variable (if defined) is used -as the post language. -.It Cm note_unlisted Ar basedir Ar uid Ar text Op file file ... +as the post language. An optional URL to a Fediverse post can be specified +for this note to be a reply to. +.It Cm note_unlisted Ar basedir Ar uid Ar text Op file file ... Op -r inReplyTo Like the previous one, but creates an "unlisted" (or "quiet public") post. -.It Cm note_mention Ar basedir Ar uid Ar text Op file file ... +.It Cm note_mention Ar basedir Ar uid Ar text Op file file ... Op -r inReplyTo Like the previous one, but creates a post only for accounts mentioned in the post body. .It Cm block Ar basedir Ar instance_url -- cgit v1.2.3 From f33fabe303ea1bfe12e61b8057f8978c0f6bafbf Mon Sep 17 00:00:00 2001 From: grunfink Date: Fri, 27 Jun 2025 06:39:41 +0200 Subject: Updated documentation. --- doc/snac.1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'doc') diff --git a/doc/snac.1 b/doc/snac.1 index 674ef82..e905610 100644 --- a/doc/snac.1 +++ b/doc/snac.1 @@ -292,8 +292,8 @@ environment variable will be invoked to prepare a message; if it's - (a lonely hyphen), the post content will be read from stdin. The rest of command line arguments are treated as media files to be attached to the post. The LANG environment variable (if defined) is used -as the post language. An optional URL to a Fediverse post can be specified -for this note to be a reply to. +as the post language. An optional URL to a Fediverse post, prefixed by -r, +can be specified for this note to be a reply to. .It Cm note_unlisted Ar basedir Ar uid Ar text Op file file ... Op -r inReplyTo Like the previous one, but creates an "unlisted" (or "quiet public") post. .It Cm note_mention Ar basedir Ar uid Ar text Op file file ... Op -r inReplyTo -- cgit v1.2.3 From 23157768d1b94b0a4147b16e5a4272bbf2de1ad5 Mon Sep 17 00:00:00 2001 From: grunfink Date: Sat, 28 Jun 2025 22:46:38 +0200 Subject: Minor CSS tweak. --- doc/style.css | 1 + 1 file changed, 1 insertion(+) (limited to 'doc') diff --git a/doc/style.css b/doc/style.css index 027fc43..5289332 100644 --- a/doc/style.css +++ b/doc/style.css @@ -1,5 +1,6 @@ body { max-width: 48em; margin: auto; line-height: 1.5; padding: 0.8em; word-wrap: break-word; } pre { overflow-x: scroll; } +blockquote { font-style: italic; } .snac-embedded-video, img { max-width: 100% } .snac-origin { font-size: 85% } .snac-score { float: right; font-size: 85% } -- cgit v1.2.3 From 7365a1aa4dbe87b3f3cf620d88448edf5fc750f2 Mon Sep 17 00:00:00 2001 From: grunfink Date: Thu, 10 Jul 2025 05:37:02 +0200 Subject: Updated documentation. --- doc/snac.8 | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc') diff --git a/doc/snac.8 b/doc/snac.8 index 39081f2..89c00b4 100644 --- a/doc/snac.8 +++ b/doc/snac.8 @@ -207,6 +207,8 @@ fields are set (see below), they are also shown. The email address of the instance administrator (optional). .It Ic admin_account The user name of the instance administrator (optional). +.It Ic title +The name of the instance (optional). .It Ic short_description A textual short description about the instance (optional). .It Ic short_description_raw -- cgit v1.2.3