2020-08-09

Flatpak コマンド (2)

Flatpak は、Linux デスクトップ向けのソフトウェアデプロイメントおよびパッケージ管理を行うユーティリティソフトウェアです。Flatpak でインストールされたアプリケーションは、実行時にホスト環境から隔離(サンドボックス化)されます。

Flatpakは freedesktop.org のプロジェクトとして開始され。以前は xdg-app という名称でした。

Wikipedia より引用・編集

先日のブログ記事 [1]で、Flatpak のコマンドの使用例(概略)について紹介しましたが、マニュアルとして使用できるよう詳しくまとめました。

使用した OS の環境は下記の通りです。

Fedora Silverblue 32 x86_64
» flatpak-1.6.5-1.fc32.x86_64

Flatpak コマンド

flatpak --help とタイプして表示される情報と、man flatpak とタイプして表示される情報のうち、DESCRIPTION の部分をまとめました。

用    法説    明
flatpak [OPTION…] COMMAND

Flatpak は、アプリケーションとアプリケーションが使用するランタイムを管理するためのツールです。Flatpak モデルでは、アプリケーションはホストシステムから独立してビルドして配布することができ、実行時にはホストシステムからある程度隔離されています(「サンドボックス化」されています)。

Flatpakは、システムまたはユーザごとのモードで動作します。システムのデータ(ランタイム、アプリケーション、設定)は $prefix/var/lib/flatpak/ にあり、ユーザごとのデータは $HOME/.local/share/flatpak/ にあります。これらの場所の下には、 repo/サブディレクトリ にローカルリポジトリがあり、インストールされたランタイムとアプリケーションは、対応する runtime/app/ サブディレクトリにあります。

システムのリモート・リポジトリは、flatpakrepo ファイルを /etc/flatpak/remotes.d/ に書き込んでおくことで、静的に事前設定することができます。

$prefix/var/lib/flatpak/ にあるシステムのインストールに加えて、/etc/flatpak/installations.d/ にある設定ファイルを使って、より多くのシステムのインストールを定義することができます。DisplayName、Priority、StorageType のような他のオプションのパラメータもサポートされています。

Flatpak はデータの配布とデプロイに OSTree を使用しています。使用するリポジトリは OSTree のリポジトリで、ostree ユーティリティで操作することができます。インストールされているランタイムやアプリケーションは OSTree のリポジトリからチェックアウトされています。

build-init、build、build-finish などの flatpak をビルドするための基本的なコマンドは flatpak ユーティリティに含まれています。より高レベルのビルドサポートについては、別の flatpak-builder ツールを参照してください。

コマンド説    明
インストールされているアプリケーションとランタイムの管理
install アプリケーションまたはランタイムをインストールする
実行例
[bitwalk@silverblue ~]$ flatpak install flathub org.gimp.GIMP
Looking for matches…

org.gimp.GIMP permissions:
    ipc      network      x11      file access [1]      dbus access [2]      tags [3]

    [1] /tmp, host, xdg-config/GIMP, xdg-config/gtk-3.0, xdg-run/gvfs
    [2] org.freedesktop.FileManager1, org.gtk.vfs, org.gtk.vfs.*
    [3] stable


        ID                            Branch          Op         Remote          Download
 1. [✓] org.gimp.GIMP.Manual          2.10            i          flathub         47.4 MB / 876.5 MB
 2. [✓] org.gimp.GIMP                 stable          i          flathub         83.2 MB / 112.8 MB

