microhive.social is a Fediverse instance that uses the ActivityPub protocol. In other words, users at this host can communicate with people that use software like Mastodon, Pleroma, Friendica, etc. all around the world.
This server runs the snac software and there is no automatic sign-up process.
Specifically, snac respond differently to 404 and 410 HTTP status messages by not retrying, because they somewhat explicitly say that a resource is no longer available; a 403 status may be a transient error related to RSA keys not being up to date, so it's requeued, and all 5xx (server) messages are also always retried, because they are usually temporarily fallen or overwhelmed servers that deserve another oportunity.
https://it-notes.dragas.net/2025/01/29/improving-snac-performance-with-nginx-proxy-cache/
#HowTo install & run #snac on #FreeBSD - run your own #ActivityPub instance in the #Fediverse!
In the last days I often got asked about #snac / #snac2 as an alternative to #Mastodon and I can highly recommend it! I few months ago, I already wrote a HowTo about setting snac up on a FreeBSD instance - might be worth to share again :) if you’re using snac, you might also want to use my relay service at https://fedi-relay.gyptazy.com to make your posts more visible in the Fediworld.
#opensource #fediverse #fediworld #alternatives #community #FreeBSD #RUNBSD #BoxyBSD #activitypub #mastodon #relay #community #federated
https://gyptazy.com/install-snac2-on-freebsd-an-activitypub-instance-for-the-fediverse/
Relays in general are already available for a longer time and there’re also many ones available. My relay instance is new - it popped up of an idea when I saw many new #snac instances and someone showed relay links. I wouldn’t have thought that my relay instance would grow that quick, so I’m happy to see this gets appreciated by the community :)
Regarding your first point (saving a thread for later replying or reacting): I use bookmarks for that.
Regarding the page reloading after actions, I'm afraid it's not possible without the use of JavaScript, which is a no/no for this project. The action requires a trip to the server, and a response back with the same (or the most similar) content you were previously shown.
And with regard the mark of "below this line, you've already seen this": it has been on my mind for long time, but due to implementation details, it's trickier than it seems. I will implement it eventually, because it's something that I deeply need 😆
Thanks for taking a chance on #snac.
Anyway, and because some users asked for it, you can share your own metrics to others. It's disabled by default; you can find a toggle in your user settings.
I hope you enjoy snac.
I'm glad you like it, thanks!
Just a few days ago, I lunched my new relay service for the #Fediverse and I'm really happy to see that there're already many ones connected to - more than 50 instances in just a few days!
But what makes me even really happy is to see, that my service [2] also gets linked in the release notes of #snac [1] / #snac2 - and I can recommend the usage of relay services (it doesn't matter which one!) to everyone. It provides more content from connected instances to you, but also brings your posts - from your local instance - up to other ones within the federated network where it can get much easier distributed around other instances.
#snac is the perfect way to host an own fediverse instance. Using the #ActivityPub protocol allows you to connect to all other instances. With the integrated #Mastodon API, you can also use most of your usual clients or web clients. Snac is light, fast, does not require any database and follows the KISS way - which the most of us BSD people are living. With relay services, it's the perfect match for singe-user instances and @grunfink is always open for ideas and to help! It does not always need to be #Mastodon, #GoToSocial etc!
And if you're using any other software, you may still benefit by using relay services. And if you're still looking for a guide, howto setup snac2 on #FreeBSD, my howto [3] might help you out.
[1]: https://codeberg.org/grunfink/snac2
[2]: https://fedi-relay.gyptazy.com
[3]: https://gyptazy.com/install-snac2-on-freebsd-an-activitypub-instance-for-the-fediverse/
#community #opensource #development #coding #c #clang #homelab #hosting #BSD #RUNBSD #Howto
I've previously used #snacizens, but #snacsters also sounds great 🙂
Added support for subscribing to LitePub (Pleroma-style) Fediverse Relays like e.g. https://fedi-relay.gyptazy.com to improve federation. See snac(8)
(the Administrator Manual) for more information on how to use this feature.
Added support for following hashtags. This is only useful if your instance is subscribed to relays (see above).
Added support for a Mastodon-like /authorize_interaction
webpoint entry, that allows following, liking and boosting from another account's Mastodon public web interface. To be able to use it, you must reconfigure your https proxy to redirect /authorize_interaction
to snac (see snac(8)
).
Some fixes to accept Event
objects properly (like those coming from implementations like https://gancio.org/ or https://mobilizon.fr).
Added some caching for local Actor
objects.
Hashtags that are not explicitly linked in a post's content are shown below it.
Fixed broken NetBSD build (missing dependency in Makefile.NetBSD).
The user profile can now include longitude and latitude data for your current location.
Mastodon API: implemented limit= on notification fetches (contributed by nowster), implemented faster min_id handling (contributed by nowster), obey the quiet public visibility set for posts, other timeline improvements (contributed by nowster).
Reduced RSA key size for new users from 4096 to 2048. This will be friendlier to smaller machines, and everybody else out there is using 2048.
If the SNAC_BASEDIR
environment variable is defined and set to the base directory of your installation, you don't have to include the base directory in the command line.
Fixed a bug in the generation of the top page (contributed by an-im-dugud).
Added support for Markdown headers and underlining (contributed by an-im-dugud).
If you find #snac useful, please consider contributing via LiberaPay: https://liberapay.com/grunfink/
This release has been inspired by the song Nine Hundred Miles by #BarbaraDane.
On the other hand, the FediBuzz concept has the benefit that you only receive those posts you are interested in and not a firehose of data (most of it probably of no interest for you), which is a huge benefit if you have bandwidth restrictions.
I've followed the #FreeBSD hashtag for now and will see what happens. One thing that does come to mind is that you now have a user called relay
that doesn't actually seem to do much other than follow the actors ????
Do I now have to follow my relay or is this something that the snac server takes care of ???
Also is it a good idea or can the relay
user follow multiple relay actors ??
greeting.html
page. Started thinking I'd messed up my nginx reverse proxy config somehow but couldn't see anything wrong. So decided to bypass the reverse proxy and use curl
on my snac instance to prove that it was snac that was the issue. Anyway reported and a fix has been found by another snac user which I tested and @grunfink@comam.es pushed an update.CC: @mms@bsd.cafe
Thanks for providing this service and also this information. At this point, we can only say - thank you very much for your time, efforts and money you put into this service @stefano. At this point I also want to bring up the great work of @grunfink for his incredible work in the #snac / #snac2 project. Snac became the perfect solution for single user instances but also project related instances in the fediverse. Kudos, to both of you and thank you both very much! You both are doing a great job!
I submitted a Pull Request to update MacPorts' snac to 2.68 here:
https://github.com/macports/macports-ports/pull/27332
GitHub Continuous Integration checks are running (two out of three completed successfully, which is a good sign, here's hoping the last one has no issues as well).
As usual, it's up to someone else with commit access to merge it.
#snac #MacPorts #OpenSource #ActivityPub #Mastodon #NoDatabaseNeeded
#NoJavaScript #NoCookiesEither #NotMuchBullShit #snacAnnounces
Fixed regression in link verification code (contributed by nowster).
Added ipv6 support for the https frontend connection (contributed by hb9hnt).
New "Like by URL" operation (contributed by dheadshot).
Added support for a Mastodon-like /share
link sharing URL, like the one provided by sites like https://mastodonshare.com/ and such. To be able to use it, you must reconfigure your https proxy to redirect /share
to snac (see snac(8)
).
New linux landlock (sandboxing) support for enhanced security (contributed by shtrophic). It's still a bit experimental, so you have to enable it explicitly by recompiling with the WITH_LINUX_SANDBOX directive (e.g. make CFLAGS=-DWITH_LINUX_SANDBOX
).
Some search fixes regarding repeated matches.
The export_csv
cmdline operation now exports the CSV files inside a user's export/
subdirectory instead of the current directory.
All CSV files to be imported must now be stored inside a user's import/
subdirectory instead of the current directory.
Mastodon API: more timeline paging tunings (contributed by nowster), post language selected in apps is properly set.
The command-line operation note
new reads the LANG
environment variable to set the post's language.
A new command-line operation, note_unlisted
, allows posting "unlisted" or "quiet public" posts.
The maximum number of entries in users' RSS feeds and in outboxes can now be set via the max_public_entries
variable in the server.json
file.
Fixed broken support for Audio
objects.
Made xmpp and mailto URLs clickable.
If you find #snac useful, please consider contributing via LiberaPay: https://liberapay.com/grunfink/
This release has been inspired by the painting Judith Slaying Holofernes by #ArtemisiaGentileschi.
"FediMeteo brings real-time weather updates to the Fediverse, covering cities across Austria, Belgium, Finland, France, Germany, Hungary, Ireland, Italy, Latvia, Netherlands, Poland, Portugal, Spain, Switzerland and the United Kingdom (with more regions coming soon!).
Using the power of #ActivityPub and the simplicity of #snac, FediMeteo posts accurate forecasts and updates directly to your favorite social platform. "
https://github.com/macports/macports-ports/pull/27188
Two of three GitHub Actions Continuous Integration checks passed, which is a good sign; hopefully the others will pass without issues.
As usual, it's up to others with commit access to merge it!
Thanks again for your and others' continued improvements to snac! Specifically I noticed shout outs to nowster and Shamar in the RELEASE_NOTES.md and I seem to recall watching the discourse about the PID locking suggested and discussed rather collaboratively too!
(My apologies for the delay. The Makefile was slightly modified, which in turn broke the $files/Makefile.patch applied by MacPorts so I needed to rework that which took me a bit longer than usual given other work obligations I have had today.
Though not a concern for upstream, for MacPorts users I also noticed the following warning when running % port test:
"Warning: violation by /opt/local/man
Warning: snac violates the layout of the ports-filesystems!
Warning: Please fix or indicate this misbehavior (if it is intended), it will be an error in future releases!"
Though, it appears as if the man pages are where I think they should be for MacPorts? I have never seen that Warning before, so my guess is something about MacPorts intended prescriptive behavior has been changed but I am not exactly certain what the expected behavior is supposed to be now? I will look into it further, but hopefully it isn't a concern for users at the moment; just thought I would mention it for the sake of being thorough!
However, it's entirely possible I messed something up too; so if others with greater wisdom than I see that Warning and know what to do to correct it, or if they encounter any other issues with MacPorts' snac, others are more than welcome to submit Pull Requests with improvements! Or feel free to open up an issue on MacPorts Trac instance at https://trac.macports.org and I'll look into it.)
#snac #MacPorts #OpenSource #ActivityPub #Mastodon #NoDatabaseNeeded
#NoJavaScript #NoCookiesEither#NotMuchBullShit #snacAnnounces
The search box also accepts post URLs; the post is requested and, if it's found, can be interacted with (liked, boosted, replied to, etc.).
IP addresses for failed logins are tracked and throttled to mitigate brute force attacks (see snac(8)
for more information).
Fixed a bug regarding repeated attachments when editing a post.
Mastodon API: Improved timeline pagination in some clients (details: an HTTP Link
header has been added), fixed missing audio attachments, fixed an incorrect value for the bot
field in newly created accounts, fixed a crash, implemented markers (contributed by nowster).
When running in server mode, the pidfile is locked to avoid concurrent running of the same server instance.
Added documentation and some tweaks to enable static compilation with musl (contributed by Shamar).
If you find #snac useful, please consider contributing via LiberaPay: https://liberapay.com/grunfink/
In the northern half we'll celebrate #SolInvictus by listening to the song One Perfect Sunrise by #Orbital.
https://www.tesio.it/2024/12/18/how-to-run-your-own-social-network.html
1) add to server.json an option to configure a folder where to write logs (or at least to save them in a dedicated folder in base dir) instead of standard output. Within such folder, I'd name them after the start date of the server (e.g. snac_2024-12-13.log). When the option is not defined, I'd preserve the current behavior (log to stdout).
2) when running as a server, acquire an advisory lock on the pid, and if you cannot acquire the lock, just exit because someone else is still handling requests for that basedir.
max_id
nor since_id
fields to paginate, only a limit
field of 40.Regarding the other issue, snac do support Mastodon API pagination. Many apps do this correctly, like Tusky, Fedilab or semaphore.social, so you can travel the full timeline. Other ones only request the first page, I don't know why.
CC: @nowster@fedi.nowster.me.uk @justine@snac.smithies.me.uk