ReliefOS 5.1.2

更新内容

应用与桌面

  • 新增 ReliefDiagram 思维导图、流程图和逻辑关系图编辑器,提供图形与连线、分支折叠、布局排列、多选、属性编辑、撤销重做和模板。原生 .rdiagram 文档保留编辑状态,支持 SVG、PNG、Markdown 导出,文件读写和原子保存由后台进程处理。

  • 新增 ReliefPlayer 本地 MP3/WAV 播放器,支持播放暂停、停止、定位、前后跳转、音量和静音。解码、读取和音频输出在独立进程执行,界面显示格式与播放进度,并明确报告设备占用和输出失败。

  • 新增 ReliefCapture 截图与标注工具,支持区域、窗口、全屏和延时截图,提供画笔、箭头、矩形、中文文字、撤销重做、X11 图像剪贴板及 PNG 保存。IceWM 默认增加 Win+Shift+S 选区快捷键。

  • 计算器扩展为标准、科学、程序员、单位换算、统计和日期六种模式,增加精确整数位运算与位编辑器、18 类 145 个单位、会话历史、内存和快捷键;各模式保留独立输入。

  • Diskmgr 从 旧图形前端迁移到原生 C++/FLTK/X11。保留 GPT 分区查看、新建、格式化、删除及挂载管理,增加中文 GPT 名称、异步操作、普通用户只读界面和 sudo 管理员窗口。破坏性操作重新核对设备与分区身份,使用明确确认,并报告部分成功。

  • 修复 ReliefMail 将部分 CA 解析成功误判为整库失败的问题;连接继续校验域名、有效期和证书链。通过 ReliefAPK 提供证书恢复、备份和签名包更新流程,同步维护 CA 源包与汇总包,处理 .apk-new、旧版本约束和 apk 跳过修复等情况。

  • 为新增应用接入中文翻译、图标、desktop 入口、组件选择和包归属,并增加适用的 MIME、文件管理器关联及菜单分组。

构建、安装与启动介质

  • 自研运行库、应用和宿主工具改用固定的 Linux 6.12 Kbuild/Kconfig,按目录登记对象、跟踪命令和头文件依赖;移除旧自研编译规则与配置前端。第三方项目继续使用其原生构建系统,顶层 Make 继续集成 SDK、APK、镜像、测试和运行目标。

  • Installer ISO、Live ISO、VMDK 默认同时支持 Legacy BIOS 与 UEFI,原有产物文件名保留。两平台 GNU GRUB 2.12 从锁定源码构建,替换旧预编译 EFI 树。

  • GUI、TTY 和 CLI 安装流程共用引导校验与发布逻辑;新安装默认安装 BIOS 和 UEFI 引导器,可独立取消任一或两者。默认 GPT 包含 BIOS Boot、ESP 和 root,菜单以 GPT PARTUUID 绑定目标根分区;旧 UEFI 布局更新保留原有分区。

  • 安装前检查容量、inode、分区角色及载荷,失败时保留阶段诊断;优化小文件复制的进度更新与新 root 的整体同步,减少安装滚屏及重复 journal 提交。引导资源和菜单按阶段发布,不将多文件或 BIOS 写入宣称为整体断电原子事务。

开发与验证

  • 更新主仓对模块化内核的源码路径、SDK/头文件边界及测试适配,增加构建输入审计并修复 CI 对完整内核源码的集成。

  • 增加应用、中文 GPT、双固件介质和实际安装、启动徽标、文字 panic 覆盖、POSIX I/O、SMP 计时、Linux exec 容量及描述符时间戳的定向回归和运行工具;内核实现详见独立的 ReliefNT 5.1.2 Release。

  • 更新构建、安装、驱动与验证文档,并按完整版本提交区间独立归档两仓发布说明。

破坏性更新

