nix-home
vaultenv
Our great sponsors
nix-home | vaultenv | |
---|---|---|
1 | 2 | |
5 | 432 | |
- | 0.7% | |
6.6 | 4.3 | |
9 days ago | 17 days ago | |
Nix | Haskell | |
- | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nix-home
-
Nix is the ultimate DevOps toolkit
https://github.com/pwm/nix-home
The readme was/is more of a short note to myself than for users, nevertheless this is how i manage my entire home env on my mac and it works beautifully.
vaultenv
-
Using secrets in kube prom stack helm chart
Having secrets in an external system (like Hashicorp Vault) and then using [vaultenv](https://github.com/channable/vaultenv) to inject these during `helm install/upgrade`. So you end up with something like `vaultenv ... -- helm install --set config.myvar=${VAULTENV_INJECTED_ENV_VALUE}` (or similar). Point is I use vaultenv to run helm with secrets injected as env vars only during the helm run, and use helm's `--set` flag to set individual secrets. This can get tedious if you have many secrets as you have to specify each of them individually with --set. Usually I wrap this in a Makefile or a shell script for easier invoking.
-
Nix is the ultimate DevOps toolkit
> Also, regarding DevOps, the tooling around Nix makes it a little brittle for anything event based--rapidly changing configurations on the fly due to network conditions (Consul, Ansible, etc). This is where configuration management is heading, and due to the static nature of Nix, delegating dynamic changes is hard/anti pattern.
Channable uses Consul, Vault, etc. for dynamic configuration and it works with Nix just fine.
You don't have to use static configuration files with Nix. Either fetch dynamic stuff using the Consul, Vault, etc. APIs at runtime or use a tool like vaultenv [1] or similar if you don't want this logic in your application code.
Put those tools in your systemd service before launching your app, and you're good to go.
(NB: I was DevOps teamlead at Channable while a part of this work was being done. Sad that I won't be able to see the final picture.)
[1]: https://github.com/channable/vaultenv
What are some alternatives?
nickel - Better configuration for less
nixos - My NixOS Configurations
haskell-nix - Nix and Haskell in production
rosdistro - This repo maintains a lists of repositories for each ROS distribution
nix-1p - A (more or less) one page introduction to Nix, the language.
asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
nixos - NixOS Configuration
nix-ros-overlay - ROS overlay for the Nix package manager
pndev - CLI tool for es-development