It must be pretty rare that people are willing to change after they have been using it for a while and we depends on GitHub actions. Like a soft lock-in.
Edit: not saying that GitHub is not the best choice.
It must be pretty rare that people are willing to change after they have been using it for a while and we depends on GitHub actions. Like a soft lock-in.
Edit: not saying that GitHub is not the best choice.
Would something like Gerrit have any advantages for us?
I would love to use Gerrit, however I don’t know how many maintainers would be willing to migrate to it.
for context: myself and @coded host our own Gerrit instance and use it for our personal projects. I also have experience from other projects… but that means I know firsthand how difficult it is to get people who are used to the GitHub workflow to contribute using Gerrit. Something like Forgejo is a much smaller jump
+1 on gerrit. I miss the critique/ gerrit review workflow…
somewhat similar to the concerns raised by the OP of Aux Name Enhancement, not using github will seriously hurt search engine discoverability of aux
I know you mentioned codeberg but I’ve always personally had issues with them. And I didn’t need to go far I just opened the website and error.
FWIW (which is not much), I will try to contribute actively to aux as long as there’s some way to contribute without needing a Microsoft (github) account.
Having an opportunity for a fresh take on the tooling sphere is one of the biggest appeals to me of a fork.
I find it a weak take to define politics & community as priorities & then pick a status quo forge for SEO & free only as in gratis reasons. If you think munitions & martial law projects are bad for humanity, wait til you see the poverty & environmental destruction done the capitalist class who put their profits above all else. A lot of projects were caught holding the bag when Microsoft purchased GitHub in 2018 since they already had their community centered around the proprietary platform along with other tooling that caused as soft lock-in but also now exposed all of their members to the ToS, data collection, & rules of a US-based, publicly-traded megacorporation. Some left, especially those with strong commitments to “free software” or adjacent movements, but many didn’t because folks underestimate how much work it is to leave your primary forge when you’ve already been committed to it.
Reasons to consider other forges:
I would hope for a more radical approach to define the beliefs of the project. For the LLM reasons, if a MS GitHub mirror had to exist, it should be read-only with disabled issues, pull requests, discussions, projects, wiki, & sponsorship (Microsoft takes a cut of this). Ideally even contributions to this project wouldn’t require creating an account with with Forgefed on the horizon, mailing lists, etc., but these can be tough problems to solve that shouldn’t get in the immediate way. Nixpkgs is the only real reason I still have an account & I would probably finally delete my Microsoft GitHub account if I could contribute to a project with the technical philosophy of Nix but could contribute somewhere where the tools align with my values.
I think the general consensus is that we all want to migrate away from github, but it can’t exist without it. The activity of nixpkgs alone would cripple any alternative software hosting. It’s a finance problem, not one of philosophy. If we stuck to our guns with not choosing github, then we might as well close our doors now because it just can’t exist. Of course, the talks with codeberg are still happening, but I’m pointing out that github is seen as a necessary evil.
We’re definitely have going to consider these political issues and demonstrate that we can come to a friendly consensus on them, or else we’ll end up being too similar to nix. I’m very confident that we can do this.
(Also, IMO, @toastal’s specific points are all correct. I’d be fine with a compromise solution though.)
I think the general consensus is that we all want to migrate away from github
I wish I could agree but when I speak this argument now know I’m not talking alone. One of the greatest things about GitHub is how many people already have accounts there and how many people have been contributing to nixos over there already. Why should we have to move them just because we have a new forge. But also some of the major concerns from people on the original announcement post was to stay on GitHub.
The biggest concern for myself though is UI. Gitlab has horrible ui in my experience but can be worth it for their CI/CD. Forgejo/gitea is a solid choice and like wise GitHub. But the biggest no for me would be something like sourcehut.
The workflow that goes thru MS GitHub for Nixpkgs is so, soo flawed tho. I’m not sure what the solution here is, but it’s not a good workflow that gets incredibly bogged down & reviews takes weeks to merge & another week for Hydra to build. It would be nice to see if someone has been working some other patch-based workflow like a mailing list, but, like, a UX that isn’t intimidating or flawed in different ways. There is a lot of room for improvement.
I agree my language was too strong, I should have been more conservative in my wording. More input from more people should be had, but I remain skeptical on the practicality. I think my dream scenario is that its hosted on the fediverse, so we can all use the frontends we want to. I also have some issues with github with respect to inclusion – I think that anonymous PRs would be a great addition and that’s currently not on github.
@toastal, what about it is flawed? To me, it seems an organizational issue, not a platform one.
GitLab is not just slow, but also owned by VC money & publicly-traded on the NASDAQ while have the ‘eh’ open-core model as well as now trying to sell its AI model thingy. But at least you can self-host it.
Aside the organizational issues of monorepo you are probably alluding, the UI/UX for the pull request model are optimized for telling folks what to do in comments instead of maintaining & merging. For instance, I saw someone suggest swapping two lines of code in the review for the contributor which took a week to get that rebased & re-reviewed instead of the maintainer saying “good job” & fixing that nit themselves as the base logic wasn’t flawed, just a stylistic issue. This back & forth wasted folks’ time & slowed the merge as the maintainer was a reviewer, not a maintainer (IMO). Additionally, it becomes very difficult to work with patchsets that depend on other patchsets in review but unmerged which also slow the process along with the merge conflicts that arise when patches are out of order (insert something about “patches should commute”).
So this seems to be another argument in favor of something like Gerrit. Maybe we should start a poll.
What options do we think are feasible? So far I’ve seen
(& some discussion that suggests Forgejo and also seems to conclude that it’s unlikely to be workable). Is this correct? Are there any more options before we make this poll?
I think the issue with a poll right now is that we haven’t fully weighed our options yet. I would vote for Forgejo but I’ve resigned myself to github. I’d like to see more discussion on the viability of different platforms first before we poll.
I agree that it’s too early for a poll, unless we want to have an extremely non-binding poll just for fun.
(I had second thoughts)
I think it might make sense to have a poll to check that we take @toastal’s points seriously, with one of the options being “We will mainly use github at first but we will work towards making its use non-mandatory”.