AppImage とアーカイブ ファイルの違い

AppImage とアーカイブ ファイルの違い

多くのアプリケーション(IntelliJ IDEA、PyCharm、Android Studioなど)は、tar.gzまたはtar.xzファイルとして利用できます。インストールする必要はありません。アーカイブファイルを抽出してアプリケーションを実行するだけです。一方、AppImagesもあります。AppImageを実行すると、AppImageは一時的に\tmpディレクトリにマウントされ、実行されます。AppImageを抽出する他のアーカイブ ファイルと同じように、アプリケーションを実行します。そこで質問なのですが、AppImage とアーカイブ ファイルの違いは何でしょうか?

答え1

「アプリケーションの内容を解凍して実行する」という意味では、これらは確かに似ています。ただし、.tar.gz アーカイブの場合は、手動で行う必要があります。解凍する場所を選択し、内部の実行可能ファイルを見つけて実行し、プログラムを使用して、必要に応じて削除します。AppImage では、ディレクトリ/tmp(多くの場合、RAM にマウントされます) が作成されて選択され、適切なファイルが実行され、AppImage アプリケーションが閉じられた後にクリーンアップされます。

AppImage には、アプリケーションをシステムに統合するためのプロンプトも含まれており、さまざまなユーザーにとって便利です。

さらに重要なのは、.tar.gz ファイルは作成者が決めたものなら何でも構わないということです。すべての依存関係とその依存関係の正しいバージョンがあることを前提とした 1 つの実行可能ファイルである可能性もありますし、特定の場所に抽出する必要があるかもしれませんし、動作させるために解凍以上の設定が必要な可能性もあります。実際には、コンパイルする必要がある一連のソース ファイルだけである可能性もあります。

一方、公式サイトの定義によれば、AppImage は「どこでも実行できる Linux アプリ」です。適切な AppImage であるためには、アプリケーションは適切な依存関係が適切に配置され、自己完結的にパックされている必要があり、追加のセットアップを必要とせずにほとんどの Linux ディストリビューションで実行できる必要があります。

私が思いつくのは、少なくともこれだけです。もちろん、その多くは好みの問題です。おそらく、あなたにとっては、これらすべてに違いはないかもしれません。しかし、作者やユーザーを含むさまざまな人にとっては違いがあります。

関連情報