-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
nixos/modules: Add security.pki.caBundle option and make all services use it for CA bundles #352244
base: master
Are you sure you want to change the base?
Conversation
… use it for CA bundles Previously some modules used `config.environment.etc."ssl/certs/ca-certificates.crt".source`, some used `"/etc/ssl/certs/ca-certificates.crt"`, and some used `"${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"`. These were all bad in one way or another: - `config.environment.etc."ssl/certs/ca-certificates.crt".source` relies on `source` being set; if `text` is set instead this breaks, introducing a weird undocumented requirement - `"/etc/ssl/certs/ca-certificates.crt"` is probably okay but very un-nix. It's a magic string, and the path doesn't change when the file changes (and so you can't trigger service reloads, for example, when the contents change in a new system activation) - `"${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"` silently doesn't include the options from `security.pki`
9c2e671
to
d37c608
Compare
@ofborg test gonic navidrome gocd-agent gocd-server postfix db-rest gitlab portunus radicle tandoor-recipes ocsinventory-agent parsedmarc uptime-kuma biboumi gateone privoxy stunnel unbound hound nix-daemon transmission cryptpad dex nextcloud peertube sogo |
I don't know what command to run to reproduce the ofborg/CI fail.
|
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/prs-ready-for-review/3032/4842 |
64b8011
to
484786a
Compare
484786a
to
af5fd5b
Compare
af5fd5b
to
d37c608
Compare
Previously some modules used
config.environment.etc."ssl/certs/ca-certificates.crt".source
, some used"/etc/ssl/certs/ca-certificates.crt"
, and some used"${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"
. These were all bad in one way or another:config.environment.etc."ssl/certs/ca-certificates.crt".source
relies onsource
being set; iftext
is set instead this breaks, introducing a weird undocumented requirement"/etc/ssl/certs/ca-certificates.crt"
is probably okay but very un-nix. It's a magic string, and the path doesn't change when the file changes (and so you can't trigger service reloads, for example, when the contents change in a new system activation)"${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"
silently doesn't include the options fromsecurity.pki
Things done
Add a 👍 reaction to pull requests you find important.