Двоичный установщик 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 собирается ежедневно на сервере сборки, и я не хочу давать права администратора пользователю, который выполняет сборку.

Мои вопросы будут:

  1. Действительно ли необходимо установить группу и режим?
  2. Если это так, то могу ли я сделать это с помощью какого-либо инструмента, после dmg построено?

Если больше ничего нет, я могу написать скрипт для установки группы и режима, а затем использовать sudo, но было бы неплохо найти правильное решение.

Большое спасибо!

0 ответов

Другие вопросы по тегам