-
-
Notifications
You must be signed in to change notification settings - Fork 74
Description
Hey all! With nh 4.2.0 on the horizon I'd like to outline future goals of nh. As such I am creating this roadmap to keep track of features I'd like to work on the future and give nh users a place to request new features. This issue will be regularly updated as per user requests and based on maintainers' discretion on what to add next.
Close Future
Before 4.2.0
- There are still a few bugs remaining in NH that need fixing. Recent PRs have managed to mostly address those, but it'd be great to close outstanding issue reports before 4.2
- Alternative privilege escalation utilities (fix: support to other privilege elevation programs. #92)
After 4.2.0
- NixOS VM tests & snapshot tests
- Benchmarks with Criterion or similar
- Implement
nh home infoandnh darwin infocommands similar tonh os infofor displaying relevant generations -
nh os editto open flake/configuration directory with$EDITOR. This is a part of the feature-parity section, but it's an easy task so I'd like to get it out of my way when I get the chance. - An offline search implementation, perhaps even a search TUI featuring something like rippkgs.
I think one of the first issues we'd like to focus on is feaure-parity with nixos-rebuild and the new nixos-rebuild-ng. I don't believe the latter is very different, but worth considering nevertheless if we strive for mass adoption of nh
nixos-rebuild-
switch -
boot -
test -
build -
dry-build -
dry-activate -
edit -
build-image -
build-vm(Add build-vm subcommand tonh os buildto build a VM start script. #208) -
build-vm-with-bootloader(Add build-vm subcommand tonh os buildto build a VM start script. #208) -
--upgrade(flakes) -
--upgrade(channels) -
--install-bootloader -
--no-build-nix,--fast(only this is supported) -
--rollbacknixos: implement rollbacks #265 -
--builders(via passthrough of options) -
--profile-name -
--build-host,--target-hostnixos: add--target-hostand--build-hostoptions #276-
--use-substitutes,--use-remote-sudo(nh as a deployment tool)
-
-
--flake -
-I nixos-config=...
-
Distant Future
While not exactly a priority, there are some features I'd like to implement to extend nh's position to something beyond just a structured bash script. Namely I want to consolidate relevant NixOS-adjecent tooling into nh as subcommands.
Critical
-
nh {os,home,darwin} generate-configto replacenixos-generate-configand similar HM/Nix-Darwin counterparts (are there any? Can we use flake templates instead here?) -
nh os enterto replacenixos-enter