Explorar el Código

ci: try resupport x86

MystiPanda hace 1 año
padre
commit
a46bbf05ec

+ 6 - 0
.github/build-for-linux/entrypoint.sh

@@ -10,6 +10,12 @@ rustup target add "$INPUT_TARGET"
 if [ "$INPUT_TARGET" = "x86_64-unknown-linux-gnu" ]; then
     apt-get update
     apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev patchelf
+elif [ "$INPUT_TARGET" = "i686-unknown-linux-gnu" ]; then
+    dpkg --add-architecture i386
+    apt-get update
+    apt-get install -y libstdc++6:i386 libgdk-pixbuf2.0-dev:i386 libatomic1:i386 gcc-multilib g++-multilib libwebkit2gtk-4.0-dev:i386 libssl-dev:i386 libgtk-3-dev:i386 librsvg2-dev:i386 patchelf:i386 libayatana-appindicator3-dev:i386
+    export PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig/:$PKG_CONFIG_PATH
+    export PKG_CONFIG_SYSROOT_DIR=/
 elif [ "$INPUT_TARGET" = "aarch64-unknown-linux-gnu" ]; then
     dpkg --add-architecture arm64
     apt-get update

+ 16 - 6
.github/workflows/alpha.yml

@@ -18,6 +18,8 @@ jobs:
         include:
           - os: windows-latest
             target: x86_64-pc-windows-msvc
+          - os: windows-latest
+            target: i686-pc-windows-msvc
           - os: windows-latest
             target: aarch64-pc-windows-msvc
           - os: macos-latest
@@ -87,6 +89,8 @@ jobs:
         include:
           - os: ubuntu-latest
             target: x86_64-unknown-linux-gnu
+          - os: ubuntu-latest
+            target: i686-unknown-linux-gnu
           - os: ubuntu-latest
             target: aarch64-unknown-linux-gnu
           - os: ubuntu-latest
@@ -115,14 +119,17 @@ jobs:
           cat > release.txt << 'EOF'
           ### 我应该下载哪个版本?
 
-          - Windows x86_64架构: x64-setup.exe (不支持win7)
+          - Windows 64位: x64-setup.exe (不支持win7)
+          - Windows 32位: x86-setup.exe (不支持win7)
           - Windows arm64架构: arm64-setup.exe
           - MacOS intel芯片: x64.dmg
           - MacOS apple M芯片: aarch64.dmg (提示文件损坏看下面FAQ)
-          - Linux x64架构: amd64.AppImage/amd64.deb
+          - Linux 64位: amd64.AppImage/amd64.deb
+          - Linux 32位: i386.deb
           - Linux arm64架构: arm64.deb
           - Linux armv7架构: armhf.deb
-          - Windows 便携板 x86_64架构: x64_portable.zip (不推荐使用,无法自动更新)
+          - Windows 便携板 64位: x64_portable.zip (不推荐使用,无法自动更新)
+          - Windows 便携板 32位: x86_portable.zip (不推荐使用,无法自动更新)
           - Windows 便携板 arm64架构: arm64_portable.zip (不推荐使用,无法自动更新)
 
           ### FAQ
@@ -177,14 +184,17 @@ jobs:
           cat > release.txt << 'EOF'
           ### 我应该下载哪个版本?
 
-          - Windows x86_64架构: x64-setup.exe (不支持win7)
+          - Windows 64位: x64-setup.exe (不支持win7)
+          - Windows 32位: x86-setup.exe (不支持win7)
           - Windows arm64架构: arm64-setup.exe
           - MacOS intel芯片: x64.dmg
           - MacOS apple M芯片: aarch64.dmg (提示文件损坏看下面FAQ)
-          - Linux x64架构: amd64.AppImage/amd64.deb
+          - Linux 64位: amd64.AppImage/amd64.deb
+          - Linux 32位: i386.deb
           - Linux arm64架构: arm64.deb
           - Linux armv7架构: armhf.deb
-          - Windows 便携板 x86_64架构: x64_portable.zip (不推荐使用,无法自动更新)
+          - Windows 便携板 64位: x64_portable.zip (不推荐使用,无法自动更新)
+          - Windows 便携板 32位: x86_portable.zip (不推荐使用,无法自动更新)
           - Windows 便携板 arm64架构: arm64_portable.zip (不推荐使用,无法自动更新)
 
           ### FAQ

+ 1 - 0
scripts/portable.mjs

@@ -9,6 +9,7 @@ const alpha = process.argv.slice(2)[1];
 
 const ARCH_MAP = {
   "x86_64-pc-windows-msvc": "x64",
+  "i686-pc-windows-msvc": "x86",
   "aarch64-pc-windows-msvc": "arm64",
 };
 

+ 14 - 0
scripts/updater.mjs

@@ -45,10 +45,12 @@ async function resolveUpdater() {
       "darwin-intel": { signature: "", url: "" },
       "darwin-x86_64": { signature: "", url: "" },
       "linux-x86_64": { signature: "", url: "" },
+      "linux-x86": { signature: "", url: "" },
       "linux-aarch64": { signature: "", url: "" },
       "linux-armv7": { signature: "", url: "" },
       "windows-x86_64": { signature: "", url: "" },
       "windows-aarch64": { signature: "", url: "" },
+      "windows-x86": { signature: "", url: "" },
     },
   };
 
@@ -67,6 +69,16 @@ async function resolveUpdater() {
       updateData.platforms["windows-x86_64"].signature = sig;
     }
 
+    // win32 url
+    if (name.endsWith("x64-setup.nsis.zip")) {
+      updateData.platforms["windows-x86"].url = browser_download_url;
+    }
+    // win32 signature
+    if (name.endsWith("x64-setup.nsis.zip.sig")) {
+      const sig = await getSignature(browser_download_url);
+      updateData.platforms["windows-x86"].signature = sig;
+    }
+
     // win arm url
     if (name.endsWith("arm64-setup.nsis.zip")) {
       updateData.platforms["windows-aarch64"].url = browser_download_url;
@@ -105,6 +117,7 @@ async function resolveUpdater() {
     if (name.endsWith("amd64.AppImage.tar.gz")) {
       updateData.platforms.linux.url = browser_download_url;
       updateData.platforms["linux-x86_64"].url = browser_download_url;
+      updateData.platforms["linux-x86"].url = browser_download_url;
       // 暂时使用x64版本的url和sig,使得可以检查更新,但aarch64版本还不支持构建appimage
       updateData.platforms["linux-aarch64"].url = browser_download_url;
       updateData.platforms["linux-armv7"].url = browser_download_url;
@@ -114,6 +127,7 @@ async function resolveUpdater() {
       const sig = await getSignature(browser_download_url);
       updateData.platforms.linux.signature = sig;
       updateData.platforms["linux-x86_64"].signature = sig;
+      updateData.platforms["linux-x86"].url = browser_download_url;
       // 暂时使用x64版本的url和sig,使得可以检查更新,但aarch64版本还不支持构建appimage
       updateData.platforms["linux-aarch64"].signature = sig;
       updateData.platforms["linux-armv7"].signature = sig;