@@ -53,6 +53,13 @@ ND_CFG=neurodebian/neurodebian.cfg
5353ND_CFG_TOOL=neurodebian/tools/nd_querycfg
5454
5555ND_STACKBREW=stackbrew/library/neurodebian
56+
57+ function get_key() {
58+ gpg --import --import-options show-only --import neurodebian/keys/neurodebian-archive-keyring.gpg 2> /dev/null | sed -n -e " /^pub.*$1 /{n;s/^[[:space:]]*//;p;}"
59+ }
60+ GPG_OLD_KEY=$( get_key dsa1024)
61+ GPG_NEW_KEY=$( get_key rsa4096)
62+
5663# remove previously generated files
5764git rm -fr dockerfiles/*
5865
@@ -98,6 +105,13 @@ for release in $all_releases; do
98105 sed_cmd=
99106 fi
100107 release_tag=$release$release_suf
108+ # Use older key in older releases
109+ if [[ " $release_desc " =~ ^Ubuntu\ 2[024].* ]] || [[ " $release_desc " =~ ^Debian\ GNU/Linux\ 1[012]* ]]; then
110+ print_verbose 1 " Using old GPG key for $release_desc "
111+ GPG_KEY=" $GPG_OLD_KEY " ;
112+ else
113+ GPG_KEY=" $GPG_NEW_KEY " ;
114+ fi
101115 # Generate dockerfile
102116 release_tags+=" ${release} _$release_suf "
103117 mkdir -p " dockerfiles/$release_tag "
@@ -124,9 +138,9 @@ RUN set -x \\
124138# this makes "apt-key list" output prettier too!
125139RUN set -x \\
126140 && export GNUPGHOME="\$ (mktemp -d)" \\
127- && gpg --batch --keyserver keyserver.ubuntu.com --recv-keys DD95CC430502E37EF840ACEEA5D32F012649A5A9 \\
141+ && gpg --batch --keyserver keyserver.ubuntu.com --recv-keys $GPG_KEY \\
128142 && mkdir -p /etc/apt/keyrings \\
129- && gpg --batch --export --armor DD95CC430502E37EF840ACEEA5D32F012649A5A9 > /etc/apt/keyrings/neurodebian.asc \\
143+ && gpg --batch --export --armor $GPG_KEY > /etc/apt/keyrings/neurodebian.asc \\
130144 && rm -rf "\$ GNUPGHOME"
131145
132146RUN { \\
0 commit comments