[ Technical exchange] 新版内测| 拿捏!Flatpak难逃被ll-pica玲珑化的命运(内含活动)
Tofloor
poster avatar
应用商店-小鱿鱼
Moderator
2024-10-23 14:44
Author

有人曾问小编道:如意玲珑主要是希望解决什么问题?

小编答曰:为了促进Linux生态发展呀!

那个人抬杠:Linux虽然发展得一般,但是生态一直很繁荣啊(笑而不语)

确实繁荣,不信你看,光软件包格式就有:deb、rpm、Flatpak、Snap、AppImage……

⚔️ 国际惯例,打不过就加入!于是有了我们的如意玲珑 !

咱们全新加入了 1)layer格式(联网安装包)以及 2)uab格式(离线运行包)

image.png

当然加入不是为了让Linux生态更“繁荣”,而是为了给Linux生态带来一个真正高效的解决方案。

众所周知,传统Linux软件包管理器存在这些问题:

  1. deb、rpm都属于强依赖型的包管理系统,同时允许各个组件之间有复杂的交叉依赖(或循环依赖)关系。这使得维护包管理系统需要极强的专业知识,稍有不慎,就会导致系统彻底故障,无法修复。
  2. 安装依赖和运行依赖耦合,多版本共存困难。rpm和 deb虽然提供了方案来解决多版本共存的问题,但是这些方案要求源码级别的改动,不具备实施的可行性。
  3. Hook系统设计复杂,没有限制,可以通过 Hook系统做很多破坏系统的操作。
  4. 可靠性不足,没有冗余的恢复设计,缺乏校验机制。一旦包管理系统故障,系统基本没有修复的可能性。
  5. deb、rpm权限管控松散,可能允许恶意软件或未经授权的用户访问敏感数据,有较大的安全风险。
  6. 当前包更新不支持增量更新,对资源有较大浪费。

💢

那说到这里,你们又会说:

Flatpak、Snap和AppImage也能解决部分以上所提到的问题,那如意玲珑的优势到底是什么呢?

总结就是:人无我有,人有我优!细节请看:

特性 如意玲珑 Flatpak Snap AppImage
打包桌面应用
打包终端应用
处理服务器应用
打包系统服务(root 权限)
主题功能正常
提供库托管服务
商业支持
容器支持 ◐ (官方不提供)
rootless 容器
不安装运行
不解压运行
自分发/绿色格式分发
支持 Wine 应用运行 ◐ (适配中) ◐ (理论可行 ◐ (理论可行) ◐ (兼容性差)
离线环境支持
权限管理
多版本共存
点对点分发
应用升级 仓库升级 仓库升级 仓库升级 官方工具升级

如意玲珑主要针对Linux软件包管理体系常见的问题,针对性的改进升级了以下这些内容:

  • 提升易用性,解决 deb、rpm依赖冲突问题
  • 加强安全防护,实现了应用权限管理机制
  • 包自身携带库/依赖来源、宿主系统及SDK
  • 提供 Bundle 模式,支持不安装、不解压运行
  • 支持应用增量更新
  • 支持处理服务器应用
  • 提供库托管服务

并在持续迭代中……

.

↗️ 如意玲珑,更为高效,更能适应不同的开发场景

如意玲珑通过统一发布和调用系统已有的运行时(Runtime),在解决应用体积膨胀、启动速度慢以及权限管理问题方面进行了特别的优化。与 Flatpak 和 Snap 相比,如意玲珑对磁盘空间的需求大幅减少,同时启动速度也更快。

与传统的包管理体系(例如 Debian 和 Red Hat 的包管理体系)相比,如意玲珑应用需要在独立的沙盒环境中运行。通过限制应用与系统的交互、优化权限管理,大幅地提高了应用安全性。

此外,如意玲珑独有的离线包格式 uab 提供了 Bundle 模式,支持不安装、不解压即可运行软件。

image.png

在开发效率层面,如意玲珑还办了件与众不同的大事:

↗️ 独有的应用转制工具:ll-pica,支持将其他格式包快速“玲珑化”

在如意玲珑最新发布的 1.6.3版本中,ll-pica上线了两个全新的转制工具:

1)ll-appimage-convert

2)ll-pica-flatpak

