# Install starlark-rust with Homebrew, Nix

Rust implementation of the Starlark language. Version 0.14.0 via Homebrew; verified 2026-06-01. Also installable with nix: nix profile install nixpkgs#starlark-rust.

## Install

```sh
sudo av install brew:starlark-rust
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install starlark-rust
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#starlark-rust
```

  Evidence: nixpkgs package indexes: pkgs/by-name/st/starlark-rust/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:starlark-rust
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/starlark-rust>
- **Version:** 0.14.0
- **Source summary:** Rust implementation of the Starlark language
- **Homepage:** <https://github.com/facebook/starlark-rust>
- **Repository:** <https://github.com/facebook/starlark-rust>
- **Upstream docs:** <https://github.com/facebook/starlark-rust#readme>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/facebook/starlark-rust/archive/refs/tags/v0.14.0.tar.gz>
- **Last updated:** 2026-06-01T14:43:06Z
- **Generated:** 2026-07-25T07:20:51+00:00

## Executables

- starlark (cli)
- starlark (alias)

## Build dependencies

- rust

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-25
- Package-manager version: 0.14.0
- Package-manager updated: 2026-06-01
- Local data: ok
- Upstream repository: https://github.com/facebook/starlark-rust
- Upstream latest detected: v0.14.0 (current)
## Project history and usage

Starlark in Rust is Meta's Rust implementation of the Starlark configuration language, with a command-line binary that can run a REPL, evaluator, linter, and IDE-related tooling for standard Starlark.

### Project history

The README states that facebook/starlark-rust is the canonical repository and that the project was started by Damien Martin-Guillerez. It also notes that version 0.4.0 changed ownership from Google to Meta.

The project exists in the ecosystem of Starlark implementations used by build systems. The README names Bazel, Buck, and Buck2 as Starlark users and says Buck2 depends on this library.

### Adoption history

The input package facts show the project packaged for Homebrew and Nix, making the `starlark` binary available outside Rust's Cargo ecosystem.

Adoption is mostly developer-infrastructure adoption rather than end-user CLI adoption: most consumers embed the Rust library into build and configuration systems, while the packaged binary is useful for experiments, linting, and basic standard-Starlark evaluation.

### How it is used

The README describes six components, including parser, evaluator, derive macros, map structures, LSP support, and `starlark_bin`, the binary exposed through the command line.

The README cautions that most Starlark embeddings add domain-specific functions and data types, so the packaged binary is most useful as a vanilla Starlark test bed or linter rather than a drop-in evaluator for every Starlark file from a large build system.

### Why package nerds care

Package maintainers care about starlark-rust because Starlark is configuration language infrastructure. A standalone packaged interpreter/linter gives developers a way to test and inspect Starlark without installing a full build system.

The project is also notable because it bridges Rust packaging, language tooling, and build-system internals: the CLI is small enough to package, while the library is significant because Buck2 depends on it.

### Timeline

- 2021: Public GitHub issue #1 discussed compatibility with the Starlark specification.
- v0.4.0: README says ownership changed from Google to Meta.
- 2026: GitHub repository page lists version 0.14 as the latest release.

### Related projects

- Related projects include the Java and Go Starlark implementations, Bazel, Buck, and Buck2.
- The README says the Rust implementation mostly follows the Starlark standard while documenting known compatibility differences.

### Sources

- <https://github.com/facebook/starlark-rust#readme>
- <https://github.com/facebook/starlark-rust/issues/1>
- source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** starlark-rust
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Nix - starlark-rust: normalized package name match | nixpkgs package indexes: pkgs/by-name/st/starlark-rust/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Nix - starlark: installed executable or alias match | nixpkgs package indexes: pkgs/by-name/st/starlark/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [rust](https://www.automicvault.com/pkg/brew/rust/) - Build dependency declared by Homebrew.
- [action-validator](https://www.automicvault.com/pkg/brew/action-validator/) - Shares av.db curated category or tags: cli, developer-tools, linter, rust.
- [dotenv-linter](https://www.automicvault.com/pkg/brew/dotenv-linter/) - Shares av.db curated category or tags: cli, developer-tools, linter, rust.
- [droast](https://www.automicvault.com/pkg/brew/droast/) - Shares av.db curated category or tags: cli, developer-tools, linter, rust.
- [mado](https://www.automicvault.com/pkg/brew/mado/) - Shares av.db curated category or tags: cli, developer-tools, linter, rust.
- [oxlint](https://www.automicvault.com/pkg/brew/oxlint/) - Shares av.db curated category or tags: cli, developer-tools, linter, rust.
- [ruff](https://www.automicvault.com/pkg/brew/ruff/) - Shares av.db curated category or tags: cli, developer-tools, linter, rust.
- [rumdl](https://www.automicvault.com/pkg/brew/rumdl/) - Shares av.db curated category or tags: cli, developer-tools, linter, rust.
- [selene](https://www.automicvault.com/pkg/brew/selene/) - Shares av.db curated category or tags: cli, developer-tools, linter, rust.
- [statix](https://www.automicvault.com/pkg/brew/statix/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, developer, developer-tools, language, linter.
- [jrsonnet](https://www.automicvault.com/pkg/brew/jrsonnet/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, developer, developer-tools, implementation, language.

## Combined YAML source

View the package source record on GitHub. [combined/starlark-rust.yml](https://github.com/automic-vault/db/blob/main/combined/starlark-rust.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
