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

Linux その145 - Snapアプリのアップデート処理改善・Snap版Firefoxの改善など

Snapアプリのアップデート処理改善

Snapアプリのアップデート処理が改善されました。


  • The Firefox snap: Updates and Upgrades

アップデートのタイミングが噛み合わない問題の解消

Snapはバックグラウンドで自動的にソフトウェアをアップデートする仕組みを持っています。
そのためSnapはアップデートの有無を確認した後、ソフトウェアのアップデートがあれば、そのソフトウェアをアップデートしようとします。

実行中のSnapアプリはアップデートできない

しかしこの時アップデート対象のアプリが実行中だった場合、Snapはアップデートを実行できません。

snap refresh firefox
error: cannot refresh "firefox": snap "firefox" has running apps (firefox), pids:
       1870,2159,2193,2287,2312,2425,2427,2437

またSnapはユーザーにアップデートの実行を促すため、以下のような通知を表示します。


この通知には、Snapアプリ(上記の通知ではFirefox)のアップデートを保留したこと、そしてSnapアプリをアップデートするために、そのSnapアプリを終了して欲しいとのメッセージが表示されています。

ユーザーの環境によってはこの通知が日々表示され、ユーザーにとって煩わしさを感じさせる問題につながっていました。
特にウェブブラウザーのように常に起動しているアプリや、Ubuntu Softwareのように常駐するようなアプリでは、都合よくアップデートが実行されず、通知が日々表示される状況になりかねません。

またアプリを閉じてもアップデートのタイミングが噛み合っていないと、やはりアップデートが実行されませんし、手動によるアップデートも特にカジュアルユーザーにとって煩わしさを感じるでしょう。

  • Snaps & better refresh notifications

アップデート処理の改善

そこでSnapはアップデート処理を改善し、アップデートを保留する代わりに、アプリを終了したタイミングもしくはシステムを再起動したタイミングで、アップデートを適用するように改善されました。

これを実現するためSnapは、アプリのアップデートが見つかった場合、そのアプリをバックグラウンドでダウンロードしておき、また可能であれば事前に初期化し、アップデートに備えます。
あとは上記のタイミングが来た時に、アップデートを適用します。

ユーザーは該当するアプリを終了するか、もしくはPCを再起動すれば、アップデートが適用されるようになります。

この改善はすべてのデスクトップ向けSnapアプリに適用されます。

改善はsnapd 2.59から

本改善は「snapd 2.59」から行われます。
ちなみに現時点で「Ubuntu 22.04 LTS」の「snapd」は、「snapd 2.58」が提供されています。
将来的に「snapd 2.59」が提供されるものと思われます。


現在開発中の「Ubuntu 23.04」では、すでに「snapd 2.59」になっています。


Snapアプリのアップデートタイミングの調整も可能

本件とは別件ですが「snap refresh --hold」コマンドを利用することで、Snapアプリの自動アップデートのタイミングを調整できます。
詳細は以下を参照してください。

  • Hold your horses, I mean snaps! New feature lets you stop snap updates, for as long as you need

Raspberry PiでSnap版Firefoxがソフトウェアレンダリングになる問題の修正

Raspberry PiでSnap版Firefoxがソフトウェアレンダリングになる問題が修正されました。
これはSnap版FirefoxがRaspberry PiのGPUを検出できない、あるいはハードウェアアクセラレーションを有効にできない問題でした。

  • poor performance in firefox with webrender on raspberry pi4

問題の修正

この問題はアップストリームのMesaに原因があり、Mesa 22.2でこの問題が修正され、最新のSnap版Firefoxに含まれるようになりました。
ユーザーはSnap版Firefoxをアップデートするだけでこの問題が解消され、Raspberry PiのGPUを効果的に活用できるようになります。

これにより動画再生など描画周りのパフォーマンスが改善されます。

Waylandでさらにパフォーマンスが向上

現在Snap版FirefoxはWayland環境では、Xwayland上で実行されています。
「MOZ_ENABLE_WAYLAND=1」環境変数を指定してSnap版Firefoxを実行すれば、Snap版FirefoxはWayland上で直接実行されるようになります。

Wayland上で直接実行されているSnap版Firefoxでは、さらにパフォーマンスが改善されます。
ただしWayland上での実行はまだ安定性が十分に確保されておらず、何かしら問題が発生する可能性があります。

Vulkanのサポート改善作業も進行中

さらにパフォーマンスを改善するため、Vulkanに対するRaspberry Pi固有の最適化作業が行われています。

Ubuntu 22.04.2 LTSでSnapアプリの起動時間の改善

Snapsは圧縮されており、アプリ利用時にまず圧縮アーカイブを展開する必要があります。
以前はシングルスレッドで展開処理を行っていましたが、これをマルチスレッドで処理することでパフォーマンスが改善されています。
特に新しい世代のCPUでは、これによるパフォーマンスの大きな向上が期待できます。

  • Please enable CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU

元々この改善は「Ubuntu 22.10」で実施された改善ですが、「Ubuntu 22.04.2 LTS」でもこの改善が取り込まれました。

Snap版Firefoxの改善

その他Snap版Firefoxの改善です。


1.ネイティブメッセージングのサポート

ネイティブメッセージングがサポートされました。

  • webextensions: add a portal for managing WebExtensions native messaging servers
  • Integration with a new WebExtensions XDG desktop portal for native messaging on Linux

ネイティブメッセージングの役割については、以下を参照してください。

  • ネイティブメッセージング

ネイティブメッセージングのサポートにより、WebExtensionsが利用できるようになります。これにより以下のような拡張機能が利用できるようになりました。

  • GNOME Shell integration
  • KeePassXC-Browser


2.ホスト側のスペルチェック辞書が利用可能に

ホスト側にインストールされたスペルチェック辞書を利用できるようになりました。

  • Firefox snap cannot access host's hunspell dictionaries for spellchecking

3.PDFビューアーでホスト側のフォントが利用可能に

Snap版FirefoxでPDFファイルを表示する際、ホスト側で利用可能なフォントを利用できるようになりました。

  • Fallback fonts in snap package are not the same as apt package

今後のSnap改善作業

現在行われているSnapの改善作業です。

1.事前キャッシュ

システム起動時にGNOME及びKDEのContent snapsを予めキャッシュしておき、これらのContent snapsに依存するデスクトップアプリの起動時間を短縮する狙いが検討及び調査されています。
これらのContent snapsは、GNOMEアプリやKDEアプリの土台として活用されているSnapsです。

2.ネットワークマウント

現在Snap版Firefoxでは、ネットワークの共有フォルダーにアクセスできません。

  • Firefox Snap not able to save file on SMB share

現在この問題は調査中ですが、「Ubuntu 23.04」リリース以降に進展が見られるでしょう。

  • [snap] Files on local network shares are not opened / written

Linux
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu CPUfreq その1 - CPUfreqについて・ CPUfreqドライバーについて・ CPUfreqガバナーについて
    CPUfreq   CPUfreqは、CPUのクロック数を動的に変更する機能です。   CPUfreqを利用することで、OSの負荷に応じて動的にCPUのクロック数を調整することができます。  これにより、省電力効果を得ることができます。   CPUfreqを利用する場合...
  • Ubuntu 26.04 その42 - Ubuntu 26.04.1 LTS のリリーススケジュール
    Ubuntu 26.04.1 LTSのリリーススケジュール Ubuntu 26.04.1 LTS のリリーススケジュールを紹介します。
  • Ubuntu 24.04 その93 - Linux kernel 7.0 が利用可能に・Linux kernel 7.0 にアップグレードするには
    Linux kernel 7.0 が利用可能に 現在 Ubuntu 24.04 LTS を利用しているユーザーは、Linux kernel 7.0 へアップグレードできるようになりました。
  • Ubuntu 22.04 その79 - 画面ロックの有効・無効を設定するには・画面ロック時の設定をカスタマイズするには
    画面ロックの有効・無効を設定するには 一定時間ユーザーによる操作がない時に、自動的に画面をロックしパスワードで保護したり、画面をブランク状態にできます。
  • Ubuntu 26.04 その59 - amdgpu ドライバーでパフォーマンス低下のお知らせ
    amdgpu ドライバーでパフォーマンス低下のお知らせ 次期 Linux kernel のアップデートで、amdgpu ドライバーのパフォーマンスが低下するお知らせが出ています。
  • Linux Mint その120 - Linux Mint 19.2のTipsとトラブルシューティング
    Linux Mint 19.2のTipsとトラブルシューティング リリースノートから「Linux Mint 19.2」のTipsとトラブルシューティングを紹介します。
  • Ubuntu 26.04 その56 - amdgpu ドライバーでシステムがフリーズする現象
    amdgpu ドライバーでシステムがフリーズする現象 amdgpu ドライバーでシステムがフリーズする現象が報告されています。
  • Linux その402 - KDE Plasma で実装予定の新機能や改善・録音オプションの追加や VRAM の使用量表示など
    KDE Plasma で実装予定の新機能や改善 2026年7月11日、KDE Plasma で実装予定の新機能や改善が以下で紹介されました。
  • Linux Mint その291 - 次期バージョンで Wayland セッションの提供・Cinnamon の改良など
    Linux Mint 月刊ニュース Linux Mint 開発チームは Linux Mint 月刊ニュースにて、Linux Mint の開発状況や取り組みを紹介しています。
  • Linux その407 - COSMIC DE 開発7ヶ月の歩み・COSMIC DE に搭載された新機能のまとめ
    COSMIC DE 開発7ヶ月の歩み COSMIC デスクトップ環境の開発者が、ここ7ヶ月の開発の歩みと、今までに COSMIC デスクトップ環境に搭載された新機能を紹介しています。
記事のピックアップ
オプション