4

私は初心者です。私は自分のアプリ用に rpm パッケージを作成していますが、distutils を使用してそれを実現することにしました。この Web サイトのアドバイスを使用して、%post の代替を作成できました。これには本当に感謝していますが、%postun に問題があります。私がしたことを説明しましょう。setup.py で、アプリケーションの実行に必要なシンボリック リンクを作成するコマンドを実行します。問題はありませんが、問題はrpmを削除したいときにリンクが残っていることです。だから私はスペックファイルで %postun を使うべきだと考えました。私の質問は次のとおりです: setup.py でこれを行う方法はありますか、それとも仕様ファイルを手動で編集する必要がありますか? アドバイスやマニュアルなどを教えてください。ありがとうございました

4

2 に答える 2

2

はい、ポスト インストール スクリプトを指定できます。必要なのは、使用するファイルを options arg の bdist_rpm で宣言することだけです。

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

post_uninstall ファイルに、リンクを削除するために必要なコードを次のように入力します。

rm -f /var/lib/mylink
于 2009-10-02T11:46:13.597 に答える
0

distutils も setuptools もアンインストール機能を持​​っていません。

ある時点で、Python コミュニティは、パッケージング システムによってアンインストールを処理する必要があることに同意しました。この場合、rpm を使用したいので、おそらく rpm システム内にパッケージを削除する方法がありますが、distutils や setuptools にはそれがありません。

@ pycon2009 さんで、distutils と setuptools のプレゼンテーションがありました。ここですべてのビデオを見つけることができます

Python での Eggs と Buildout のデプロイ - パート 1

Python での Eggs と Buildout のデプロイ - パート 2

Python での Eggs と Buildout のデプロイ - パート 3

How to Build Applications Linux Distributions will Packageというビデオがあります。見てないけど、似合いそう。

于 2009-09-24T16:09:08.830 に答える