Installation complete.
[bitwalk@silverblue ~]$ 
update インストールされているアプリケーションまたはランタイムを更新する
uninstall インストールされているアプリケーションまたはランタイムをアンインストールする
mask アップデートを隠して (mask out) 自動インストール
list インストールされているアプリやランタイムの一覧を表示する
実行例
[bitwalk@silverblue ~]$ flatpak list
Name                               Application ID                                 Version         Branch Origin        Installation
Skype                              com.skype.Client                               8.63.0.76       stable flathub       system
Transmission                       com.transmissionbt.Transmission                                stable fedora        system
WPS Office                         com.wps.Office                                 11.1.0.9615     stable flathub       system
Fedora Media Writer                org.fedoraproject.MediaWriter                  4.1.4           stable fedora        system
Platform                           org.fedoraproject.Platform                                     f32    fedora        system
...
(以下省略)
info インストールされているアプリやランタイムの情報を表示する
history 履歴を表示する
config flatpak を設定する
repair flatpak のインストールを修復する
create-usb アプリケーションやランタイムをリムーバブルメディアに保存する
アプリケーションとランタイムの検索
search リモートアプリ/ランタイムを検索する
実行例
[bitwalk@silverblue ~]$ flatpak search vscode
Name                 Description                                    Application ID              Version             Branch  Remotes
VSCodium             VSCodium. Code editing. Redefined.             com.vscodium.codium         1.47.3              stable  flathub
Visual Studio Code   Visual Studio Code. Code editing. Redefined.   com.visualstudio.code       1.47.1-1594686231   stable  flathub
Code - OSS           Visual Studio Code. Code editing. Redefined.   com.visualstudio.code-oss   1.47.3              stable  flathub
[bitwalk@silverblue ~]$ 
アプリケーションの実行
run アプリケーションを実行する
実行例
[bitwalk@silverblue ~]$ flatpak run org.gimp.GIMP
override アプリケーションのパーミッションを上書きする
make-current 実行するデフォルトバージョンを指定する
enter 実行中のアプリケーションの名前空間を入力する
ps 実行中のアプリケーションを列挙する
実行例
[bitwalk@silverblue ~]$ flatpak ps
Instance   PID  Application  Runtime
1601303329 7710 us.zoom.Zoom org.freedesktop.Platform
[bitwalk@silverblue ~]$ 
kill 実行中のアプリケーションを停止する
ファイルアクセスの管理
documents エクスポートされたファイルを一覧表示する
document-export アプリケーションに特定のファイルへのアクセス権を付与する
document-unexport 特定のファイルへのアクセスを取り消す
document-info 特定のファイルに関する情報を表示する
動的なパーミッションの管理
permissions パーミッションの一覧を表示する
実行例
[bitwalk@silverblue ~]$ flatpak permissions
Table      Object     App                                       Permissions Data
background background com.dropbox.Client                        no          0x00
background background com.github.IsmaelMartinez.teams_for_linux yes         0x00
background background com.skype.Client                          yes         0x00
background background org.gnome.Calendar                        yes         0x00
[bitwalk@silverblue ~]$ 
permission-remove パーミッションストアからアイテムを削除する
permission-set パーミッションの設定
permission-show アプリのパーミッションを表示する
permission-reset アプリのパーミッションをリセットする
リモートリポジトリの管理
remotes すべての設定済みリモート・リポジトリを一覧表示する
実行例
[bitwalk@silverblue ~]$ flatpak remotes
Name          Options
fedora        system,oci
flathub       system
[bitwalk@silverblue ~]$ 
remote-add 新しいリモート・リポジトリを追加する(URLで)
実行例
[bitwalk@silverblue ~]$ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
remote-modify 設定されたリモート・リポジトリのプロパティを変更する
remote-delete 設定されたリモート・リポジトリを削除する
remote-ls 設定されたリモート・リポジトリの内容を一覧表示する
実行例
[bitwalk@silverblue ~]$ flatpak remote-ls
Name                        Application ID                     Version                                     Branch     Arch   Origin
RedNotebook                 app.rednotebook.RedNotebook        2.20                                        stable     x86_64 flathub
TuxGuitar                   ar.com.tuxguitar.TuxGuitar         1.5.3                                       stable     x86_64 flathub
ConfClerk                   at.priv.toastfreeware.ConfClerk    0.6.4                                       stable     x86_64 flathub
esys-escript                au.edu.uq.esys.escript             5.5                                         stable     x86_64 flathub
...
(以下省略)
remote-info リモートアプリやランタイムに関する情報を表示する
アプリケーションのビルド
build-init ビルド用ディレクトリを初期化する
build ビルドディレクトリ内でビルドコマンドを実行する
build-finish エクスポート用のビルドディレクトリを完成させる
build-export ビルドディレクトリをリポジトリにエクスポートする
build-bundle ローカルリポジトリの ref からバンドルファイルを作成する
build-import-bundle バンドルファイルをインポートする
build-sign アプリケーションまたはランタイムに署名する
build-update-repo リポジトリのサマリーファイルを更新する
build-commit-from 既存の ref を元に新しいコミットを作成する
repo リポジトリの情報を表示する
実行例
[bitwalk@silverblue ~]$ flatpak repo $HOME/Projects/hello_flatpak/repo
Repo mode: archive-z2
1 branches
[bitwalk@silverblue ~]$ 
ヘルプオプション
-h, --help ヘルプオプションを表示する
アプリケーション・オプション
--version バージョン情報を印刷して終了する
--default-arch デフォルトのアーキテクチャを表示して終了する
--supported-arches サポートされているアーキテクチャを表示して終了する
--gl-drivers アクティブな OpenGL ドライバを印刷して終了する
--installations システムがインストールされているパスを表示して終了する
-v, --verbose デバッグ情報を表示、詳細は -vv で
--ostree-verbose OSTree のデバッグ情報を表示する

参考サイト

  1. bitWalk's: Flatpak コマンド [2020-08-07]

ブログランキング・にほんブログ村へ
にほんブログ村

0 件のコメント: