kledgeb UbuntuやLinuxの最新情報を紹介

Ubuntu 19.10 その25 - deb版Chromiumの提供終了とSnap版Chromiumへの移行・将来的に既存のUbuntuでも移行

Chromiumをdebからsnapへ移行

「Ubuntu 19.10」ではdeb版Chromiumが提供されなくなり、Snap版Chromiumに移行します。


  • Chromium in Ubuntu – deb to snap transition

「Ubuntu 19.10」でdeb版Chromiumをインストールすると、Snap版Chromiumがインストールされます。

$ sudo apt install chromium-browser
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています              
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  chromium-browser
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
48.3 kB のアーカイブを取得する必要があります。
この操作後に追加で 162 kB のディスク容量が消費されます。
取得:1 http://archive.ubuntu.com/ubuntu eoan/universe amd64 chromium-browser amd64 76.0.3809.100-0ubuntu1~snap1 [48.3 kB]
48.3 kB を 2秒 で取得しました (27.5 kB/s) 
パッケージを事前設定しています ...
以前に未選択のパッケージ chromium-browser を選択しています。
(データベースを読み込んでいます ... 現在 223081 個のファイルとディレクトリがインストールされています。)
.../chromium-browser_76.0.3809.100-0ubuntu1~snap1_amd64.deb を展開する準備をし
ています ...
=> Installing the chromium snap
==> Checking connectivity with the snap store
==> Installing the chromium snap
Warning: /snap/bin was not found in your $PATH. If you've not restarted your
         session since you installed snapd, try doing that. Please see
         https://forum.snapcraft.io/t/9469 for more details.

chromium 77.0.3865.90 from Canonical✓ installed
=> Snap installation complete
chromium-browser (76.0.3809.100-0ubuntu1~snap1) を展開しています...
chromium-browser (76.0.3809.100-0ubuntu1~snap1) を設定しています ...
mime-support (3.63ubuntu1) のトリガを処理しています ...
hicolor-icon-theme (0.17-2) のトリガを処理しています ...
gnome-menus (3.32.0-1ubuntu1) のトリガを処理しています ...
desktop-file-utils (0.24-1ubuntu1) のトリガを処理しています ...

Chromium

「Chromium」はオープンソースで開発されているWebブラウザーです。
「Google Chrome」や新しい「Microsoft Edge」など、様々なブラウザーのベースになっているブラウザーです。
「Chromium」の使い勝手は「Google Chrome」とほぼ変わらず、「Chromium」を利用しているユーザーも多いかと思います。

debとsnaps

debパッケージ及びsnapパッケージは、複数のファイルで構成されるソフトウェア本体や、ソフトウェアの動作に必要な情報(メタデータ)をまとめる仕組みです。
以下はdeb版Chromiumのパッケージの中身です。


以下はSnap版Chromiumのパッケージの中身です。


ユーザーはリポジトリーや「Snap Store」などソフトウェアを配布する仕組みを通じ、それらのパッケージをダウンロードし、ソフトウェアのインストールやアップデートを行います。
debパッケージ及びsnapパッケージはその作成過程や動作上の仕組み、配布方法に違いはあれど、ソフトウェアの動作に必要なファイル群をまとめる点に違いはありません。

「Ubuntu Desktop」では現在、debとsnapsの双方で「Chromium」を提供しています。
これをsnapsに一本化するという話です。

deb版ChromiumはCanonicalのサポート対象外だがサポートしてきた

deb版Chromiumは「universe」に配置されています。
「universe」に配置されているパッケージ(ソフトウェア)は「Canonical」のサポート対象外であり、コミュニティーによる任意のサポートが提供されるパッケージになります
しかしUbuntu Desktopチームは、「Chromium」を利用するユーザーが多いため、deb版Chromiumのサポートを継続的に行っています。
しかしこの作業は現在サポートされている「Ubuntu」が対象になっているため、Ubuntu Desktopチームにとって非常に大きな負担となっています。

Chromiumは6週間ごとにリリースされる

「Google」は「Chromium」のメジャーアップデートを6週間ごとに行い、その間セキュリティーアップデート(マイナーアップデート)を複数回行っています。
「Ubuntu」ではこれらのリリース毎に現在サポートされている各「Ubuntu」ごとに「Chromium」のビルドを行っています。
例えば現在では、以下の「Ubuntu」のバージョンが対象です。

  1. Ubuntu 16.04 LTS
  2. Ubuntu 18.04 LTS
  3. Ubuntu 19.04
  4. Ubuntu 19.10(もうすぐリリース) 

