vaguerent/nix/vagrant.nix
Paul Hinze 7a38f46633
nix: Add grpc-tools as explicit dependency
The grpc-tools gem is just a bundle of prebuilt binaries with a thin
layer of wiring to invoke the correct binary given the calling system.
On Nix, prebuilt binaries don't work because they can't find their
dynamically linked libraries in the "normal" places you'd expect on a
Linux machine. Nix has tooling (`autoPatchelf`) which can fixup a given
binary and wire it correctly to the Nix store. We need to have Nix fetch
and build `grpc-tools` so we can invoke this tooling rather than just
letting `bundle install` get the gem.
2022-04-25 12:25:57 -05:00

64 lines
816 B
Nix

{ lib
, stdenv
, autoconf
, autogen
, automake
, go
, go-bindata
, go-changelog
, go-mockery
, go-protobuf
, go-protobuf-json
, go-tools
, grpc-tools
, grpcurl
, libpng
, libtool
, mkShell
, nasm
, nodejs-16_x
, pkg-config
, protobufPin
, protoc-gen-doc
, ruby
, zlib
}:
mkShell rec {
name = "vagrant";
packages = [
go
go-bindata
grpcurl
nodejs-16_x
protoc-gen-doc
ruby
# Custom packages, added to overlay
protobufPin
go-protobuf
go-protobuf-json
go-tools
go-mockery
go-changelog
grpc-tools
# Needed for website/
autoconf
autogen
automake
libpng
libtool
nasm
pkg-config
zlib
];
# workaround for npm/gulp dep compilation
# https://github.com/imagemin/optipng-bin/issues/108
shellHook = ''
LD=$CC
'';
}