AppImage は Linux のソフトウェアをポータブルに配布できる形式のファイルです。アプリケーションをダウンロード後、実行権限を与えて実行するだけです。インストール不要、システムライブラリ不要、システム設定の変更も不要です。Firejail のようなサンドボックスで動作させることもできます。
AppImage は何度も名前を変えています。2004 年に klik という名前ではじめてリリースされ、2011 年に PortableLinuxApps に、そして 2013 年に現在の AppImage に変わりました。
本ブログ記事では下記の OS 環境で動作確認をしています。
OS | |||
Fedora 31 (Workstation Edition) | x86_64 |
AppImageHub からアプリをダウンロード
参考サイト [3]、AppImageHub のサイトでは、AppImage 形式にビルドされたアプリがダウンロードできます。本ブログ作成時には 946 種類のアプリが登録されているとあります。
試しに Multimedia をクリックして、一番下に表示されている youtube-music をダウンロードしてみました。端末エミュレータ上でダウンロードしたディレクトリに移り、chmod +x で実行権限を与えて実行します。
[bitwalk@fedora-pc ~]$ cd ダウンロード [bitwalk@fedora-pc ダウンロード]$ chmod +x *.AppImage [bitwalk@fedora-pc ダウンロード]$ ls *.AppImage youtube-music-1.1.6-x86_64.AppImage [bitwalk@fedora-pc ダウンロード]$ ll -h youtube-music-1.1.6-x86_64.AppImage -rwxr-xr-x. 1 bitwalk bitwalk 79M 12月 21 17:44 youtube-music-1.1.6-x86_64.AppImage [bitwalk@fedora-pc ダウンロード]$ ./youtube-music-1.1.6-x86_64.AppImage Fontconfig warning: "/usr/share/fontconfig/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs" Loaded plugin - navigation Loaded plugin - shortcuts Loaded plugin - adblocker Checking for update Generated new staging user ID: d9ef94cb-254c-50cd-af1b-222c41a0e5a0 Update for version 1.1.6 is not available (latest version: 1.1.6, downgrade is disallowed). checkForUpdatesAndNotify called, downloadPromise is null
すると、起動用のアイコンをアプリケーション一覧に登録するかを尋ねるダイアログが表示されます。
※ たまたま例として取り上げた youtube-music では起動用のアプリケーションアイコンを登録する機能がありましたが、これは全ての APPImage のアプリケーションに備わっている機能ではないようです。
ここでは Yes をクリックして、あとでアプリ一覧を確認することにします。
そのあと youtube-music のウィンドウが画面に表示されます。(下図)
ざっと動作確認をしましたが、問題は無さそうです。
GNOME のアプリ一覧をみると youtube-music のアイコンが登録されていて、マウスのクリックで起動する事を確認できました。
このアイコンは、ユーザーディレクトリ内 $HOME/.local/share/applications に作成された appimagekit-youtube-music.desktop が対応していますので、youtube-music-1.1.6-x86_64.AppImage が不要になってこれを削除した時に、忘れずにこの desktop ファイルも削除する必要があります。
[bitwalk@fedora-pc ダウンロード]$ ls ~/.local/share/applications appimagekit-youtube-music.desktop chrome-gdijeikdkaembjbdobgfkoidjkpbmlkd-Default.desktop chrome-hgmloofddffdnphfgcellkdfbfbjeloo-Default.desktop chrome-hmjkmjkepdijhoojdojkdfohbdgmmhki-Default.desktop chrome-iabmpiboiopbgfabjmgeedhcmjenhbla-Default.desktop mimeapps.list mimeinfo.cache [bitwalk@fedora-pc ダウンロード]$ cat ~/.local/share/applications/appimagekit-youtube-music.desktop [Desktop Entry] Name=YouTube Music Comment=YouTube Music Desktop App - including custom plugins Exec="/home/bitwalk/ダウンロード/youtube-music-1.1.6-x86_64.AppImage" %U Terminal=false Type=Application Icon=appimagekit-youtube-music StartupWMClass=YouTube Music X-AppImage-Version=1.1.6.26 Categories=AudioVideo; X-AppImage-BuildId=1Qi1qqUKGYE8Xsa6HFv7yPWJlGC X-Desktop-File-Install-Version=0.24 X-AppImage-Comment=Generated by /tmp/.mount_youtubTwqmsO/AppRun TryExec=/home/bitwalk/ダウンロード/youtube-music-1.1.6-x86_64.AppImage [bitwalk@fedora-pc ダウンロード]$
雑感
ダウンロードしてそのまま実行できるパッケージは、たしかに便利です。既に OS イメージを USB に書き込むユーティリティ balenaEtcher [6] で AppImage のパッケージをフツーに利用していることを、このブログ記事を書いている時に思い出しました。💦
ただ、このように単発で使うアプリを単一のファイルで管理するのは OK でも、全てのアプリをこのような形で管理するのであれば一抹の不安があります。個々のファイルのサイズは大きすぎないか、アプリのアップデートを適切にさばけるのかなど、評価・検討したい項目がいくつもあります。
反面、一般的に必要なアプリとともにインストールする Linux ディストロに対して、インストール後、殆んどアプリが入っていない状態から、必要なアプリを AppImage のような手段でダウンロードして使う方が、もしかするとストレージ使用量が少なく収まるかもしれないとも思ってしまいます。これは、本ブログで紹介した Fedora Silverblue [7] の Flatpak でも感じたことです。
Flatpak やこの AppImage など、従来の rpm や deb パッケージをベースとしたシステム構築とは別のアプローチが、すでに普通に使えるレベルになっています。こういったアプローチの進展をフォローせずに何年もやり過ごしてしまいました。これを後悔しても仕方がないので、時間を見つけてキャッチアップに努めます。
参考サイト
- AppImage | Linux apps that run anywhere
- Upstream packaging — AppImage documentation
- index.html – AppImageHub
- Firejail | security sandbox
- 2016年5月13日 ヤバめのアプリはまず"火の檻"で ―サンドボックス「Firejail」がX11に対応へ:Linux Daily Topics|gihyo.jp … 技術評論社
- balenaEtcher - Home
- bitWalk's: Linux ディストロ探訪(10) 〜 Fedora Silverblue 〜 [2019-11-24]
にほんブログ村
0 件のコメント:
コメントを投稿