加えて以下のアーキテクチャーが対象です。

  1. amd64
  2. i386
  3. armhf
  4. arm64

古いバージョンのUbuntuでChromiumのビルドが難しくなる

「Chromium」は「Ubuntu」のプロセスに沿って開発されているソフトウェアではありません。
「Chromium」は開発において、新バージョンのコンパイラーが提供している新機能を利用することがしばしばあります。
しかしそれらの新機能は、古くなった「Ubuntu」で利用できるコンパイラーが実装していない機能です。

そこでSnap

Snapが持つ特徴の一つに、複数のLinuxディストリビューションや、同じLinuxディストリビューションの複数のバージョンに対し、横断的にソフトウェアを提供できる仕組みがあります。

各アーキテクチャー毎に「Chromium」を一度ビルドするだけで、提供先のLinuxディストリビューションや、Linuxディストリビューションのバージョンを意識せずに「Chromium」を提供できます。
(もちろん提供先のOSが「Snap(snapd)」をサポートしている必要があります。)

つまり現在サポートしている「Ubuntu」だけでなく「Ubuntu 14.04 EMS」にも「Chromium」を提供でき、さらに「Debian」「Fedora」「Linux Mint」「Manjaro」といった「Ubuntu」以外のディストリビューションにも横断的にコストを抑えながら「Chromium」を提供できるようになります。

負担の軽減

debでの提供を止めSnapで「Chromium」を提供することで、開発者/開発チームにかかる負担を軽減し、開発者はそのリソースを他に回すことができます。
加えてSnapが持つ利点も活用することができます。

Snapが持つ利点

Snapにはチャンネルという仕組みがあり、チャンネルごとに異なるバージョンのソフトウェアを提供できます。

例えば安定版を提供するチャンネルや、ベータ版を提供するチャンネル、開発版を提供するチャンネルなど、一つのソフトウェアに対して異なるバージョンのソフトウェアを提供できます。


もしユーザーがWeb開発者ならば、ベータ版の「Chromium」をインストールしてテストに活用することができます。
この時ユーザーはチャンネルを切り替えるだけで、ベータ版の「Chromium」をインストールできます。

またSnapはソフトウェアの自動アップデートに対応しており、ユーザーはソフトウェアのアップデートを手動で行う必要がありません。
加えてSnapは隔離された環境でソフトウェアを実行するため、安全性を向上させることができます。

というわけで

というわけでdebからSnapへ移行する理由をまとめると、以下の通りです。

1.ChromiumはUbuntuのデフォルトのブラウザーではなく、Chromiumユーザーの規模を考慮すると、移行に関するユーザーへの影響は大きくない。

2.Snapsは頻繁にアップデートを行うソフトウェアを考慮した設計になっている

3.アップストリームのChromiumは、stable/beta/devの3種類のリリースチャンネルを持っているが、これらのチャンネルはsnapdのデフォルトのチャンネルであるstable/beta/edgeチャンネルに綺麗に適合できる。
またsnapdのチャンネルを切り替えることで簡単にChromiumのリリースチャンネルを切り替えることができ、複数のバージョンを共存してインストールすることも可能。

4.Snapは隔離された環境でソフトウェアを実行するため、ブラウザーが持つサンドボックス機能に加え、Snapによるさらなる安全性の確保が可能になる。

debからSnapへの移行方法

移行に関し既存のユーザーに影響を与えずに、そしてユーザーによる追加作業なしにdebからSnapへ移行する必要があります。
現在Snap版Chromiumには、いくつか動作上の課題・問題があります。

  • chromium-browser package

開発チームはこれらの問題の解決に向け、懸命に取り組んでいます。
しかしそれらを踏まえても移行に関し十分に熟した状況であると開発者は感じており、加えて次期LTSである「Ubuntu 20.04 LTS」に向け、フィードバックを募集したいと考えています。

「Ubuntu 19.10」ではdeb版Chromiumをインストールすると、Snap版Chromiumがインストールされます。
deb版Chromiumのパッケージには後方互換性を確保するため、ラッパースクリプトとデスクトップファイルが含まれ、「Chromium」本体は含まれません。
この時可能な限り円滑に移行を行えるようにするため、以下の処理を行います。

1.プロファイルの取り込み(インポート)

Snap版Chromiumを初めて起動した時、ストレージに十分な空き容量があれば、「$HOME/.config/chromium」にある既存のユーザープロファイルを、Snap版Chromiumに取り込みます。

2.Snap版ソフトウェアの起動

