File tree 2 files changed +48
-2
lines changed
2 files changed +48
-2
lines changed Original file line number Diff line number Diff line change 40
40
# From https://nixos.wiki/wiki/Google_Cloud_SDK
41
41
gdk = pkgs . google-cloud-sdk . withExtraComponents ( [ pkgs . google-cloud-sdk . components . gke-gcloud-auth-plugin ] ) ;
42
42
43
+ proto_gen_go_1_30 = pkgs . buildGoModule rec {
44
+ name = "protoc-gen-go" ;
45
+ owner = "protocolbuffers" ;
46
+ repo = "protobuf-go" ;
47
+ rev = "v1.30.0" ;
48
+ src = pkgs . fetchFromGitHub {
49
+ owner = "protocolbuffers" ;
50
+ repo = "protobuf-go" ;
51
+ rev = rev ;
52
+ # Updated with ./scripts/update-flake.sh`.
53
+ sha256 = "sha256-GTZQ40uoi62Im2F4YvlZWiSNNJ4fEAkRojYa0EYz9HU=" ;
54
+ } ;
55
+ subPackages = [ "cmd/protoc-gen-go" ] ;
56
+ vendorHash = null ;
57
+ proxyVendor = true ;
58
+ preBuild = ''
59
+ export GOPROXY=https://proxy.golang.org,direct
60
+ go mod download
61
+ '' ;
62
+ } ;
63
+
43
64
# The minimal set of packages to build Coder.
44
65
devShellPackages = with pkgs ; [
45
66
# google-chrome is not available on OSX and aarch64 linux
80
101
playwright-driver . browsers
81
102
postgresql_16
82
103
protobuf
83
- protoc-gen-go
104
+ proto_gen_go_1_30
84
105
ripgrep
85
106
# This doesn't build on latest nixpkgs (July 10 2024)
86
107
( pinnedPkgs . sapling )
117
138
name = "coder-${ osArch } " ;
118
139
# Updated with ./scripts/update-flake.sh`.
119
140
# This should be updated whenever go.mod changes!
120
- vendorHash = "sha256-KyMqZxav64rbybUUFoBsOlB6XH7y8aQ7ekaYm0QD4Ew =" ;
141
+ vendorHash = "sha256-kPXRp7l05iJd4IdvQeOFOgg2UNzBcloy3tA9Meep9VI =" ;
121
142
proxyVendor = true ;
122
143
src = ./. ;
123
144
nativeBuildInputs = with pkgs ; [ getopt openssl zstd ] ;
151
172
'' ;
152
173
} ;
153
174
packages = {
175
+ proto_gen_go = proto_gen_go_1_30 ;
154
176
all = pkgs . buildEnv {
155
177
name = "all-packages" ;
156
178
paths = devShellPackages ;
Original file line number Diff line number Diff line change 5
5
6
6
cd " $( dirname " ${BASH_SOURCE[0]} " ) /.."
7
7
8
+ check_and_install () {
9
+ if ! command -v " $1 " & > /dev/null; then
10
+ echo " $1 is not installed. Attempting to install..."
11
+ if ! nix-env -iA nixpkgs." $1 " ; then
12
+ echo " Failed to install $1 . Please install it manually and try again."
13
+ exit 1
14
+ fi
15
+ echo " $1 has been installed successfully."
16
+ fi
17
+ }
18
+
19
+ check_and_install jq
20
+ check_and_install nix-prefetch-git
21
+
8
22
OUT=$( mktemp -d -t nar-hash-XXXXXX)
9
23
10
24
echo " Downloading Go modules..."
@@ -13,4 +27,14 @@ echo "Calculating SRI hash..."
13
27
HASH=$( go run tailscale.com/cmd/nardump --sri " $OUT /pkg/mod/cache/download" )
14
28
sudo rm -rf " $OUT "
15
29
30
+ echo " Updating go.mod vendorHash"
16
31
sed -i " s#\(vendorHash = \" \)[^\" ]*#\1${HASH} #" ./flake.nix
32
+
33
+ # Update protoc-gen-go sha256
34
+ echo " Updating protoc-gen-go sha256..."
35
+ PROTOC_GEN_GO_REV=$( nix eval --extra-experimental-features nix-command --extra-experimental-features flakes --raw .# proto_gen_go.rev)
36
+ echo " protoc-gen-go version: $PROTOC_GEN_GO_REV "
37
+ PROTOC_GEN_GO_SHA256=$( nix-prefetch-git https://github.com/protocolbuffers/protobuf-go --rev " $PROTOC_GEN_GO_REV " | jq -r .hash)
38
+ sed -i " s#\(sha256 = \" \)[^\" ]*#\1${PROTOC_GEN_GO_SHA256} #" ./flake.nix
39
+
40
+ echo " Flake updated successfully!"
You can’t perform that action at this time.
0 commit comments