linglong/README.zh_CN.md

12 KiB
Raw Permalink Blame History

如意玲珑图标如意玲珑:更先进的 Linux 跨发行版软件包管理工具集

📦 介绍

English | 简体中文

Contributors Latest Release Powered by Linyaps Build Status

GitHub Stars GitHub Forks Code Size GitHub Issues

如意玲珑Linyaps Is Not Yet Another Packaging System是由如意玲珑社区团队开发并开源共建的Linux 跨发行版软件包格式,项目以独立沙盒容器的形式实现应用包的开发、管理、分发,用于替代 deb、rpm 等传统包管理工具,让 Linux 软件运行更兼容、更安全、更高效。

亮点

  • 独创的非全量运行时Runtime设计:基于标准化沙箱 Runtime应用一次构建即可覆盖所有 Linux 发行版。Runtime 多版本共存且文件共享减少冗余,启动时通过动态库共享复用已加载资源,速度提升显著,避免依赖冲突
  • 非特权沙箱与双层隔离:默认无 root 权限运行,通过内核 Namespace 隔离(进程/文件系统/网络等)构建安全沙箱。通过 OSTree 仓库提供原子化增量更新与版本回滚,相比全量沙箱方案,资源占用更低

🎏 进展

  • 发行版支持deepin、UOS、openEuler、Ubuntu、Debian、openKylin、Anolis OS更多发行版适配中欢迎参与贡献。
  • CPU 架构支持X86、ARM64、LoongArch未来将提供对 RISC-V 等更多架构的支持。

⚙️ 安装

各个发行版安装方式如下:

deepin 23

安装:

echo "deb [trusted=yes] https://ci.deepin.com/repo/obs/linglong:/CI:/release/Deepin_23/ ./" | sudo tee /etc/apt/sources.list.d/linglong.list
sudo apt update
sudo apt install linglong-bin

Fedora 41

sudo dnf config-manager addrepo --from-repofile "https://ci.deepin.com/repo/obs/linglong:/CI:/release/Fedora_41/linglong%3ACI%3Arelease.repo"
sudo dnf update
sudo dnf install linglong-bin

Ubuntu 24.04

echo "deb [trusted=yes] https://ci.deepin.com/repo/obs/linglong:/CI:/release/xUbuntu_24.04/ ./" | sudo tee /etc/apt/sources.list.d/linglong.list
sudo apt update
sudo apt install linglong-bin

Debian 12

echo "deb [trusted=yes] https://ci.deepin.com/repo/obs/linglong:/CI:/release/Debian_12/ ./" | sudo tee /etc/apt/sources.list.d/linglong.list
sudo apt update
sudo apt install linglong-bin

openEuler 23.09

sudo dnf config-manager --add-repo "https://ci.deepin.com/repo/obs/linglong:/CI:/release/openEuler_23.09/linglong%3ACI%3Arelease.repo"
sudo sh -c "echo gpgcheck=0 >> /etc/yum.repos.d/linglong%3ACI%3Arelease.repo"
sudo dnf update
sudo dnf install linglong-bin

uos 1070

echo "deb [trusted=yes] https://ci.deepin.com/repo/obs/linglong:/CI:/release/uos_1070/ ./" | sudo tee /etc/apt/sources.list.d/linglong.list
sudo apt update
sudo apt install linglong-bin

AnolisOS 8

sudo dnf config-manager addrepo --from-repofile "https://ci.deepin.com/repo/obs/linglong:/CI:/release/AnolisOS_8/linglong%3ACI%3Arelease.repo"
sudo dnf update
sudo dnf install linglong-bin

openkylin 2.0

echo "deb [trusted=yes] https://ci.deepin.com/repo/obs/linglong:/CI:/release/openkylin_2.0/ ./" | sudo tee /etc/apt/sources.list.d/linglong.list
sudo apt update
sudo apt install linglong-bin

🚀 快速开始

ll-cli install cn.org.linyaps.demo
ll-cli run cn.org.linyaps.demo

🎯 动机

在已经有 Snap、Flatpak、AppImage 这些已有项目情况下,我们开发如意玲珑包管理系统有以下几个原因:

  • 2017 年,我们对 Flatpak 格式进行了研究,完成了 100+ 的软件包构建工作,后因其应用体积较大,磁盘占用过多、安全问题修复缓慢等各种原因没有继续适配。
  • Snap 在除 Ubuntu 系统环境外有诸多兼容性问题,生态也不开放,因此也无法使用。
  • AppImage 有着不错的可移植性,这些应用可以很轻松地在其他发行版上使用。但它没有集中的仓库存储和软件包管理功能,默认也不提供 Snap、Flatpak 同一级别的沙箱,安全性无法保障。

在经历过种种“折腾”后,基于对各类包管理器的了解,我们决定自己设计一套软件包管理系统。相比其他同类软件包格式,如意玲珑在启动速度、资源占用、安全性方面有诸多优势:

  • 使用非全量运行时Runtime整体体积较小由于复用同一运行时应用启动速度会更快
  • 支持 rootless非特权沙盒。

由于在运行时和沙箱上的优化,玲珑有着比较显著的启动时间优势:

测试次数 linyaps 间隔帧数 linyaps 启动耗时ms Flatpak 间隔帧数 Flatpak 启动耗时ms AppImage 间隔帧数 AppImage 启动耗时ms Snap 间隔帧数 Snap 启动耗时ms
1 9 149.4 14 232.4 16 265.6 42 697.2
2 9 149.4 13 215.8 17 282.2 41 680.6
3 8 132.8 9 149.4 15 249 40 664
4 9 149.4 13 215.8 15 249 41 680.6
5 8 132.8 14 232.4 16 265.6 42 697.2
6 8 132.8 13 215.8 15 249 39 664
7 9 149.4 12 199.2 15 249 39 647.4
8 8 132.8 14 232.4 16 265.6 40 680.6
平均 8.5 141.1 12.8 213.7 15.6 261.6 40.5 676.2

📨 获取帮助

任何使用问题都可以通过以下方式寻求帮助。

📝 文档导航

命令行工具

构建工具

包转换工具

deb 包转换

AppImage 包转换

Flatpak 包转换

调试

常见问题

📖 学习和参考

相关项目

系列教程

更多课程可参考如意玲珑官网:https://linyaps.org.cn/learn

⚒️ 参与

我们鼓励您报告问题并贡献更改。查看 构建指南 以获取从源代码构建 linyaps 的说明。

您可以在 Discussions 上发起话题讨论。

⚖️ 许可证

本项目使用 LGPL-3.0-or-later 许可发布。

👥 社区和贡献

感谢所有已经做出贡献的人!请参阅我们的社区页面

Contributors

若如意玲珑项目对你有所帮助,或者你觉得它有用,欢迎点击该项目的 StarFork 图标。