{ lib, buildGoModule, fetchFromGitHub, }: buildGoModule rec { pname = "tflint-ruleset-aws"; version = "0.48.0"; src = fetchFromGitHub { owner = "terraform-linters"; repo = pname; rev = "v${version}"; hash = "sha256-mcFsjn/lj2pkecI1BVaUwv8Zv11OSN+EIDYGuxrtfrQ="; }; vendorHash = "sha256-VWZkNtvlOqF6DX2duFih4nFGrxBAfeIIbtc+9hTiUJo="; postPatch = '' # some automation for creating new releases on GitHub, which we don't need rm -rf tools/release ''; # upstream Makefile also does a go test $(go list ./... | grep -v integration) preCheck = '' rm integration/integration_test.go ''; postInstall = '' # allow use as a versioned dependency, i.e., with `source = ...` and # `version = ...` in `.tflintrc`: mkdir -p $out/github.com/terraform-linters/${pname}/${version} mv $out/bin/${pname} $out/github.com/terraform-linters/${pname}/${version}/ # allow use as an unversioned dependency, e.g., if one wants `.tflintrc` to # solely rely on Nix to pin versions: ln -s $out/github.com/terraform-linters/${pname}/${version}/${pname} $out/ # remove other binaries from bin rm -R $out/bin ''; meta = { homepage = "https://github.com/terraform-linters/tflint-ruleset-aws"; changelog = "https://github.com/terraform-linters/tflint-ruleset-aws/blob/v${version}/CHANGELOG.md"; description = "TFLint ruleset plugin for Terraform AWS Provider"; maintainers = with lib.maintainers; [ flokli ]; license = lib.licenses.mpl20; }; }