跳转到内容

安装

  • Git,用于获取代码。
  • rustup,Rust 安装程序。仓库在 rust-toolchain.toml 中固定了 Rust 1.95.0,首次构建时 rustup 会安装该版本。
  • 用于链接的 C 工具链:macOS 上的 Xcode Command Line Tools、Windows 上的 Visual Studio C++ 生成工具,或 Linux 上的 GCC。
  • 支持 OpenGL 的显卡驱动。桌面应用使用 egui 的 glow 后端进行绘制。

选择你的系统。页面会默认打开你当前所用系统的选项卡。

  1. 安装提供链接器的 Xcode Command Line Tools:

    终端窗口
    xcode-select --install
  2. 安装 rustup(来自 rustup.rs):

    终端窗口
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  3. 获取代码并构建:

    终端窗口
    git clone https://github.com/aprajnaparamita/larrygram.git
    cd larrygram
    cargo build --release -p larrygram
  4. 启动 Larrygram:

    终端窗口
    ./target/release/larrygram

Larrygram 首次启动时,欢迎向导会请你选择 Panel Modern 或 Panel Classic。开发中 如果你关闭向导,Larrygram 会使用 Panel Modern。你可以从 Help > Welcome 重新打开向导。

你也可以在启动应用时选择布局。下面这四个值将随 v1.0 alpha 推出;当前版本接受 2016 和 365。

终端窗口
./target/release/larrygram --ui-layout panel-classic

可用的值为 panel-modern、panel-classic、panel-2016 和 panel-365。在当次会话中,该参数优先于已保存的设置。

你自己构建的版本运行时不会出现警告。对于未来的发布文件,是否进行代码签名尚未确定 TODO(verify)。如果 macOS 提示某个应用“无法打开”,请在 Finder 中按住 Control 键点按该应用,然后选择打开。如果 Windows SmartScreen 显示“Windows 已保护你的电脑”,请选择更多信息,然后选择仍要运行;只有对从官方发布页面下载的文件才应这样做。

在你克隆的仓库中运行:

终端窗口
git pull
cargo build --release -p larrygram
  1. 删除你克隆的 larrygram 文件夹。
  2. 也可以删除你的设置。Larrygram 将设置保存在 eframe 工具包为应用 id Larrygram 创建的应用数据文件夹中 TODO(verify) exact paths。
  3. 也可以运行 rustup self uninstall 卸载 Rust。

每个版本都会公布 SHA-256 校验和。请将你下载的文件的校验和与公布的校验和进行比较:

终端窗口
shasum -a 256 <file>

Larrygram 也可以构建为浏览器版本(WebAssembly,使用 trunk 构建)。我们计划在 larrygram.org 上提供托管版本。要在本地运行:

终端窗口
cargo install trunk
cd apps/larrygram-web
trunk serve

在浏览器中,Open 会上传文件,Save 会下载文件。

toolchain '1.95.0' is not installed : 在仓库中运行任意 cargo 命令,rustup 就会安装固定版本的工具链。如果没有安装,请在仓库文件夹中运行 rustup toolchain install。

linker 'cc' not found 或 link.exe not found : 安装适用于你的系统的 C 工具链(请参阅准备工作)。

Linux:出现与 X11、Wayland 或 xkbcommon 库有关的错误 : 安装 eframe 为你的发行版列出的开发包 TODO(verify) package list。

cargo xtask gate 因缺少工具而失败 : 完整关卡需要 cargo-deny、cargo-llvm-cov、带 cargo-fuzz 的 nightly 工具链,以及 wasm32-unknown-unknown 目标。使用 cargo xtask gate --quick 可以跳过覆盖率、wasm 和模糊测试。

本页译自英文。如有表述不当之处,请告诉我们。