Linux · macOS · Build Guide

自行编译 LaQuake

官方预编译包仅覆盖 Windows 64 位。Linux 与 macOS 用户可获取源码,借助 Electron 与 electron-builder 在本地完成编译打包。本指南同时汇总了各系统所需的仓库与官方教程入口。

开始前请注意

  • 项目内置的图形化安装器 / 卸载器为 Windows 专用;Linux 与 macOS 编译产物仅包含应用本体,不含安装向导。
  • 非 Windows 平台未经完整测试,界面行为(如开机自启动、窗口样式)可能存在差异,请以实际运行结果为准。
  • 编译前必须准备 OPPO Sans 4.0 字体文件并放入 Fonts/ 目录,否则可能编译失败或界面排版错乱。
  • 源码仅供个人私下学习交流,禁止商业用途、二次分发与修改复用。
仓库与官方教程

你会用到的链接

使用你的 Agent 帮助你编译

使用 TRAE、Cursor 或其他 AI 编程助手时,把下面这一句话发给它,即可让 Agent 带你完成从克隆源码到打包产物的全过程。

请帮我从源码编译 LaQuake(Electron 地震预警应用):克隆 https://github.com/Latte0903/LaQuake.git ,提醒我下载 OPPO Sans 4.0 字体放入 Fonts 目录,然后执行 npm install 与 npm start 验证,并根据我的操作系统(Linux 或 macOS)用 electron-builder 打包出可运行的产物,遇到报错请逐步排查。

请在 Agent 中打开本项目所在的文件夹后再发送指令;Agent 执行安装、打包等命令前会征求你的确认。

编译步骤

从源码到可运行程序

以下命令在 Linux 终端与 macOS 终端(zsh / bash)中通用。

  1. 1

    安装 Node.js(LTS)与 Git

    建议使用 Node.js 20 LTS 或更高版本,并确保已安装 Git。可通过 nvm 管理 Node 版本。

    node -v && npm -v && git --version
  2. 2

    获取源代码

    克隆仓库后进入项目目录;也可在 GitHub 仓库页点击「Code → Download ZIP」直接下载源码压缩包。

    git clone https://github.com/Latte0903/LaQuake.git
    cd LaQuake
  3. 3

    放入 OPPO Sans 4.0 字体(必需)

    从 OPPO 官网下载并解压字体,将 OPPO Sans 4.0.ttf 放入项目根目录的 Fonts/ 文件夹中,确认路径与下方一致。

    # 期望的目录结构
    LaQuake/
    └─ Fonts/
       └─ OPPO Sans 4.0.ttf
  4. 4

    安装项目依赖

    项目基于 Electron 31,依赖包括 axios、ws、electron-store 等,electron-builder 作为开发依赖一并安装。

    npm install
  5. 5

    本地启动验证

    在打包前先以开发模式启动,确认字体、界面与数据源均正常工作。

    npm start
  6. 打包 Linux 应用(AppImage)

    项目已内置 build:linux 脚本,产物输出到 dist/ 目录。如需 deb 等格式,可直接追加目标参数。

    # 使用 package.json 内置脚本(AppImage)
    npm run build:linux
    
    # 或直接指定多种目标格式
    npx electron-builder --linux AppImage deb tar.gz

    运行 AppImage 需要系统支持 FUSE(多数现代发行版默认具备);若无法运行,可改用 npx electron-builder --linux dir 生成解包目录直接执行。

  7. 打包 macOS 应用(.app / zip / dmg)

    仓库默认未配置 mac 构建目标,可直接通过 electron-builder 命令行打包。发布用 zip / dmg 建议在 macOS 设备上构建,跨平台编译存在系统限制。

    # 仅本地验证:生成解包的 .app 目录
    npx electron-builder --mac dir
    
    # 在 macOS 上构建分发包(Apple Silicon 与 Intel)
    npx electron-builder --mac zip dmg --arm64 --x64

    当前仓库仅提供 ico / png 图标,macOS 正式分发建议自行准备 build/icon.icns;未签名应用首次打开可能被 Gatekeeper 拦截,可右键「打开」或执行 xattr -dr com.apple.quarantine /应用/LaQuake.app 放行。

平台对照

各系统构建要点

Linux

  • 内置脚本 npm run build:linux,目标为 AppImage
  • 需要 FUSE 支持,或改用 --linux dir 解包运行
  • 图标使用 Media/LaQuake.png,可按需替换
  • 安装器 / 卸载器与开机自启动等能力为 Windows 专用

macOS

  • 通过 npx electron-builder --mac 手动指定目标
  • zip / dmg 推荐在 macOS 本机构建,支持 arm64 与 x64
  • 未签名,需在 Gatekeeper 中手动放行
  • 建议补充 icns 图标并自行验证窗口与通知行为
编译遇到问题?

把报错发给我们

自行编译属于进阶操作。如遇到依赖安装或构建报错,请附上操作系统版本、Node 版本、完整终端报错发送邮件,我们会尽力协助。