I don't think moving to a new software is a good idea.
The problems you are mentioning can be solved without such a big change:
We are using Gitlabs internal container registry
This is available for all offerings: https://docs.gitlab.com/ee/user/packages/container_registry/
We are using Gitlabs Service Desk to manage inbound mails regarding open.audio
This is available for all offerings: https://docs.gitlab.com/ee/user/project/service_desk/
I doubt there is no good open source alternative out there.
We are using Gitlab Pages to serve static pages
This is available for all offerings: https://docs.gitlab.com/ee/user/project/pages/
Using a simple web server could also do the job.
gcrk On the one hand Gitlabs usage of resources is growing with every release and hosting it gets more and more expensive while the responsiveness and performance of Gitlab declined over the last months. We were constantly increasing the resources for our Gitlab VM, right now its by far the most expensive tool we host in terms of CPU, memory and io-load. Since we are a software development team, this is somewhat expected and alright. However, Gitlab is constantly growing, adding more services and clearly aims huge deployments with hundreds or thousands of developers, and we are not the target group.
I think you can disable the features you don't need, and do some optimization. Cleanup up spam users and mining project could also do some good.
gcrk quite some security features behind their proprietary versions. This is also true for the approval system we implemented in order to make merging of changes less depended on single, over powered maintainers. Right now Gitlab grants us a free Ultimate license, however this is always granted on a yearly base and might stop at any time. However, we are unable to pay for the ultimate licenses, which brings us in a bad position. If Gitlab decides to stop their free Ultimate licensing for open source projects, we have to either do without the features we currently depend on or get ourself a huge bunch of funding in order to pay for t
Another important aspect is that we rely heavily on Gitlab Ultimate. Gitlab hides quite some security features behind their proprietary versions. This is also true for the approval system we implemented in order to make merging of changes less depended on single, over powered maintainers.
I doubt you cannot have a similar approval workflow with the free offering of GitLab. Could you define what is currently in use and only available in ultimate ?
A few words about self hosting: I think its a great strength of the Funkwhale Collective that we basically host all the infrastructure we need to build Funkwhale on our own. This makes us independent from everyone, even though we need to spend some resources on this. So I am in favor of a self-hosted solution and moving to Gitlab.com would only mitigate a small portion of the problem anyways.
If self-hosting is a pain, the project could migrate to a shared GitLab instance and maybe share the costs. This would be a more acceptable change, as you won't break the entire ecosystem relying on GitLab.
There are many out there that would probably be really happy to host the Funkwhale project. I assume you want a European based instance? Maybe https://framagit.org/ is an idea? Maybe the CCC has a global instance?
I could add some more points, but I think there is already some points to clear before going further.
Cheers!
MORE:
https://docs.gitlab.com/omnibus/settings/memory_constrained_envs.html
https://www.chatons.org/search/by-service?field_software_target_id=284