nix: separate repository tooling from packaging #268

Merged
natsukium merged 1 commit from refactor/repo-layout into main 2026-09-12 22:00:38 +09:00
Owner

Why

The repository had overlapping directory names for development environment definitions and repository automation. This makes it unclear whether a file belongs to the Nix packaging surface, the development environment, or an internal tool.

What changed

  • Move repository automation from scripts/ to tools/.
  • Move development-only Nix packages to dev/packages/.
  • Move the benchmark dev shell definition to dev/bench/.
  • Keep packaging helpers, including terminfo compilation and macOS app bundling, under nix/.
  • Update CI, justfile, documentation, and agent skills to follow the new paths.

Verification

  • just check
  • nix flake check --no-build --all-systems
  • nix build .#felis --no-link
  • Benchmark, protocol, release, and skill self-tests
## Why The repository had overlapping directory names for development environment definitions and repository automation. This makes it unclear whether a file belongs to the Nix packaging surface, the development environment, or an internal tool. ## What changed - Move repository automation from `scripts/` to `tools/`. - Move development-only Nix packages to `dev/packages/`. - Move the benchmark dev shell definition to `dev/bench/`. - Keep packaging helpers, including terminfo compilation and macOS app bundling, under `nix/`. - Update CI, `justfile`, documentation, and agent skills to follow the new paths. ## Verification - `just check` - `nix flake check --no-build --all-systems` - `nix build .#felis --no-link` - Benchmark, protocol, release, and skill self-tests
nix: separate repository tooling from packaging
All checks were successful
bench / Criterion full-suite snapshot (pull_request) Has been skipped
fuzz / cargo fuzz nightly long-run (pull_request) Has been skipped
bench / Criterion regression gate (pull_request) Successful in 2m21s
darwin / detect relevant changes (pull_request) Successful in 4s
fuzz / cargo fuzz smoke (per target) (pull_request) Successful in 1m6s
pr / wire schema is compatible with the base (pull_request) Successful in 8s
pr / frontend smoke (x86_64-linux) (pull_request) Successful in 54s
pr / publish felis (x86_64-linux) (pull_request) Has been skipped
windows / detect relevant changes (pull_request) Successful in 3s
windows / windows docs-only no-op (pull_request) Has been skipped
windows / cargo clippy (Windows cross) (pull_request) Successful in 14s
windows / frontend smoke (Windows) (pull_request) Successful in 2m32s
windows / package felis (x86_64-pc-windows-msvc) (pull_request) Has been skipped
darwin / darwin docs-only no-op (pull_request) Has been skipped
darwin / build felis (aarch64-darwin) (pull_request) Successful in 51s
pr / nix flake check (pull_request) Successful in 30s
pr / cargo build / clippy / test / deny (pull_request) Successful in 1m48s
windows / cargo nextest (Windows) (pull_request) Successful in 17m54s
51fe82879a
Keep development environment definitions, repository automation, and packaging helpers in directories that reflect their ownership. This prevents Nix-only development dependencies and executable repo tools from being mistaken for consumer-facing flake outputs.

Assisted-by: Pi Coding Agent:GPT 5.6 Luna
natsukium deleted branch refactor/repo-layout 2026-09-12 22:00:38 +09:00
Sign in to join this conversation.
No description provided.