[英]Create a debian package to install python scripts to /usr/local/bin in Ubuntu
我嘗試創建一個python應用程序的debian包,如下所示:
setup.py就像
#!/usr/bin/env python
from distutils.core import setup
setup(name='foo',
version='1.0.0',
description='Foo example',
author='Kuan-Kai Chiu',
author_email='ntu.kchiu@gmail.com',
scripts=['src/foo.py']
)
如何將foo.py安裝到/ usr / local / bin而不是安裝到/ usr / bin ? 我知道在運行python setup.py install時有一個選項--install-scripts = / usr / local / bin ,但是我必須對我的python應用程序進行debianize,似乎無法指定install-scripts前綴。
提前致謝!
如果您只想在/usr/local/bin/
安裝文件,請刪除setup.py
因為它並不是真正需要的。 如果你在你的軟件包中使用dh
(你可以看看你是否在你的debian/rules
文件中檢查它。如果你沒有使用它,你應該:-),那么你只需要提供dh_install
(請參閱其聯機幫助頁 ),其中包含install
文件。 這個文件的語法非常簡單,你必須指定你想要安裝什么 ,以及在哪里 。 您可以通過在程序包的根目錄中發出以下命令來執行此操作:
$ echo "src/foo.py usr/local/bin" > debian/install
現在,由於您要在/usr/local/
下安裝腳本,這違反了Debian策略,其中一個dh_*
工具將失敗。 這個工具是dh_usrlocal
。 修復非常簡單。 我們只需告訴debian/rules
我們不想運行它,我們可以通過覆蓋它的行為來實現。 這就是你的最終debian/rules
應該如何:
#!/usr/bin/make -f
# -*- makefile -*-
%:
dh $@
override_dh_usrlocal:
而已。 運行dpkg-buildpackage
,你應該在../
全新的軟件包。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.