Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to Gitlab #1499

Open
theScrabi opened this issue Jun 21, 2018 · 39 comments
Open

Switch to Gitlab #1499

theScrabi opened this issue Jun 21, 2018 · 39 comments
Labels
discussion This needs to be discussed before anything is done meta Related to the project but not strictly to code

Comments

@theScrabi
Copy link
Member

theScrabi commented Jun 21, 2018

ChoCho here comes the hype train.

Well. I'm not a big fan of M$ since they destroyed a lot of services they bought in the past, and I don't trust them at all.

5b1bfd92ac1c8

I don't purpose to switch away from github that quickly (maybe not even at all), but the way I'm used to how these companies work is they promise not to change something and F*** it up just a few months later. Just look at our beloved YouTube, and their all mighty awesome new subscription thing.
However weather we switch or not is up to you.

I would be fortified and prepare, so we can switch quickly once the time comes.

Here are some proposals

gitlab.com

Pros Cons
- biggest alternative to github - veeery slow
- has a project importer that can import even the issues from github - confusing/bad UI
- centralized (runs an Azure)

git.schabi.org

Pros Cons
- verry slick - does not have an auto importer
- self hosted (runs on Hetzner) - does not support code review
- github like UI

Preperation

So I think a step in the right direction for the beginning would be to try swtich our CI to a service that supports platforms other than github.com. Apropose would be bitrise, or gitlab CI

@Grammost
Copy link
Contributor

Grammost commented Jun 21, 2018

First off, I also think that now since Microsoft bought Github, we will probably see that things change and very likely not for the better. So I support this project moving to an alternative.
In my opinion your self-hosted Gittea will be better in the long-term, only the beginning will be quite difficult due to it not having an auto importer. I also think too many people were to quick to run directly to Gitlab, just because it's the next most popular Git-Service after Github. Gitlab can be self-hosted too, which many people overlook, so it is worth looking into too.

@pabru
Copy link

pabru commented Jun 21, 2018

We could go for a mirrored approach, with git.schabi.org being the main site, and GitHub and GitLab being the mirrors. That way if any of them decide to take down the repo, the core is still within project's control. Other than having more redundancy, we also keep the benefit of people being able to discover and contribute to the code if they are coming from those more popular hosting platforms.

@theScrabi I've seen some interesting p2p git solutions appear recently. Maybe we could look into that as well?

@theScrabi
Copy link
Member Author

theScrabi commented Jun 22, 2018

We could go for a mirrored approach

This is what I would suggest anyway. Wherever we go we have to mirror.

I also realized since we use jitpack for the extractor we have to use a service that is supported by it.

@TotalCaesar659
Copy link
Contributor

@theScrabi The table about GitLab is somewhat one-sided. You write that Gitlab is "centralized (runs an Azure)", but not about that it can be downloaded and deployed to your own server. I don't propose to get one, but it has to be mentioned too, I guess.
"confusing/bad UI" - it's a relative thing, tastes differ. There interfaces don't differ so much, you get used to it. Many large projects went to gitlab: GNOME, GIMP, Inkscape etc.
The only thing I can agree it's too slow. With its web-interface. But console git works too.

@theScrabi
Copy link
Member Author

The only thing I can agree it's too slow. With its web-interface. But console git works too.

This is the biggest disadvantage I have with it. Pourly not all things can be done via cli, and even pull push is slow.

@theScrabi
Copy link
Member Author

Selfhoating gitlab was an alternative, since I witnesed that selfhosted it can get pretty fast, but then we still have the problem with jitpack

@Grammost
Copy link
Contributor

@theScrabi Isn't (self-hosted) GitLab supported by Jitpack? Or are there other issues with that? https://jitpack.io/docs/PRIVATE/#self-hosted-git

@theScrabi
Copy link
Member Author

I see, yea that would work :)

@SkyzohKey
Copy link

