Snap Containers

Snaps are an exciting new technology to package and distribute Linux applications.

Applications are packaged in Snaps to make them self-contained and easy to install, run, upgrade and remove. RevTwo leverages Snaps in two different ways.

First, RevTwo has a Support Snap that can be installed on Linux computers and used to do remote support. The Snap makes installation and upgrade easier. But a general purpose remote support tool needs to be able to reach outside the Snap and access almost anything. For this reason, the Support Snap uses devmode, which removes the sandbox limitations of most Snaps. RevTwo’s QuickStart uses this Snap because its the easiest way to install, run, and experience a remote session.

Applications are bundled into Snaps, and the RevTwo agent can be included in a Snap to provide remote support to just that application. An application in a Snap is limited to a sandbox, so it has its own dependencies, local file storage, and access to specific network ports, services, etc. The advantage of this sandbox is that installed applications will not fight over shared libraries, etc. Each one has its own file storage so there won’t be file naming conflicts.

There are many scenarios where containerized applications are the tool that enables 3rd party applications to co-exist on a shared computer or product. For example, TV and home entertainment systems have downloads that enable different “channels” like hulu or netflix, and social media, and more. Each of these is an application developed by a 3rd party and made available through a private app store for that product.

The complexity of products that have a mix of 3rd party applications running on them is high, and the customer just expects them to work. So the support expectation goes up as well. A TV or microwave used to be an appliance that just worked. Now the product company is selling a platform and needs to have remote support capability to avoid service calls or product returns. In addition, they are not experts in the 3rd party applications that can be installed. So each one of those applications should have a support capability too. Giving unrestricted access to a computing platform such as linux invites security concerns and finger pointing.

Snap containers provide the sandbox that keeps the applications in their own universe. The container is also perfect for a support tool, because it has access to the files, ports, etc. inside the sandbox but not outside. Embedding the RevTwo agent inside Snap Containers allows each 3rd party to have a secure, real time connection to just their application.