本文提供了AppFlowy的详细安装说明,涵盖了终端用户安装选项、开发环境设置和部署配置。有关整体系统架构的信息,请参阅架构概述。有关构建系统和部署管道的详细信息,请参阅构建系统和任务编排。
AppFlowy为桌面和移动平台的终端用户提供了多种安装渠道。
macOS、Windows和Linux的预构建桌面应用程序可通过多个分发渠道获取。
| 平台 | 安装方法 | 来源 |
|---|---|---|
| macOS, Windows, Linux | 直接下载 | GitHub Releases |
| Linux | 包管理器 | FlatHub, Snapcraft |
| 跨平台 | 归档 | Sourceforge |
移动版本通过官方应用商店分发
适用于需要自定义部署的用户
来源: README.md42-52
AppFlowy为每个主要平台提供了自动化安装脚本
macOS安装脚本处理Rust安装、Flutter配置和必要的系统依赖项
安装的关键组件
rustup-init安装Rust工具链cargo-make和duckscript_cli构建工具Linux安装脚本支持多种包管理器
安装的系统依赖项
keybinder-3.0-devlibnotify-devlibmpv-dev mpvWindows安装脚本处理Windows特有的环境
额外的Windows配置
来源: frontend/scripts/install_dev_env/install_macos.sh1-94 frontend/scripts/install_dev_env/install_linux.sh1-119 frontend/scripts/install_dev_env/install_windows.sh1-113
| 组件 | 版本 | 目的 |
|---|---|---|
| Rust | 1.81+ | 后端编译,核心库 |
| Flutter | 3.27.4 | 前端框架,跨平台UI |
| cargo-make | 0.37.18+ | 任务编排,构建自动化 |
| duckscript_cli | 最新版 | 构建任务脚本 |
| protoc_plugin | 21.1.2 | 协议缓冲区代码生成 |
来源: frontend/scripts/install_dev_env/install_macos.sh84-93 frontend/scripts/makefile/tool.toml1-112
AppFlowy通过多阶段构建过程提供对容器化部署的Docker支持
构建过程采用两阶段方法
容器内的关键构建命令
docker-compose.yml配置为GUI应用程序提供了X11转发
重要提示: X11转发要求在启动容器之前,在宿主机系统上运行xhost local:docker。
来源: frontend/scripts/docker-buildfiles/Dockerfile1-86 frontend/scripts/docker-buildfiles/docker-compose.yml1-28
AppFlowy为开发工作流提供了全面的VS Code配置
| 配置 | 目的 | 预启动任务 |
|---|---|---|
AF: 仅构建Dart | 仅Dart开发 | 无 |
AF-desktop: 构建全部 | 完整桌面构建 | AF: 构建Appflowy核心 |
AF-desktop: 清理 + 重建全部 | 完全重建 | AF: 清理 + 重建全部 |
AF-iOS: 构建全部 | iOS开发 | AF: 构建Appflowy核心用于iOS |
AF-Android: 构建全部 | Android开发 | AF: 构建Appflowy核心用于Android |
VS Code任务通过cargo-make编排整个构建管道
来源: frontend/.vscode/launch.json1-125 frontend/.vscode/tasks.json1-257
Linux
keybinder-3.0-dev: 全局键盘快捷键支持libnotify-dev: 桌面通知集成libmpv-dev mpv: 文档中的视频播放功能macOS
Windows
完成设置后,验证安装
测试完整的构建管道
安装完成后
cargo make任务以生成协议缓冲区和语言文件