惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Troy Hunt's Blog
Y
Y Combinator Blog
云风的 BLOG
云风的 BLOG
B
Blog RSS Feed
S
Securelist
H
Help Net Security
Security Archives - TechRepublic
Security Archives - TechRepublic
S
Secure Thoughts
Spread Privacy
Spread Privacy
C
Check Point Blog
WordPress大学
WordPress大学
AWS News Blog
AWS News Blog
L
Lohrmann on Cybersecurity
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
P
Privacy International News Feed
T
The Exploit Database - CXSecurity.com
N
News and Events Feed by Topic
Blog — PlanetScale
Blog — PlanetScale
PCI Perspectives
PCI Perspectives
T
Tor Project blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
C
Cyber Attacks, Cyber Crime and Cyber Security
Google Online Security Blog
Google Online Security Blog
The Hacker News
The Hacker News
宝玉的分享
宝玉的分享
www.infosecurity-magazine.com
www.infosecurity-magazine.com
C
Cisco Blogs
Last Week in AI
Last Week in AI
Webroot Blog
Webroot Blog
GbyAI
GbyAI
I
InfoQ
罗磊的独立博客
The GitHub Blog
The GitHub Blog
Google DeepMind News
Google DeepMind News
Latest news
Latest news
P
Palo Alto Networks Blog
博客园 - Franky
T
Threat Research - Cisco Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
Security Affairs
H
Hacker News: Front Page
P
Privacy & Cybersecurity Law Blog
小众软件
小众软件
The Register - Security
The Register - Security
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
B
Blog
V
Vulnerabilities – Threatpost
人人都是产品经理
人人都是产品经理
博客园_首页
aimingoo的专栏
aimingoo的专栏

陈陈菌博客

如何在 podman 容器内使用 systemd 在 podman 运行 GUI 应用的经验总结 管理 podman 容器与镜像的导入或导出 用 xdg-dbus-proxy 解决容器的文件选择器的问题 解决 VSCodium 或 Code-Server 无法安装 GitHub Copilot 问题 不可变发行版 Fedora Silverblue 的体验记录 解决 apt 或 dnf 无法 tab 补全的问题 对 (MPA) 多页面切换实现丝滑动画的探索 让服务在非 Root 权限下使用 80 或 443 端口 AppImage 应用打包快速上手 Flatpak 使用和应用打包快速上手 如何用 webSocket 实现一个实时聊天应用 Linux 内核编译 | 快速上手 | deb 使用 debootstrap 构建 Debian 系根文件系统 高度可定制的 KDE 窗口装饰器 klassy 有关 docker、podman、nspawn、bwrap 的 Linux 容器图形性能测试 创建任意 Linux 容器并支持 GUI 程序 (Docker) 创建任意 Linux 容器并支持 GUI 程序 (nspawn) 文件同步工具 rsync 的使用 RPM 打包指南 | 精简版 PBR 材质的各种贴图类型入门 APU | Stable-Diffusion 使用记录 如何在 Electron 上启用 WebGPU Grub 主题安装与配置 Fcitx5 主题安装与自定义 不使用 Nginx 的网站开发指南 如何自制一个简易的资源监控程序 SQL 常用 CRUD 语法记录 Debian 打包入门,与需要注意的问题 在 fedora 建立一个 Arch 容器 (bwrap) 在 fedora 上建立一个 debian 容器 (bwrap) i3wm | 自制一个极简的屏幕亮度调节器 在 Linux 下启用内存压缩技术 zram 搭建一个本地轻量级聊天 Ai 我又又又重新上线了博客 如何通过命令行管理 wine 容器 (包括 proton) Btrfs 文件系统创建 swap 文件的方法 如何创建适用于 Linux 桌面的程序启动文件 在 Linux 控制 intel CPU 调度的方法 Arch Linux 的基本安装
玲珑 (Linyaps) 应用打包
GlumiStudio@ · 2025-07-08 · via 陈陈菌博客

2025-07-08 19:04:51

分类: Linux 标签: 容器


玲珑(Linglong),在交给开放原子基金会后又叫如意玲珑(Linyaps)。最开始只是 deepin 的二级包管理器,现在已经在其他 Linux 发行版如:Fedora Debian Arch 都可以安装使用。

它是一个类似 Flatpak 基于容器的包管理方案,同时它导出的 uab 文件也和 appimage 类似可以直接运行 (可以说是缝合怪了)

快速上手


在打包之前首先要安装玲珑相关组件,如 bin、builder、box。 官网 这里 有各种发行版安装的方式

安装完后,接下来以一个经典的 c 程序举例(输出一段 Hello World 字符)。从编译源码到将二进制打包。

首先使用 ll-builder create [名称] 来创建一个玲珑包项目,该目录下会生成一个默认的 linglong.yaml 模板,可以做一些调整,我写成了这样:

version: "1"

package:
  id: com.test.demo
  name: demo 
  version: 0.0.0.1 
  kind: app
  description: |
    这是一个玲珑测试 demo

command: 
- /opt/apps/com.test.demo/files/demo

base: org.deepin.base/23.1.0

build: |
  echo "正在 gcc 编译"
  gcc demo.c -o ${PREFIX}/demo

其中 build 字段很好理解,就是在构建过程中所做的 shell 操作。${PREFIX} 代表指向 /opt/apps/com.test.demo/files/ 这个的地方,相当于虚拟的根文件系统,这在宿主里是不存在的,我们只需要把需要的文件往 files 这里丢即可。base 是玲珑基础依赖,是必须的。而 command 是软件安装后运行所使用的启动命令。

demo.c 源码:

#include <stdio.h>
int main(){
    printf("\nHello World\n\n");
    return 0;
}

此时目录内是这样的:

├── linglong.yaml
├── demo.c

我们使用 ll-builder build 就可以进行构建,然后 ll-builder export 是打成玲珑 uab 格式,这是一个可以像 appimage 一样直接运行的程序。除此之外也可以使用 ll-cli install [uab文件] 来进行安装到玲珑本地容器中。

使用 ll-cli list 可以看到我们已经安装的玲珑包,其中可以看到我们构建好的 com.test.demo 这个包。使用 ll-cli run com.test.demo 即可运行起来。

有关玲珑的更多文档 | 玲珑在线应用商店