This repository was archived by the owner on Jan 15, 2026. It is now read-only.
Using Bzlmod with Bazel 6 or later
- (Bazel 6 only) Enable with
common --enable_bzlmodin.bazelrc. - Add to your
MODULE.bazelfile:
# NB: this must come BEFORE bazel_dep(name = "protobuf") because they register the from-source toolchain,
# and the first registration wins.
bazel_dep(name = "toolchains_protoc", version = "0.6.1")
# Optional: choose a version of protoc rather than the latest.
protoc = use_extension("@toolchains_protoc//protoc:extensions.bzl", "protoc")
protoc.toolchain(
# Pin to any version of protoc
version = "v26.0",
)Using WORKSPACE
Paste this snippet into your WORKSPACE.bazel file:
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "toolchains_protoc",
sha256 = "d3581a88b213ef66635994ff6a5ef422869c2fcfc7aca4e3a6388d3a9fea1dd2",
strip_prefix = "toolchains_protoc-0.6.1",
url = "https://github.com/aspect-build/toolchains_protoc/releases/download/v0.6.1/toolchains_protoc-v0.6.1.tar.gz",
)
######################
# toolchains_protoc setup #
######################
# Fetches the toolchains_protoc dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@toolchains_protoc//protoc:repositories.bzl", "rules_protoc_dependencies")
rules_protoc_dependencies()
load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()
load("@bazel_features//:deps.bzl", "bazel_features_deps")
bazel_features_deps()
load("@toolchains_protoc//protoc:toolchain.bzl", "protoc_toolchains")
protoc_toolchains(
name = "protoc_toolchains",
version = "v25.3",
)Full Changelog: v0.6.0...v0.6.1