Add Tangled CI lint workflow using nix fmt
Add a Spindle pipeline that checks formatting on push to main and on
pull requests using `nix fmt -- --fail-on-change`. This uses the
treefmt-nix configuration from flake.nix as the single source of truth
for all formatting rules (nixfmt, shfmt, swift-format).
Since the app is macOS-only (Swift + AppKit/SwiftUI), we can't build
or test on Linux CI, but we can verify formatting.
Changes to flake.nix:
- Add x86_64-linux to systems so treefmt evaluates on Linux CI
- Gate packages.default behind stdenv.hostPlatform.isDarwin since the
Swift/macOS derivation can't build on Linux
authored by
nolith.dev
and committed by
tangled.org
508e2121
b3a5af73