Snappy

Snappyとはカノニカルが設計・開発したソフトウェアデプロイメントシステムかつパッケージ管理システムであり、元々はUbuntu Phone（英語版）オペレーティングシステム用に設計・開発された。Snappyのパッケージは 'Snap' と呼ばれ、Snapを使うツールは 'Snapd' と呼ばれる。Snapは様々なLinuxディストリビューションで動作するので、ディストリビューションの上流のソフトウェアデプロイメントに依存しない。Snappyのシステムは携帯電話、クラウド、IoTやデスクトップパソコン向けに設計されている。 ソフトウェアにおける "Snap" アプリケーションパッケージは自己完結型であるため、様々なLinuxディストリビューションで動作する。APTやYUMなどの伝統的なLinuxパッケージ管理のアプローチでは、Linuxパッケージ毎に適合させた特別なパッケージが必要となるため、開発者からソフトウェアのエンドユーザーに対してのアプリケーションデプロイメントが遅延する原因となるが、Snappyのアプローチはこれとは異なる。Snap自体は外部のストア（アプリケーションストア）に全く依存せずどこからでも入手できるため、上流のソフトウェアデプロイメント用に利用可能である。SnapがUbuntuやそれ以外のLinuxにデプロイされるとUbuntu app storeがデフォルトバックエンドとして使用されるが、他のストアもバックエンドとして利用可能である。 開発者はコマンドラインツール、バックグラウンドサービス、そしてデスクトップアプリケーションのいずれかの作成においても同様にSnapを使うことができる。Snapアプリケーションを使うと、アトミック操作を通じた更新や差分による更新が可能である。 2016年6月、SnapdはUbuntu CoreだけでなくどのLinuxディストリビューションでも利用できるよう、様々なLinuxディストリビューションに移植された。SnapdはArch Linux、CentOS、Debian、Fedora、Gentoo Linux、OpenWrt、openSUSEで既に利用可能であるか、または開発中である。各ディストリビューションはSnapメタデータを解釈することにより、ディストリビューション固有の方法でSnapのセキュリティやその他の機能を実装することが可能となる[要出典]。 Snapcraftは、開発者によって作られたプログラムをSnappy用にSnapフォーマットでパッケージングするツールである。 snapファイルフォーマットは圧縮された単一のファイルシステムであり、ホストのオペレーティングシステムにより動的にマウントされる。Snapフォーマットには宣言的メタデータも含まれており、これは適切に整形された安全なサンドボックスやコンテナを設定するためSnapシステムにより解釈される。 Snappyパッケージは消費者向け製品からエンタープライズデバイス管理ゲートウェイまでをカバーするIoT環境に展開されている。SnappyはUbuntu 16.04デスクトップイメージからデフォルトで含まれている。 近年のシステムにおいて、Linuxディストリビューションに依存しない様々なLinuxディストリビューションへのポータブルソフトウェアデプロイメントという、Snappyと類似の目標を持つシステムには、Flatpakがある。Snappyはモバイルに焦点を当てたカノニカルの "Click" パッケージフォーマットの進化形であり後継である。 スクリーンキャプチャツールPeekの開発者は、Snapパッケージへのサポートを中止した。一方、FlatpakおよびAppImageのサポートは継続している。その理由として以下の点を挙げている。 snapdが公式のArch Linuxリポジトリで利用できなくなった事実を批判し、Snapは「まだ主にUbuntuをターゲットにしている（Ubuntu show）」。 開発者にとって、snapへの対応はFlatpakやAppImageよりも多くの時間が取られる。 Snapはsnapsプラットフォームを利用できるということ以外にあまり利点がない。 Ubuntu Software CenterにはAppStreamのデータ以上の利点はないにもかかわらず、専用のエントリーデータが必要である。 ポータブルアプリケーション作成プログラム（英語版） AppImage（英語版） Autopackage（英語版） Flatpak Zero Install（英語版） - 類似のプロジェクト ROX Desktop（英語版）は、AppDirs（英語版）をアプリケーションバンドルとして使用している。 ^ a b “Announcing Ubuntu Core, with snappy transactional updates!” (2014年12月9日). 2017年4月25日閲覧。 ^ http://snapcraft.io/ ^ John Kingによるbugs.launchpad.net/ubuntu上のUpgrading packaged Ubuntu application unreasonably involves upgrading entire OS Bug #578045 (2010-05-10) ^ Linus Torvalds on the problems of distro packaging DebConf 2014におけるリーナス・トーバルズ ^ “Canonical unveils 6th LTS release of Ubuntu with 16.04”. Ubuntu Insights. カノニカル. 2016年4月22日閲覧。 ^ Willis, Nathan (2015年1月28日). “Ubuntu Core and Snappy”. Linux Weekly News（英語版）. https://lwn.net/Articles/630660/ 2015年11月7日閲覧。  ^ http://www.ubuntu.com/cloud/snappy ^ http://www.zdnet.com/article/ubuntu-snap-takes-charge-of-linux-desktop-and-iot-software-distribution/ ^ 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日閲覧。  ^ 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日閲覧。  ^ “Snappy Core unlocks IoT value within the Dell Edge Gateway 5000 Series”. Ubuntu Insights. カノニカル. 2015年11月7日閲覧。 ^ http://manpages.ubuntu.com/manpages/trusty/man1/click.1.html ^ http://askubuntu.com/a/635560/299013 ^ “Snap support for Peek screen recorder discontinued”. Reddit (2018年3月25日). 2018年5月12日閲覧。 ^ “Peek Gif Screen Recorder Drops Support for Snap App”. OMG! Ubuntu!. 2018年4月5日閲覧。 公式ウェブサイト