Skip to content

fix: Make source updates safe and simplify Nix packaging - #7

Merged
Fuwn merged 8 commits into
mainfrom
fix/source-update-safety
Sep 22, 2026
Merged

Fuwn merged 8 commits into
mainfrom
fix/source-update-safety

Conversation

@Fuwn

@Fuwn Fuwn commented Sep 22, 2026

Copy link
Copy Markdown
Owner

Yae could truncate its environment file during a failed save, interpret source URLs via a shell during tag discovery, and create sources without complete hashes. This change makes updates safer while retaining the single-file environment format.

  • Replace the shell pipeline with direct Git arguments and explicit tag filtering.
  • Save environments atomically, preserve symlinks and existing permissions, and save updates only after all selected sources succeed.
  • Populate both hash formats, repair missing legacy hashes, and validate source configuration while accepting harmless legacy binary options.
  • Simplify subprocess execution and update orchestration, support cancellation, and correct CLI argument handling, help, logging flags, and dry-run wording.
  • Simplify Nix packaging, declare Git/Nix runtime dependencies, and add focused Go regression tests and CI checks.
  • Correct floating-source examples and make targeted README corrections while preserving its structure and integration examples.

Validation

  • Race-enabled Go tests, go vet, module tidiness, formatting, and whitespace checks passed.
  • Native Apple Silicon macOS Nix checks passed, including schema validation and packaged execution with real Git/Nix, an empty PATH, and an isolated Nix store.
  • The Ubuntu workflow passed locally via act under x86-64 emulation. Nix syscall filtering was disabled only inside that container to accommodate emulation.
  • Local Linux CI exposed a build-home isolation issue, which this change fixes.

@Fuwn
Fuwn merged commit 7511646 into main Sep 22, 2026
4 checks passed
@Fuwn
Fuwn deleted the fix/source-update-safety branch September 22, 2026 08:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant