Workarounds for installing packages that don't support Apple Silicon

I’m new to Nix and I would like to use it to make my Mac’s configuration reproducible and also to utilize the isolated dev environments.

I have an Apple Silicon-based Mac and noticed that very few packages support aarch64-darwin. How have users got around this (obtained native Apple Silicon variants of packages)?

Many of these packages are found on Homebrew with native Apple Silicon support. Is there a way I can add homebrew packages and casks in my Nix config/flakes so that they can be installed in place of their non-aarch64-darwin counterparts from Nix’s repository?

Yes, you can use Nix-Darwin to manage your Homebrew configuration.

Could you elaborate more on what you mean? Are you referring to this (WIP) project: GitHub - zhaofengli/nix-homebrew: Homebrew installation manager for nix-darwin

That project looks like it’s actually for using Nix-Darwin to install Homebrew. But I was referring to the stuff already included in Nix-Darwin for managing Homebrew packages. It generates a Brewfile for you and then invokes some existing brew command against it in your profile’s activation scripts. The docs for the relevant options start here:


Ah, I see! Thank you!

1 Like