各位开发者、用户:
以下是过去两周 Arch Linux for Loong64 发行版的主要开发进展汇总。本报告重点介绍对龙架构开发者、用户以及其他发行版维护者有参考价值的信息。
〇、项目标识
经过社区投票选举,本项目现在采用以下图片作为标识:

一、补丁维护与架构适配工作
1.1 新补丁添加 - 架构适配
多个软件包需要针对龙架构进行适配:
- fastd:禁用 x86-only 标志 (by wszqkzqk) #5407a24e
- libemf:修复 winnt.h 的 CPU 架构检测和 CONTEXT 定义,并重新生成构建脚本 (by wszqkzqk) #55986095
- python-llvmlite:跳过失败的 test_binding 测试 (by wszqkzqk) #5ffc7004
- hex:更新 Cargo 中的 libc 依赖 (by wszqkzqk) #04764462
- rdkit:从 CMakeLists.txt 中移除
-mpopcnt 标志 (by Pluto Yang) #dd838e4f
- percona-server:移除
-msse4.2 -mpclmul 标志 (by Pluto Yang) #bd4bb2c7
- python-greenlet:添加
-fno-omit-frame-pointer 标志以解决汇编错误 (by Pluto Yang) #b6c2ab47
- 问题:
switch_loongarch64_linux.h:29:1: error: $r22 cannot be used in ‘asm’ here
- 解决方案:添加
-fno-omit-frame-pointer 编译标志
- haskell-crypton 和 haskell-crypton-x509-validation:忽略测试失败 (by Pluto Yang) #ce607cab、#b652c50e
1.2 补丁更新与修复
- librustls:修复与新版 cmake 的构建问题,参考了 Arch Linux RISC-V 仓库的修复方案 (by wszqkzqk) #ff2ba027
- gitea:修复补丁问题(但仍有多个测试失败)(by Pluto Yang) #412e09a4
- arduino-cli:跳过需要下载预编译二进制文件的测试 (by wszqkzqk) #02ec7b76
1.3 构建依赖修复
多个软件包需要调整构建依赖以在龙架构上正常构建:
- python-setuptools-scm:添加 libxml2 和 libxslt 到 checkdepends (by wszqkzqk) #904186c3
- python-osprofiler:添加 python-sniffio 到 checkdepends (by Pluto Yang) #69eb4980
- python-json-stream-rs-tokenizer:更新 Cargo.toml 中的 target-lexicon 版本 (by Pluto Yang) #7f06614c
- python-scikit-image:从 checkdepends 中移除 python-simpleitk (by Pluto Yang) #7f5484b6
- python-sphinx-book-theme:使用系统的 nodejs-lts-jod 进行构建 (by Pluto Yang) #bbcd719d
- opendht、python-responses:添加 python-wheel 到 makedepends (by Pluto Yang) #d7c2a476、#f5f932de
- python-nox:添加 python-pbs-installer 到 checkdepends (by Pluto Yang) #1e0bce24
- python-jaraco.functools:添加自身到 checkdepends (by Pluto Yang) #e5b8dcf7
- python-mitmproxy-rs:将
$CARCH 改为 $(uname -m) (by Pluto Yang) #4f608170
- python-deprecation:添加 python-packaging 到 checkdepends (by Pluto Yang) #5c6b4435
- python-hatchling:添加 python-platformdirs 到 checkdepends (by Pluto Yang) #eaac96c1
- pyside6:缺失 python-wheel 作为构建依赖 (by Pluto Yang) #6413c2cd
- haskell-sbv:移除 cvc4 作为 checkdepends (by Pluto Yang) #66ec7e3b
1.4 补丁移除 - 上游已支持
多个软件包的上游已原生支持龙架构,我们移除了相应的补丁:
- onetbb:上游补丁已包含 (by Pluto Yang) #7408805
- polyml:上游已支持 (by wszqkzqk) #66643ccc
- archinstall:上游引入了对镜像源排序的容错设计 (by wszqkzqk) #266268f4
- systemctl-tui:上游已升级依赖 (by Pluto Yang) #1541583d
- ocaml-num:不再需要修改 makedepends (by Pluto Yang) #f3059c0e
- python-libcst:不再需要更新 Cargo.toml (by Pluto Yang) #66082cb9
- pelican:pandoc 已准备就绪 (by Pluto Yang) #5a465244
- pgcli:无需额外添加 makedepends (by Pluto Yang) #0bef0dfc
二、重要软件包更新
根据软件包更新列表,以下重要软件包值得用户关注:
2.1 系统核心组件
- systemd:更新至 259-1 版本
- linux 和 linux-zen:分别更新至 6.18.2.arch2-1 和 6.18.2.zen2-1 版本
- firefox:更新至 146.0.1-1 版本
- firefox-developer-edition:更新至 147.0b7-1 版本
- gitea:更新至 1.25.3-1 版本(含补丁修复)
- nginx:更新至 1.28.1-1 版本及相关模块
- pipewire:更新至 1:1.4.9-2.1 版本及相关组件
- pulseaudio:更新至 17.0+r98+gb096704c0-1 版本
- cryptsetup:更新至 2.8.3-1 版本
- libx11:更新至 1.8.12-2 版本
2.2 开发工具与运行时
- gdb:更新至 17.1-1 版本
- python-numpy:更新至 2.4.0-1 版本
- opencv:更新至 4.12.0-17 版本及相关组件
- qtile:更新至 0.34.1-1 版本
- harfbuzz:更新至 12.3.0-1 版本
- gstreamer 及相关插件:更新至 1.26.10-1 版本
- python-polars:更新至 1.36.1-1 版本
- gcc 相关:gcc 更新至 17.1-1 版本
2.3 桌面环境与应用
- cinnamon 桌面环境:多个组件更新至 6.6.x 版本
- budgie-desktop:更新至 10.9.4-2 版本
- hyprland:更新至 0.53.0-2 版本及相关组件
- kicad:更新至 9.0.7-1 版本
- kdenlive:更新至 25.12.0-5 版本
- inkscape:更新至 1.4.3-1 版本
- darktable:更新至 2:5.4.0-1 版本
- telegram-desktop:更新至 6.3.10-1 版本
- mpv:更新至 1:0.41.0-2 版本
2.4 科学计算与数据科学
- python-astropy:更新至 7.2.0-1 版本
- octave:更新至 10.3.0-2 版本
- sagemath:更新至 10.8-1 版本
- python-statsmodels:更新至 0.14.6-1 版本
- vtk:更新至 9.5.2-8 版本
- gdal:更新至 3.12.0-3 版本
三、对上游开发者的参考价值
3.1 龙架构特有的编译问题
- x86-only 标志:多个软件包(如 fastd)需要检测并禁用 x86 特有的编译标志。
- SIMD 指令集:部分软件包(如 rdkit、percona-server)使用了 x86 特有的 SIMD 标志(如 -mpopcnt、-msse4.2、-mpclmul),需要针对龙架构进行调整。
- 寄存器使用限制:python-greenlet 遇到了龙架构特定寄存器在汇编中的使用限制,需要通过添加
-fno-omit-frame-pointer 标志解决。
3.2 测试套件适配
多个软件包的测试套件在龙架构上存在问题,我们采取了以下策略:
- 跳过需要特定硬件支持的测试(如 arduino-cli)
- 忽略已知失败的测试(如 haskell-crypton、python-llvmlite)
- 调整测试依赖(如添加缺失的 checkdepends)
3.3 构建系统适配
- CMake 配置:需要针对龙架构调整 CPU 检测和标志设置(如 libemf)
- Cargo 配置:需要更新 target-lexicon 等依赖以支持龙架构(如 hex、python-json-stream-rs-tokenizer)
- 自动构建脚本:某些软件包需要重新生成构建脚本以包含龙架构支持(如 libemf)
四、社区与项目维护
4.1 项目标识
4.2 跨架构协作
- 参考了 Arch Linux RISC-V 仓库的修复方案来解决类似问题(如 librustls 的 cmake 构建问题),体现了不同非x86架构社区之间的协作价值。
五、用户注意事项
- 系统升级:建议用户在更新前阅读相关软件包的更新日志,特别是 systemd、linux 内核等核心组件的更新。
- 测试反馈:如果遇到任何软件包在龙架构上的问题,请通过 GitHub Issues 反馈。
- 补丁贡献:欢迎开发者将经过验证的补丁向上游提交,以减少下游维护工作量。
六、总结
过去两周,Arch Linux for Loong64 社区在以下几个方面取得了进展:
- 上游整合:多个软件包的上游已原生支持龙架构,我们移除了相应的补丁。
- 架构适配:针对龙架构特有的编译和运行问题,我们添加或更新了多个补丁。
- 软件包更新:我们跟进了大量软件包的更新,确保了龙架构用户能够使用最新版本的软件。
- 问题解决:我们记录并解决了多个龙架构特有的技术问题,为上游和其他发行版提供了参考。
感谢所有贡献者的辛勤工作!
Arch Linux for Loong64 维护团队
北京大学学生 Linux 俱乐部
(由 DeepSeek v3.2 辅助整理)