Skip to content

Merge dev into main#19

Merged
jleni merged 4 commits intomainfrom
dev
Mar 30, 2026
Merged

Merge dev into main#19
jleni merged 4 commits intomainfrom
dev

Conversation

@jleni
Copy link
Copy Markdown
Member

@jleni jleni commented Mar 30, 2026

Summary

Included PRs

Karrq and others added 4 commits March 20, 2026 16:28
* feat: add Nix flake with package and NixOS/nix-darwin module

- flake.nix: exposes package, overlay, nixosModules and darwinModules
- nix/package.nix: buildRustPackage derivation with Apple SDK for macOS
- nix/module.nix: declarative module with options for:
  - services.kache.enable: installs the package
  - services.kache.rustcWrapper: sets RUSTC_WRAPPER system-wide
  - services.kache.daemon.enable: manages launchd (macOS) / systemd (Linux)
  - services.kache.settings: freeform submodule that generates config.toml
    with typed options for known fields and passthrough for new ones
- Same module works on both NixOS and nix-darwin
- Tests disabled in sandbox (tmutil not available in Nix build sandbox)

* fix: strip null values from settings before TOML generation

TOML has no null representation. The typed options use null as
'use kache built-in default', so these need to be filtered out
before calling tomlFormat.generate.

* perf: avoid incremental gc for daemon

In daemon mode, cwd might often be `/`, triggering a full filesystem
walk.
Prefer cleaning incremental cache dirs directly instead, for crates that
are cached with `kache`, avoiding the need for this sweep

* feat(config): KACHE_CONFIG env

* fix: coerce configFile to string for launchd EnvironmentVariables
* fix(nix): make module self-contained and restore tracked incremental GC

* fix(tui): keep logs out of alternate screen

* refactor(daemon): reuse a persistent store handle

* perf(tui): avoid fetching entry lists off the store tab
@jleni jleni merged commit 0f26868 into main Mar 30, 2026
2 checks passed
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.

2 participants