我可以使用一些python(或Java)API将文件夹复制到dmg文件中吗?

时间:2016-06-02 08:04:03

标签: java python dmg

我需要通过向其添加一个文件夹来更新.dmg(a.k.a。Apple磁盘映像)文件(它是一个OSGI应用程序,我想添加更多的捆绑包)但我更喜欢独立于平台的解决方案。我的主要代码是用Python编写的,但我对Java也很满意。是否可以像这样编辑.dmg文件?

请注意,我不一定需要创建一个/dmg文件,因为我有一个,但如果最好的方法是解压缩,然后重新打包也可以。

1 个答案:

答案 0 :(得分:0)

在Mac上创建.dmg图像并不是一件容易的事,至少使用免费软件并不是一件容易的事。而且非免费,它主要是for-Mac软件。我一直在那里,并认为这是浪费时间。

如果你在Mac上,使用hdiutil是操纵.dmg

的方法

这里有一个Python包装器https://bitbucket.org/al45tair/dmgbuild来为您提供一些想法。

在大多数情况下,您无法直接“编辑”.dmg,因为这些是固定大小的图像AFAICR。但是你可以调整一个: hdiutil resize -size 70m

然后你可以挂载它并将文件复制到它。

如果这是一次性操作,最好是手动操作而不是自动化恕我直言。

现在有一些工具可以在Linux上构建,但我没有对它们进行评估。不使用hdiutils时的关键问题是创建一个在Mac上始终可读的.dmg ... 你可以尝试:   - hfsplus-toolshttps://apps.fedoraproject.org/packages/hfsplus-tools   - libdmg-hfsplushttps://github.com/planetbeing/libdmg-hfsplus以及Debian。   - hfsutils:Linux发行版中提供

另请参阅http://www.nathancoulson.com/proj_cross_tools.php以获取这些问题以及此问题的清单:How to build a dmg Mac OS X file (on a non-Mac platform)?

再次,YMMV,但我无法在Mac之外创建100%可靠的.dmg。