mastodon / mastodon

Your self-hosted, globally interconnected microblogging community
https://joinmastodon.org
GNU Affero General Public License v3.0
47.17k stars 6.99k forks source link

Allow instances to declare patches / additional features #22902

Open unknownconstant opened 1 year ago

unknownconstant commented 1 year ago

Background

Mastodon has a clear vision for what this project should be and for standard features. This doesn't always align with how other people want to use a social network. This has resulted in a number of forks and patches floating about with additional features which aren't in the standard version.

While from a licensing perspective, being FOSS this is ok, from a branding perspective this adds confusion as some instances support formatted posts, others search, others translation, etc. It's not clear to a user joining a server which features are enabled from vanilla mastodon, and which patches (if any) are layered over the top of that. Some branches (glitch-soc) append a suffix which helps identify a set of features, but doesn't help with communicating further patches or modifications on top of that.

Other features work best when federating with servers with mutual compatibility, e.g. emoji reacts

The idea of FOSS works best if people are modifying software for their own ends, but atm a user can sign up to Mastodon servers with vastly different feature availability and there's no standard way of seeing what those differences actually are.

Suggestion

trwnh commented 1 year ago

I think the current workflow around declaring patches is to publish your own fork of Mastodon and set the source URL to that fork. See https://docs.joinmastodon.org/admin/config/#source_base_url for more info

unknownconstant commented 1 year ago

Yes, there is some functionality already there. I think there needs to be something more front and Center so people can see it at a glance.

timtfj commented 1 year ago

As a user browsing different instances I'd certainly welcome this. I'd like to see what's different about a given server the moment I visit it, in a standard format, and often I want to know whether someone who I'm talking to has a particular feature available to them.