Python アプリケーションを同僚が使用できるように配布したいと考えています。アプリケーションは Linux システムで実行されますが、ユーザーには管理者権限がないため、アプリケーションのモジュールの依存関係をインストールできません。ユーザーがアプリケーションを untar してから、main.py スクリプトを実行できるようにします。別の 1 回限りの「インストール」タイプのスクリプトを実行することは問題ありませんが、それ以外のことはあまりありません。
PyInstallerは私が望むものに近いです。ただし、アプリケーションのソース コードも配布したいと考えています。したがって、アプリケーションはスタンドアロンで自己完結型である必要があります (Python インタープリターの有無にかかわらず問題ありませんが、できれば使用できます) が、ユーザーはコードに小さな変更を加えてアプリケーションを再実行できる必要があります。私の理想的な解決策は、すべてのアプリケーション モジュールの依存関係の何らかの圧縮/コンパイル済みアーカイブを作成し、それをアプリケーションと共に配布することです。すべての依存関係である必要はありませんが、少なくとも非標準パッケージです。アプリケーションは、ユーザーの PYTHONPATH ではなく、このアーカイブからモジュールをインポートします。
私は virtualenv を試しましたが、ユーザーに activate スクリプトを提供させるのは少し多すぎました。他の多くのソリューションを検討してきましたが、自分に合ったソリューションが見つかりません。