Snappy

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ナビゲーションに移動 検索に移動
Snappy
開発元 カノニカル
初版 2014年12月9日(3年前) (2014-12-09[1]
最新版 2.33 / 2018年6月8日(5か月前) (2018-06-08
リポジトリ github.com/snapcore/snapcraft
プログラミング言語 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]

批判[編集]

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

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

関連項目[編集]

脚注[編集]

  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日閲覧。

外部リンク[編集]