jrollans.com 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.
html { font: 20px sans-serif; max-width: 40rem; padding: 0.4rem; }
img { max-width: 100%; border-radius: 0.4rem; }
for #snac2 i still have like a hundred lines of css, but i think i can ditch at least a half of itrcctl restart snac in crontab for now)#mastoblaster #snac #snac2 #activitypub #fediverse #ios #client
1 - snac-first by design, not "compatible by accident"
I already wrote about caching here.
Now I extended what I cache a bit.
This was because after enabling the option to proxy media, I've seen access to the file paths /x/ and /y/ in addition to the path were snac stores the media that I include in my own posts ( /s/ ).
There are two locations to proxy media, depending if you requests the media via the mastodon api or via the web. (/x/ and /y/), oh and I added the nodeinfo2.0 path too, because I've noticed it was queried all the time by a lot of instances and it gives me pleasure to see something cached handed out in the access logs. 🙂 (I guess it is actually irrelevant for the system resources)
This is the updated setup:
Enable the relevant modules:
a2enmod expires cache cache_disk
Be sure "htcacheclean" is running to clean up the old disk cache. (under debian see /etc/default/apache-htcacheclean or else the relevant systemd service or whatever)
Then add this to the httpd Virtualhost config:
<LocationMatch "^/social/[^/]+/[xys]/|^/social/nodeinfo_2_0">This will use the disk cache to cache everything under the $username/s/, /x/ and /y/ paths, as well as for the
CacheEnable disk
Header set Cache-Control "max-age=86400, public" "expr=%{REQUEST_STATUS} == 200"
ExpiresActive On
ExpiresDefault "access plus 86400 seconds"
</LocationMatch>
/nodeinfo_2_0 path, utilizing mod_expires to generate the appropriate cache headers (for lazy ones like me). In this case caching it for 1 day.The Header that I set here, on the condition of Status code 200, is needed for the path /y/, because snac set no-cache on that location and mod_expires will honor that if we don't override it. I set it to the same Cache-Control value as mod_expires would. (I use mod_expires because it will additionally calculate the date and put that in the expires header. (hence the name I guess 😀 )
#Fediverse #Hosting #ITNotes #apache2 #httpd #Ownyourdata #Server #Snac #Snac2 #Tipsandtricks #Tutorial #Debian #caching
Είναι φτιαγμένη με #snac2, στο @info@totsipaki.net , μετατρέποντας έτσι το fediverse σε κεντρική μου ιστοσελίδα.
Σχόλια ευπρόσδεκτα φυσικά.
Mainboard: Micronics Spitfire
CPU: Pentium II 233 MHz
Graphics card: S3 Trio64
Network card: RTL8139
#86box #retrohardware #retrocomputing #oldhardware #emulation #snac #snac2 #netbsd #openbsd
number of files generated by snac is huge, but i don't care that much anymore.
$ du -hd0 /var/snaci like snac a lot: i run my own server and client, i can modify css (and i do tweak it often, i can modify the source code---didn't get to that yet ;)
133M /var/snac
$ find /var/snac | wc -l
35603
sometimes i use snac command line, but mostly snac web ui and nothing else.
someday maybe i'll try to build some minimalist #activitypub server, but looks like a lot of work :)
see also
activitypub-single-php-file by @Edent@mastodon.social
OpenBSD wasn't able to run snac stable on this machine, it crashed after a few requests with "illegal instruction".
#snac #snac2 #fediverse #activitypub #NetBSD #OpenBSD #retrocomputing #retroserver #retrohardware #pentiumii #pentium2 #oldhardware
Hab mir gestern Abend mal https://codeberg.org/grunfink/snac2 aufgesetzt. Eine recht schlanker ActivityPub Server, der optional auch die Mastodon-API unterstützt.
Installation war relativ straight-forward, da man sich nicht um irgendwelche Datenbanken kümmern muss.
Das Web-Frontend ist einerseits spartanisch, aber es gibt ein paar hübsche custom CSS Files zur Auswahl.
Zugriff per Handy-App (Tusky) funktioniert auch ohne Probleme.
Das Web-Frontend hat allerdings eine bessere Thread-Ansicht.
Was irgendwie noch nicht funktioniert, ist das Anzeigen der Parent-Posts, bzw. die Antworten zu einem Thread werden auch nicht alle angezeigt. 🤔
Was spannend werden könnte, ist die Möglichkeit der Webhooks pro Account. Das lädt zum Basteln ein. 😁
i understand you need to generate a new keypair and then sign your new public key with old one and propagate to the network... how do you practically do that?
heavy traffic caused by people updating their #snac2 instances :)
@grunfink@comam.es, thanks again for snac ❤️
Which also explains the strange AP endpoints that don't help us seeing context.
It is explained in this part a bit down the website here:
https://docs.joinmastodon.org/admin/config/#disallow_unauthenticated_api_access
Hi @grunfink@comam.es
Does #snac2 do these shenanigans?
https://docs.gotosocial.org/en/latest/federation/http_signatures/
Edit: it seems it should work?
https://codeberg.org/grunfink/snac2/issues/491
First I thought it was some rejection of my instance since I changed server, but since I've noticed it happens even with instances I hadn't seen before.