I use Self Hosted Gitlab CE on a day basis for work and I can assure you that it rocks waaaaaaay more than GH and isn't slower than it. The whole Git + CI + Deployments trio is a game changer to me and makes Gitlab way more elaborated & complete than GitHub for me. Give it a try you won't be deceived, trust me 😇

@theScrabi
Copy link
Member Author

GH and isn't slower than it.

Yea the selfhosted gitlab at our university is also not slow.

... Yea maybe we should consider selfhosted gitlab. @TheAssassin what do you think.

@TheAssassin
Copy link
Member

Folks, please calm down, and don't start to hastily switch from GitHub to some random alternatives. This doesn't make any sense, really. There's a lot of disadvantages in switching from GitHub to something else, see e.g., AppImage/AppImageKit#803 (comment).

TL;DR: Before the end of 2018, it doesn't make any sense to switch to some alternative. If the situation gets worse then, we can switch easily. I expect some migration helpers to be developed and become more mature by then, increasing the list of suitable alternatives. Then, one can discuss to switch to alternative platforms.

And please don't limit yourself to the two which are most GitHub-like. There's also self-hosted alternatives like e.g., Phabricator, which employ a less repository but more project focused workflow, and provide a vast amount of tools that help non-devs to work more efficiently. It provides e.g., a mockup review tool that might come in handy for web development or UI discussions, and a simple non-public chat that can be used to send messages to people without knowing their mail address or having them join IRC. Sure, one has to get used to its workflow at first, but there must be a reason so many projects use it.

@ghost
Copy link

ghost commented Jul 16, 2018

+10 👍

@pabru
Copy link

pabru commented Jul 19, 2018

@TheAssassin A (partial) migration plan will be needed before then, to avoid chaos in case GitHub suddenly suspends or deletes the project. This is a real possibility for NewPipe. Microsoft is more likely to cave and suspend if a project is as much as perceived to be "infringing copyright" or something similarly broad, certainly moreso than the previous management.
We shouldn't try to rush it, but we certainly should start shortlisting alternatives. I think that, whether we like it or not, we may not be able to remain on GitHub. I'm not a contributor (yet), but I wanted to share my thoughts on this.

@TheAssassin
Copy link
Member

@pabru we are already mirroring the repositories into several places for backup purposes, and what I am looking for currently is for someone to develop an issue export and migration tool, allowing us to make restorable backups of the issue trackers and migrate to any tool we want to once we need to actually migrate to some alternative platform. Ideally, that tool won't just create issues using some bot account, but allows to restore the issues properly.

Suggestions welcome!

@theScrabi
Copy link
Member Author

@TheAssassin thats why i suggest gitlab they have an issue importer. I've tried it with somw of my other projects, and it works

@TheAssassin
Copy link
Member

@theScrabi that is only half of what I required in my last comment. I'd like to have a way to actually back up the issues, and import them on demand, ideally on any platform.

@TheAssassin
Copy link
Member

@theScrabi by the way, Gitea does support PRs just normally. In fact, they're even called "pull requests", not "merge requests".

@theScrabi
Copy link
Member Author

theScrabi commented Jul 22, 2018

True, but it's not supporting inline Code reviews yet.

@SkyzohKey
Copy link

All you request and more is available in Gitlab guys... Gitea is pretty cool project but it's still pretty young and not fully feature complete...

@TheAssassin
Copy link
Member

@SkyzohKey no, it's not. That's the point. See #1499 (comment). This "migration" stuff is far from good.

@theScrabi
Copy link
Member Author

theScrabi commented Jul 24, 2018

@TheAssassin this is going to be a vim vs. emacs discussion :D
I don't have a favourite as well, however I see it like this: Gitlab on the on hand all the functionalities we might want, like a github importer, and inline code reviews. Gittea on the other is more swift and has the cleaner UI.

Lets do what you said and just wait a bit. Maybe things will improve somewhere in the future and give a clear direction:)

@TheAssassin
Copy link
Member

@TheAssassin this is going to be a vim vs. emacs discussion :D

