docs: 增加 README.md
This commit is contained in:
143
README.md
Normal file
143
README.md
Normal file
@@ -0,0 +1,143 @@
|
||||
# HeurAMS-K: HeurAMS 的 Kirigami 现代前端
|
||||
|
||||
## 概述
|
||||
|
||||
"潜进K型" (HeurAMS-K) 是 [潜进 (HeurAMS)](https://git.pluv27.top/pluv/HeurAMS) 的现代跨平台图形用户界面前端,
|
||||
基于 KDE 用户界面框架 **Kirigami** 与 **Qt6** / **KDE Framework6** 构建, 旨在为潜进核心调度器提供遵循 KDE 设计风格的现代原生体验.
|
||||
|
||||
> [!NOTE]
|
||||
> HeurAMS-K 目前处于早期开发阶段, 已建立完整的 CMake 构建框架、QML 模块结构和 Flatpak/Android 打包基础设施.
|
||||
> 当前图形界面仅包含功能演示级别内容, 尚未与潜进 Python 核心程序库实现对接.
|
||||
|
||||
HeurAMS-K 将通过 **PyOtherSide** 直接复用 HeurAMS Python 内核,
|
||||
实现"现代化 UI + 成熟核心"的架构, 同时支持 Windows、Linux、macOS、Android 和 Plasma Mobile 平台.
|
||||
|
||||
## 特性
|
||||
|
||||
### 技术栈
|
||||
|
||||
- **Qt6** (≥ 6.8.0) + **KF6** (≥ 6.12.0) + **Kirigami Addons** (≥ 1.10.0)
|
||||
- **Kirigami** 自适应 UI 框架 — 一套代码适配桌面与移动端
|
||||
- **QML** 声明式界面 — 组件化、可扩展
|
||||
- **KConfig** 配置框架 — 类型安全的设置管理
|
||||
- **ECM QML Module** — 模块化 QML 扩展
|
||||
- **Flatpak** 打包 — 沙箱化 Linux 分发
|
||||
- **Android** 原生支持 — 通过 `androiddeployqt` 构建 APK/AAB
|
||||
|
||||
### 项目架构
|
||||
|
||||
```
|
||||
HeurAMS-K/
|
||||
├── CMakeLists.txt # 顶层 CMake 构建配置
|
||||
├── src/
|
||||
│ ├── CMakeLists.txt # 静态库与可执行文件构建
|
||||
│ ├── main.cpp # 入口点 (KirigamiApp)
|
||||
│ ├── heuramsapplication.h/cpp # 应用类 (AbstractKirigamiApplication)
|
||||
│ ├── heuramsconfig.kcfg # KConfig 设置定义
|
||||
│ ├── heuramsconfig.kcfgc # KConfig 代码生成配置
|
||||
│ ├── qml/
|
||||
│ │ └── Main.qml # 主窗口 (StatefulWindow)
|
||||
│ └── settings/
|
||||
│ ├── CMakeLists.txt
|
||||
│ ├── HeurAMSConfigurationView.qml # 配置视图
|
||||
│ └── GeneralPage.qml # 通用设置页
|
||||
├── android/
|
||||
│ ├── AndroidManifest.xml
|
||||
│ ├── build.gradle
|
||||
│ └── res/ # Android 资源
|
||||
├── .flatpak-manifest.json # Flatpak 构建清单
|
||||
├── top.pluv27.heurams.kiri.desktop # .desktop 文件
|
||||
├── top.pluv27.heurams.kiri.metainfo.xml # AppStream 元数据
|
||||
├── .clang-format # 代码格式化配置
|
||||
└── LICENSES/ # REUSE 规范的许可证文件
|
||||
```
|
||||
|
||||
### QML 模块
|
||||
|
||||
- `top.pluv27.heurams.kiri` — 主模块 (Main.qml, HeurAMSApplication)
|
||||
- `top.pluv27.heurams.kiri.settings` — 设置模块 (ConfigurationView, GeneralPage)
|
||||
|
||||
### 构建依赖
|
||||
|
||||
| 依赖 | 最低版本 |
|
||||
|------|----------|
|
||||
| CMake | ≥ 3.24 |
|
||||
| Qt6 (Qml, Widgets) | ≥ 6.8.0 |
|
||||
| KF6 (Kirigami, CoreAddons, Config, I18n) | ≥ 6.12.0 |
|
||||
| Kirigami Addons | ≥ 1.10.0 |
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 从源码构建
|
||||
|
||||
```bash
|
||||
# 1. 安装依赖 (以 Debian/Ubuntu 为例)
|
||||
sudo apt install cmake extra-cmake-modules qt6-base-dev qt6-declarative-dev \
|
||||
libkf6kirigami-dev libkf6coreaddons-dev libkf6config-dev libkf6i18n-dev \
|
||||
kirigami-addons-dev
|
||||
|
||||
# 2. 配置与构建
|
||||
cd HeurAMS-K
|
||||
cmake -B build -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build build
|
||||
|
||||
# 3. 运行
|
||||
./build/src/heurams
|
||||
```
|
||||
|
||||
### Flatpak 构建
|
||||
|
||||
```bash
|
||||
flatpak-builder --user --install flatpak-build .flatpak-manifest.json
|
||||
flatpak run top.pluv27.heurams.kiri
|
||||
```
|
||||
|
||||
### Android 构建
|
||||
|
||||
需安装 Qt Android 工具链与 Android SDK/NDK, 然后:
|
||||
|
||||
```bash
|
||||
cmake -B build-android \
|
||||
-DCMAKE_TOOLCHAIN_FILE=/path/to/android-toolchain.cmake \
|
||||
-DQT_HOST_PATH=/path/to/qt-host \
|
||||
-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT \
|
||||
-DANDROID_NDK=$ANDROID_NDK
|
||||
cmake --build build-android
|
||||
```
|
||||
|
||||
## 项目状态
|
||||
|
||||
```
|
||||
构建框架 ████████████████░░░░ 80% ✅ CMake、QML 模块、静态库
|
||||
设置系统 ████████████░░░░░░░░ 60% ✅ KConfig + 设置页面
|
||||
桌面整合 ████████████░░░░░░░░ 60% ✅ .desktop、metainfo、Flatpak
|
||||
Android 支持 ██████████░░░░░░░░░░ 50% ✅ AndroidManifest、Gradle
|
||||
界面功能 ██░░░░░░░░░░░░░░░░░░ 10% ⏳ 仅功能演示(scaffold)
|
||||
Python 内核桥 ░░░░░░░░░░░░░░░░░░░ 0% ⏳ 待 PyOtherSide 集成
|
||||
```
|
||||
|
||||
## 参与项目
|
||||
|
||||
HeurAMS-K 项目需要以下方面的贡献者:
|
||||
|
||||
- **C++ / Qt / KDE 框架开发** — 扩展应用层与核心逻辑
|
||||
- **QML 界面开发** — 设计美观、自适应的学习界面
|
||||
- **Python 桥接** — PyOtherSide 或类似技术的集成
|
||||
- **Android / Plasma Mobile** — 移动端适配与测试
|
||||
|
||||
请参阅 [潜进主项目贡献指南](https://git.pluv27.top/pluv/HeurAMS/src/branch/main/CONTRIBUTING.md) 了解整体贡献流程.
|
||||
|
||||
## 许可证
|
||||
|
||||
本项目遵循 REUSE 规范, 各文件头部标注了对应的 SPDX 标识.
|
||||
|
||||
| 组件 | 许可证 |
|
||||
|------|--------|
|
||||
| 源代码 (C++/QML) | **GPL-2.0-or-later** (大多数文件) |
|
||||
| CMake 构建文件 | **BSD-2-Clause** / **BSD-3-Clause** |
|
||||
| KConfig 定义 | **LGPL-2.0-or-later** |
|
||||
| 元数据 (.desktop, metainfo) | **CC0-1.0** |
|
||||
| Flatpak 清单 | **FSFAP** |
|
||||
| Android 构建文件 | **BSD-3-Clause** |
|
||||
|
||||
详见 [LICENSES/](LICENSES/) 目录下的许可证全文.
|
||||
Reference in New Issue
Block a user