Standardize lts/ghc-9.4.x structure
Summary
This MR standardizes the lts/ghc-9.4.x branch to use a modular nix/ folder structure with flake-parts import-tree.
Changes
- Replaced inline flake configuration with modular
nix/directory structure - Created four flake-parts modules:
-
nix/systems.nix- Dynamic system configuration via horizon-supported-systems v1.1.0 -
nix/ci.nix- CI configuration using gitlab-ci-omnix v0.4.0 -
nix/treefmt.nix- Formatting tools (deadnix, nixpkgs-fmt, statix) -
nix/ghc.nix- Pre-built GHC 9.4 package configuration
-
- Updated
flake.nixto use import-tree pattern - Simplified
.gitlab-ci.ymlto use remote include (gitlab-ci v0.3.0)
Validation
All local checks passed:
-
nix flake lock✅ -
nix fmt✅ (0 files changed) -
om ci run✅ (🥳 Success!)
Dependencies
This MR brings the branch in line with 9.6.x, 9.12.x, and 9.14.x which already use this pattern.