Двоичный установщик OSX для расширения Python без прав администратора
Я упаковываю расширение Python в mpkg
, чтобы создать установщик 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])
что не удается, потому что пользователь, создающий установщик, не входит в группу администраторов. dmg
все еще построен, потому что chgrp
а также chmod
находятся в try
блок. dmg
собирается ежедневно на сервере сборки, и я не хочу давать права администратора пользователю, который выполняет сборку.
Мои вопросы будут:
- Действительно ли необходимо установить группу и режим?
- Если это так, то могу ли я сделать это с помощью какого-либо инструмента, после
dmg
построено?
Если больше ничего нет, я могу написать скрипт для установки группы и режима, а затем использовать sudo, но было бы неплохо найти правильное решение.
Большое спасибо!