diff --git a/app/electron-builder-linux-arm64.yml b/app/electron-builder-linux-arm64.yml new file mode 100644 index 000000000..32319674f --- /dev/null +++ b/app/electron-builder-linux-arm64.yml @@ -0,0 +1,59 @@ +productName: "SiYuan" +appId: "org.b3log.siyuan" +asar: false +compression: "normal" +copyright: "© 2024 Yunnan Liandi Technology Co., Ltd." +artifactName: "siyuan-${version}-${os}-arm64.${ext}" +extraMetadata: + main: "electron/main.js" +directories: + output: "build" +files: + - "electron" +extraFiles: + - from: "../LICENSE" + to: "LICENSE" + +linux: + icon: "src/assets/icon.png" + category: "Utility" + extraResources: + - from: "kernel-linux-arm64" + to: "kernel" + target: + - target: "tar.gz" + arch: "arm64" + - target: "AppImage" + arch: "arm64" + +extraResources: + - from: "changelogs" + to: "changelogs" + - from: "stage" + to: "stage" + - from: "guide" + to: "guide" + filter: "!**/{.DS_Store,.git,.gitignore,.idea}" + - from: "appearance/boot" + to: "appearance/boot" + filter: "!**/{.DS_Store}" + - from: "appearance/icons" + to: "appearance/icons" + filter: "!**/{.DS_Store}" + - from: "appearance/langs" + to: "appearance/langs" + filter: "!**/{.DS_Store}" + - from: "appearance/emojis" + to: "appearance/emojis" + filter: "!**/{.DS_Store}" + - from: "appearance/themes/midnight" + to: "appearance/themes/midnight" + filter: "!**/{.DS_Store,custom.css}" + - from: "appearance/themes/daylight" + to: "appearance/themes/daylight" + filter: "!**/{.DS_Store,custom.css}" + - from: "src/assets/fonts" + to: "appearance/fonts" + filter: "!**/{.DS_Store}" + - from: "pandoc/pandoc-linux-amd64.zip" + to: "pandoc.zip" \ No newline at end of file diff --git a/app/package.json b/app/package.json index 07df386c7..39671af48 100644 --- a/app/package.json +++ b/app/package.json @@ -22,7 +22,8 @@ "dist-arm64": "ELECTRON_MIRROR=https://cnpmjs.org/mirrors/electron/ electron-builder --arm64 --config electron-builder-arm64.yml --publish=never", "dist-darwin": "ELECTRON_MIRROR=https://cnpmjs.org/mirrors/electron/ electron-builder --mac --config electron-builder-darwin.yml --publish=never", "dist-darwin-arm64": "ELECTRON_MIRROR=https://cnpmjs.org/mirrors/electron/ electron-builder --arm64 --mac --config electron-builder-darwin-arm64.yml --publish=never", - "dist-linux": "ELECTRON_MIRROR=https://cnpmjs.org/mirrors/electron/ electron-builder --linux --config electron-builder-linux.yml --publish=never" + "dist-linux": "ELECTRON_MIRROR=https://cnpmjs.org/mirrors/electron/ electron-builder --linux --config electron-builder-linux.yml --publish=never", + "dist-linux-arm64": "ELECTRON_MIRROR=https://cnpmjs.org/mirrors/electron/ electron-builder --arm64 --linux --config electron-builder-linux.yml --publish=never" }, "keywords": [ "markdown", diff --git a/scripts/linux-build.sh b/scripts/linux-build.sh index 307208ba2..52c457264 100755 --- a/scripts/linux-build.sh +++ b/scripts/linux-build.sh @@ -8,6 +8,7 @@ cd .. echo 'Cleaning Builds' rm -rf app/build rm -rf app/kernel-linux +rm -rf app/kernel-linux-arm64 echo 'Building Kernel' @@ -20,6 +21,10 @@ export CGO_ENABLED=1 export GOOS=linux export GOARCH=amd64 go build --tags fts5 -v -o "../app/kernel-linux/SiYuan-Kernel" -ldflags "-s -w" . + +export GOARCH=arm64 +export CC=~/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc +go build --tags fts5 -v -o "../app/kernel-linux/SiYuan-Kernel-arm64" -ldflags "-s -w" . cd .. echo 'Building Electron App'