如何解压一个MacOs PKG 安装包修改内容后重新打包

  1. 使用 pkgutil 先解决pkg到一个文件夹,

    pkgutil pkgutil --expand abc.pkg expaneded

  2. 去到 expaneded 目录,找到Payload文件,执行cpio -i

    cat Payload | cpio -i

  3. 然后你会得散开的安装资源和执行文件, 一般放到一个文件夹里,如package, 你就可以修改了,随登便你如何改

  4. 改好之后,我们要使用cpio -o 把散开的文件打包成Payload

    find package | cpio -o --format odc > Payload

  5. 然后你就可以再使用pkgutil 打这个expaneded目录打包成pkg了

    pkgutil --flatten expaneded abc_moded.pkg

  6. 最后,可以使用create-dmg 生成一个dmg的安装包

    brew install create-dmg
    mkdir dmg
    cp abc.pkg dmg
    create-dmg --volname abc abc.dmg dmg

相关推荐
Web Security Loop8 小时前
MAC卸载JDK环境
java·macos·jdk
IS6831 天前
视频文案提取技术全景:ASR vs OCR,哪种方案更适合你?
ide·macos·xcode
安且惜2 天前
Windows或mac支持本地抓包
windows·macos
做萤石二次开发的哈哈2 天前
开发者如何调用 ERTC iOS API 完成 SDK 初始化配置?
macos·objective-c·cocoa
AUV11073 天前
Mac 录屏自动缩放怎么设置才不乱跳:自动片段、固定区域与鼠标跟随调试
macos·计算机外设
程序员良辰3 天前
【Mac快速切换JDK】Mac 使用 Homebrew + jenv 快速切换 JDK 版本
java·开发语言·macos
coding4u3 天前
Mac 外接显示器完全指南:从插上线到调好每个参数
macos·计算机外设·文件管理·显示器·策略模式·quick look扩展
zhyf1193 天前
(Mac)Homebrew部署Obsidian+Claudian+Excalidraw
macos
chuan.bai3 天前
Java RAG 实战(第 3 篇):从交互式聊天到多轮上下文
java·人工智能·macos·ai
Chennn__3 天前
开源项目:Recorder — 本地离线 macOS 录音转文字(通用/课堂/雅思,可选 Ollama)
macos