[fix] use x64 and amd64 instead of x86_64 in artifact name

This commit is contained in:
dijunkun
2025-09-03 17:10:17 +08:00
parent 309d9d6ed6
commit 7c2b3f8c8d
6 changed files with 54 additions and 51 deletions

View File

@@ -15,9 +15,9 @@ env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
jobs: jobs:
# Linux x86_64 # Linux amd64
build-linux-x86_64: build-linux-amd64:
name: Build on Ubuntu 22.04 x86_64 name: Build on Ubuntu 22.04 amd64
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
container: container:
image: crossdesk/ubuntu22.04:latest image: crossdesk/ubuntu22.04:latest
@@ -62,14 +62,14 @@ jobs:
- name: Package - name: Package
run: | run: |
chmod +x ./scripts/linux/pkg_x86_64.sh chmod +x ./scripts/linux/pkg_amd64.sh
./scripts/linux/pkg_x86_64.sh ${LEGAL_VERSION} ./scripts/linux/pkg_amd64.sh ${LEGAL_VERSION}
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: crossdesk-linux-x86_64-${{ env.LEGAL_VERSION }} name: crossdesk-linux-amd64-${{ env.LEGAL_VERSION }}
path: ${{ github.workspace }}/crossdesk-linux-x86_64-${{ env.LEGAL_VERSION }}.deb path: ${{ github.workspace }}/crossdesk-linux-amd64-${{ env.LEGAL_VERSION }}.deb
# Linux arm64 # Linux arm64
build-linux-arm64: build-linux-arm64:
@@ -139,11 +139,11 @@ jobs:
strategy: strategy:
matrix: matrix:
include: include:
- arch: x86_64 - arch: x64
runner: macos-13 runner: macos-13
cache-key: intel cache-key: intel
out-dir: ./build/macosx/x86_64/release/crossdesk out-dir: ./build/macosx/x86_64/release/crossdesk
package_script: ./scripts/macosx/pkg_x86_64.sh package_script: ./scripts/macosx/pkg_x64.sh
- arch: arm64 - arch: arm64
runner: macos-14 runner: macos-14
cache-key: arm cache-key: arm
@@ -202,8 +202,8 @@ jobs:
cp crossdesk-macos-${{ matrix.arch }}-${{ env.VERSION_NUM }}.pkg release/ cp crossdesk-macos-${{ matrix.arch }}-${{ env.VERSION_NUM }}.pkg release/
# Windows # Windows
build-windows: build-windows-x64:
name: Build on Windows name: Build on Windows x64
runs-on: windows-2022 runs-on: windows-2022
env: env:
XMAKE_GLOBALDIR: D:\xmake_global XMAKE_GLOBALDIR: D:\xmake_global
@@ -279,13 +279,14 @@ jobs:
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: crossdesk-win-x86_64-${{ env.VERSION_NUM }} name: crossdesk-win-x64-${{ env.VERSION_NUM }}
path: ${{ github.workspace }}/scripts/windows/crossdesk-win-x86_64-${{ env.VERSION_NUM }}.exe path: ${{ github.workspace }}/scripts/windows/crossdesk-win-x64-${{ env.VERSION_NUM }}.exe
release: release:
name: Publish Release name: Publish Release
if: startsWith(github.ref, 'refs/tags/v') if: startsWith(github.ref, 'refs/tags/v')
needs: [build-linux-x86_64, build-linux-arm64, build-macos, build-windows] needs:
[build-linux-amd64, build-linux-arm64, build-macos, build-windows-x64]
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
@@ -307,11 +308,11 @@ jobs:
- name: Rename artifacts - name: Rename artifacts
run: | run: |
mkdir -p release mkdir -p release
cp artifacts/crossdesk-macos-x86_64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-macos-x86_64-${{ steps.version.outputs.VERSION_NUM }}.pkg cp artifacts/crossdesk-macos-x64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-macos-x64-${{ steps.version.outputs.VERSION_NUM }}.pkg
cp artifacts/crossdesk-macos-arm64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-macos-arm64-${{ steps.version.outputs.VERSION_NUM }}.pkg cp artifacts/crossdesk-macos-arm64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-macos-arm64-${{ steps.version.outputs.VERSION_NUM }}.pkg
cp artifacts/crossdesk-linux-x86_64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-linux-x86_64-${{ steps.version.outputs.VERSION_NUM }}.deb cp artifacts/crossdesk-linux-amd64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-linux-amd64-${{ steps.version.outputs.VERSION_NUM }}.deb
cp artifacts/crossdesk-linux-arm64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-linux-arm64-${{ steps.version.outputs.VERSION_NUM }}.deb cp artifacts/crossdesk-linux-arm64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-linux-arm64-${{ steps.version.outputs.VERSION_NUM }}.deb
cp artifacts/crossdesk-win-x86_64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-win-x86_64-${{ steps.version.outputs.VERSION_NUM }}.exe cp artifacts/crossdesk-win-x64-${{ steps.version.outputs.VERSION_NUM }}/* release/crossdesk-win-x64-${{ steps.version.outputs.VERSION_NUM }}.exe
- name: List release files - name: List release files
run: ls -lh release/ run: ls -lh release/

View File

@@ -30,10 +30,10 @@ jobs:
- name: Update download links - name: Update download links
run: | run: |
cd pages cd pages
sed -E -i "s/crossdesk-win-x86_64-[0-9]+\.[0-9]+\.[0-9]+\.exe/crossdesk-win-x86_64-${VERSION_NUM}.exe/g" index.html sed -E -i "s/crossdesk-win-x64-[0-9]+\.[0-9]+\.[0-9]+\.exe/crossdesk-win-x64-${VERSION_NUM}.exe/g" index.html
sed -E -i "s/crossdesk-macos-x86_64-[0-9]+\.[0-9]+\.[0-9]+\.pkg/crossdesk-macos-x86_64-${VERSION_NUM}.pkg/g" index.html sed -E -i "s/crossdesk-macos-x64-[0-9]+\.[0-9]+\.[0-9]+\.pkg/crossdesk-macos-x64-${VERSION_NUM}.pkg/g" index.html
sed -E -i "s/crossdesk-macos-arm64-[0-9]+\.[0-9]+\.[0-9]+\.pkg/crossdesk-macos-arm64-${VERSION_NUM}.pkg/g" index.html sed -E -i "s/crossdesk-macos-arm64-[0-9]+\.[0-9]+\.[0-9]+\.pkg/crossdesk-macos-arm64-${VERSION_NUM}.pkg/g" index.html
sed -E -i "s/crossdesk-linux-x86_64-[0-9]+\.[0-9]+\.[0-9]+\.deb/crossdesk-linux-x86_64-${VERSION_NUM}.deb/g" index.html sed -E -i "s/crossdesk-linux-amd64-[0-9]+\.[0-9]+\.[0-9]+\.deb/crossdesk-linux-amd64-${VERSION_NUM}.deb/g" index.html
sed -E -i "s/crossdesk-linux-arm64-[0-9]+\.[0-9]+\.[0-9]+\.deb/crossdesk-linux-arm64-${VERSION_NUM}.deb/g" index.html sed -E -i "s/crossdesk-linux-arm64-[0-9]+\.[0-9]+\.[0-9]+\.deb/crossdesk-linux-arm64-${VERSION_NUM}.deb/g" index.html
- name: Commit & Push changes - name: Commit & Push changes

View File

@@ -111,7 +111,7 @@ chmod +x "$DEBIAN_DIR/postinst"
dpkg-deb --build "$DEB_DIR" dpkg-deb --build "$DEB_DIR"
OUTPUT_FILE="${PKG_NAME}-${APP_VERSION}-${ARCHITECTURE}.deb" OUTPUT_FILE="${PKG_NAME}-linux-${ARCHITECTURE}-${APP_VERSION}.deb"
mv "$DEB_DIR.deb" "$OUTPUT_FILE" mv "$DEB_DIR.deb" "$OUTPUT_FILE"
rm -rf "$DEB_DIR" rm -rf "$DEB_DIR"

View File

@@ -1,16 +1,18 @@
#!/bin/bash #!/bin/bash
set -e set -e
PKG_NAME="crossdesk"
APP_NAME="CrossDesk" APP_NAME="CrossDesk"
APP_VERSION="$1" APP_VERSION="$1"
ARCHITECTURE="arm64" ARCHITECTURE="arm64"
MAINTAINER="Junkun Di <junkun.di@hotmail.com>" MAINTAINER="Junkun Di <junkun.di@hotmail.com>"
DESCRIPTION="A simple cross-platform remote desktop client." DESCRIPTION="A simple cross-platform remote desktop client."
DEB_DIR="$APP_NAME-$APP_VERSION" DEB_DIR="${PKG_NAME}-${APP_VERSION}"
DEBIAN_DIR="$DEB_DIR/DEBIAN" DEBIAN_DIR="$DEB_DIR/DEBIAN"
BIN_DIR="$DEB_DIR/usr/local/bin" BIN_DIR="$DEB_DIR/usr/bin"
CERT_SRC_DIR="$DEB_DIR/opt/$APP_NAME/certs" CERT_SRC_DIR="$DEB_DIR/opt/$PKG_NAME/certs"
ICON_BASE_DIR="$DEB_DIR/usr/share/icons/hicolor" ICON_BASE_DIR="$DEB_DIR/usr/share/icons/hicolor"
DESKTOP_DIR="$DEB_DIR/usr/share/applications" DESKTOP_DIR="$DEB_DIR/usr/share/applications"
@@ -19,18 +21,20 @@ rm -rf "$DEB_DIR"
mkdir -p "$DEBIAN_DIR" "$BIN_DIR" "$CERT_SRC_DIR" "$DESKTOP_DIR" mkdir -p "$DEBIAN_DIR" "$BIN_DIR" "$CERT_SRC_DIR" "$DESKTOP_DIR"
cp build/linux/arm64/release/crossdesk "$BIN_DIR" cp build/linux/arm64/release/crossdesk "$BIN_DIR"
chmod +x "$BIN_DIR/$PKG_NAME"
ln -s "$PKG_NAME" "$BIN_DIR/$APP_NAME"
cp certs/crossdesk.cn_root.crt "$CERT_SRC_DIR/crossdesk.cn_root.crt" cp certs/crossdesk.cn_root.crt "$CERT_SRC_DIR/crossdesk.cn_root.crt"
for size in 16 24 32 48 64 96 128 256; do for size in 16 24 32 48 64 96 128 256; do
mkdir -p "$ICON_BASE_DIR/${size}x${size}/apps" mkdir -p "$ICON_BASE_DIR/${size}x${size}/apps"
cp "icons/linux/crossdesk_${size}x${size}.png" \ cp "icons/linux/crossdesk_${size}x${size}.png" \
"$ICON_BASE_DIR/${size}x${size}/apps/crossdesk.png" "$ICON_BASE_DIR/${size}x${size}/apps/${PKG_NAME}.png"
done done
chmod +x "$BIN_DIR/crossdesk"
cat > "$DEBIAN_DIR/control" << EOF cat > "$DEBIAN_DIR/control" << EOF
Package: $APP_NAME Package: $PKG_NAME
Version: $APP_VERSION Version: $APP_VERSION
Architecture: $ARCHITECTURE Architecture: $ARCHITECTURE
Maintainer: $MAINTAINER Maintainer: $MAINTAINER
@@ -43,13 +47,13 @@ Priority: optional
Section: utils Section: utils
EOF EOF
cat > "$DESKTOP_DIR/$APP_NAME.desktop" << EOF cat > "$DESKTOP_DIR/$PKG_NAME.desktop" << EOF
[Desktop Entry] [Desktop Entry]
Version=$APP_VERSION Version=$APP_VERSION
Name=$APP_NAME Name=$APP_NAME
Comment=$DESCRIPTION Comment=$DESCRIPTION
Exec=/usr/local/bin/crossdesk Exec=/usr/bin/$PKG_NAME
Icon=crossdesk Icon=$PKG_NAME
Terminal=false Terminal=false
Type=Application Type=Application
Categories=Utility; Categories=Utility;
@@ -57,50 +61,48 @@ EOF
cat > "$DEBIAN_DIR/postrm" << EOF cat > "$DEBIAN_DIR/postrm" << EOF
#!/bin/bash #!/bin/bash
# post-removal script for $APP_NAME
set -e set -e
if [ "\$1" = "remove" ] || [ "\$1" = "purge" ]; then if [ "\$1" = "remove" ] || [ "\$1" = "purge" ]; then
rm -f /usr/local/bin/crossdesk rm -f /usr/bin/$PKG_NAME || true
rm -f /usr/share/applications/$APP_NAME.desktop rm -f /usr/bin/$APP_NAME || true
rm -rf /opt/$APP_NAME rm -f /usr/share/applications/$PKG_NAME.desktop || true
rm -rf /opt/$PKG_NAME/certs || true
for size in 16 24 32 48 64 96 128 256; do for size in 16 24 32 48 64 96 128 256; do
rm -f /usr/share/icons/hicolor/\${size}x\${size}/apps/crossdesk.png rm -f /usr/share/icons/hicolor/\${size}x\${size}/apps/$PKG_NAME.png || true
done done
fi fi
exit 0 exit 0
EOF EOF
chmod +x "$DEBIAN_DIR/postrm" chmod +x "$DEBIAN_DIR/postrm"
cat > "$DEBIAN_DIR/postinst" << 'EOF' cat > "$DEBIAN_DIR/postinst" << 'EOF'
#!/bin/bash #!/bin/bash
set -e set -e
CERT_SRC="/opt/CrossDesk/certs" CERT_SRC="/opt/crossdesk/certs"
CERT_FILE="crossdesk.cn_root.crt" CERT_FILE="crossdesk.cn_root.crt"
for user_home in /home/*; do for user_home in /home/*; do
[ -d "$user_home" ] || continue [ -d "$user_home" ] || continue
username=$(basename "$user_home") username=$(basename "$user_home")
config_dir="$user_home/.config/CrossDesk/certs" config_dir="$user_home/.config/crossdesk/certs"
target="$config_dir/$CERT_FILE" target="$config_dir/$CERT_FILE"
if [ ! -f "$target" ]; then if [ ! -f "$target" ]; then
mkdir -p "$config_dir" mkdir -p "$config_dir" || true
cp "$CERT_SRC/$CERT_FILE" "$target" cp "$CERT_SRC/$CERT_FILE" "$target" || true
chown -R "$username:$username" "$user_home/.config/CrossDesk" chown -R "$username:$username" "$user_home/.config/crossdesk" || true
echo "✔ Installed cert for $username at $target" echo "✔ Installed cert for $username at $target"
fi fi
done done
if [ -d "/root" ]; then if [ -d "/root" ]; then
config_dir="/root/.config/CrossDesk/certs" config_dir="/root/.config/crossdesk/certs"
mkdir -p "$config_dir" mkdir -p "$config_dir" || true
cp "$CERT_SRC/$CERT_FILE" "$config_dir/$CERT_FILE" cp "$CERT_SRC/$CERT_FILE" "$config_dir/$CERT_FILE" || true
chown -R root:root /root/.config/CrossDesk chown -R root:root /root/.config/crossdesk || true
fi fi
exit 0 exit 0
@@ -115,4 +117,4 @@ mv "$DEB_DIR.deb" "$OUTPUT_FILE"
rm -rf "$DEB_DIR" rm -rf "$DEB_DIR"
echo "Deb package for $OUTPUT_FILE created successfully." echo "Deb package created: $OUTPUT_FILE"

View File

@@ -6,7 +6,7 @@ APP_NAME_UPPER="CrossDesk"
EXECUTABLE_PATH="build/macosx/x86_64/release/crossdesk" EXECUTABLE_PATH="build/macosx/x86_64/release/crossdesk"
APP_VERSION="$1" APP_VERSION="$1"
PLATFORM="macos" PLATFORM="macos"
ARCH="x86_64" ARCH="x64"
IDENTIFIER="cn.crossdesk.app" IDENTIFIER="cn.crossdesk.app"
ICON_PATH="icons/macos/crossdesk.icns" ICON_PATH="icons/macos/crossdesk.icns"
MACOS_MIN_VERSION="10.12" MACOS_MIN_VERSION="10.12"
@@ -29,7 +29,7 @@ rm -rf "${APP_BUNDLE}" "${PKG_NAME}" "${DMG_NAME}" build_pkg_temp CrossDesk_dmg_
mkdir -p build_pkg_temp mkdir -p build_pkg_temp
mkdir -p "${MACOS_DIR}" "${RESOURCES_DIR}" mkdir -p "${MACOS_DIR}" "${RESOURCES_DIR}"
cp "${EXECUTABLE_PATH}" "${MACOS_DIR}/${APP_NAME_UPPER}" # 拷贝时使用大写的应用名称 cp "${EXECUTABLE_PATH}" "${MACOS_DIR}/${APP_NAME_UPPER}"
chmod +x "${MACOS_DIR}/${APP_NAME_UPPER}" chmod +x "${MACOS_DIR}/${APP_NAME_UPPER}"
if [ -f "${ICON_PATH}" ]; then if [ -f "${ICON_PATH}" ]; then

View File

@@ -37,7 +37,7 @@ RequestExecutionLevel admin
; ------ MUI <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ------ ; ------ MUI <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ------
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "crossdesk-win-x86_64-${PRODUCT_VERSION}.exe" OutFile "crossdesk-win-x64-${PRODUCT_VERSION}.exe"
InstallDir "$PROGRAMFILES\CrossDesk" InstallDir "$PROGRAMFILES\CrossDesk"
ShowInstDetails show ShowInstDetails show