this post was submitted on 05 Nov 2023
110 points (98.2% liked)

Open Source

31236 readers
332 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
110
submitted 1 year ago* (last edited 1 year ago) by grant@toast.ooo to c/opensource@lemmy.ml
 

I've seen some comments about how "gitlab bad" or whatnot, why do people prefer Codeberg over GitLab?

you are viewing a single comment's thread
view the rest of the comments
[–] otl@lemmy.sdf.org 25 points 1 year ago* (last edited 1 year ago) (2 children)

Something not mentioned yet: Forgejo, the software running Codeberg, has a smaller feature set and narrower scope than GitLab ("GitLab is the most comprehensive AI-powered DevSecOps Platform" from their website).

Forgejo is much easier to administrate for smaller groups. For example compare the dependencies mentioned in the Forgejo installation documentation and the Gitlab installation documentation.

[–] second@feddit.uk 16 points 1 year ago (2 children)

That's a bit of an unfair comparison - that's the GitLab instructions to install from source. Most people use a package (rpm, deb) to install GitLab.

The installation instructions for GitLab from prebuilt binaries is https://about.gitlab.com/install/, and that's significantly shorter.

That said, I think for most home applications, GitLab is hugely overkill.

[–] otl@lemmy.sdf.org 8 points 1 year ago* (last edited 1 year ago) (2 children)

Yes that's true. I guess what I wanted to point out is that GitLab has dependencies like Postgres, Redis, Ruby (with Rails), Vue.js... whereas Forgejo can use just SQLite and jQuery.

[–] ErwinLottemann@feddit.de 11 points 1 year ago (1 children)

sqlite is not something one would use for a database with a lot of users, postresql or mysql/mariadb is a better choice in these circumstances. and i don't think having jquery as a dependency in 2023 is a positive sign. not sayibg the software is bad, it's just different.

[–] ReversalHatchery@beehaw.org 4 points 1 year ago

Fortunately they were inaccurate, and it supports mariadb and postgre too.
In the documentation, they leave sqlite and mssql to the last places in the listings.

[–] Sigmatics@lemmy.ca 3 points 1 year ago (2 children)

Forgejo uses SQlite

That's a red flag

[–] ReversalHatchery@beehaw.org 2 points 1 year ago* (last edited 1 year ago)

Hopefully not, as sqllite is never in a prominent place among the other supported databases in the documentation

[–] SNFi@beehaw.org 4 points 1 year ago (2 children)

Looking at it, I see the following...

GitLab's deps:

sudo apt-get install -y libcurl4-openssl-dev libexpat1-dev gettext libz-dev libssl-dev libpcre2-dev build-essential git-core

Forgejo deps:

apt install git git-lfs

I am missing something?

[–] ReversalHatchery@beehaw.org 1 points 1 year ago (1 children)

Probably Forgejo/Gitea also uses such dependencies, but their Go counterparts which are statically built into the server binary.

If resource efficiency only depended on that, Gitlab would be more efficient with memory because of this. We all know that's not the case, I just said it as a comparison.

This also means that while Forgejo/Gitea depends less on your system installation, it also wont benefit from updated dependency packages.

[–] SNFi@beehaw.org 1 points 1 year ago

it also wont benefit from updated dependency packages

If they maintain the binary properly, could cause less issues with dependencies compatibility, so it's less pain for the DevOps team, like a container image, just pull the new image and done.

[–] second@feddit.uk 1 points 1 year ago (1 children)

I assume that's to build from source.

The times I've installed GitLab it's been a case of dnf install https://.... The rest gets dragged in automatically.

[–] SNFi@beehaw.org 2 points 1 year ago* (last edited 1 year ago)

Well, this way they could install dependencies anyway just automatically, so you don't see them unless you read before accepting the installation. I still can read this:

Install and configure the necessary dependencies
sudo yum install -y curl policycoreutils-python openssh-server perl

And then:

Add the GitLab package repository and install the package
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash

So they do some magic here, the script just installs the repository, so I can't see exactly any dependency they are currently using.

[–] andruid@lemmy.ml 4 points 1 year ago (1 children)

Right. Paid Gitlabs features tend to be targeted as an all in one DevOps platform for larger scale organizations. So how do you do support tickets, CI/CD, feature tracking and coordination for a portfolio of products, documentation, revision control, code reviews, security reviews, etc? In Gitlabs world the answer is Gitlab, with integrations with other enterprise software. It's HUGE. That said I've never heard of an organization (probably due to ignorance not lack of existence) actually doing all of that.

I personally I'm kind of leaning towards building a proof of concept of forgejo, tekton, and maybe Odoo to see if it can cover what my org is actually doing, but he'll we pay for tons of stuff but the amount of excell sheets floating around doing this is wild...

[–] otl@lemmy.sdf.org 2 points 1 year ago (1 children)

Ah come on, we all know as software people we can never stop the spreadsheets from being the real data interchange format ;)

[–] andruid@lemmy.ml 2 points 1 year ago

Hey, at least remote works been really putting nails in the coffin of printed documents floating around.

But seriously keeping to a good set of tools, providing them at scale and some training will hopefully make the fall back to spreadsheets less attractive to at least the middle wave of adopters.