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.
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.
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.
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:
I am missing something?
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.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:
And then:
So they do some magic here, the script just installs the repository, so I can’t see exactly any dependency they are currently using.
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.
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.