Skip to content

v2024-12-19

Latest
Compare
Choose a tag to compare
@johnalotoski johnalotoski released this 19 Dec 19:45
b384a05

Overview:

Nixpkgs has been updated to 24.11 and nix to 2.25.3. NixosModules and template just recipes with breaking changes from those updates were fixed. A nix jobs GHA CI test was added to verify environment spin up procedure. Template scripts were updated for compatibility with latest cardano-node protocol version and recent cardano-cli breaking changes, along with other miscellaneous improvements.

Details:

  • Important versioning updates:
    • Nixpkgs is now 24.11
    • Nix is now 2.25.3 (maintenance)
    • Nushell (used in devShell just recipes) is now 0.100.0
  • Adds cardano-testnet to flakeModule pkgs and test+ devShells (ops included)
  • Adds a template just cardano-testnet recipe to handle env setup for the cardano-testnet binary
  • Adds a GHA CI test for nix jobs involving create-cardano and create-testnet-data environment spinups
  • Adds nushell polars to the min+ devShells (ops included)
  • Updates nixpkgs to 24.11 and includes required breaking change fixes to nixosModules
  • Updates the template faucet dedelegation script for compatibility with cardano-node protocol version 10
  • Updates the template tofu file for nixos 24.11 AMI images
  • Fixes template recipes involving nushell breaking changes from 0.93 to 0.100
  • Fixes a bug in the template setup delegation accounts python script
  • Fixes the template just start-demo recipe for cardano-cli 10.x breaking changes
  • Tunes the template alert for the varnish low cache hit rate threshold to reduce false positives
  • Bumps iohk-nix[-ng] for p2p established peers tuning
  • Adds template colmena TCP transmission optimization code for reducing round-tripping over long distances

Breaking Changes, Recommended Updates and Action Items:

Breaking:

  • If you have a pre-existing nushell config at ~/.config/nu/config.nu, the nushell update to version 0.100.0 which came with nixpkgs 24.11 may generate an error when entering a nu shell or running nushell scripts. In this case, simply delete the existing ~/.config/nu/config.nu file, or update it to a compatible version, for example, here

Recommended Updates:

  • Apply the template Justfile diff and patch on the Justfile before bumping the cardano-parts pin to this release
    • This will break the just recipes until the cardano-parts pin is updated in the next step
  • Update the cardano-parts pin to this release version v2024-12-19
    • This will fix the just recipes which already have the breaking change fixes from the prior step
  • Continue to apply the template Justfile diff and patch or clone recipes on files described below.

Action Items:

Diff and patch the following files with just template-diff "$FILE" and then just template-patch "$FILE". Looking at the short PR diff for these files found at directory templates/cardano-parts-project/ prior to diffing and patching against your own repo can also be helpful.

Alternatively, if you know you would just like to mirror any of these template files without diffing or patching, use the just template-clone "$FILE" recipe.

# Apply the diff and patch or clone *before* updating the cardano-parts pin to `v2024-12-19`
Justfile                                          # Nixpkgs 24.11 breaking change fixes 

# Apply the diff and patch or clone *after* updating the cardano-parts pin to `v2024-12-19`
.envrc                                            # For nix-direnv 3.0.6
flake/colmena.nix                                 # Optional: for the transmission optimization `tcpTxOpt` module code
flake/opentofu/cluster.nix                        # For 24.11 nixos AMI tofu filtering
flake/opentofu/grafana/alerts/varnish.nix-import  # For a less noisy varnish low cache rate alert
scripts/restore-delegation-accounts.py            # For PV 10 compatible dedelegation script
scripts/setup-delegation-accounts.py              # For a script bug fix
  • Machines deployed with this release should be rebooted after the initial deployment to nixpkgs 24.11 to ensure use of the new kernel.