
パッケージシステムFlatpakを使用してみた
先日、Ubuntu22.10のリリースを受けてクリーンインストールをしたので、それに合わせてX環境のアプリの設定をしていこうと思ったのですが、いつも通りaptやdebを使用してもいいのですが、折角なので別のパッケージシステムも使ったみたいなと思っていました。
Ubuntuといえばsnappy(snap)が使えますが、今回はそれとも違うFlatpakを使用してみることにしました。
Flatpakとは?
Flatpakの特徴は以下の通りです。
Flatpak は、Linuxデスクトップ向けのソフトウェアデプロイメント・パッケージ管理・アプリケーション仮想化を行うユーティリティソフトウェアである。ユーザーがアプリケーションとシステムを分離して実行することができるサンドボックスを提供する。
サンドボックス化することでライブラリの依存性などから開放されるといったところが特徴のようです。ただサンドボックス化されることでパフォーマンスが落ちるのかなと思っていたのですが、そこまで遅くなってると感じませんでした。
Flatpakの導入方法
公式サイトである以下にアクセスしてみます。
アクセスすると以下のような画面が表示されます。ここでもメジャーなアプリケーションのアイコンが見えます。Ubuntuのデフォルトでインストールされているものもあるのですべてをこれで!というわけにはいかないかなと思います。

公式サイトで対応しているLinux環境が表示されていますが、かなり多めです。そのあたりはsnapとも違うところかもしれません。
UbuntuはもとよりRedhat、Fedra、Arch、Debian、openSUSEもありますし、Chrome OSやRaspberryPi OSなどのアイコンも見えます。少し注意が必要になるのは64bitOSでないとアプリが動作しない可能性が高い点でしょうか。

インストール時はこれらのアイコンをクリックすることで導入方法が記載されたページに遷移します。

以下のように順次実行していけば問題なくインストールできます。以下を実行したら必ずOSの再起動を行ってください。
$ sudo add-apt-repository ppa:flatpak/stable
$ sudo apt update
$ sudo apt install flatpak
$ sudo apt install gnome-software-plugin-flatpak
$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo



CLIでの操作でもよいのですが、上記の手法でインストール作業を行っておくとX環境のランチャ内のソフトウエアをクリックしてもFlatpakのパッケージ導入ができます(検索先にリポジトリFlathubを追加しているので、ここからデフォルトのパッケージシステムからインストールするか、Flatpakからインストールするかなども選択が可能です)


導入してみたアプリ
今回自分が導入したアプリは以下のものになります。Ubuntuのインストール時にChromeブラウザをインストールしてしまっていたので、ここではインストールをしていませんが、Flatpakでインストールを行ったほうが楽そうだなと思いました。
Arduino IDE 2
Scratch
Fritzing
Microsotf Edge
Visual Studio Code
Arduino IDE 2
インストールをしてみましたが、手持ちの各種Arduinoにも対応していましたし、書き込みもうまく行っていたようです。少し気になるのはサンプルコードの読み込みがうまくいきませんでした。その他の動きは特に問題なさそうです。


Scratch
Scratchは3系がインストールできます。こちらはFlatpak以外でも検索にヒットするので、色々と検索結果が多く出てきました。

こちらも問題なく動作しているようです。

Fritzing
回路CADのFritzingのインストールもできました。


Microsoft Edge
Linux環境化で初めてEdgeのインストールを行ってみました。こちらも特に問題なくインストールができました。


Visual Studio Code
更新の頻繁なイメージのあるVisual Studio Codeもインストールしてみて、日本語かも行ってみましたが、いい感じです。更新頻度がどれぐらい影響するかは今後の経過を見ていきたいと思います。

おわりに
これまで自分はパッケージ管理システムとしてはaptを使用していましたが、X環境を使用するアプリであれば、ディストリビューションの壁を超えたFlatpakを使用したほうがライブラリなどの依存性に対するハードルが下がるのではないかと思います。他にも気になるアプリものはあるので良さそうなものがあったらリポジトリとなるFlathubをのぞいてみるのをおすすめしたいです。