4 ms·
My main problem with Nix isn't the language, which is fine. My problem is that Nix shoehorns everything into it; I have to write my nginx config (for example) i
by ColonelPhantom 4y ago
My main problem with Nix isn't the language, which is fine. My problem is that Nix shoehorns everything into it; I have to write my nginx config (for example) in Nix for some bespoke nixpkg.
I would much rather just version my nginx config written in nginx config, and let Nix pull that up, or something like that. Then you get all the benefits of Nix (I think?) but my configuration is also readable for someone who doesn't know Nix. Plus I can use my existing knowledge (as well as the wealth of online available docs), instead of something obscure.
- jbboehr 4y agoNixOS needs to handle generating the config to make service configurations composable. If you don't want that, you might as well write your own systemd unit. That being said, most services have an option to use verbatim configuration files[0] or fragments[1][2][3]. [0]: https://search.nixos.org/options?show=services.yggdrasil.configFile https://search.nixos.org/options?show=services.yggdrasil.con... [1]: https://search.nixos.org/options?show=services.nginx.config https://search.nixos.org/options?show=services.nginx.config [2]: https://search.nixos.org/options?show=services.bind.extraConfig https://search.nixos.org/options?show=services.bind.extraCon... [3]: https://search.nixos.org/options?show=services.nginx.appendConfig https://search.nixos.org/options?show=services.nginx.appendC...
- pxc 4y ago> If you don't want that, you might as well write your own systemd unit. This might sound glib, but it's a great idea for a simple workaround for users who want to use some other system to template their config files. Wouldn't take much boilerplate at all.
- jbboehr 4y agoI was dead serious :) Although it seems nginx is bit complicated[0], in general, it's fairly easy to set up new systemd services. [0]: https://github.com/NixOS/nixpkgs/blob/nixos-22.11/nixos/modules/services/web-servers/nginx/default.nix#L883-L953 https://github.com/NixOS/nixpkgs/blob/nixos-22.11/nixos/modu...