path: root/posts/owncloud_distributions.md
diff options
Diffstat (limited to 'posts/owncloud_distributions.md')
1 files changed, 73 insertions, 0 deletions
diff --git a/posts/owncloud_distributions.md b/posts/owncloud_distributions.md
new file mode 100644
index 0000000..b479678
--- /dev/null
+++ b/posts/owncloud_distributions.md
@@ -0,0 +1,73 @@
+title: ownCloud and distributions
+published: 2016-03-30
+I want to respond in more detail to the response to my [Tweet](https://twitter.com/ownClouders/status/714797692657000453) to [@ownClouders](https://twitter.com/ownClouders) earlier. I wrote:
+> Relevant for the @ownClouders and Debian/Fedora packaging discussion:
+> [http://enricozini.org/blog/2014/debian/debops/](http://enricozini.org/blog/2014/debian/debops/)
+This article is written by a software developer who takes Debian as
+a base operating system and develops his software targeting Debian stable. It
+brings him many benefit like "free" security updates and bug fixes in
+the operating system and the libraries he needs that are already available in
+Debian. That way he can focus on just his software and not the dependencies,
+or worry about moving targets.
+### Responses
+> @fkooman it's great if you have the time to support old platforms... But for
+> a big project, it is a huge investment with minor benefit
+The recommended target distribution to install the latest version of ownCloud
+9.0 on [is](https://doc.owncloud.org/server/9.0/admin_manual/installation/system_requirements.html)
+Red Hat Enterprise Linux 7. This distribution is using PHP 5.4, which is still
+supported by ownCloud. This is, at least in the PHP world, a very old platform
+that is being supported.
+About the benefits of distribution packaging: I think the most visible benefit of providing
+official distribution packages would be for the
+community and the users. Only having to do `yum install owncloud`
+and `yum update` to have a working setup without worrying about
+verifying signatures and keeping it up to date is not a minor benefit! But also
+for the developers there are some big benefits:
+* Quality: by using the official packaging guidelines and untangling the
+ dependencies in separate packages there is an incentive to use high quality
+ dependencies that can easily be packaged and to limit the number of
+ dependencies. Dependencies are not free even if they only seem a
+ `composer require` away;
+* Testing: on most PHP packages in Fedora the included test suite in run during
+ build on the exact same version of the components they will later run on
+ ([example](https://apps.fedoraproject.org/packages/php-guzzlehttp-guzzle/sources/spec/));
+* Maintenance: by separating the application in its components maintenance
+ becomes easier. When fixing a bug in a dependency it is easier to just update
+ the package for the dependency, leaving the rest alone;
+* Collaboration: some of the work of packaging can be shared among other
+ packagers who require the same dependencies, many are already packaged. As a
+ result more users than just the ownCloud users can benefit of the work;
+To me, these are convincing reasons to package the (web) applications I
+develop immediately for Fedora/CentOS. Initially it is a little more work, but
+later on the costs reduce substantially if you only have to worry about your
+application and not the dependencies once they are packaged and reliable.
+> @fkooman and sadly, volunteers seem not interested, neither do customers
+> want to pay for it....
+[interested](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=816376), but got
+demotivated by the problems they had to deal with.
+Given the reasons above for choosing distribution packaging, I think customers
+*are* paying for it already, considering it is really QA and software
+hygiene. I'm pretty sure enterprise customers would really like to have
+software they can install on a server and leave alone for a year or longer
+without requiring complicated upgrade processes, while only installing the
+occasional bug fix. Just for this reason I think it is important that the
+developers of the software themselves take on the packaging for the supported
+distributions and follow the platform conventions as much as possible to get
+the highest possible quality software, and in the process bring extra value to
+other projects running on the same platform.