Token导航 LogoToken导航TokenDH.com
效率操作浏览器clawhub未标认证来源可访问clear审计提醒

uos-packager操作系统打包器

Agent Skill

uos-packager 用于补充效率相关能力,适合在 OpenClaw 中需要让 Agent 承接效率相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

7,464

周安装

311

GitHub Stars

公开资料未说明

下载量

2,488
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:uos-packager(操作系统打包器)
来源仓库:https://github.com/zaneniu/uos-packager
安装命令:
openclaw skills install uos-packager
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install uos-packager

简介

基于统信规范,使用 deb 格式将应用文件打包到 /opt/apps/${appid}/,并生成符合要求的 info、desktop 和图标文件。

SKILL.md

UOS/deepin 应用打包规范

UOS/deepin 应用基于统信打包规范,使用 deb 格式,所有应用文件必须安装到 /opt/apps/${appid}/ 目录下。

核心规则

1. 应用标识(appid)

必须使用倒置域名规则,支持小写字母和点号。包名(Package)必须与 appid 完全一致,且仅支持小写字母。

org.deepin.browser
cn.i4.i4tools
com.example.myapp

2. 目录结构(重要)

${appid}/                          ← 直接作为打包根目录,不要有 data/opt 前缀
├── DEBIAN/                        # 打包根目录下的 DEBIAN/(不是 data/DEBIAN/)
│   ├── control
│   ├── postinst
│   ├── prerm
│   ├── postrm
│   ├── preinst
│   └── copyright                  # 版权文件不动
├── opt/apps/${appid}/             ← 打包根目录下创建 opt/,不是 data/opt/
│   ├── entries/                  # 资源映射到系统目录(DDE 自动处理)
│   │   ├── applications/        # desktop → /usr/share/applications/
│   │   │   └── ${appid}.desktop
│   │   ├── icons/                # 图标 → /usr/share/icons/
│   │   │   └── hicolor/scalable/apps/${appid}.svg
│   │   └── ...
│   ├── files/                    # 应用主体文件(原包内容放这里)
│   │   ├── bin/
│   │   ├── lib/
│   │   ├── run.sh
│   │   └── resources/
│   └── info                      # 应用描述文件(JSON,DDE 解析后自动配置映射)

