2017-11-21 4 views
0

私はいくつかのユーザーデータを管理する簡単なコマンドラインPythonアプリケーションを作成しています。ビルドと配布プロセスを簡単にするためにsetuptoolsを実装することを考えましたが、ユーザーファイルを管理するための良い解決策が見つかりません。setuptoolsで追加のアンインストールスクリプトを実行する

/etc/appnameでユーザーディレクトリを作成するのは簡単ですが、ユーザーは、おそらくと、自分のアプリケーションをアンインストールしたい場合:

sudo pip uninstall appname 

これは、ユーザーを保持/etc/appnameディレクトリを削除しません。ファイルは.eggのみ削除されます。

setup.pyでアンインストール時に実行されるスクリプトが指定されていますので、作成したディレクトリを手動で削除できますか?

または、読み取り専用の設定ファイルだけでなく、アプリケーションからファイルへの読み書きのためにsetuptoolsがデータディレクトリを作成するオプションがありますか?

+0

linux用のパッケージを作成することをお勧めします。私はあまりにも(pipコマンドを使用して)それを行うことができませんでした。 –

答えて

0

私はsetuptoolsで動的ファイルを管理する適切な方法が見つからなかったので、私はMakefileを使用しました。参照するプログラムのディレクトリを作成し、setuptoolsを実行してpipパッケージを収集し、スクリプトを/usr/binにインストールします。

install: 
    mkdir -p ~/.appname/users 
    sudo python setup.py install 
    cp -u appname/users/* ~/.appname/users 

uninstall: 
    sudo rm -rf ~/.appname 
    sudo pip uninstall appname 
関連する問題