Unionvisor systemd NixOS module and `Bundle` system refactor (closes #21) (#27)
- Refactors the `Bundle` (formerly: `Bindir`). system. Bundles are now fully immutable such that they can live in the `/nix/store`, and the `bins/` directory no longer contains a `current` symlink. - The `current` symlink is now instead handled by `Symlinker`, which asserts validity of binaries in a bundle, and then creates a `current` link in the `--root`, fully decoupled from the bundle itself. - Bundles now contian a `meta.json`, which describes their structure. - We've decided to fully remove the `revert` system - Since data in `config/` is also mutated by `uniond`, we now backup the entire `home/` dir. - Updates naming to avoid confusion between the _unionvisor root_ and the _uniond home_. The former is now called `root` everywhere. (Prev. it was called `home` in some cases) - Various small fixes (typos such as "monniker") - Adds `cargo-nextest` to the devShell - Bumps workspace rust channel to `nightly-2023-05-16` - Fixes `clippy::pedantic` warnings for the entire crate I'm planning on exposing more configuration options to the `nixosModule`, but this PR is already quite big so this will be done in a future PR.
C
cor committed
0f5571686e484b1b17616cd431bb950a6f62c118
Committed by GitHub <noreply@github.com>
on 5/23/2023, 8:32:37 PM