Togethr: Own Mastodon-compatible decentralized social network instance
togethr.party
togethr.party
IE: If we are going to decentralize with Mastodon-style software lets actually decentralize the hardware used to host the system.
This is something I have thought about for many years. If we have small form factor computers that sell for, say, $5-$25 why not distribute pre-configured, free, open source servers on well-understood hardware^1 instead of having to test on various different hardware possibilities, not all of them well-understood, or making assumptions about what hardware people should have available. IMO, there is value in server configuration. A purchaser could choose to compile and install the software herself but having an example of a working configuration can be invaluable. For me, good examples are usually worth more than countless pages of verbose documentation. The question I have is the dollar amount of that value.
The example I have thought about in the past, rightly or wrongly, is the WRT54G and what became OpenWRT. To me, focusing on one item of hardware initially has advantages. That is generally what vendors of off-the-shelf products do. Yet with open source software, there is usually an expectation that it must work on a variety of hardware, which is likely to make things more complicated.
1. I am not implying this has never been done or that it isn't still happening.
There is of course email smtpd software that allows receiving email using only IP addresses. Email predates DNS. Two people running their own smptd's could exchange email directly using only IP addresses, without the need for DNS. But the way most people use email today, delegating total control over it to third parties, email is highly dependent on DNS.
So it's definitely an easier solution to use a managed service. BTW here is another Mastodon provider: https://elest.io/open-source/mastodon
Disclaimer: I work there
Hostman and Mastohost are among the other managed hosters of fediverse instances.
I like this vision of how things should work, but finding an ISP that _doesn't_ put a firewall for incoming connections nor use an ISP-grade NAT is challenging.
In my [limited] experience, neither tech support nor sales have any idea what any of these terms mean, so they can't advise at all.
Mastodon is very resource heavy, I couldn't get it to run on a raspberry pi 3b. Pleroma is an alternative to mastodon that is very light on resources, I'd recommend that personally.
Even if SQLite JSON isn't sufficient it could be realized with string columns for now, and indeed SQLite is recommended by Library of Congress for archival storage and used by iPhone so I think it's a solid way to expand Pleroma even if native JSON is not sufficient.
If anyone wants to pay me to do this as open source I'd jump, contact in bio. I don't know Elixir yet but am motivated and have 15+ years of dev experience in all kinds of systems, and experience in the adjacent parts.
I think the main issue of Mastodon is that its search completely reliant on elasticsearch, while Pleroma tries to go by only with PostgreSQL FTS?
1. For anything where you are mentioned specifically, or where you're a follower, the toots gets distributed automatically.
2. For anything where the toot is marked public but you are not a follower or mentioned, your instance will only receive a toot if you've explicitly configured federation of the public feed with one or more instances that is reasonably well connected.
The former is "cheap" unless you follow lots of people. The latter is like sucking on a firehose, because you get pretty much everything. If you do, it matter relatively little how large your userbase is, because you're still processing nearly every public toot.
A raspberry pi image that auto installs pleroma and you are greeted with an image within the first boot. No configs other than domain and passwords.
Try it out.
Where is it supposed to go anyway? Next to your router or into a data center?
- docker-based app store
- IPFS-based image registry
- some utilities to set up your own VPN
- a "portal" system for those applications you want to open to the public web
- webUI to manage all that.
And yes, it is meant for you to run at your home.
This gives you your own instance, which in addition to using your own domain, means you can can set the rules of the server (what kind of speech is and isn't allowed), you can boot people you don't want. You can control who gets in. you can control what other servers are blocked (i assume that is an option in pleroma too).
As a person who've had their VPS disconnected by OVH over a malicious link posted by a third-party on my service, I am very skeptical.
Additionally other instances could very well block all Togethr instances if they see abuse from customers, the same way they can block an instance if they see abuse from their members.
Blocking any given one is of course.
How is SDF funded? How can anyone be certain it will continue to be funded, if it offers a service gratis that costs the provider money to operate? Is that funding source aligned with my beliefs and interests? These are questions you don't have when you just pay for things.
Another example: I use FastMail with a custom domain. Yes, I could just use Gmail, but I don't, for the reasons listed above.
Yes, this is probably not so likely for mastodon.social or SDF, but still. It's just like getting a free email account at some random place, it could be gone every day.
I suppose it would be good to have Mastodon on my own domain, but I really don't care that much (I have had my website on my own domain for 30+ years).
Also support from humans who are paid to support you.
perhaps there is another end user in mind (like groups/organizations)
Longer answer: you need a server application of some sort in order to process the activities you receive in the inbox and send your activities out to your followers, and a database of some sort to store the follow relationships. One-direction federation is also not very feasible with static files because the follow flow involves sending activities in both directions. You receive a Follow activity in your inbox, which you must wrap into an Accept activity and send that back to the inbox of that follower as an acknowledgement.
You may want to check out epicyon or honk.
I support Elon Musk buying Twitter and charging $2/month for a verified account, etc., but I also love seeing a major uptake on Mastodon-based decentralized services.