That's wrong. I never claimed Gitea had that feature of "proper" migrations. But neither does GitLab. That's the problem with both of them.

@stale
Copy link

stale bot commented Dec 1, 2018

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Dec 1, 2018
@trymeouteh
Copy link

I am not a Microsoft fan either and I think by switching to gitlab will be a good move.

@TobiGr TobiGr removed the stale label Jul 19, 2019
@Grammost
Copy link
Contributor

As Github now blocks developers from certain countries, switching to an alternative is now more relevant than ever.

https://techcrunch.com/2019/07/29/github-ban-sanctioned-countries/

@TheAssassin
Copy link
Member

So what? Where do you think GitLab is located? Running for the next platform doesn't make any difference, nor sense. It's not worth it.

@dimqua
Copy link

dimqua commented Jul 29, 2019

What about notabug.org?

@ChiefMikeK
Copy link

As stated in the tech crunch article

A selection of GitHub services such as access to public repositories will remain available to everyone.

  • This is a public repo

@TheAssassin
Copy link
Member

@dimqua next "big player".

If any, we'd go for self hosting, I guess. That's more sustainable and less annoying.

The big problem though is reaching developers. After all, on GitHub, it's fairly easy. On other platforms, the audience is much smaller. Noone likes to register at a ton of services.

@pandruszkow
Copy link

@TheAssassin GitLab supports logging in with Google, Twitter, Facebook and GitHub , so maybe the users won't have to remember an extra username and password.

@theScrabi
Copy link
Member Author

theScrabi commented Jul 30, 2019

How about self hosted? Yea like you said @TheAssassin ... Then we could do mirrors to gitlab github or git(you name it). I'd like that :)

@Stypox Stypox added discussion This needs to be discussed before anything is done meta Related to the project but not strictly to code labels Aug 27, 2019
@0x00cl
Copy link

0x00cl commented Sep 12, 2019

Let's not forget that idea of moving from GitHub to another platform stem from the purchase that M$ did and not because GitHub lacked features or had problems.

From what I see the biggest problem @TheAssassin has with this idea is migrating.

Need to invest work in converting .travis.yml files to .gitlab-ci.yml

Looking at .travic-ci.yml of NewPipe doesn' t seem you'd have to invest a lot of time...

what I am looking for currently is for someone to develop an issue export and migration tool, allowing us to make restorable backups of the issue trackers and migrate to any tool we want to once we need to actually migrate to some alternative platform

AFAIK GitHub, Gitea and GitLab don't import issues with the original author name. I'd guess other git platforms don't do it either. But since GitLab is open source I guess you could modify it. Either on a code level or directly wherever issues are stored with a script, but don't quote on me that.


@theScrabi
Self hosting GitLab would be a great idea but what about hardware requirements?
https://docs.gitlab.com/ce/install/requirements.html
GitLab does recommend for up to 100 users, 2 cores and 8GB of RAM.
Would you be able to pay for a server with this characteristics? or you'd be hosting it at home?

What about GitLab CI solution?
https://docs.gitlab.com/ce/install/requirements.html#gitlab-runner
Are you going to be using it? because it does require more RAM and at least 1 core to run it.

Do you really need to move to another platform?

Depends.
NewPipe is licensed under GPLv3 a free copy-left license. The repository is hosted under a centralized, proprietary platform owned by M$. If you are against this ideals and free software and licenses are important then NewPipe should move. GitLab is free. it has a Creative Commons: CC BY-SA 4.0 license and MIT Expat licenses for their software and provide great features, so it's a good option if you want to support free software.

@TheAssassin
Copy link
Member

From what I see the biggest problem @TheAssassin has with this idea is migrating

Need to invest work in converting .travis.yml files to .gitlab-ci.yml

That's not my main concern. Not at all...

@0x00cl
Copy link

0x00cl commented Sep 13, 2019

That's not my main concern. Not at all...

My bad, I worded it incorrectly, I made a few changes to my comment and left that line in there but I guess at least you could have explained your concerns if I didn't understand them, which I don't.

