关于如意玲珑

如意玲珑Linyaps(简称:玲珑)是一种新型的独立包管理工具集,致力于治理Linux系统下传统软件包格式复杂、交叉的依赖关系导致的各种兼容性问题,以及过于松散的权限管控导致的安全风险。

目前项目已正式捐赠给开放原子开源基金会(OpenAtom Foundation),处于项目孵化期

如意玲珑的由来

八宝玲珑塔,蕴含芥子乾坤般的另一个世界,状似七层实非七层,以逞道法之变化。

“玲珑”二字,正好融合“隔离”与“分层”思想,寓意对应用运行时的系统环境进行分层管理,实现权限管控。

如意玲珑历史

  • 2017年

    参考Flatpak包管理方案,对deepin的包管理机制尝试重构与改造,并发布了首批基于该技术方案的100+独立安装包,为玲珑包项目奠定了基础。

  • 2020年

    借鉴沙箱/容器的技术方案,玲珑原型的核心开发悄然完成。

  • 2022年

    作为 deepin 发行版未来的核心特性,玲珑随 deepin v23 预览版共同发布,初步具备可用性。

  • 2024年5月24日

    如意玲珑正式捐赠给开放原子开源基金会,汇聚更多产业力量,携手推动玲珑发展,加速生态建设。

技术框架

从技术架构上可以看到,玲珑最大的特点就是支持跨发行版。我们基于User Namespace、CGroup等机制,提供了统一的、脱离于操作系统之外的应用程序运行环境,其中主要包括Qt等桌面应用常用的库和依赖,这些运行环境支持多版本共存,从而我们能实现“一个架构,一次构建”。

核心项目

玲珑是基于namespace技术构建的应用运行与分发规范,包含以下核心项目

项目名称 组件名称 主要功能
linglong-box lI-box 提供运行时的沙箱环境
linglong ll-pkg/ll-cli 包管理器前端工具,提供安装、卸载、更新和启动等基础命令
Il-package-manager 包管理器后台程序之一,管理应用的安装、更新、卸载等功能
ll-builder 提供容器化的应用构建环境,方便开发者在不同的环境上构建出一致性的应用
linglongdbus-proxy ll-dbus-proxy dbus代理工具,按配置规则转发对应dbus消息
linglong-homepage linglong-homepage 玲珑官网,提供玲珑官网主页展示与访问服务,包括使用文档
linglong-web-store linglong-web-store 玲珑网页商店,提供现有玲珑应用展示和下载入口
ll-pica ll-pica 玲珑一键转制工具,提供 deb 包转换为玲珑包的能力

项目价值

开发者价值

简化打包流程

降低维护成本

提高开发效率

客户价值

增强数据安全

保障业务稳定

降低运维成本

生态价值

建立分发标准

提升生态安全

打破平台壁垒

降低开发成本 助力灵活分发

启动速度快 资源占用低

使用非全量运行时(宿主系统+Runtime),整体体积较小

复用宿主系统上的库,可以使用到部分已经加载到内存中的库文件,同一应用在玲珑下启动速度提升显著

提供开发库托管服务,类似NuGet,方便开发者进行开发

支持Rootless(无特权)沙箱

生态发展

覆盖更多发行版本

当前玲珑项目已经支持多个发行版本,包括deepin、统信UOS、欧拉、openKylin、麒麟专业版、Ubuntu 24.04、Debian 12

更多发行版适配中…

 

玲珑应用持续适配

玲珑应用生态由玲珑项目组、社区发烧友与商业合作伙伴携手共建,共同促进开源应用及商业应用玲珑化进程

目前已成功适配超过2000款玲珑应用