如何指定Python包中entry_points脚本的安装位置?
我有一个Python包,里面有一个setup.py文件,内容如下:
setup(name=project_name,
packages=find_packages(exclude=['ez_setup', 'examples', 'tests']),
include_package_data=True,
zip_safe=False,
entry_points="""
[console_scripts]
sound-run = sound.run:start
sound-resume = sound.run:resume
"""
# Other setuptools stuff
)
我想要在把这个包安装成Debian包的时候,能把一些脚本(比如sound-run和sound-resume)放到我指定的地方。目前,当我制作Debian包时,这些脚本会被放到/usr/local/bin/目录下,但我希望它们能安装到/usr/local/myfolder/myfolder1这个目录里。
有什么建议吗?
1 个回答
0
你可以用这个命令来安装脚本:python setup.py --install-scripts destination
。如果你想了解更多,可以使用--help
选项,或者查看这个链接:https://docs.python.org/2.7/install/index.html#custom-installation
需要注意的是,这个功能是由distutils提供的,而setuptools是对它的扩展;我猜测通过setuptools生成的脚本也会遵循这个选项。
关于你的使用场景,Debian系统有一些特定的工具可以把东西安装到正确的位置,这样Debian的工具就能完成后续的工作。我建议你可以看看如何使用dh配合pybuild和dh_python2。