diff --git a/.gitlab-ci-psnc.yml b/.gitlab-ci-psnc.yml
index fc3b52b6c6b521fd9d45f8a6fec209d9b12f5e8d..92a0c68d08506c98033134d2b8bb0608d17259bb 100644
--- a/.gitlab-ci-psnc.yml
+++ b/.gitlab-ci-psnc.yml
@@ -1,7 +1,13 @@
 ---
 stages:
   - sonarqube
-  - upload_linux_binary
+  - upload_linux_shell
+  - upload_linux_amd64_binary
+  #- upload_windows_amd64_binary
+
+variables:
+  ARTIFACTORY_BASE_URL: https://artifactory.software.geant.org/artifactory/acme-downloader
+  ARTIFACT_NAME: acme-downloader
 
 sonarqube:
   image: sonarsource/sonar-scanner-cli:${SONAR_SCANNER_CLI_VERSION}
@@ -15,14 +21,36 @@ sonarqube:
   tags:
     - sonarqube
 
-upload_linux_binary:
-  stage: upload_linux_binary
+upload_linux_shell:
+  stage: upload_linux_shell
+  only:
+    - tags
+    - branches
+  image: curlimages/curl:7.76.1
+  script:
+    - 'curl -sSf -H "X-JFrog-Art-Api:${ARTIFACTORY_TOKEN}" -X PUT -T ./acme-downloader.sh ${ARTIFACTORY_BASE_URL}/${ARTIFACT_NAME}.sh'
+  tags:
+    - sonarqube
+
+upload_linux_amd64_binary:
+  stage: upload_linux_amd64_binary
   only:
     - tags
     - branches
   script:
     - ./build.sh --os=linux --arch=amd64 --version=$CI_COMMIT_TAG --upx
-    - echo $PROJECT_ACCESS_TOKEN $CI_PROJECT_NAME ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${CI_PROJECT_NAME}
-    - 'curl --header "JOB-TOKEN: $PROJECT_ACCESS_TOKEN" --upload-file $CI_PROJECT_NAME "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${CI_PROJECT_NAME}"'
+    - 'curl -sSf -H "X-JFrog-Art-Api:${ARTIFACTORY_TOKEN}" -X PUT -T ./acme-downloader ${ARTIFACTORY_BASE_URL}/${ARTIFACT_NAME}_linux_amd64'
   tags:
     - visnu_shell
+
+#upload_windows_amd64_binary:
+#  stage: upload_windows_amd64_binary
+#  only:
+#    - tags
+#    - branches
+#  script:
+#    - ./build.sh --os=windows --arch=amd64 --version=$CI_COMMIT_TAG --upx
+#    - 'curl -sSf -H "X-JFrog-Art-Api:${ARTIFACTORY_TOKEN}" -X PUT -T ./acme-downloader ${ARTIFACTORY_BASE_URL}/${ARTIFACT_NAME}_windows_amd64.exe'
+#  tags:
+#    - visnu_shell
+
diff --git a/acme-downloader.sh b/acme-downloader.sh
index 6d1e4d2b88bbd4eff38a8e59ec0745c29ac83f26..66d24c3ac424f01e99b7836db4e5e79d39c623b9 100755
--- a/acme-downloader.sh
+++ b/acme-downloader.sh
@@ -8,9 +8,10 @@
 # and if it contains at least the cert-name
 #
 LOCAL_MD5=$(md5sum $0 | awk '{print $1}')
-REMOTE_MD5=$(curl -s https://repositories.geant.org/pub/acme/acme-downloader.sh | md5sum | awk '{print $1}')
+SCRIPT_URL="https://artifactory.software.geant.org/artifactory/acme-downloader/acme-downloader.sh"
+REMOTE_MD5=$(curl -s $SCRIPT_URL | md5sum | awk '{print $1}')
 if [[ $LOCAL_MD5 != $REMOTE_MD5 ]]; then
-    echo "$0 differs from https://repositories.geant.org/pub/acme/acme-downloader.sh"
+    echo "$0 differs from $SCRIPT_URL"
     echo "suggesting that you are running an older version"
     echo ""
 fi
@@ -44,7 +45,7 @@ if ! source /etc/os-release &>/dev/null; then
     echo "no idea what to do with this OS: I was not able to access /etc/os-release"
     echo ""
     clean_up
-elif [[ "$ID" == "ubuntu" ]] || [[ "$ID" == "debian" ]]; then
+elif [[ "$ID" == "ubuntu" ]] || [[ "$ID" == "debian" ]] || [[ "$ID" == "arch"* ]]; then
     CERT_BASE="/etc/ssl/certs"
     KEY_BASE="/etc/ssl/private"
     GROUPNAME="ssl-cert"