是,涉及构建配置、引导布局及部分管理工作流。

  • 构建配置移到 O/.config;旧 mk/ 规则、配置前端和旧源码路径不再是生产入口。调用这些内部路径的脚本需要迁移。

  • 默认新磁盘增加未格式化的 BIOS Boot 分区;硬编码旧两分区编号或旧预编译 EFI 路径的工具需调整。旧 UEFI 盘不会自动腾挪空间补装 BIOS 引导器。

  • Diskmgr 需要 X11/FLTK;依赖旧图形界面的启动方式需更新。普通用户修改磁盘需有相应 sudo 授权,不能依赖旧桌面角色隐式获得写权限。

  • 系统信任包将 /etc/ssl/certs 视为生成的证书输出目录;自定义 apk 保护规则和 CA 部署需人工合并。证书修复会刷新两个 CA 包的旧精确版本或仓库标签约束,执行前应审阅计划。

更新与迁移注意事项

  1. 本次为 源码 Release,提供标签与 GitHub 自动源码归档,不附带预编译系统镜像。请递归初始化子模块并使用标签固定的 ReliefNT 提交;GitHub ZIP/TAR.GZ 不展开子模块。

  2. 备份文档、邮件与账户资料、CA、自定义桌面配置和分区数据。在新的 O 目录重建;沿用旧配置时,将旧 config/.config 复制为新 O/.config,再执行 make O=新目录 olddefconfig。常用镜像仍位于 O/images/。

  3. 新安装默认双引导;两种引导器都不选时,不会得到可直接启动的 BIOS/EFI loader。旧 UEFI 盘缺少 BIOS Boot 空间时,补装 BIOS 应在擦写前失败,勿把 ESP 直接改作 BIOS Boot。旧内核可能不识别 PARTUUID,回滚需按安装文档处理。

  4. ISO 是双 El Torito 光盘镜像,本版没有承诺可直接写入 U 盘作为 hybrid 镜像。证书修复应同步更新 ReliefMail、ReliefAPK 和系统信任包,保留管理员的自定义信任策略。

  5. ReliefCapture 的剪贴板内容由其进程提供,粘贴前需保持程序运行;窗口截图保留实际遮挡。ReliefPlayer 首版仅播放单个本地文件;ReliefDiagram 原生格式不承诺其他厂商格式兼容。

  6. 分项构建与 QEMU 验收记录见各应用及 双启动验证文档,不能视为本标签所有组合的整版验收。VMware 验证未完成,物理硬件未验证。

  7. 保留已知限制:默认 OVMF 高地址 NVMe BAR 超出现有 direct map 支持范围;硬关机后 Xorg 锁文件可能阻止恢复;编译压力下 IceWM 拖动问题仍未完成验证。上一版记录的 ReliefMath 关窗崩溃在本区间没有修复或完成复验。

  8. 公开总测试仍有既有 soundctl 包归属失败,另有音频策略/产物、部分旧 fixture 和 ABI golden 差异;本次未改变这些策略或重生成 golden,不宣称全套测试通过。

开发者提示

  • 基础版本为 5.1.2,configs/build-version 与 /etc/os-release 的 VERSION_ID 一致;内核版本由其自身配置生成,后缀仍使用 EXTRAVERSION/LOCALVERSION。

  • 生产入口继续是根 GNU Make;使用 defconfig、olddefconfig、menuconfig 和各目录 Kbuild。需 GNU Make 4.3 或更新版本,目标工具链和第三方输入仍以仓库配置、锁文件为准。

  • 构建新增 GUI 应用时使用目标 musl、C++17、FLTK 及系统中文字体,保持中央 FLTK 清单、组件、包归属、图标和安装器裁剪一致。自定义磁盘工具还应阅读 ReliefNT 的 BLKROGET 编码和能力权限迁移说明。

  • make run QEMU_BOOT=bios 选择 SeaBIOS,默认 QEMU_BOOT=uefi 使用 OVMF;test-smoke 顺序检查三类介质的两种固件启动,不能替代实际安装和升级验收。

  • 本说明覆盖主仓 5.1.1 版本提交 10e76d319ec9ca4375d6faf9555d64f18fb80e69 之后至本标签的有效变更,排除纯 gitlink 同步和内核实现。下一版以本次版本提交为区间起点。