LankeOS v0.06
LankeOS v0.06 Release
重构和加速,全面偿还技术债。
LankeOS 迈出自力更生的关键一步!
核心变更 (Major Changes)
-
构建系统重构:
-
彻底告别旧有的compile.sh脚本堆砌逻辑,将所有软件包全面迁移至全新的 LankeBUILD 系统。
-
大幅删除了代码中的硬编码,修改了构建系统解析变量的方式,系统可扩展性获得质的飞跃。
-
构建逻辑由
Dockerfile.build统一收拢至原生Makefile,简化了解析层级,并原生加入werror严苛编译检查,确保底层代码质量。 -
包管理器 lpkg 深度演进:
-
软件包管理器 lpkg 正式发布并跃迁至 v1.5。
-
底层架构大换血:重构核心逻辑,**彻底废弃了碎片化的
files.txt,改用metadata.json。代码清晰度大幅提升。 -
编译工作流优化:
-
优化了
builder.cpp中的步骤顺序,修复了多项 BUILD 文件中的 strip 裁剪问题。 -
更新了所有 LankeBUILD 脚本,在底层所有 Ninja 和 Make 编译命令中**默认强制注入
-j$(nproc)**,完美榨干多核 CPU 性能,LFS 滚动构建时间缩短数倍。 -
原生生态闭环:
-
正式将 Linux 内核和 Linux-firmware(固件)的构建直接纳入 LankeBUILD 体系,而不是单独构建,系统从此具备了完整的自我迭代与进化能力。
开发工具链与底层优化 (Toolchain & Core Fixes)
本版本重点修复了自研底层工具的稳定性缺陷,打磨编译细节:
- 自研二进制裁剪工具(Strip): 成功移植了完成度更高的
strip独立版本到主仓库,并加入了完善的自动化测试。去除binutils依赖。 - 动态链接流优化: 将以往依赖的
ldconfig自动处理改为了手动精准创建软链接,避免了构建过程中的环境污染,保证了根文件系统(Rootfs)的绝对纯净。 - 镜像源优化: 为了应对部分上游源码下载缓慢和被阻断的问题,将核心 packages 的源码上游链接切换至了更稳定的官方全球镜像
ftpmirror.gnu.org。
系统规格更新 (Technical Specs)
| 组件 | 版本 | 状态 |
|---|---|---|
| Build System | LankeBUILD (v2) | 彻底重构,变量动态解析 |
| Package Manager | lpkg v1.5 | JSON元数据 |
| Core Tools | Custom Strip / Builder | 增强测试,减少硬编码 |
| Kernel & Firmware | 7.0.x-lanke (Native Build) | 内核与固件全面纳入自研构建 |
| ISO Size | 687 MiB | 继续保留完整开发Headers |
下一步计划 (Roadmap)
- 引入 Pipewire 音频支持 (v0.05 已完成)
- 完善 PAM 认证安全体系 (v0.05 已完成)
- 自研包管理器 lpkg 架构升级与 LankeBUILD 全面重构 (v0.06已完成)
- 进一步丰富 lpkg 官方源软件仓库,提供更上层的用户态常用工具 (长期任务)
开发者的话
从 0.05 到 0.06,LankeOS 没有一个包更新,但是其底层已经经历了翻天覆地的变化。
表面上看起来系统可能只是跟着内核小版本在走,但底层的构建骨架已经被我拆掉重写了。为了让 LankeOS 拥有真正属于自己的发行版灵魂,在以后维护的时候不会成为一坨屎山,我把原来的手动构建脚本完全迁移到了LankeBUILD
同时庆祝LankeOS开始进行日常维护,目前一切开发工作稳定!维护工作流我已经比较熟悉了
荣誉墙
karolusz(Karol): pr * 3
更新日志记录 (Git Commit Summary)
-
核心重构阶段
-
backport并优化了自研
strip裁剪工具,增加了builder的单元测试。 -
将动态库链接逻辑由
ldconfig变更为手动软链接。 -
移除了大量硬编码,重构构建系统变量解析方式,正式推出全新 LankeBUILD 架构。
-
并行与包管理器进化阶段
-
开启全栈并行编译,为所有 Ninja 和 Make 编译指令注入多核加速。
-
自研包管理器
lpkg升级至 1.5,用metadata.json替代了旧的files.txt。 -
完善国际化,更新了英文版 README 说明文档。
-
移除了
Dockerfile.build,将所有构建和编译 Werror 严格逻辑统一收拢到Makefile。