Are there instances that run modified versions of the base Lemmy software? For example, that use their own sorting algorithms, or provide users ways to block instances or specific users, etc?
Are there communities that talk about this kind of thing? Like a LemmyForInstanceOwners community? I don’t really want to trawl through GitHub for this sort of discussion.
If one had developed code to do these things, why would one not upstream it so it’s released in core lemmy and all instances can benefit from that capability?
Speed of development. It could take months for a PR to get into Lemmy core and then a new release.
Things that get into Lemmy core have to be well thought out and the core Devs have to want them in there.
Running custom code is a way to make changes without having to get their approval, and if it proves popular enough, then maybe they’ll implement it upstream.
Not all instance owners may want all those features implemented. Not the same but kind of like how Beehaw doesn’t allow downvotes while other lemmy instances do.
In the vast majority of cases, one can support variation in admin preferences by exposing a configuration parameter. Your downvote example is perfect because Beehaw doesn’t run a customized lemmy codebase. There is a checkbox exposed to lemmy admins that enables/disabled downvotes.
Running a custom-codebase is generally the highest-hassle method of achieving some custom-config goal. The absence of communities around this approach isn’t an accident, the people who develop customizations generally try to work with the upstream unless the devs give them good reason not to.
You’re absolutely right, now that I think about it. My bad. But yeah, it makes more sense to upstream and make the features toggle-able.
No downvotes is a feature toggle by the way.