添加 llmdoc 文档系统,升级版本至 3.4.8-xg1
All checks were successful
Build and Release / build-and-test (arm64, alpine) (push) Successful in -11s
Build and Release / build-and-test (amd64, alpine) (push) Successful in -4s
Build and Release / build-and-test (arm64, ubuntu) (push) Successful in 1s
Build and Release / build-and-test (amd64, ubuntu) (push) Successful in 10s
Build and Release / release (push) Successful in 44s
All checks were successful
Build and Release / build-and-test (arm64, alpine) (push) Successful in -11s
Build and Release / build-and-test (amd64, alpine) (push) Successful in -4s
Build and Release / build-and-test (arm64, ubuntu) (push) Successful in 1s
Build and Release / build-and-test (amd64, ubuntu) (push) Successful in 10s
Build and Release / release (push) Successful in 44s
- 初始化 llmdoc 文档系统(overview/architecture/guides/reference) - 创建 9 个核心文档,涵盖项目概览、安装架构、配置系统等 - 升级 CI 工作流和构建脚本版本号至 3.4.8-xg1 - 添加 .gitignore 文件
This commit is contained in:
61
llmdoc/architecture/configuration-system.md
Normal file
61
llmdoc/architecture/configuration-system.md
Normal file
@@ -0,0 +1,61 @@
|
||||
# 配置系统架构
|
||||
|
||||
## 1. 身份
|
||||
|
||||
- **定义**:XXXigCC 配置管理系统
|
||||
- **目的**:为矿工和控制中心提供灵活、可动态调整的配置机制
|
||||
|
||||
## 2. 核心组件
|
||||
|
||||
- [script/install.sh](../../script/install.sh):配置生成和管理的核心逻辑
|
||||
- `/etc/miner/xxxigcc/config.json` 或 `/etc/xxxigcc/config.json`:主配置文件
|
||||
- 服务配置文件:定义服务启动参数
|
||||
|
||||
## 3. 执行流程
|
||||
|
||||
### 3.1 配置生成
|
||||
安装脚本动态生成配置:
|
||||
- 使用 `jq` 命令行工具精确修改 JSON 配置
|
||||
- 支持命令行参数覆盖默认配置
|
||||
|
||||
### 3.2 配置应用
|
||||
- 创建配置文件
|
||||
- 使用 `replace_config()` 函数更新配置
|
||||
- 通过服务文件将配置传递给守护进程
|
||||
|
||||
## 4. 配置参数
|
||||
|
||||
### 4.1 日志配置
|
||||
- `log-file`:日志文件路径
|
||||
- `verbose`:是否启用详细日志
|
||||
|
||||
### 4.2 矿池配置 (pools 数组)
|
||||
- `url`:矿池地址
|
||||
- `user`:钱包地址
|
||||
- `pass`:矿池密码
|
||||
- `tls`:是否启用 TLS
|
||||
- `algo`:挖矿算法(默认 rx/0)
|
||||
- `nicehash`:是否启用 NiceHash 模式
|
||||
- `keepalive`:是否保持连接
|
||||
- `daemon`:SOLO 挖矿模式
|
||||
|
||||
### 4.3 CPU 配置
|
||||
- `cpu.rx`:CPU 线程亲和性配置
|
||||
- `randomx.1gb-pages`:是否启用 1GB 大页内存
|
||||
|
||||
### 4.4 CC(控制中心)配置
|
||||
- `cc-client.enabled`:是否启用 CC
|
||||
- `cc-client.servers[0].url`:CC 服务器地址
|
||||
- `cc-client.servers[0].access-token`:CC 访问令牌
|
||||
- `cc-client.servers[0].use-tls`:CC 是否使用 TLS
|
||||
|
||||
### 4.5 捐赠设置
|
||||
- `donate-level`:捐赠级别(默认为 0)
|
||||
- `donate-over-proxy`:是否通过代理捐赠
|
||||
|
||||
## 5. 设计原理
|
||||
|
||||
- 高度动态和可配置
|
||||
- JSON 格式,易于读写和程序解析
|
||||
- 支持细粒度配置,从矿池到 CPU 资源
|
||||
- 内置默认值,降低使用复杂性
|
||||
43
llmdoc/architecture/installation-architecture.md
Normal file
43
llmdoc/architecture/installation-architecture.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# 安装架构
|
||||
|
||||
## 1. 身份
|
||||
|
||||
- **本质**:XXXigCC 的安装机制设计
|
||||
- **目的**:实现跨平台、高度可配置的软件部署
|
||||
|
||||
## 2. 核心组件
|
||||
|
||||
- [script/install.sh](../../script/install.sh):主安装脚本,处理下载、解压、配置和服务创建
|
||||
- [script/uninstall.sh](../../script/uninstall.sh):通用卸载脚本
|
||||
- [debian/build-deb.sh](../../debian/build-deb.sh):Debian 包构建脚本
|
||||
|
||||
## 3. 执行流程
|
||||
|
||||
### 3.1 版本选择
|
||||
- 支持指定版本或自动获取最新版本
|
||||
- 通过 Gitea Generic Package Registry 下载
|
||||
|
||||
### 3.2 依赖检查
|
||||
- 动态安装 curl、jq、file 等必要工具
|
||||
- 支持 apt-get 和 apk 包管理器
|
||||
|
||||
### 3.3 安装前准备
|
||||
- 检测操作系统(Alpine 或 Ubuntu/Debian)
|
||||
- 识别系统架构(amd64/arm64)
|
||||
- 卸载现有版本
|
||||
|
||||
### 3.4 软件部署
|
||||
- 下载并解压软件包
|
||||
- 设置执行权限
|
||||
- 创建配置文件
|
||||
|
||||
### 3.5 服务管理
|
||||
- 使用 OpenRC(Alpine)或 systemd(Ubuntu/Debian)
|
||||
- 自动创建服务配置文件
|
||||
- 启用并启动服务
|
||||
|
||||
## 4. 设计原理
|
||||
|
||||
- **高度参数化**:通过命令行选项实现灵活配置
|
||||
- **跨平台兼容性**:适配不同 Linux 发行版
|
||||
- **自动化服务管理**:简化部署和运维流程
|
||||
61
llmdoc/architecture/project-modifications.md
Normal file
61
llmdoc/architecture/project-modifications.md
Normal file
@@ -0,0 +1,61 @@
|
||||
# 项目修改架构
|
||||
|
||||
## 1. 身份定义
|
||||
|
||||
- **本质**:XMRigCC 项目的定制和去捐赠版本
|
||||
- **目的**:提供一个无捐赠、可集中管理的加密货币挖矿解决方案
|
||||
|
||||
## 2. 核心组件修改
|
||||
|
||||
### 修改文件
|
||||
- [init.sh](../../init.sh):项目修改脚本
|
||||
- `src/donate.h`:捐赠级别控制
|
||||
- `src/net/strategies/DonateStrategy.cpp`:捐赠策略重定向
|
||||
- `src/version.h`:版本和项目信息更新
|
||||
|
||||
## 3. 修改执行流程
|
||||
|
||||
### 3.1 项目重命名
|
||||
- 将 "xmrigcc" 重命名为 "xxxigcc"
|
||||
- 更新可执行文件名称(xxxigServer、xxxigDaemon、xxxigMiner)
|
||||
- 修改 CMakeLists.txt 中的项目名称
|
||||
|
||||
### 3.2 捐赠功能去除
|
||||
- 将默认捐赠等级 `kDefaultDonateLevel` 从 3 改为 0
|
||||
- 将最小捐赠等级 `kMinimumDonateLevel` 从 1 改为 0
|
||||
- 将捐赠服务器地址重定向到 `127.0.0.1`
|
||||
- `donate.graef.in` → `127.0.0.1`
|
||||
- `87.106.163.52` → `127.0.0.1`
|
||||
- 禁用所有捐赠相关配置选项
|
||||
- `donate-level`: 3 → 0
|
||||
- `donate-over-proxy`: 1 → 0
|
||||
|
||||
### 3.3 版本信息更新
|
||||
- 移除原项目版权信息
|
||||
- 移除原项目 GitHub 链接
|
||||
- 更新项目标识为 XXXigCC
|
||||
|
||||
## 4. 修改脚本
|
||||
|
||||
[init.sh](../../init.sh) 脚本使用 `sed` 命令批量修改源代码:
|
||||
|
||||
```bash
|
||||
# 修改项目名称
|
||||
sed -i 's/project(xmrigcc)/project(xxxigcc)/' CMakeLists.txt
|
||||
|
||||
# 修改可执行文件名称
|
||||
sed -i 's/MINER_EXECUTABLE_NAME "xmrigMiner"/MINER_EXECUTABLE_NAME "xxxigMiner"/' CMakeLists.txt
|
||||
sed -i 's/DAEMON_EXECUTABLE_NAME "xmrigDaemon"/DAEMON_EXECUTABLE_NAME "xxxigDaemon"/' CMakeLists.txt
|
||||
sed -i 's/xmrigServer ${SOURCES_CC_SERVER}/xxxigServer ${SOURCES_CC_SERVER}/' CMakeLists.txt
|
||||
|
||||
# 修改捐赠功能
|
||||
sed -i 's/kDefaultDonateLevel = 3/kDefaultDonateLevel = 0/' src/donate.h
|
||||
sed -i 's/kMinimumDonateLevel = 1/kMinimumDonateLevel = 0/' src/donate.h
|
||||
sed -i 's/donate.graef.in/127.0.0.1/' src/net/strategies/DonateStrategy.cpp
|
||||
```
|
||||
|
||||
## 5. 设计原理
|
||||
|
||||
- **自动化修改**:通过脚本实现批量代码修改
|
||||
- **保留核心功能**:只修改捐赠相关代码,保持原项目架构和挖矿功能
|
||||
- **透明性**:所有修改通过 init.sh 脚本公开,易于审查
|
||||
Reference in New Issue
Block a user