Nextcloud is a self-hosted productivity platform which provides private and secure functions for file sharing, collaborative work, and more. Nextcloud includes the Nextcloud server, client applications for desktop computers, and mobile clients. The Nextcloud server provides a well integrated web interface.

This wikipage provides an overview of the current packaging status. It tries to answer the question how come the Nextcloud server is not packaged for Debian already? In addition this page points to installation instructions.

Status of packaging

The Nextcloud server is currently not officially packaged for Debian and thus not integrated into mainline releases. Historically there are, however, a few approaches. Listed under Debian Request for Packages (RFP) and the Work-Needing and Prospective Packages (WNPP) https://wiki.debian.org/WNPP are:

Discussions covers a couple of approaches over the years. Messages in RFP 835086 and ITP 941708 (2019 ITP) are cross-posted.

Coupled to the 2019 ITP is a source repository, nextcloud-server-deb, for the proposed package nextcloud-server. The package uses debhelper and respects the preferred file system structure (FHS). For the webroot under /usr/share/nextcloud-server/webroot it uses a squashfs filesystem.

There is also an external nextcloud-server package available via an external APT repository, explained at https://www.jurisic.org/. The external package is maintained since feb 2017 and currently containing packages for buster and bullseye of Nextcloud 18.0.0. The external package is also using debhelper. The preferred file system structure (FHS) is, however, not respected. The inspected package source seems to only be available in the external repository: nextcloud-server_18.0.0-1~deb10.debian.xz.

Finally, an installation wrapper package was maintained until 2018 and available via external APT repository. This was a wrapper to get the Nextcloud server installed into /var/www. No dependencies and no configuration was provided. A merger of efforts with the external package has been suggested (see thread).

Why is the Nextcloud server not available as a package?

The Nextcloud server being an essential software in many settings would benefit a large number of users as a package in Debian. The Nextcloud server is a complex software and as such it takes a great deal of effort to find out if it can be supported as an official Debian package. In short, the challenges are Nextcloud’s rapid release cycles, updated dependencies, complexity of dependencies, and that the Nextcloud server can not skip versions while upgrading.

Posts and discussions on the Nextcloud side that are of relevance are:

Requirements for a Nextcloud Debian package

This section covers some of the identified and open questions regarding what set of requirements that a packaging need to fulfill, all from package naming, to what APT repository it should go into.

Is Fast Track the preferred APT repository?

It is suggested to provide the Nextcloud server as a package available in Fast Track APT repository (2019 ITP discussion).

What is the better naming?

The following package names have been suggested:

The suggested package names fit better or worse depending on which approaches the future actual package development takes. The nextcloud variant for the Nextcloud server deviates from current software’s with packages for both server and client parts.

Requirements by Debian policies

Configuration, application and data files should be installed and placed according to Debian Policy Manual and Filesystem Hierarchy Standard (FHS), version 3.

There is the requirement for Debian packages that the packaged software should support the possibility to skip releases.

Software should also have long enough support cycles (2019 ITP discussion). This was addressed as an ambition by Nextcloud in 2016 (2016 RFP discussion and Nextcloud post).

Complex dependencies

The dependency on Node (2019 ITP discussion).

How do I install the Nextcloud server today?

The methods for installing and keeping the Nextcloud server service up to date are currently either following upstream installation instructions or trying out the 2019 ITP repository or the external package repository.

Upstream installation instructions

Procedures for installation and configurations are covered in the Nextcloud administration manual

Installing the 2019 ITP package

Add repository, validate repository key, apt update, apt install nextcloud-server

Installing the external package

Add repository, validate repository key, apt update, apt install nextcloud-server

Nextcloud desktop clients

In addition to server software there are the Nextcloud client applications. There are a few packages in Debian already for the Nextcloud desktop application and integrations into file managers available:

The responsible maintainers, ownCloud for Debian maintainers, for all of above packages are maintainers of both Nextcloud and ownCloud client packages.

What is the difference between Nextcloud and ownCloud?

The two projects have the same origin, starting in 2010, with a corporation formed around ownCloud in 2011. In 2016 some of the core developers forked ownCloud and formed a new company Nextcloud around the fork. The two projects still have a large overlap in functionality and features. A fundamental difference between the companies and software projects is their licensing models. Nextcloud is fully free software and released under GNU AGPLv3. ownCloud has a mixed model with a standard edition, under GNU AGPLv3, and an non-free enterprise edition licensed under the ownCloud Commercial License.

This wikipage is not intended to support decisions regarding the choice of projects to install.