Как лучше всего распространять инструменты командной строки python?

Мой текущий setup.pyсценарий работает хорошо, но он устанавливает tvnamer.py(инструмент) как tvnamer.pyв пакетах сайта или где-то подобное ..

Могу ли я сделать setup.pyустановку tvnamer.pyкак tvnamer, и / или есть ли лучший способ установки приложений командной строки?

20.08.2008 13:07:25
1 ОТВЕТ
РЕШЕНИЕ

Попробуйте entry_points.console_scriptsпараметр в вызове setup (). Как описано в документации по setuptools , это должно делать то, что я думаю, вы хотите.

Воспроизвести здесь:

from setuptools import setup

setup(
    # other arguments here...
    entry_points = {
        'console_scripts': [
            'foo = package.module:func',
            'bar = othermodule:somefunc',
        ],
    }
)
34
28.06.2012 20:48:32
Когда я пытаюсь сделать это с Python 2.6 и 3.1, я получаю сообщение UserWarning: Unknown distribution option: 'entry_points'. Так что я думаю, что он не поддерживается в distutilsPython (2.6 и 3.1). Итак, можно ли использовать эту опцию, если мы хотим распространять по PyPI?
Craig McQueen 17.03.2010 01:04:02
в Ubuntu 11.04 установите python-setuptools. Убедитесь, что ваш setup.py импортирует: 'из setuptools import setup'
cmcginty 12.06.2011 00:18:36