nixpkgs/nixos
Luflosi 78f357f134
nixos/kubo: make the configuration options idempotent
Without this commit, unsetting any of the `services.kubo.settings` options does not reset the value back to the default. This commit gets rid of this statefulness.
This is achieved by generating the default config, applying the user specified config options to it and then patching the `Identity` and `Pinning` config options from the old config back in. This new config is then applied using `ipfs config replace`.
The only remaining stateful parts of the config are the `Identity` and `Pinning.RemoteServices` settings as those can't be changed with `ipfs config replace`. `Pinning.RemoteServices` also contains secrets that shouldn't be in the Nix store. Setting these options wasn't possible before as it would result in an error when the daemon tried to start. I added some assertions to guard against this case.
2023-01-24 16:33:03 +01:00
..
doc nixos/kubo: make the configuration options idempotent 2023-01-24 16:33:03 +01:00
lib nixos/make-options-doc: use markdown-it-py for rendering 2023-01-22 17:50:09 +01:00
maintainers nixos/lxc-container: undo some of the minimal profile stuff 2022-12-09 23:18:37 +03:00
modules nixos/kubo: make the configuration options idempotent 2023-01-24 16:33:03 +01:00
tests Merge pull request #208712 from mattmelling/cloudlog 2023-01-24 02:52:36 +01:00
COPYING
default.nix
README
release-combined.nix nixos/tests/printing: split into service/socket 2022-12-07 15:57:45 +01:00
release-small.nix nixos/release: add acme to tested set 2022-10-25 07:22:27 +10:00
release.nix nixos: Add sd_image_minimal_new_kernel_no_zfs 2022-12-22 23:07:19 -05:00

*** NixOS ***

NixOS is a Linux distribution based on the purely functional package
management system Nix.  More information can be found at
https://nixos.org/nixos and in the manual in doc/manual.