So uh, apparently $288/year is not enough to run a Mastodon service for ~3 users, and this is a known issue (https://masto.host/mastodon-content-retention-settings/) with no solution (https://github.com/mastodon/mastodon/discussions/19260)?!

I just want to own my identity. On Bluesky, it takes a TXT record and a did:plc rotation key. A PDS takes like $25/yr. For $300/yr you can run a whole-network relay.

Also, it's unclear if I can move to non-Mastodon software without losing all my posts, despite owning the domain??

And this ecosystem sneers at atproto?

@filippo Pleroma/Akkoma are more lightweight if that helps
@buherator I can migrate to Pleroma/Akkoma without losing my posts?
@filippo Last time I checked you couldn't even migrate post between instances running the same software... I'm not sure if this is only a limitation when you'd transfer posts between remote servers and you could just vibe code a DB migration script, or there's some fundamental limitation of how posts are referenced in the network.
@filippo @buherator I'd check out GoToSocial (extremely lightweight: https://gotosocial.org/). It can import posts too (courtesy of Slurp - https://docs.gotosocial.org/user_guide/importing_posts/)
@filippo we might sneer for different reasons though. And we might sneer at Mastodon also, because they don't deserve their ecosystem leader position. :)
@filippo migrating a db scheme from a backend to another have never been the priority of any fedi backend dev
it exists some greatly outdated migration scripts made by people along the years
also, mastodon is a pretty resource hungry piece of software, almost all other options are much lighter (specia mention to GoToSocial for being headache-free)
@filippo gotosocial, and there’s a migration tool (link forthcoming)

@filippo https://codeberg.org/vyr/slurp

Doing the manual key migrations will be tricky, but it’s doable

slurp

tool for exporting data from and importing data to Fediverse instances

Codeberg.org

@filippo It's apparently not recommended to put a different mastodon solution on the same domain as a previous one. That said, I run a mostly vanilla masto instance here at home. I have a 128gb hdd for attachments, mounted at /home/mastodon/live/public/system (and containing the cache directory). I also run a script to clear out data more than ~14 days old. This all runs on a USFF optiplex from 2012 or so.

If you can't get a static IP, some sort of dyndns solution will do just as well - all you need do is find a cheap VPS that costs no more than £3 a month or so and do your forwarding from it.

@filippo Moving to non-Mastodon software can break a federation as well where you might be lost completely.

I have the same misunderstanding in the design of Mastodon.

Why don't they support resolving the instance by DNS? It would give a chance to have a mastodon instance outside of the main domain. I don't want to expose an ActivityPub data on the main domain, the domain is not related to my Social Media.

Having a unique domain/subdomain for Mastodon makes no sense at all as well. The idea of having domain is to have many underlying services there. We don't need to create unique domains for:
- website
- XMPP
- Email
- etc.
It should be one domain with all those identity services behind it.

It would also give a simpler change to have multiple identities on the same instance. Just like email.

We'd pay some subscription to a public instance (that already have all of those caches/huge db/etc.), with our domains.

As a result, you don't own infra, but you own your identity. If you want to migrate, just switch to another instance (obviously subscribers and posts might require some process).

Most importantly, it would not cost any more for mastodon.social, for instance, to give you a chance to point your domain's identity there.

You should not self-host it, it's too expensive for small batch of users (due to caches, reading history, media, etc.

#mastodon

@filippo welcome to the world on inefficient Ruby-on-Rails apps that overgrow their scope, Sidekiq jobs that flush like they need to scrape the whole Internet, abuse of Redis caching and Postgres databases treated like dumpyards 🙂

I gave up self-hosting Mastodon a few years ago for these very reasons (among others related to their development processes).

I’ve been hosting Akkoma since then and I’m overall very happy. It supports things that Mastodon never implemented too (custom maximum number of characters and profile fields, Markdown and BBcode, custom emoji reactions…). It’s just probably not for the faint of heart, the configuration is a big Elixir script file (and the project itself is written in Elixir), the documentation is not always polished and it may require you to get your hands a bit dirty. But on an instance like mine with a lot of peers it still doesn’t eat up more than 1-2 GB of RAM, and CPU and storage are under control.

For a self-hosting single-user solution with lower entry barriers, GoToSocial is another popular option (but it may not be as feature-rich as Pleroma/Akkoma).

And if you want to stick more to the blogging format, WriteFreely and Madblog are popular options (but of course I may be a bit biased here, being both projects I’ve either contributed to or kickstarted).

Just one little thing to keep in mind: if you have a lot of followers, you follow a lot of people or you joined some high-traffic relays, your storage may also degrade over time. Your db may permanently store a lot of activities and events that you may not even ever see. It’s usually a good practice to schedule object prune/compaction crons on your instance regardless of the software you use.

@filippo p.s. unfortunately you can’t migrate your posts. That’s something that has never been implemented on ActivityPub (and it’s an implementation nightmare too because created objects are permanent and you can’t modify their author).

But you can migrate your account and your followers. This has been implemented in a quite solid way through the movedTo notifications, and usually most of the servers know how to process them.

You can also reuse the same domain and handle (I did so recently when migrating my blog from Writefreely to Madblog), but just pay a bit of attention and look out for federation issues. Keep a copy of your current instance’s private key, and if possible reuse the same key also on the new instance.

@filippo Where can you rent an instance for ~$2/month?
@filippo you surely know more than me on the topic, but I hear people saying that it is not even possible to migrate the same domain to another software due to the crypto keys. any migration leaves your posts behind.

@filippo
I run an instance with two power users and a dozen others for $30CAD a year. If you get creative and don't mind fiddling with servers, you can easily run Mastodon proper for less than a PDS.

Fiddling with the software can be annoying, hence why many people outsource the task to managed hosting. Of course, now someone else controls your infrastructure and can charge what they want.

As for old posts, GoToSocial/Pleroma should be able to import them without issue. But ActivityPub encourages hard-wired URLs in posts, which can make cross-software migration tricky if you keep using the same domain. GoTo doesn't include a web front end, and Pleroma has a different URL scheme IIRC. It's easy to break access to you old messages.

@filippo I moved my single user instance from Mastodon to GoToSocial then used the recommend tool to migrate all my previous posts.

https://docs.gotosocial.org/en/v0.21.2/user_guide/importing_posts/
Importing posts from previous instances - GoToSocial Documentation

None

@filippo I’m running my own #ActivityPub instance built in pure PHP with an SQLite database, hosted on a shared server that costs around €1/month. Having complete identity and sovereignty in the #Fediverse is very cheap. In contrast, #Bluesky is not truly decentralised and you do not have full sovereignty over your data. For a Fediverse instance with few users, it is best to look for a solution other than Mastodon, such as GoToSocial, or to build your own solution (as I did).
@filippo @jerry do you offer mastodon as a service (maas)?
@filippo how confident are you that you truly own your identity after you've done that though? Would you still consider the setup just as useful if you ended up being permanently banned from being able to interact with 99% of users on ATproto because a single corporation decided you're not worth including? Because that is absolutely something that can still happen even if you plunked down the $10k/yr that you'd need to run the full ATproto stack for microblogging.

@filippo

Unless someone is offering managed PDS for $2/month, the comparison is not really fair, is it?

Anyways, if you are willing to accept working with beta-level software, soon (TM) I will be offering hosting for https://activitypub.mushroomlabs.com, which will bring down the operational costs of smaller instances (because it allows multiple domains to share the same infra)

Django ActivityPub ToolKit

@filippo it’s low hanging fruit that needs the right person to just step up and fix.

I’ve been begging for a while https://shlee.fedipress.au/2024/call-to-action-fediverse-media-server/

@filippo I don't think I've seen people sneer at atproto.
I've seen them sneer at Bluesky plenty, but not the protocol itself.