james
@james@jvalleroy.me
I just learned a few important things from @renchap. Apparently the docker-compose.yml in the root of the mastodon repo is not mean to be used for development. It is meant for production deployment. That's a bit confusing, but I'll accept it.
However they have made significant improvements to the dev containers implementation after I said it didn't work. It seems much more viable now.
https://github.com/mastodon/mastodon/blob/main/.devcontainer/docker-compose.yml
@polotek thanks for the writeup!
I think I'll stick with @grunfink's snac (https://codeberg.org/grunfink/snac2)? I realize there are Docker instructions available for that too, but avoiding unnecessary layers of abstraction is a bigger win for me, every time.
@teajaygrey @grunfink
Interesting. It looks like the only reason to use docker here is to run nginx for SSL termination. I agree that feels like more trouble than it's worth. If you read my blog post, you can stick something like caddy in front pretty easily.
https://polotek.net/posts/local-mastodon-in-docker/
@teajaygrey @grunfink also, it looks like snac supports the mastodon API. But does that mean it's meant to be "mastodon compatible"? Meaning it tries to behave like a mastodon instance?
@polotek My apologies for the delayed reply!
I am AFK often and was kind of hoping someone more authoritative might chime in with regards to the Mastodon support in snac; since I am but a humble MacPorts maintainer down streaming snac.
"A simple, minimalistic ActivityPub instance" does sell snac a bit short, doesn't it?
Mastodon API support began with version 2.27, and the RELEASE_NOTES.md have more precise descriptions of the intention there than I can do justice rephrasing:
https://codeberg.org/grunfink/snac2/src/branch/master/RELEASE_NOTES.md#2-27
TL;DR, I think snac's Mastodon API support is there primarily to facilitate interoperability with other Mastodon-centric ActivityPub implementations and clients, e.g. @Tusky, @husky, FediLab (https://toot.fedilab.app/@apps), etc. It even supports @peertube videos as of version 2.46!
I admit, I don't have a lot of bandwidth to test all of that functionality myself, but I would guess from reading release notes that snac contributors may be testing a wider range of Mastodon clients than @Gargron ?
MacPorts does a lot of the heavy lifting from my end to test on older OSes and platforms for snac than I run personally, and the Port Health https://ports.macports.org/port/snac/details/ shows it building without issues going all the way back to OS X Snow Leopard.
Though I know @flexion tested compiling snac on IRIX vintage SGI hardware, and I'm guessing it even has a decent chance of building on much older systems with appropriate C compilers?
Out of curiosity, do you have a way of measuring the disk space utilization from your local Mastodon setup in Docker? I realize it's probably a bit of a challenge since multiple Docker instances were used if I read your write up correctly?
Food for thought: an aarch64/Apple Silicon compiled snac binary for version 2.53 is: 344520 bytes (345KiB).
Albeit that isn't representative of all the dependencies used to build it but even then I am guessing it's much lighter on resources than mainstream Mastodon + Docker, etc.?
I already provide ready to use binaries for some systems:
#FreeBSD 14: https://cdn.gyptazy.ch/files/riscv64/freebsd/snac/
#Debian 12: https://cdn.gyptazy.ch/files/riscv64/debian/snac/
#Ubuntu 23.10: https://cdn.gyptazy.ch/files/riscv64/ubuntu/snac/
(Also works on Ubuntu 24.04).
CC: @teajaygrey@rap.social @polotek@social.polotek.net @Tusky@mastodon.social @husky@stereophonic.space @Gargron@mastodon.social @flexion@oldbytes.space @grunfink@comam.es @peertube@framapiaf.org
It has been the easiest Web-facing service I had to setup in many years.
It would be really nice if it could reach Bookworm through the backports repository, that would make it much more widely available.
CC: @gyptazy@gyptazy.ch @teajaygrey@rap.social @polotek@social.polotek.net @Tusky@mastodon.social @husky@stereophonic.space @Gargron@mastodon.social @flexion@oldbytes.space @grunfink@comam.es @peertube@framapiaf.org
CC: @gyptazy@gyptazy.ch @teajaygrey@rap.social @polotek@social.polotek.net @Tusky@mastodon.social @husky@stereophonic.space @Gargron@mastodon.social @flexion@oldbytes.space @grunfink@comam.es @peertube@framapiaf.org
CC: @gyptazy@gyptazy.ch @teajaygrey@rap.social @polotek@social.polotek.net @Tusky@mastodon.social @husky@stereophonic.space @Gargron@mastodon.social @flexion@oldbytes.space @grunfink@comam.es @peertube@framapiaf.org
CC: @gyptazy@gyptazy.ch @teajaygrey@rap.social @polotek@social.polotek.net @Tusky@mastodon.social @husky@stereophonic.space @Gargron@mastodon.social @flexion@oldbytes.space @grunfink@comam.es @peertube@framapiaf.org
FreedomBox 24.6 released to Debian (unstable) with several fixes related to the setup, uninstall, and backup/restore for Wordpress and Zoph apps.
https://discuss.freedombox.org/t/freedombox-24-6-released/2982
"Serial" can refer to either RS232 or TTL (and possibly others). And in my case, none of the documentation bothered to specify which one to use.