Is your concern related to being able to easily migrate information (issues, wiki, projects) from one git platform to another?


On additional information about GitLab.
GitLab provides free Ultimate/Gold to open source projects, although GitLab core/free provides the same functionality as GitHub. I don't know how feasible is it to get it though.

@Stypox Stypox changed the title Swtich to Gitlab Switch to Gitlab Jun 30, 2020
@opusforlife2
Copy link
Collaborator

Can we confidently say NO to switching to just another USA-based company's repository after the youtube-dl DMCA fiasco?

@Andre601
Copy link

I personally don't think a switch is any good. People for once may be used to finding NewPipe on GitHub rather than any other site.
Not to mention the hundreds of open issues here that the people need to deal with.

And to give some info here: It has been now what? 2 years since Microsoft got GitHub? And what oh so horrible did happen so far? Pretty much nothing to really worry about.

Here are the imo good changes GitHub made since Microsoft aquired them:

  • GitHub Actions became a thing (Useful for automation I would say)
  • GitHub Discussions. Really useful for people who don't want to stick with IRC or similar.

Yes, the youtube-dl fiasco happened but only because of a faulty system where GitHub was just directly taking the repo down after a DMCA-claim to not get the risk of being fined a large sum, but they reinstated the repo since then and also made changes to their DMCA-System now to no longer let this happen that easily.

Just the fact that a large company aquires another one doesn't imediatally mean that it's doomed to die. I mean the picture of the OP clearly shows a view where people think Skype and Mojang are pretty much dead now, which couldn't be further from the truth (At least for the second one).

While the idea with the mirrors would be a nice compromise between things would this perhaps only cause more work for the maintainers as they would now have 2 if not more places to handle issues, PRs and more... And having everything handled on a central repo also would only be a half-good solution as people would require to have yet another account on a site for making one issue/PR if it isn't GitHub.

@TheEvilSkeleton
Copy link

TheEvilSkeleton commented Dec 13, 2021

I recommend using Codeberg if the GitLab UI is way too confusing. SoundTouch recently switched to Codeberg from GitLab.

@Saarsk
Copy link

Saarsk commented Mar 25, 2023

This isn't just about "MS bought Github, what will they do to it?" but also the fact that MS has a long history of being anti-competitive and being harmful to open-source, Linux etc. Just read about the history of how Winget came to be. With their AI going through code as well, it isn't a great thing for a FOSS project to be on Github.

I for one think the independence and sovereignty is a very important aspect. And support better gits instead of something owned by MS. You could say what you want about simply being anti-big corp, but there are a bunch of reasons hosting a project under a MS-product is not a great thing.

As for being able to reach the project hub, a simple redirect or "this project has moved to" will suffice. By pulling off the band-aid now it'll soon be like it was before instead of grudging the idea of initial change. If this was done when it was proposed it would be a new normal by now. The advantages for it triumph the downsides.

Codeberg looks interesting, though. But there might be other compelling alternatives as well: https://alternativeto.net/software/github/?feature=code-hosting&license=opensource&p=2

A note on the ability to switch project host solution. I think it's reasonable to think a project is less flexible and free within a service owned and run by a company lile MS rather than a genuinely FOSS-oriented company. So it would also in the long-term be safer in this regard as well to sort of rip the bandaid now instead of later, in my opinion.

I understand the work associated with such a move, although I do think it's worth it in the long run. Especially considering the nature of the project.

@theScrabi
Copy link
Member Author

@Saarsk if we should ever move I agree: We should go to Codeberg instead of gitlab. If we move however should be up to the current maintainers. I see it like this: While you are quite right about your view on MS the takeover did not turn out to be too bad. Also we should never brake the ties to github.ghproxy.toppleatly as it is stile a good "display window" for opensource software.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion This needs to be discussed before anything is done meta Related to the project but not strictly to code
Projects
None yet
Development

No branches or pull requests