Skip to content

Add horizon.formatting module and reorganize structure

Horizon Bot requested to merge add-horizon-formatting into master

Summary

Reorganizes horizon-flake-parts structure and adds formatting module:

  • Consolidates ci.nix, formatting.nix, and systems.nix into nix/configuration.nix
  • Moves all flake modules to nix/modules/ directory
  • Adds horizon.formatting module with support for:
    • deadnix (enabled by default)
    • dhall (enabled by default)
    • nixpkgs-fmt (enabled by default)
    • statix (enabled by default)
  • Exports treefmt-nix.flakeModule for consumers

Changes

  • nix/configuration.nix: New consolidated configuration for the repository itself
  • nix/modules/: All flake modules now organized here
    • horizon-ci.nix
    • horizon-flake-parts.nix
    • horizon-formatting.nix
  • flake.nix: Added treefmt-nix input
  • test/flake.nix: Added treefmt-nix follows
  • test/modules/: Added deduplication tests
    • ci.nix: Tests horizon-ci module deduplication
    • formatting.nix: Tests horizon-formatting module deduplication
    • systems.nix: Tests horizon-supported-systems module deduplication

Module Deduplication

All exported modules (horizon-ci, horizon-formatting, horizon-supported-systems) have been tested to ensure they can be imported both through horizon-flake-parts.flakeModule and directly without causing duplicate option declarations.

🤖 Generated with Claude Code

Edited by Horizon Bot

Merge request reports