feat: Pin Elixir 1.19.5 and Erlang 28.3 in Nix flake

Add Nix overlay to pin specific versions matching .tool-versions:
- Erlang: OTP 28.3 (via erlang_28)
- Elixir: 1.19.5-otp-28 (via beam.packages.erlang_28.elixir_1_19)

This ensures the Nix build environment matches the asdf-based
development setup exactly, providing consistency across all
development and build environments.
This commit is contained in:
Graham McIntire 2026-02-07 12:33:49 -06:00
parent a3372a8585
commit 5c71205aa3
No known key found for this signature in database

View file

@ -27,6 +27,21 @@
config = {
allowUnfree = false;
};
overlays = [
# Pin specific Elixir and Erlang versions to match .tool-versions
# Elixir 1.19.5-otp-28, Erlang 28.3
(final: prev: {
# Use Erlang 28 (OTP 28.3)
erlang = prev.erlang_28;
# Use Elixir 1.19 with Erlang 28 (1.19.5-otp-28)
elixir = prev.beam.packages.erlang_28.elixir_1_19;
# Ensure beam packages use our pinned versions
# This affects mixRelease and all BEAM-related builds
beamPackages = prev.beam.packages.erlang_28;
})
];
};
packages = {