chore: add ability to include custom protoc-gen-go dependency in nix flake (#14728)

This commit is contained in:
Joobi S B
2024-09-24 12:57:07 +00:00
committed by GitHub
parent 326886d3c2
commit c127d90efc
2 changed files with 48 additions and 2 deletions
+24 -2
View File
@@ -40,6 +40,27 @@
# From https://nixos.wiki/wiki/Google_Cloud_SDK
gdk = pkgs.google-cloud-sdk.withExtraComponents ([ pkgs.google-cloud-sdk.components.gke-gcloud-auth-plugin ]);
proto_gen_go_1_30 = pkgs.buildGoModule rec {
name = "protoc-gen-go";
owner = "protocolbuffers";
repo = "protobuf-go";
rev = "v1.30.0";
src = pkgs.fetchFromGitHub {
owner = "protocolbuffers";
repo = "protobuf-go";
rev = rev;
# Updated with ./scripts/update-flake.sh`.
sha256 = "sha256-GTZQ40uoi62Im2F4YvlZWiSNNJ4fEAkRojYa0EYz9HU=";
};
subPackages = [ "cmd/protoc-gen-go" ];
vendorHash = null;
proxyVendor = true;
preBuild = ''
export GOPROXY=https://proxy.golang.org,direct
go mod download
'';
};
# The minimal set of packages to build Coder.
devShellPackages = with pkgs; [
# google-chrome is not available on OSX and aarch64 linux
@@ -80,7 +101,7 @@
playwright-driver.browsers
postgresql_16
protobuf
protoc-gen-go
proto_gen_go_1_30
ripgrep
# This doesn't build on latest nixpkgs (July 10 2024)
(pinnedPkgs.sapling)
@@ -117,7 +138,7 @@
name = "coder-${osArch}";
# Updated with ./scripts/update-flake.sh`.
# This should be updated whenever go.mod changes!
vendorHash = "sha256-KyMqZxav64rbybUUFoBsOlB6XH7y8aQ7ekaYm0QD4Ew=";
vendorHash = "sha256-kPXRp7l05iJd4IdvQeOFOgg2UNzBcloy3tA9Meep9VI=";
proxyVendor = true;
src = ./.;
nativeBuildInputs = with pkgs; [ getopt openssl zstd ];
@@ -151,6 +172,7 @@
'';
};
packages = {
proto_gen_go = proto_gen_go_1_30;
all = pkgs.buildEnv {
name = "all-packages";
paths = devShellPackages;