「/usr/bin/」に配置されている「chromium-browser」及び「chromedriver」は、それぞれSnap版の「chromium-browser」及び「chromedriver」を実行するラッパーになります。

3.デフォルトのブラウザーの更新

「Chromium」がデフォルトのブラウザーに設定されている場合、「chromium-browser」ラッパーは、それをSnap版Chromiumを起動するように変更します。

4.デスクトップランチャーの更新

デスクトップランチャーに「Chromium」が登録されている場合、Snap版Chromiumを起動するように変更します。
現在この機能は「GNOME Shell」及び「Unity」でのみサポートされています。
他のシェルでもこの機能を実現するには、協力者が必要です。

5.apport

「apport」は、Snapパッケージ及びその依存情報を含めるようになります。

debからSnapへの移行時期

すでに「Ubuntu 19.10」ではdebからSnapへの移行が行われています。

将来的に既存のUbuntuでも移行が行われる

将来的に既存のUbuntuでもdebからSnapへ移行する予定です。
まず「Ubuntu 19.04」から移行が行われます。
ただし先に挙げた問題の中で重要な問題がすべて解決されるまで、移行は開始されません。

Snap版Chromiumをインストールするには

Snap版Chromium自体は以前から利用できるようになっています。
Snap版Chromiumをインストールするには、以下のコマンドを実行します。

snap install chromium

Snap版Chromiumを起動するには、以下のコマンドを実行します。

snap run chromium

もちろん「Ubuntu 19.04」や「Ubuntu 18.04 LTS」等でも利用可能です。
先を見越してSnap版Chromiumを利用してみるのも良いでしょう。
不具合を見つけたら、問題を報告すると良いでしょう。

Ubuntu
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu 26.04 その42 - Ubuntu 26.04.1 LTS のリリーススケジュール
    Ubuntu 26.04.1 LTSのリリーススケジュール Ubuntu 26.04.1 LTS のリリーススケジュールを紹介します。
  • Ubuntu CPUfreq その1 - CPUfreqについて・ CPUfreqドライバーについて・ CPUfreqガバナーについて
    CPUfreq   CPUfreqは、CPUのクロック数を動的に変更する機能です。   CPUfreqを利用することで、OSの負荷に応じて動的にCPUのクロック数を調整することができます。  これにより、省電力効果を得ることができます。   CPUfreqを利用する場合...
  • Ubuntu 24.04 その93 - Linux kernel 7.0 が利用可能に・Linux kernel 7.0 にアップグレードするには
    Linux kernel 7.0 が利用可能に 現在 Ubuntu 24.04 LTS を利用しているユーザーは、Linux kernel 7.0 へアップグレードできるようになりました。
  • Linux その407 - COSMIC DE 開発7ヶ月の歩み・COSMIC DE に搭載された新機能のまとめ
    COSMIC DE 開発7ヶ月の歩み COSMIC デスクトップ環境の開発者が、ここ7ヶ月の開発の歩みと、今までに COSMIC デスクトップ環境に搭載された新機能を紹介しています。
  • Linux その404 - COSMIC Epoch 1.3.0 リリース・ウィンドウのすりガラス効果に対応
    COSMIC Epoch 1.3.0 リリース 2026年7月15日、COSMIC Epoch 1.3.0 がリリースされました。
  • Ubuntu 26.04 その64 - AMD 環境で PC をシャットダウンできない現象
    AMD 環境で PC をシャットダウンできない現象 AMD 環境で PC をシャットダウンできない現象が報告されています。
  • Linux その414 - KDE Plasma で実装予定の新機能や改善・絵文字の表示サイズを変更機能やディスプレイ設定画面の改善など
    KDE Plasma で実装予定の新機能や改善 2026年8月1日、KDE Plasma で実装予定の新機能や改善が以下で紹介されました。
  • Ubuntu 26.10 その18 - GRUB の機能削減とセキュリティー強化
    GRUB の機能削減とセキュリティー強化 GRUB の機能削減とセキュリティー強化が予定されています。
  • Linux その412 - KDE 環境で大量のファイルコピー時に、ファイル処理のパフォーマンスが大幅に向上
    ファイル処理のパフォーマンスが大幅に向上 KDE 環境で大量のファイルをコピーする時に、ファイル処理のパフォーマンスが大幅に向上しました。
  • Linux その413 - GNOME 向けアプリとアップデートの紹介・カラーピッカーやメディアプレーヤーなど
    GNOME 向けアプリとアップデートの紹介 GNOME 向けアプリとアップデートの紹介です。
記事のピックアップ
オプション