# \[Deprecation feedback\] Niche distribution channels for compiler binaries

**URL:** <https://forum.soliditylang.org/t/deprecation-feedback-niche-distribution-channels-for-compiler-binaries/3385>\
**Category:** Feedback\
**Created:** [May 14, 2025, 2:43pm UTC](https://forum.soliditylang.org/t/deprecation-feedback-niche-distribution-channels-for-compiler-binaries/3385 "2025-05-14T14:43:56Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![cameel](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.soliditylang.org/cameel/32/34_2.png) [@cameel](https://forum.soliditylang.org/u/cameel)\
**Post date:** [May 14, 2025, 2:43pm UTC](https://forum.soliditylang.org/t/deprecation-feedback-niche-distribution-channels-for-compiler-binaries/3385/1 "2025-05-14T14:43:56Z")

</div>

On every release [we provide compiler binaries via multiple channels](https://docs.soliditylang.org/en/develop/installing-solidity.html). We are planning to deprecate some of them to reduce the maintenance burden. We would like to ask users, who would be affected by this to leave their feedback in this thread.

### Official channels

The primary and recommended way of obtaining the compiler are [static binaries](https://docs.soliditylang.org/en/develop/installing-solidity.html#static-binaries), which are available [as Github releases](https://github.com/ethereum/solidity/releases) and, in a more organized way, in the [`solc-bin` repository](https://github.com/ethereum/solc-bin/). The content is also mirrored to external hosting, though we highly recommend getting them via IPFS instead to remove a centralization bottleneck and help us keep the costs of maintaining this free service reasonable.

As far as we are aware, most users obtain binaries for supported platforms indirectly from these sources, via their tools and frameworks.

There are also a few more niche, but official channels:

- A binary is always included in [`solc` package we upload to NPM](https://www.npmjs.com/package/solc).
- Linux packages in the [`ethereum`](https://launchpad.net/~ethereum/+archive/ubuntu/ethereum) Ubuntu PPA.
- Docker images on [`solc` DockerHub account](https://hub.docker.com/r/ethereum/solc).
- [`solidity.rb` formula](https://github.com/Homebrew/homebrew-core/blob/master/Formula/s/solidity.rb) on Homebrew.
  - We used to maintain [custom formulas for a range of compiler versions](https://github.com/ethereum/homebrew-ethereum) as well, since Homebrew only provides the latest.

### Unofficial channels

For completeness I’ll also mention other channels, which are or were maintained by the community:

- [`solidity`](https://aur.archlinux.org/packages/solidity) and [`solidity-bin`](https://aur.archlinux.org/packages/solidity-bin) packages in Arch Linux User Repository.
- [`solc` on Snap](https://snapcraft.io/solc) (semi-official, no longer maintained)

### Planned deprecations

**Starting with the next version (0.8.31) we will no longer upload [Linux packages](https://docs.soliditylang.org/en/develop/installing-solidity.html#linux-packages) to the [`ethereum`](https://launchpad.net/~ethereum/+archive/ubuntu/ethereum) Ubuntu PPA**. We’re somewhat forced to do this due to the project’s transition to [Argot Collective](https://argot.org), though we’d consider creating a new PPA if it turned out that it would see significant usage.

We would also like to eventually deprecate the Docker image, and the Homebrew formula as well.

We will probably keep providing the binary on NPM, though we might split it off into a separate package so that it can be omitted in use cases where releases are already downloaded from another source. This might be a breaking change.

---

<div class="post-metadata">

**Author:** ![hellwolf](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.soliditylang.org/hellwolf/32/1109_2.png) [@hellwolf](https://forum.soliditylang.org/u/hellwolf)\
**Post date:** [May 15, 2025, 12:42pm UTC](https://forum.soliditylang.org/t/deprecation-feedback-niche-distribution-channels-for-compiler-binaries/3385/2 "2025-05-15T12:42:50Z")

</div>

Fwiw, another unofficial channel is maintained by me:

> **[GitHub - hellwolf/solc.nix: Providing assorted versions of solidity compilers...](https://github.com/hellwolf/solc.nix)**
>
> Providing assorted versions of solidity compilers (solc).

I track all versions of solc on all platforms in either:

- “[https://github.com/ethereum/solidity/releases/download/v${version}/solc-static-linux](https://github.com/ethereum/solidity/releases/download/v$%7Bversion%7D/solc-static-linux)”
- “[https://binaries.soliditylang.org/macosx-amd64/${solc-macos-amd64-list.releases.${version}](https://binaries.soliditylang.org/macosx-amd64/$%7Bsolc-macos-amd64-list.releases.$%7Bversion%7D)}”
- or, ““[https://github.com/alloy-rs/solc-builds/raw/master/macosx/aarch64/solc-v${version}](https://github.com/alloy-rs/solc-builds/raw/master/macosx/aarch64/solc-v$%7Bversion%7D)””

---

<div class="post-metadata">

**Author:** ![cameel](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.soliditylang.org/cameel/32/34_2.png) [@cameel](https://forum.soliditylang.org/u/cameel)\
**Post date:** [May 15, 2025, 12:44pm UTC](https://forum.soliditylang.org/t/deprecation-feedback-niche-distribution-channels-for-compiler-binaries/3385/3 "2025-05-15T12:44:52Z")

</div>

Ah, right. I listed stuff based on what we had in the docs. We should mention the Nix packages there as well.

---

<div class="post-metadata">

**Author:** ![hellwolf](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.soliditylang.org/hellwolf/32/1109_2.png) [@hellwolf](https://forum.soliditylang.org/u/hellwolf)\
**Post date:** [May 16, 2025, 3:25pm UTC](https://forum.soliditylang.org/t/deprecation-feedback-niche-distribution-channels-for-compiler-binaries/3385/4 "2025-05-16T15:25:16Z")

</div>

That’s fine. It’s a very thin wrapper of what’s been distributed by solidity team via github or solc-bin.

I was there to confirm that solc.nix should continue to work with the proposed changes.

---

<div class="post-metadata">

**Author:** ![cameel](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.soliditylang.org/cameel/32/34_2.png) [@cameel](https://forum.soliditylang.org/u/cameel)\
**Post date:** [January 14, 2026, 5:27pm UTC](https://forum.soliditylang.org/t/deprecation-feedback-niche-distribution-channels-for-compiler-binaries/3385/5 "2026-01-14T17:27:45Z")

</div>

We decided to keep Docker for now. There is some minimal usage even after we migrated to Github’s container registry. For now it does not seem to require much maintenance, so we can keep it up for a while. Though it would be good to know what use case this is really filling - it’s a weird distribution format. It’s maybe convenient to get the binary that way if the only thing you have access to is `docker`, but then it’s harder to use with the IO redirects required. The usage pattern also seems more like CI rather than manual use.

---

<div class="post-metadata">

**Author:** ![Shakacro](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.soliditylang.org/shakacro/32/1914_2.png) [@Shakacro](https://forum.soliditylang.org/u/Shakacro)\
**Post date:** [April 12, 2026, 5:12pm UTC](https://forum.soliditylang.org/t/deprecation-feedback-niche-distribution-channels-for-compiler-binaries/3385/6 "2026-04-12T17:12:00Z")

</div>

Thanks for detailed answer! Well done!!! 👍
