「Linux」には長い間、使いにくいだけでなく、生産性を発揮するのに必要なソフトウェアもない、という悪評があった。筆者がLinuxを使い始めた頃(1997年に使用を開始)は、それらの問題が確実に存在していたことを覚えている。当時のLinuxは、セットアップ作業が複雑だっただけでなく、ソフトウェアのインストールには通常、依存関係のインストールと手動でのソフトウェアのコンパイルという悪夢のような作業が必要だった。
しかし、それは遠い昔の話である。現在のLinuxは、信じられないほど使いやすく、非常にユーザーフレンドリーなパッケージマネージャーで数十万種類のアプリケーションをインストールすることが可能だ。
ただし(例外は必ずある)、ユーザーはすべてのパッケージマネージャーが同じように作られているわけではないことにすぐ気づくだろう。例えば、「Ubuntu」のaptでは、コマンドラインから以下のようなコマンドを実行するだけで、簡単にソフトウェアをインストールできる。
sudo apt install firefox -y
「Red Hat Enterprise Linux」(RHEL)ベースのディストリビューションのdnfでも、以下のようなコマンドを実行するだけで、簡単にソフトウェアをインストール可能だ。
sudo dnf install firefox -y
これらのパッケージマネージャーでは、ソフトウェアはリポジトリーからインストールされる。1つのソフトウェアをインストールするとき、最初に別のソフトウェアをインストールすることが必要になる場合もある。現在では、aptのようなパッケージマネージャーは、依存関係を検出して、ユーザーの代わりにインストールしてくれる優れた機能を備えている。万が一、それがうまくいかなかった場合は、いつでもコマンドラインに戻って、以下のコマンドを実行することが可能だ。
sudo apt install -f
上記のコマンドは、欠落している依存関係をインストールしてくれる。とても便利なので、筆者も頻繁に利用している。
ここで、「Flatpak」と「Snap」の出番だ。これらは、ディストリビューションに依存しない(つまり、ほぼすべてのLinuxディストリビューションで使用できる)ユニバーサルパッケージマネージャーとみなされており、(標準のパッケージマネージャーよりも簡単ではないにしても)同じくらい簡単にソフトウェアをインストールできる。
SnapとFlatpakはなぜそれほど特別なのか
SnapとFlatpakが開発された理由の1つは、従来のパッケージマネージャーに存在する依存関係の問題を排除することだった。SnapとFlatpakのパッケージには、依存関係も含めて、対象のパッケージのインストールに必要なすべてのソフトウェアが含まれている。そのため、SnapかFlatpakを通して特定のソフトウェアをインストールする場合、依存関係のインストールについて心配する必要はない。SnapやFlatpakの開発者がユーザーの代わりにそれを処理してくれたからだ。
SnapとFlatpakの魅力は、使いやすさだけではない。オープンソースの純粋主義者にとっては厄介な問題になり得る重要な特徴がもう1つある。
SnapやFlatpakを使用すれば、多数のプロプライエタリーソフトウェアにアクセスできる。例えば、aptやdnfを使用して、ZoomやSpotifyをインストールするのは、簡単ではない(最初にリポジトリーを見つけて追加する必要があるが、それによって問題が引き起こされる場合もある)。SnapやFlatpakを使用すると、Linuxユーザーに全く新しいソフトウェアの世界が開かれる。
例えば、ターミナルウィンドウを開いて、以下のコマンドを入力すると、「Zoom」をインストールできる。
sudo snap install zoom-client
「Snapcraft」ストアや「Flathub」にアクセスして、ほかの方法ではアクセスできない、あらゆる種類の必要なソフトウェアを見つけることもできる。
つまり、SnapとFlatpakは、Linuxへのソフトウェアのインストールを大幅に容易にするだけでなく、ほかの方法ではLinuxへのインストールが困難または不可能なソフトウェアを利用できるようにもする。これをさらに魅力的なものにするため、一部のディストリビューションでは、SnapやFlatpakのサポートがGUIアプリストアに組み込まれている。例えば、「Pop!_OS Pop Shop」でZoomを検索すると、結果にZoomの項目が表示される(図1)。
このZoomのインストールは、Flatpakによって提供されている。
提供:Jack Wallen
否定的な意見も
Linuxコミュニティーを見渡すと、SnapとFlatpakに対して肯定的な意見ばかりではないことが分かる。Linuxコミュニティー内では、SnapとFlatpakのどちらが最適な選択肢なのか、そして、これらのツールがLinux全体にとって必ずしも良いことではないのはなぜなのか、ということについて結論が出ない状態が続いている。
しかし、筆者は、Linuxを平均的なユーザーにとって使いやすいものにすることを全面的に支持している。SnapとFlatpakはまさにそれを可能にするツールだ。したがって、筆者の見解では、SnapとFlatpakはどちらもオープンソースOSとエンドユーザー全体に多大な恩恵をもたらしている。そのため、Linuxを初めて使用するユーザーには、Snap派とFlatpak派の言い争いに耳を貸さないことを強くお薦めする。どちらの陣営にも、自分たちのパッケージ形式こそが最高だと主張する妥当な理由があるが、どちらもLinux全体とユーザーに多大なメリットをもたらすものだ。
この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。