⚠️ 关键教训:

  • dpkg-deb 打包时,DEBIAN/opt/ 必须直接位于打包根目录,不能套一层 data/ 再放 opt
  • 正确:./opt/apps/${appid}/...;错误:./data/opt/apps/${appid}/...(会导致文件装到 /data/opt/...
  • 打包命令在 repack 目录的父目录执行:dpkg-deb --build ${repack_dir} ${output}.deb

3. info 文件(必需)

info 文件是 UOS 打包的核心文件,由 DDE 桌面环境解析后自动配置 entries 到系统目录的映射(无需手动写 postinst 创建 symlink)。

路径:opt/apps/${appid}/info

{
    "appid": "cn.i4.i4tools",
    "name": "i4Tools",
    "version": "3.09.002",
    "arch": ["amd64"],
    "permissions": {
        "autostart": false,
        "notification": true,
        "trayicon": true,
        "clipboard": true,
        "account": false,
        "bluetooth": false,
        "camera": false,
        "audio_record": false,
        "installed_apps": false
    },
    "support-plugins": [],
    "plugins": []
}

字段说明:

字段说明要求
appid应用唯一标识必填,必须与包名一致
name应用默认名称必填
version版本号必填,格式 {MAJOR}.{MINOR}.{PATCH},纯数字
arch支持的架构必填,支持:amd64, arm64, loongarch64, mips64el, sw_64
permissions沙箱权限布尔值,默认 false
support-plugins支持的插件类型可选
plugins实现的插件类型可选

4. Desktop Entry 文件

路径:opt/apps/${appid}/entries/applications/${appid}.desktop 编码:必须 UTF-8(其他编码会导致中文乱码)

[Desktop Entry]
Version=3.09.002
Type=Application
Name=i4Tools
Name[zh_CN]=爱思助手
Comment=苹果设备管理工具
Comment[zh_CN]=苹果设备管理工具
GenericName=i4Tools
GenericName[zh_CN]=爱思助手
Exec=/opt/apps/cn.i4.i4tools/files/run.sh
Icon=/opt/apps/cn.i4.i4tools/files/resources/logo.png
Terminal=false
Categories=utils
Keywords=i4Tools;i4
StartupNotify=true

必填字段: [Desktop Entry]NameExecIconTypeTerminalStartupNotify

Icon 路径注意: 如果图标在 entries/ 下但 logo 资源在 files/ 下,应使用 files/resources/logo.png 的绝对路径,或将图标文件放入 files/resources/ 后在 desktop 中引用。

Categories 可选值:

启动器分类
Network网络应用
Chat社交沟通
Audio音乐欣赏
AudioVideo视频播放
Graphics图形图像
Game游戏娱乐
Office办公学习
Reading阅读翻译
Development编程开发
System系统管理
utils工具类(未在上表时归为"其他应用")

5. 图标

矢量格式(推荐 SVG):

opt/apps/${appid}/entries/icons/hicolor/scalable/apps/${appid}.svg

非矢量格式(PNG,分辨率 16/24/32/48/128/256/512):

opt/apps/${appid}/entries/icons/hicolor/24x24/apps/${appid}.png
opt/apps/${appid}/entries/icons/hicolor/48x48/apps/${appid}.png
opt/apps/${appid}/entries/icons/hicolor/128x128/apps/${appid}.png

6. 文件系统权限

  • 系统目录:只读,不依赖其内容
  • 应用数据目录:使用 XDG 环境变量
环境变量路径
$XDG_DATA_HOME~/.local/share
$XDG_CONFIG_HOME~/.config
$XDG_CACHE_HOME~/.cache

应用数据路径:$XDG_DATA_HOME/${appid}(例:~/.local/share/org.deepin.browser

禁止直接写入 $HOME

7. DEBIAN 钩子脚本规范

7.1 版权/归属信息不动

以下内容属于版权/归属信息,不要修改

  • DEBIAN/copyright 文件
  • DEBIAN/control 中的 Maintainer 字段
  • 原包自带的业务逻辑(如 udev 规则内容)

7.2 可以修改的部分

  • DEBIAN/control 中的 Package(包名,需与 appid 一致)
  • DEBIAN/control 中的 Breaks/Replaces(防冲突)
  • 所有维护脚本的功能逻辑(修复 bug、适配 UOS 环境)
  • desktop 文件、info 文件的内容

7.3 rm -rf 命令规范

# ✅ 正确(带引号)
rm -rf "$INSTALL_DIR/tmp"

# ❌ 错误(未引用变量,重定向不受 sudo 影响)
sudo echo xxx > /lib/udev/rules.d/xxx  # 重定向不在 sudo 作用域
# 正确做法:
printf '%s\
' "content" | sudo tee /lib/udev/rules.d/xxx > /dev/null

7.4 sudo 与重定向

在脚本中,sudo 不影响重定向>>>)。如果需要 sudo 写入文件,使用 tee

# 错误
sudo echo "rule" > /path/file

# 正确
printf '%s\
' "rule" | sudo tee /path/file > /dev/null

7.5 UOS 无 sudo 环境适配

UOS/统信环境下,普通用户可以直接写入 /lib/udev/rules.d/ 等目录。可以通过 /etc/os-release 检测:

if [ -f /etc/os-release ]; then
    . /etc/os-release
    case "$ID" in
        uos|uniontech|deepin)
            # UOS:直接写入,无需 sudo
            printf '%s\
' "$CONTENT" > /path/file
            ;;
        *)
            # 其他系统:使用 sudo
            printf '%s\
' "$CONTENT" | sudo tee /path/file > /dev/null
            ;;
    esac
fi

7.6 shellcheck 检查

sudo apt install shellcheck
shellcheck DEBIAN/postinst DEBIAN/prerm DEBIAN/postrm DEBIAN/preinst

完整打包流程

Step 1:分析原始 deb 包

