我正在mpkg
中打包一个Python扩展,以创建一个OSX安装程序。然后将mpkg
放入dmg
文件中。这可以通过distutils
和bdist_mpkg
轻松完成:
python setup.py build_ext
python setup.py bdist_mpkg
hdiutil create -layout NONE -srcfolder $MPKG $DMG
唯一的问题是bdist_mpkg
通过以下方式设置mpkg
中文件的组和模式:
spawn(['/usr/bin/chgrp', '-R', 'admin', src])
spawn(['/bin/chmod', '-R', 'g+w', src])
失败,因为构建安装程序的用户不在admin组中。 dmg
仍在构建,因为chgrp
和chmod
位于try
块中。 dmg
每天都在构建服务器上构建,我不想为执行构建的用户授予管理员权限。
我的问题是:
dmg
之后,我可以使用某个工具吗?如果没有别的,我可以写一个脚本来设置组和模式,然后使用sudo,但是有一个合适的解决方案会很好。
非常感谢!