]> git.immae.eu Git - perso/Immae/Config/Nix.git/commitdiff
Fix ISRG root certificate chain
authorIsmaël Bouya <ismael.bouya@normalesup.org>
Sat, 23 Oct 2021 00:06:42 +0000 (02:06 +0200)
committerIsmaël Bouya <ismael.bouya@normalesup.org>
Sat, 23 Oct 2021 00:06:57 +0000 (02:06 +0200)
modules/private/certificates.nix

index 1881ac8d498fda5bf7c223ceb3f9b5c87f5063aa..b97d0bc1dd3c3492a6c90b5dd42aac5b80f73ac9 100644 (file)
             '');
             ExecStartPost =
               let
+                ISRG_Root_X1 = pkgs.fetchurl {
+                  url = "https://letsencrypt.org/certs/isrgrootx1.pem";
+                  sha256 = "1la36n2f31j9s03v847ig6ny9lr875q3g7smnq33dcsmf2i5gd92";
+                };
+                fix_ISRG_Root_X1 = pkgs.writeScript "fix-pem" ''
+                  cat ${ISRG_Root_X1} | grep -v " CERTIFICATE" | \
+                    sed -i.bak -ne "/MIIFYDCCBEigAwIBAgIQQAF3ITfU6UK47naqPGQKtzANBgkqhkiG9w0BAQsFADA/ {r /dev/stdin" -e ":a; n; /Dfvp7OOGAN6dEOM4+qR9sdjoSYKEBpsr6GtPAQw4dy753ec5/ { b }; ba };p" chain.pem fullchain.pem full.pem
+                '';
                 script = pkgs.writeScript "acme-post-start" ''
                   #!${pkgs.runtimeShell} -e
                   install -m 0755 -o root -g root -d /var/lib/acme
 
                   chmod ${fileMode} *.pem
                   chown '${data.user}:${data.group}' *.pem
+                  ${fix_ISRG_Root_X1}
 
                   if [ "$KEY_CHANGED" = "yes" ]; then
                     : # noop in case postRun is empty