dpkg-deb -I original.deb          # 查看包信息
dpkg-deb -x original.deb /tmp/orig/  # 解压数据
dpkg-deb -e original.deb /tmp/orig/DEBIAN  # 解压控制信息

Step 2:建立 UOS 规范目录结构

APPID="cn.i4.i4tools"
mkdir -p ${APPID}/opt/apps/${APPID}/{entries/applications,entries/icons/hicolor/scalable/apps,files}

Step 3:迁移文件

  • 应用主体(原包 opt/ 下的内容)opt/apps/${APPID}/files/
  • desktop 文件opt/apps/${APPID}/entries/applications/${APPID}.desktop
  • 图标opt/apps/${APPID}/entries/icons/hicolor/scalable/apps/${APPID}.svg
  • 创建 info 文件opt/apps/${APPID}/info

Step 4:更新 desktop 文件

  • Exec 路径改为 files/ 下的实际路径
  • Icon 路径指向 files/resources/ 下的图标
  • 确认 StartupNotify=true
  • 确保编码为 UTF-8

Step 5:编写/更新 DEBIAN 脚本

  • preinst:安装前清理旧目录(如有)、写入 udev 规则(用 tee 不用 echo+重定向)
  • postinst:写入 udev 规则(UOS 检测)、触发 udev reload
  • prerm:移除 desktop 链接(如有)
  • postrm:卸载后清理 udev 规则
  • 不要删除或修改 copyright 文件

Step 6:写 control 文件

Package: ${APPID}
Version: x.x.x
Section: utils
Priority: optional
Architecture: amd64
Maintainer: <保持原样,不动>
Breaks: ${APPID}
Replaces: ${APPID}
Description: 应用描述

Step 7:打包

# 在 repack 目录的**父目录**执行
# 目录结构应为:
#   repack/
#   ├── DEBIAN/
#   ├── opt/
#   └── usr/ (如需要)
# 不要有 data/ 前缀

dpkg-deb --build repack/ output_${VERSION}_amd64.deb

Step 8:验证

dpkg-deb -I output.deb                      # 检查 control
dpkg-deb -c output.deb | head -30           # 检查归档路径(应为 ./opt/...,不是 ./data/opt/...)
sudo dpkg -i output.deb                      # 安装测试
dpkg -L ${APPID} | grep -E "(entries|info)"  # 检查文件列表
ls /opt/apps/${APPID}/                       # 确认目录存在
ls /usr/share/applications/ | grep ${APPID}  # 确认 desktop 软链接
ls /usr/share/icons/.../${APPID}.svg         # 确认 icon 软链接
cat /lib/udev/rules.d/38-${APPID}.rules      # 确认 udev 规则
shellcheck DEBIAN/postinst DEBIAN/prerm DEBIAN/postrm DEBIAN/preinst

支持的 CPU 架构

架构CPU 系列
amd64x86: 海光、兆芯、Intel、AMD
arm64ARM64: 飞腾、鲲鹏、海思麒麟、瑞芯微
loongarch64龙芯 3A5000/3B5000+
mips64el龙芯 3A4000/3A3000 及更早
sw_64申威 CPU

常见错误

错误原因解决
文件装到 /data/opt/...打包根目录内嵌套了 data/打包时 DEBIAN/opt/ 直接在 repack 根目录下
快捷方式不显示Exec 路径无效 / desktop 编码非 UTF-8检查路径;保存为 UTF-8;确认 StartupNotify=true
图标不显示Icon 路径错误使用 files/resources/logo.png 或确认 entries 下图标路径
DDE 未自动映射 entries缺少 info 文件必须有 opt/apps/${appid}/info 文件
udev 规则无效sudo echo 重定向不生效使用 tee 而非 echo + 重定向
info 文件无效JSON 格式错误严格 JSON 格式,注意字段名拼写
中文乱码desktop 文件非 UTF-8 编码保存为 UTF-8 编码
shellcheck 报错脚本语法问题SC2024(sudo 重定向)、SC2129(多次重定向)
维护脚本执行失败权限不够 / 路径问题UOS 下 /etc/os-release 检测判断是否需要 sudo

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

94.14%
按下载量换算2,342

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills