Skip to content

harmonia-v3.0.0

Latest

Choose a tag to compare

@Mic92 Mic92 released this 08 Feb 16:09
· 204 commits to main since this release

What's Changed

Highlights

  • Rust-based nix daemon replacing C++ nix-daemon:
    harmonia-daemon is a pure-Rust implementation of the Nix daemon protocol that speaks directly to the store database, eliminating the dependency on the C++ nix-daemon
    by @Mic92 in #570
  • NixOS module: services.harmonia-dev.daemon.enable:
    New option to run the Rust-based daemon instead of depending on
    the C++ nix-daemon. When enabled, harmonia-cache automatically
    connects to the harmonia-daemon socket. The cache options moved
    under services.harmonia-dev.cache.* (old paths are aliased)
    by @Mic92 in #570
  • Prometheus metrics and Grafana dashboard:
    Built-in metrics endpoint with a ready-to-use Grafana dashboard
    by @Mic92 in #570
  • Landing page with public keys:
    New landing page showing cache configuration and public keys, with automatic URL scheme detection for HTTP-only deployments
    by @Mic92 in #647
    #653
  • Drop support for daemon protocol versions < 1.37:
    Only Nix 2.24+ is now supported
    by @Mic92 in #643

Bug Fixes

  • Fix resuming downloads (closes #578)
    by @the-sun-will-rise-tomorrow in
    #600
  • Fix chroot store support (fixes #616):
    Use virtual store path for daemon communication when files are physically located elsewhere
    by @Mic92 in #743
  • Fix NixOS module with recent nixpkgs:
    lib.mdDoc was removed from nixpkgs, causing build failures
    by @teto in #697
  • Improve error messages:
    Replace panics with descriptive error messages throughout
    by @Mic92 in #656
    #657

New Contributors

Full Changelog:
harmonia-v2.1.0...harmonia-v3.0.0