diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix new file mode 100644 index 000000000000..e6d9ce605b4c --- /dev/null +++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix @@ -0,0 +1,60 @@ +{ lib +, fetchFromGitLab +, fetchFromGitHub +, buildGoModule +, pkg-config +}: + +let + version = "16.8.1"; + package_version = "v${lib.versions.major version}"; + gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}"; + + commonOpts = { + inherit version; + + # nixpkgs-update: no auto update + src = fetchFromGitLab { + owner = "gitlab-org"; + repo = "gitaly"; + rev = "v${version}"; + hash = "sha256-yR8O9F6THymKKHbnfh67NhEcNNBz7XHja/fpeTmVoe0="; + }; + + vendorHash = "sha256-AkL/BbCrqgXyvfiMxzMIXeZwh5aFL2a2+myk/4YXMNc="; + + ldflags = [ "-X ${gitaly_package}/internal/version.version=${version}" "-X ${gitaly_package}/internal/version.moduleVersion=${version}" ]; + + tags = [ "static" ]; + + nativeBuildInputs = [ pkg-config ]; + + doCheck = false; + }; + + auxBins = buildGoModule ({ + pname = "gitaly-aux"; + + subPackages = [ "cmd/gitaly-hooks" "cmd/gitaly-ssh" "cmd/gitaly-lfs-smudge" "cmd/gitaly-gpg" ]; + } // commonOpts); +in +buildGoModule ({ + pname = "gitaly"; + + subPackages = [ "cmd/gitaly" "cmd/gitaly-backup" ]; + + preConfigure = '' + mkdir -p _build/bin + cp -r ${auxBins}/bin/* _build/bin + ''; + + outputs = [ "out" ]; + + meta = with lib; { + homepage = "https://gitlab.com/gitlab-org/gitaly"; + description = "A Git RPC service for handling all the git calls made by GitLab"; + platforms = platforms.linux ++ [ "x86_64-darwin" ]; + maintainers = teams.gitlab.members; + license = licenses.mit; + }; +} // commonOpts) |