Snap (ソフトウェア)

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。フートベル (会話 | 投稿記録) による 2021年8月14日 (土) 11:58個人設定で未設定ならUTC)時点の版であり、現在の版とは大きく異なる場合があります。

Snappy
開発元 カノニカル
初版 2014年12月9日 (9年前) (2014-12-09)[1]
最新版
2.49 / 2021年2月11日 (3年前) (2021-02-11)
リポジトリ ウィキデータを編集
プログラミング
言語
Python, Go
対応OS Linux
ライセンス GPLv3
公式サイト snapcraft.io
テンプレートを表示

Snappyとはカノニカルが設計・開発したソフトウェアデプロイメントシステムかつパッケージ管理システムであり、元々はUbuntu Phoneオペレーティングシステム用に設計・開発された。Snappyのパッケージは 'Snap' と呼ばれ、Snapを使うツールは 'Snapd' と呼ばれる。Snapは様々なLinuxディストリビューションで動作するので、ディストリビューションの上流のソフトウェアデプロイメントに依存しない。Snappyのシステムは携帯電話クラウドIoTデスクトップパソコン向けに設計されている[2]

機能

ソフトウェアにおける "Snap" アプリケーションパッケージは自己完結型であるため、様々なLinuxディストリビューションで動作する。APTYUMなどの伝統的なLinuxパッケージ管理のアプローチでは、Linuxパッケージ毎に適合させた特別なパッケージが必要となるため、開発者からソフトウェアのエンドユーザーに対してのアプリケーションデプロイメントが遅延する原因となるが、Snappyのアプローチはこれとは異なる[3][4]。Snap自体は外部のストア(アプリケーションストア)に全く依存せずどこからでも入手できるため、上流のソフトウェアデプロイメント用に利用可能である。SnapがUbuntuやそれ以外のLinuxにデプロイされるとUbuntu app storeがデフォルトバックエンドとして使用されるが、他のストアもバックエンドとして利用可能である。

開発者はコマンドラインツール、バックグラウンドサービス、そしてデスクトップアプリケーションのいずれかの作成においても同様にSnapを使うことができる[5]。Snapアプリケーションを使うと、アトミック操作を通じた更新や差分による更新が可能である[1][6][7][8]

2016年6月、SnapdはUbuntu CoreだけでなくどのLinuxディストリビューションでも利用できるよう、様々なLinuxディストリビューションに移植された。SnapdはArch LinuxCentOSDebianFedoraGentoo LinuxOpenWrtopenSUSEで既に利用可能であるか、または開発中である。各ディストリビューションはSnapメタデータを解釈することにより、ディストリビューション固有の方法でSnapのセキュリティやその他の機能を実装することが可能となる[要出典]

Snapcraft

Snapcraftは、開発者によって作られたプログラムをSnappy用にSnapフォーマットでパッケージングするツールである[9]

'.snap'ファイルフォーマット

snapファイルフォーマットは圧縮された単一のファイルシステムであり、ホストのオペレーティングシステムにより動的にマウントされる。Snapフォーマットには宣言的メタデータも含まれており、これは適切に整形された安全なサンドボックスやコンテナを設定するためSnapシステムにより解釈される。

反響と使用例

Snappyパッケージは消費者向け製品[10]からエンタープライズデバイス管理ゲートウェイ[11]までをカバーするIoT環境に展開されている。SnappyはUbuntu 16.04デスクトップイメージからデフォルトで含まれている。

近年のシステムにおいて、Linuxディストリビューションに依存しない様々なLinuxディストリビューションへのポータブルソフトウェアデプロイメントという、Snappyと類似の目標を持つシステムには、Flatpakがある。Snappyはモバイルに焦点を当てたカノニカルの "Click" パッケージフォーマットの進化形であり後継である[12][13]

またsnapファイルはhttps://search.apps.ubuntu.com/api/v1/package/の後にソフト名を入れると最新版がダウンロード出来る(FirefoxのESR版はftp.mozilla.org/pub/firefox/releases/バージョンesr/snap/からダウンロード出来る)。

批判

