簡體   English   中英

distutils setup.py和%post%postun

[英]distutils setup.py and %post %postun

我是新手。 我正在為自己的應用程序構建rpm軟件包,並決定使用distutils來實現它。 通過使用本網站的建議,我設法創建了%post的替代品,對此我表示非常感謝,但是%postun存在問題。 讓我描述一下我做了什么。 在setup.py中,我運行創建運行應用程序所需的符號鏈接的命令。 它工作正常,但問題是當我想刪除rpm時,鏈接停留在那里。 所以我想我應該在規格文件中使用%postun。 我的問題是:有沒有辦法在setup.py中執行此操作,或者我必須手動編輯spec文件? 請給我一些指導或指導。 謝謝

是的,您可以指定一個安裝后腳本,只需在選項arg的bdist_rpm中聲明要使用的文件:

setup(
...
options = {'bdist_rpm':{'post_install' : 'post_install',
                        'post_uninstall' : 'post_uninstall'}},
...)

在post_uninstall文件中,輸入您需要刪除鏈接的代碼,例如:

rm -f /var/lib/mylink

distutils和setuptools都沒有卸載功能。

在某個時候,python社區同意應由打包系統處理卸載。 在這種情況下,您要使用rpm,因此rpm系統內部可能有一種刪除軟件包的方法,但是在distutils或setuptools中找不到。

@ pycon2009,有一個關於distutils和setuptools的演示。 您可以在這里找到所有視頻

Python中的Eggs和Buildout部署-第1部分

Python中的Eggs和Buildout部署-第2部分

Python中的Eggs和Buildout部署-第3部分

有一個名為“ 如何構建應用程序的視頻”的視頻Linux發行版將打包 我沒有看到它,但這似乎是適當的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM