Your submission was sent successfully! Close

  1. Blog
  2. Article

on 5 April 2018

The Nextcloud Box: a review of building an IoT device with snaps

In 2016, Canonical, Nextcloud and WDLabs introduced the Nextcloud Box, the first IoT style device running with snaps out of the box. Besides sales of nearly 2K boxes before Western Digital shut down their research division WDLabs late last year, the snap been extremely popular with some days hitting over 10,000 downloads. Its installed base is estimated to be over 8000, making it a popular way to run a private cloud. Read our guest blog by Nextcloud’s Jos Poortvliet on to learn more about Nextcloud, the Box and how snaps help thousands of Nextcloud users keep their data under their control.

Introducing Nextcloud

Nextcloud offers a self-hosted file sync and share solution combining the convenience and ease of use of consumer technologies like Dropbox and Google Drive with the security, privacy and control businesses, providers and home users need. Users gain access to their documents and can share them with others at home, within and outside their organisation with an easy to use web interface or clients for Windows, Mac, Linux, Android and iOS. Nextcloud also features Calendar, Contact, Mail, Online Office, private audio/video conferencing and other collaboration capabilities, with many more provided by a healthy ecosystem with over 100 apps developed by a variety of third parties.

But self-hosting is a challenge and not one every user is up to. Actually, very few are. When we started Nextcloud in 2016, we saw this as a major concern and sought solutions.

Introducing a Nextcloud snap: The Nextcloud Box

Together with Western Digital, we came up with the idea to develop an appliance, the Nextcloud box, that would give home users with little technical knowledge an easy way to run their private cloud. It consisted of a hard drive, cables and a case, to be completed with a Raspberry Pi. But it needed an operating system. Something secure, something easy to use. Something that doesn’t require users to go in and run updates from a command line! Ubuntu Core with snaps was the obvious solution.

Snaps provide what an appliance needs: unattended running & updates, keeping the device secure at all times without forcing users to learn how to administer a Linux system.

Together with help from the Ubuntu community and Canonical engineer Kyle Fazzari we quickly got a snap together for the Nextcloud box, enabling us to go to market in a record time. This is certainly a testament of how easy snaps are!

You can watch a webinar about the quick go-to-market with Snaps for the Nextcloud Box here

More snaps

But there was a bigger role for snaps to be had. While they provide a great solution for unattended IoT style devices, snaps are also very suitable to ease deployment and management on ‘normal’ Linux systems.

First of all, snaps solve the cross-distribution conundrum with normal packages – the main reason Nextcloud normally only produces zip files with the raw source code. There are several reasons for us not doing packaging, from the difficulty of doing it right to the problem that users often prefer packages to be part of the distribution. And those would end up quickly out-of-date as distributions tend to have relatively slow release cycles which rarely matches with what our users actually want. We don’t provide security fixes for releases older than about 8-12 months which also is a problem for distributions with a very long release cycle. Snaps solve this by working cross-distribution.

Second, snaps lower the barrier to use immensely by providing a pre-setup solution.  Rather than needing to do the research to pick a web server, database, etc. before getting to a working Nextcloud install, the user is immediately handed a Nextcloud that works, follows best-practices, and is automatically updated. On top of that, the Snap Store makes it easier for users to discover the snap and get it installed.

Last but not least: snaps make maintenance easier. We leave the entire setup of the system to our users and have a built-in updater that makes it easy to keep Nextcloud itself updated. But the rest of the system still has to be maintained by the admin. Snaps feature an easy, reliable, built-in update mechanism.

Getting the most out of snaps

To give our users choice, we offer the various release channels (edge/beta/candidate/stable) in the store and utilise multiple tracks as well. This tends to change as releases occur; an up-to-date view of the current release strategy can be seen hereAs of today, we utilise edge, beta, candidate, and stable, as well as 11/edge, 11/stable, 12/edge, 12/stable, and 13/edge.

All in all, snaps made the Nextcloud Box possible, and for that alone, we are huge fans. But above and beyond that, it lowers the barrier to use for Nextcloud users on every system and users appreciate this greatly.

Related posts

6 July 2023

불변의 리눅스 데스크톱 기반으로서의 우분투 코어(Ubuntu Core)

Desktop Article

캐노니컬(Canonical)은 IoT를 위한 완전한 컨테이너 플랫폼을 만들기 위해 2014년에 우분투 코어 개발을 시작했습니다. 우분투 코어에서는 도커(Docker) 및 LXC가 구축된 것과 동일한 커널 컨테이너 기술을 사용하여 잘 정의된 업그레이드 및 롤백을 통해 시스템의 모든 구성 요소를 안전한 샌드박스에 넣습니다. 저희는 자율적으로 연결된 사물 인터넷 장치가 사람의 개입 없이 적용할 수 있는 업데이트를 수신하여 에지에서 보안 및 ...

Igor Ljubuncic
16 June 2023

Snapcraft 8.0 and the respectable end of core18

Ubuntu Article

‘E’s not pinin’! ‘E’s passed on! This base is no more! He has ceased to be! ‘E’s expired and gone to meet ‘is maker! ‘E’s a stiff! Bereft of life, ‘e rests in peace! If you hadn’t nailed ‘im to the perch ‘e’d be pushing up the daisies! ‘Is software processes are now ‘istory! ‘E’s ...

15 June 2023

ROS architectures with snaps

Robotics Article

Choosing the right architecture can be hard, but we want to help. In this blog, we’ll look at different architectures and their pros and cons. We’ll also show you how to apply the chosen architecture to a mobile robot software stack with three essential apps. With this blogpost, we will see the different ROS architectures ...