スクリーンキャプチャツールPeekの開発者は、Snapパッケージへのサポートを中止した[14][15]。一方、FlatpakおよびAppImageのサポートは継続している。その理由として以下の点を挙げている。

  • snapdが公式のArch Linuxリポジトリで利用できなくなった事実を批判し、Snapは「まだ主にUbuntuをターゲットにしている(Ubuntu show)」。
  • 開発者にとって、snapへの対応はFlatpakやAppImageよりも多くの時間が取られる。
  • Snapはsnapsプラットフォームを利用できるということ以外にあまり利点がない。
  • Ubuntu Software CenterにはAppStreamのデータ以上の利点はないにもかかわらず、専用のエントリーデータが必要である。

Linux Mintは、APTでChromiumをインストールしようとすると自動的にSnapパッケージをインストールする仕様に対し、SnapがAPTに取って代わることは決してないという約束を破るものとして[16]、Linux Mint20より最初からSnapをインストールしない従来の仕様を堅持するとともに、APTからSnapのインストールを無効にする措置を取った[17](ユーザーが手動で特定のファイルを削除すればインストール可能[18])、また独自にビルドしたChromiumパッケージの提供を開始した[19]

関連項目

脚注

  1. ^ a b Announcing Ubuntu Core, with snappy transactional updates!” (2014年12月9日). 2017年4月25日閲覧。
  2. ^ http://snapcraft.io/
  3. ^ John Kingによるbugs.launchpad.net/ubuntu上のUpgrading packaged Ubuntu application unreasonably involves upgrading entire OS Bug #578045 (2010-05-10)
  4. ^ Linus Torvalds on the problems of distro packaging DebConf 2014におけるリーナス・トーバルズ
  5. ^ Canonical unveils 6th LTS release of Ubuntu with 16.04”. Ubuntu Insights. カノニカル. 2016年4月22日閲覧。
  6. ^ Willis, Nathan (2015年1月28日). “Ubuntu Core and Snappy”. Linux Weekly News英語版. https://lwn.net/Articles/630660/ 2015年11月7日閲覧。 
  7. ^ http://www.ubuntu.com/cloud/snappy
  8. ^ http://www.zdnet.com/article/ubuntu-snap-takes-charge-of-linux-desktop-and-iot-software-distribution/
  9. ^ Brodkin, Jon. “Adios apt and yum? Ubuntu’s snap apps are coming to distros everywhere”. Ars Technica. https://arstechnica.com/information-technology/2016/06/goodbye-apt-and-yum-ubuntus-snap-apps-are-coming-to-distros-everywhere/ 2016年8月13日閲覧。 
  10. ^ Vaughan-Nichols, Stephen J. (2015年5月11日). “Ubuntu jumps into Internet of Things with Acer, GE, and Microsoft”. ZDNet. http://www.zdnet.com/article/ubuntu-jumps-into-internet-of-things-with-acer-ge-and-microsoft/ 2015年11月7日閲覧。 
  11. ^ Snappy Core unlocks IoT value within the Dell Edge Gateway 5000 Series”. Ubuntu Insights. カノニカル. 2015年11月7日閲覧。
  12. ^ http://manpages.ubuntu.com/manpages/trusty/man1/click.1.html
  13. ^ http://askubuntu.com/a/635560/299013
  14. ^ Snap support for Peek screen recorder discontinued”. Reddit (2018年3月25日). 2018年5月12日閲覧。
  15. ^ Peek Gif Screen Recorder Drops Support for Snap App”. OMG! Ubuntu!. 2018年4月5日閲覧。
  16. ^ Monthly News – June 2019 – The Linux Mint Blog”. blog.linuxmint.com. 2021年8月12日閲覧。
  17. ^ Monthly News – May 2020 – The Linux Mint Blog”. blog.linuxmint.com. 2021年8月12日閲覧。
  18. ^ Installing snap on Linux Mint | Snapcraft documentation” (英語). Snapcraft. 2021年8月12日閲覧。
  19. ^ Monthly News – October 2020 – The Linux Mint Blog”. blog.linuxmint.com. 2021年8月12日閲覧。

外部リンク