diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 852dc074956f8985f1a1c8ad0c247d23124a0f97..6ef38692a375fbf9f0ee9cb20a804fc0eac51117 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -85,7 +85,7 @@ tar-aarch64-linux-deb10:
   script:
     - ./.gitlab/tar.sh
   variables:
-    TARBALL_ARCHIVE_SUFFIX: aarch64-linux-deb10
+    TARBALL_ARCHIVE_SUFFIX: Linux-aarch64
     TARBALL_EXT: tar.xz
 
 build-armv7-linux-deb10:
@@ -107,7 +107,7 @@ tar-armv7-linux-deb10:
   script:
     - ./.gitlab/tar.sh
   variables:
-    TARBALL_ARCHIVE_SUFFIX: armv7-linux-deb10
+    TARBALL_ARCHIVE_SUFFIX: Linux-armv7
     TARBALL_EXT: tar.xz
 
 build-x86_64-linux:
@@ -129,7 +129,7 @@ tar-x86_64-linux:
   script:
     - ./.gitlab/tar.sh
   variables:
-    TARBALL_ARCHIVE_SUFFIX: x86_64-linux
+    TARBALL_ARCHIVE_SUFFIX: Linux-x86_64
     TARBALL_EXT: tar.xz
 
 build-x86_64-linux-alpine:
@@ -153,7 +153,7 @@ tar-x86_64-linux-alpine:
   script:
     - ./.gitlab/tar.sh
   variables:
-    TARBALL_ARCHIVE_SUFFIX: x86_64-linux-alpine
+    TARBALL_ARCHIVE_SUFFIX: Linux-alpine-x86_64
     TARBALL_EXT: tar.xz
 
 build-x86_64-freebsd12:
@@ -173,7 +173,7 @@ tar-x86_64-freebsd12:
   script:
     - ./.gitlab/tar.sh
   variables:
-    TARBALL_ARCHIVE_SUFFIX: x86_64-freebsd12
+    TARBALL_ARCHIVE_SUFFIX: FreeBSD12-x86_64
     TARBALL_EXT: tar.xz
 
 build-x86_64-freebsd13:
@@ -197,7 +197,7 @@ tar-x86_64-freebsd13:
   script:
     - ./.gitlab/tar.sh
   variables:
-    TARBALL_ARCHIVE_SUFFIX: x86_64-freebsd13
+    TARBALL_ARCHIVE_SUFFIX: FreeBSD13-x86_64
     TARBALL_EXT: tar.xz
 
 build-x86_64-darwin:
@@ -217,7 +217,7 @@ tar-x86_64-darwin:
   script:
     - ./.gitlab/tar.sh
   variables:
-    TARBALL_ARCHIVE_SUFFIX: x86_64-darwin
+    TARBALL_ARCHIVE_SUFFIX: macOS-x86_64
     TARBALL_EXT: tar.xz
 
 build-aarch64-darwin:
@@ -269,7 +269,7 @@ tar-aarch64-darwin:
   script:
     - arch -arm64 /bin/bash ./.gitlab/tar.sh
   variables:
-    TARBALL_ARCHIVE_SUFFIX: aarch64-darwin
+    TARBALL_ARCHIVE_SUFFIX: macOS-aarch64
     TARBALL_EXT: tar.xz
 
 build-x86_64-windows:
@@ -293,5 +293,5 @@ tar-x86_64-windows:
     - $env:CHERE_INVOKING = "yes"
     - bash '-lc' "TARBALL_ARCHIVE_SUFFIX=$env:TARBALL_ARCHIVE_SUFFIX TARBALL_EXT=$env:TARBALL_EXT .gitlab/tar.sh"
   variables:
-    TARBALL_ARCHIVE_SUFFIX: x86_64-windows
+    TARBALL_ARCHIVE_SUFFIX: Windows-x86_64
     TARBALL_EXT: zip
diff --git a/.gitlab/tar.sh b/.gitlab/tar.sh
index 7fd719589d3cc5925f8f5b832f166637c1ab4e58..ba713d63fa2723ced7b9492cbea4b5aeae8b3391 100755
--- a/.gitlab/tar.sh
+++ b/.gitlab/tar.sh
@@ -8,14 +8,15 @@ ls -la out/
 cd out/
 
 # create tarball/zip
-TARBALL_PREFIX="haskell-language-server-$("$CI_PROJECT_DIR/out/haskell-language-server-wrapper" --numeric-version)"
+HLS_VERSION="$("$CI_PROJECT_DIR/out/haskell-language-server-wrapper" --numeric-version)"
+TARBALL_PREFIX="haskell-language-server"
 case "${TARBALL_EXT}" in
     zip)
-        zip "${TARBALL_PREFIX}-${TARBALL_ARCHIVE_SUFFIX}.${TARBALL_EXT}" haskell-language-server-*
+        zip "${TARBALL_PREFIX}-${TARBALL_ARCHIVE_SUFFIX}-${HLS_VERSION}.zip" haskell-language-server-*
 		find . -type f ! -name '*.zip' -delete
         ;;
     tar.xz)
-        tar caf "${TARBALL_PREFIX}-${TARBALL_ARCHIVE_SUFFIX}.${TARBALL_EXT}" haskell-language-server-*
+        tar caf "${TARBALL_PREFIX}-${TARBALL_ARCHIVE_SUFFIX}-${HLS_VERSION}.tar.xz" haskell-language-server-*
 		find . -type f ! -name '*.tar.xz' -delete
         ;;
     *)