diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e344a99b2d9131c4f6437d3dcd867dd2cd70157a..d3d39ece2ee7191b41c1de0b8d133a474e935bd3 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -26,15 +26,14 @@ build:
   script:
     - NPM_VERSION=$(grep '"version":' package.json -m 1 | cut -d '"' -f 4)
     - RELEASE_DIR=sinologie-anki-pack-$NPM_VERSION
-    - ZIP="$RELEASE_DIR.zip"
-    - ZIP_DOWNLOAD_URL="https://gitlab.phaidra.org/kartenaale/sinologie-anki-pack/-/jobs/$CI_JOB_ID/artifacts/raw/$ZIP"
+    - DIR_DOWNLOAD_URL="https://gitlab.phaidra.org/kartenaale/sinologie-anki-pack/-/jobs/$CI_JOB_ID/artifacts/raw/$RELEASE_DIR"
     # just to be safe. because the rule does not track folder renamings
     - rm -f apkgs.d.mk
-    - BUILD_PREFIX="" make check ANNOUNCEMENT $ZIP
+    - BUILD_PREFIX="" make check ANNOUNCEMENT $RELEASE_DIR
     - echo BUILD_JOB_ID=$CI_JOB_ID > build.env
     - echo NPM_VERSION=$NPM_VERSION >> build.env
     - echo RELEASE_DIR=$RELEASE_DIR >> build.env
-    - echo ZIP_DOWNLOAD_URL=$ZIP_DOWNLOAD_URL >> build.env
+    - echo DIR_DOWNLOAD_URL=$DIR_DOWNLOAD_URL >> build.env
   artifacts:
     paths:
       - sinologie-anki-pack-*
@@ -102,8 +101,8 @@ create-gitlab-release:
     description: CHANGELOG-$NPM_VERSION.md
     assets:
       links:
-        - name: "sinologie-anki-pack-$NPM_VERSION.zip"
-          url: '$ZIP_DOWNLOAD_URL'
+        - name: "sinologie-anki-pack-$NPM_VERSION"
+          url: '$DIR_DOWNLOAD_URL'
   
 whatsapp-ping:
   stage: notify
diff --git a/make/release.mk b/make/release.mk
index f8eb0b596473c1bc430932cfee8c488269e661b0..22f8b795b6b376c21bce16e3ee08a5102f022024 100644
--- a/make/release.mk
+++ b/make/release.mk
@@ -8,7 +8,10 @@ MOSTLY_CLEAN += $(RELEASE_ZIP)
 MOSTLY_CLEAN_DIRS += $(RELEASE_DIR)
 
 .PHONY: release
-release: $(RELEASE_ZIP)
+release: $(RELEASE_DIR)
+
+.PHONY: release-zip
+release-zip: $(RELEASE_ZIP)
 
 $(RELEASE_DIR): \
 $(DOCS_HTML) \