截止目前,ll-pica 现已支持deb、appimage和flatpak格式应用快速转制。

image.png

● 工具由linglong-pica提供,支持生成构建玲珑应用需要的linglong.yaml文件,并依赖 ll-builder 来将 appimage 或 flatpak 包构建及导出为玲珑格式(layer 或 uab)。

● 转换工具只是辅助工具,并不能保证被转换的应用一定能运行,可能软件本身依赖库的安装路径或其他配置路径与玲珑内部路径不统一,导致无法运行,需要使用 ll-builder run --exec bash 命令进入容器调试

● 具体的应用转换教程可以访问 如意玲珑社区官网 www.linglong.space / 文档中心查看

● ll-pica主要依赖玲珑和golang,目前仅在deepin 23上兼容适配,其他发行版理论上可用,欢迎自行探索

💻 v 1.6.3 更新说明:

  • 当前如意玲珑新版本1.6.3仅限deepin 23内测用户可获取,需要更新系统至最新版本(该版本其他发行版暂未正式推送)。
  • 加入deepin内测:系统控制中心-更新-更新设置-加入内测通道。
  • 或通过deepin应用商店安装“玲珑转制工具”即可使用最新版本ll-pica。参考如下:

image.png

.

⚫️ 科普时间 ⚫️ 如意玲珑应用构建的“产物” :

💡 layer 文件:

联网安装包格式。layer 文件分为 binary 和 develop,binary 包含应用的运行环境,develop 在 binary 的基础上保留调试环境。

💡 uab 文件:

离线运行包格式,适用于无法正常连接到玲珑仓库的系统。若可以正常联网,应当使用玲珑软件仓库提供的增量传输方案以减少网络传输体积。

💡 linglong.yaml:

是玲珑项目工程的描述文件,记录构建所需的相关信息,如构建产物的名称、版本、源码地址、构建依赖等。

.

↗️ 开发者活动

即日起至10月30日,以下两种参与形式可以获得以下社区感谢:

1)社区周边礼品一份(每个人仅限1份,但感谢你能为玲珑社区多次贡献)

2)成为如意玲珑社区的生态贡献者(linyaps-packaging SIG Contributor)

3)将在社区官网及相关传播渠道实名感谢

✔️ 活动1 体验pica并提出宝贵建议(issue)

●在GitHub组织ll-pica项目仓库内提交工具的有效issue(任何体验建议或bug皆可提交)
●将issue界面截图回复本帖即可
●仅限前10名有效issue提交者可获得周边礼品奖励(被采纳的建议或被确认的bug称为有效,以提交时间先后排序)

✔️ 活动2 用pica构建玲珑应用

●使用以上提到的两个pica转制工具,将appimage或flatpak格式软件转制为layer格式(以binary.layer结尾的那个文件)
●本帖下回复 下载链接 或 通过开发者平台上传后提交应用ID ,符合上架标准的软件提交者可以获得周边礼品奖励(仅限deepin 23不在架的玲珑应用,避免重复工作)


kissing_heart 社区讨论,欢迎加入:

玲珑200.jpg

相关链接:

搞定!如意玲珑应用商店,正式上线!(鸣谢三位社区贡献者)

【玲珑生态构建直播课】课程讲义及视频回看(完整4节课)

如意玲珑社区官网

Reply Favorite View the author
All Replies
2 / 2
To page
应用商店-小鱿鱼
Moderator
2024-10-30 13:57
#21
137******41

转换成功了Bruno,一个新兴的接口测试工具,对标postMan

用ll-build转换成功,ll-appimage-convert看上去更专业,反而不行。

下载链接:

链接: https://pan.baidu.com/s/1kzUOSx4a2fc2GvouMGF9_Q?pwd=kfcy 提取码: kfcy 复制这段内容后打开百度网盘手机App,操作更方便哦

666,任重而道远我们会继续努力的。朋友你加一下我们社群联系我们管理员陈莉雅吧tail

Reply View the author
137******41
deepin
2024-10-30 23:30
#22
应用商店-小鱿鱼

666,任重而道远我们会继续努力的。朋友你加一下我们社群联系我们管理员陈莉雅吧tail

是上面二维码对应的群吗?进入了,但没有找到陈

Reply View the author
2 / 2
To page