python - setup.py скопировать файл в определенное место - PullRequest
5 голосов
/ 19 ноября 2011

В рамках процесса установки я хотел бы скопировать файл конфигурации в домашний каталог пользователя, т.е. ~ / .foo.conf

Как обычно это делается с setup.py?Должен ли я написать код в setup.py, чтобы скопировать файл после setup(), или есть какой-то встроенный механизм для такого рода задач?

Обновление

В итоге я изменил скрипт, чтобы проверить, существует ли ~/.foo.conf при запуске.Если нет, создайте конф по умолчанию.Я также нашел этот пост , который был полезен .

1 Ответ

4 голосов
/ 19 ноября 2011

Я думаю, что это может быть неправильное использование setuptools. Если вы хотите придерживаться установки с помощью setuptools, вам, вероятно, следует найти файл конфигурации и громко объявить об этом своим пользователям, но если требуются значения по умолчанию, их следует прочитать изнутри самого пакета, используя что-то вроде resource_stream, так что вы можете быть уверены, что найдете его независимо от того, была ли запущена установка из системы, установленной easy_install, в virtualenv или из системы упаковки, такой как rpm.

в последнем случае фактически размещение такого файла конфигурации было бы нецелесообразным, поскольку пользователей системы не существует на момент создания rpm.

...