feat(home-manager): add dev/observability CLIs and group into modules - #1873
Conversation
|
|
You do not have enough credits to review this pull request. Please purchase more credits to continue. |
📝 WalkthroughWalkthroughThis PR reorganizes Home Manager's package and program configuration by creating four new dedicated program modules for Grafana, Protobuf, Vector, and VictoriaMetrics; wiring them into the programs registry; and curating the base package list with new CLI tools while moving stern and victoria\* packages to their respective specialized modules. ChangesHome Manager Program Module Reorganization
Possibly related PRs
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Code Review
This pull request reorganizes and adds several packages and program modules to the Home Manager configuration. Key changes include moving VictoriaMetrics tools and Stern to dedicated program modules, adding new modules for Grafana and Protobuf, and introducing OpenTofu to the Terraform module. Feedback suggests moving the newly added 'vector' package directly to 'packages/default.nix' instead of creating a dedicated program module for it, in order to maintain consistency with the repository's convention for single-package tools.
Mesa DescriptionTL;DRAdds a suite of developer and observability CLI tools to the Home Manager configuration, organizing cohesive vendor toolchains into dedicated modules and installing standalone utilities flatly. What changed?
Notes / decisions
Verification
Description generated by Mesa. Update settings |
What
Adds a batch of developer and observability CLI tooling to the home-manager config, organized library-specifically (cohesive vendor/ecosystem toolchains as
programs/modules; unrelated single-vendor CLIs stay flat).New
programs/modulesgrafana-loki,grafana-alloyvectorbuf,ghz,grpcurl,protobufvictorialogs,victoriametrics,victoriatraces(moved from the flat list)Extended existing modules
+stern+opentofuFlat additions to
packages/default.nix(unrelated-vendor CLIs)_1password-cli, angle-grinder, bandwhich, choose, croc, fx, gh-dash, git-absorb, gron, hexyl, iperf3, jnv, lnav, mtr, nmap, oha, opentelemetry-collector-contrib, process-compose, rclone, restic, sops, termshark, tig, trippy, websocatWhy
The original ask was to install a set of CLIs (Loki / observability led). Organized per the repo convention: cohesive vendor or single-technology toolchains become
programs/<name>modules (like the existingk8s/prometheus/terraform); unrelated single-vendor CLIs stay flat inpackages/default.nix.Notes / decisions
vmctlnot added - nixpkgsvmctlis an NVMe/QEMU testing tool, not the VictoriaMetrics migration tool; the realvmctlalready ships in thevictoriametricspackage.Verification
nix fmt- clean (0 changed)nix-instantiate --parse- all changed files OKnix eval .#darwinConfigurations.aarch64-darwin.system.drvPath- evaluates to a valid derivation (config builds)Summary by cubic
Adds developer and observability CLIs to Home Manager and groups ecosystem tools into vendor modules. Extends
k8sandterraform, and keepsvectorflat inpackages.grafana(grafana-loki,grafana-alloy),protobuf(buf,ghz,grpcurl,protobuf),victoriametrics(victorialogs,victoriametrics,victoriatraces).k8saddsstern;terraformaddsopentofu.packages/default.nix:_1password-cli,angle-grinder,bandwhich,choose,croc,fx,gh-dash,git-absorb,gron,hexyl,iperf3,jnv,lnav,mtr,nmap,oha,opentelemetry-collector-contrib,process-compose,rclone,restic,sops,termshark,tig,trippy,vector,websocat.Written for commit 63082fb. Summary will update on new commits.