# Install solc-select with Homebrew, Nix

Manage multiple Solidity compiler versions. Version 1.2.0 via Homebrew; verified 2026-05-14.

## Install

```sh
sudo av install brew:solc-select
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install solc-select
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#solc-select
```

  Evidence: nixpkgs package indexes: solc-select from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

## Package facts

- **Package key:** brew:solc-select
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/solc-select>
- **Version:** 1.2.0
- **Source summary:** Manage multiple Solidity compiler versions
- **Homepage:** <https://github.com/crytic/solc-select>
- **Repository:** <https://github.com/crytic/solc-select>
- **Upstream docs:** <https://github.com/crytic/solc-select#readme>
- **License:** AGPL-3.0-only
- **Source archive:** <https://files.pythonhosted.org/packages/62/89/51e614fdbf26f47268c18f8a3b6cf1cb67c9a8b48b7b7231c948cae97814/solc_select-1.2.0.tar.gz>
- **Last updated:** 2026-05-14T12:58:22Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- solc-select (cli)
- solc-select (alias)

## Dependencies

- certifi
- python@3.14

## 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-08
- Package-manager version: 1.2.0
- Package-manager updated: 2026-05-14
- Local data: ok
- Upstream repository: https://github.com/crytic/solc-select
- info: No cached GitHub release or tag data was available.
## Project history and usage

solc-select is a small command-line version manager for the Solidity compiler. It provides a `solc-select` management command and a `solc` wrapper so developers can install and switch among Solidity compiler releases.

### Project history

The project README describes solc-select as a tool for quickly switching between Solidity compiler versions. Its setup metadata identifies Trail of Bits as the author and publishes the project from the official Crytic GitHub organization.

The tool downloads compiler binaries from Solidity's official binary distribution and stores them under `~/.solc-select/artifacts/`, keeping local compiler selection separate from system package-manager versions.

### Adoption history

The supplied package-manager facts list solc-select in Homebrew and Nix, reflecting its role as a developer convenience package for Ethereum and Solidity workstations. Homebrew marks it as conflicting with the `solidity` formula, which matches its job of supplying the `solc` wrapper executable.

### How it is used

Typical use is to install a compiler version with `solc-select install <version>`, choose a global version with `solc-select use <version>`, or override the selected compiler for one command with the `SOLC_VERSION` environment variable.

### Why package nerds care

solc-select is package-nerd bait because Solidity projects often pin old compiler versions in source pragmas. Instead of forcing the OS package manager to carry many parallel `solc` packages, solc-select acts like a language-specific shim manager for the compiler.

### Timeline

- 2020: The official setup metadata on the master branch identifies version 0.2.1.
- 2021: Git tags include the 1.0.x series.
- 2026: The Homebrew formula in the supplied facts packages solc-select for current macOS and Linux users.

### Related projects

- Solidity provides the compiler binaries that solc-select downloads. Crytic and Trail of Bits security tooling often need repeatable Solidity compiler selection for analysis workflows.

### Sources

- Input package-manager facts: source_facts.package-manager and source_facts.package-manager-url
- Official README: https://github.com/crytic/solc-select#readme
- Official setup metadata: https://github.com/crytic/solc-select/blob/master/setup.py


## Security Notes

No matching local secret-handling manifest was found for solc-select. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.solc-select/global-version
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** solc-select
- **Version Scheme:** 0
- **Revision:** 4
- **Head Version:** HEAD
- **Conflicts With:** solidity
- **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 - solc-select: normalized package name match | nixpkgs package indexes: solc-select from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix


## 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.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [foundry](https://www.automicvault.com/pkg/brew/foundry/) - Shares av.db curated category or tags: blockchain, cli, developer-tools, ethereum, smart-contracts.
- [solhint](https://www.automicvault.com/pkg/brew/solhint/) - Shares av.db curated category or tags: blockchain, cli, developer-tools, ethereum, smart-contracts.
- [truffle](https://www.automicvault.com/pkg/brew/truffle/) - Shares av.db curated category or tags: blockchain, cli, developer-tools, ethereum, smart-contracts.
- [aiken](https://www.automicvault.com/pkg/brew/aiken/) - Shares av.db curated category or tags: blockchain, cli, developer-tools, smart-contracts.
- [anchor](https://www.automicvault.com/pkg/brew/anchor/) - Shares av.db curated category or tags: blockchain, cli, developer-tools, smart-contracts.
- [clarinet](https://www.automicvault.com/pkg/brew/clarinet/) - Shares av.db curated category or tags: blockchain, cli, developer-tools, smart-contracts.
- [stellar-cli](https://www.automicvault.com/pkg/brew/stellar-cli/) - Shares av.db curated category or tags: blockchain, cli, developer-tools, smart-contracts.
- [sui](https://www.automicvault.com/pkg/brew/sui/) - Shares av.db curated category or tags: blockchain, cli, developer-tools, smart-contracts.
- [luaver](https://www.automicvault.com/pkg/brew/luaver/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, manage, manager.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- 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
