ALPHA: wire is a tool to deploy nixos systems wire.althaea.zone/
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

update feature table & add a speed table

+27 -9
+27 -9
doc/tutorial/overview.md
··· 28 28 29 29 ## Why Wire? 30 30 31 - | Features | Wire | Colmena | 32 - | ------------------------ | ------------------ | ------------------ | 33 - | Node Tagging | :white_check_mark: | :white_check_mark: | 34 - | Secret Management | :white_check_mark: | :white_check_mark: | 35 - | Parallel Evaluation | :white_check_mark: | :white_check_mark: | 36 - | Node Tagging | :white_check_mark: | :white_check_mark: | 37 - | Remote Builds | :white_check_mark: | :white_check_mark: | 38 - | Pipeline Support | :white_check_mark: | :x:[^2] | 39 - | Non-Root Deployments[^4] | :white_check_mark: | :x:[^3] | 31 + ### Features 32 + 33 + | Features | Wire | Colmena | 34 + | ---------------------------------- | ------------------ | ------------------ | 35 + | Node Tagging | :white_check_mark: | :white_check_mark: | 36 + | Secret Management | :white_check_mark: | :white_check_mark: | 37 + | Parallel Evaluation | :white_check_mark: | :white_check_mark: | 38 + | Node Tagging | :white_check_mark: | :white_check_mark: | 39 + | Remote Builds | :white_check_mark: | :white_check_mark: | 40 + | Key Services | :white_check_mark: | :white_check_mark: | 41 + | Pipeline Support | :white_check_mark: | :x:[^2] | 42 + | Non-Root Deployments[^4] | :white_check_mark: | :x:[^3] | 43 + | `--flake` accepts flakerefs | :white_check_mark: | :x: | 44 + | REPL & Eval expressions | :x: | :white_check_mark: | 45 + | Adhoc remote command execution[^5] | :x: | :white_check_mark: | 40 46 41 47 [^2]: You need to write custom nix code to use Colmena hive metadata inside environments like CI pipelines, bash scripting, etc., which requires a knowledge of its internals. Recently it agained the [eval feature](https://colmena.cli.rs/unstable/features/eval.html) which has improved the situation since wire was first started. 42 48 ··· 46 52 You may deploy with _any_ user who can login through SSH, whether they be 47 53 `wheel` or not. You may need to enter your password multiple times for the various elevated 48 54 steps wire needs to perform. 55 + 56 + [^5]: Wire lacks an equivalent to `colmena exec`. 57 + 58 + ### Speed 59 + 60 + Wire is about >2x faster than colmena deploying [identical large 61 + hives](https://github.com/mrshmllow/wire/blob/main/bench/run.nix). 62 + 63 + | Command | Mean [s] | Min [s] | Max [s] | Relative | 64 + |:---|---:|---:|---:|---:| 65 + | `colmena@pinned` | 301.977 ± 17.026 | 288.432 | 321.090 | 2.51 ± 0.35 | 66 + | `wire@HEAD` | 120.123 ± 15.044 | 110.539 | 137.462 | 1.00 |