ownCloud for Debian
===================

Security support
----------------

Since upstream support of ownCloud 7 will end during Jessie’s lifetime,
security support will be provided on a best effort basis with upstream help.
Eventually, this package may be removed from once Jessie+1 is released if the
security support becomes too complicated or time-consuming, so ownCloud users
will be advised to upgrade their servers to the new stable release.

Database
--------

ownCloud for Debian supports several databases: MySQL, PostgreSQL, and
SQLite.  By default MySQL support is installed. The database will not be set
automatically (yet); this may be added in a later version of the package.

If you want to use MySQL or PostreSQL, you need to set up an ownCloud user and
empty database before going to http://localhost/owncloud after installation.
Ensure that the user has permissions to modify the database and remember the
password!

Once you visit http://localhost/owncloud, the ownCloud setup pages will
appear; it will ask you for the user/password/database information.
To be ready for the future when the database will be managed by the Debian
package, it may be useful to ensure that the name of the MySQL or PostgreSQL
user and database is "owncloud".

E-mail
------

It might happen that ownCloud sends e-mails for things such as password
reset requests or share links.  Please ensure that the host is able to send
remote domains (when calling sendmail as user www-data), otherwise these
emails will never arrive and be returned/bounced to the mail box of the
www-data user.

App Store
---------

Since version 3, ownCloud supports the installation of third party application
from its own app store.  See also https://apps.owncloud.com/ for an overview.
In the configuration generated by the setup the App Store is disabled by
default, because it will allow you to install software that is not
verified, possibly insecure and also might override software that came with
this ownCloud package, resulting in something that dpkg/apt cannot track.

For the moment, you cannot override this behaviour by setting the
"appstoreenable" key to true in the configuration file
/etc/owncloud/config.php.  This is because the "apps" directory is not
writable by the ownCloud web application as the contents of
/usr/share/owncloud/apps are part of this Debian package.
The default of false for the apps_paths array(array("writable")) key
ensures that the directory is also not checked for writability.

Recommends
----------

Some non-default features are only available if the proper dependencies
are installed.

Send mail notification:		exim4 | mail-transport-agent
Show proper thumbnails:
		- images:	php5-imagick
		- office doc:	libreoffice
		- video:	libav-tools
Some extra apps need dependencies:
	- bookmarks:		php5-curl
	- files_encryption:	php-crypt-blowfish
				php5-mcrypt (performance)
	- files_external:	php-aws-sdk
				php-dropbox
				php-google-api-php-client
				smbclient
	- user_ldap		php5-ldap
Improve performance:		php5-apcu | php5-xcache
				php5-intl (language translation)
Command line interface:		php5-cli

Theming
-------

Themes can be dropped in /var/lib/owncloud/themes and then enabled through
the admin interface.  See also /var/lib/owncloud/themes/README.

Running on specific/single virtual host(s)
------------------------------------------

At the moment ownCloud runs under /owncloud under all virtual hosts.
This is due to the alias set in /etc/apache2/conf.d/owncloud.conf.
To make ownCloud reachable via a specific or just a single virtual host,
comment out the Alias directive in /etc/apache2/conf.d/owncloud.conf and
add it to the VirtualHost section of the respective hosts.

Running as a virtual host
-------------------------

To run ownCloud as a single virtual host, comment out the Alias directive
in /etc/apache2/conf.d/owncloud.conf and set the DocumentRoot to
/usr/share/owncloud in the VirtualHost section of the respective virtual host.

ownCloud uses htaccess to configure some URL rewrites, redirects and error
documents.  Since the htaccess file assumes ownCloud is accessed under
/owncloud and not under /, it needs to be changed.  To fix this, please
replace all occurrences of /owncloud by / in /etc/owncloud/htaccess.

Upgrade
-------

The database upgrade must be made via the web interface. Make sure the PHP
scripts (max execution time), and the SQL requests, can complete: this can
take several minutes, depending on the database size.
Depending on your configuration, you can, e.g. if you are using PHP via
fcgi, add something like the following to your Apache VirtualHost
configuration:

  <IfModule mod_fcgid.c>
      IPCCommTimeout  7200
  </IfModule>

You should also empty your browser cache, or deactivate it, to perform the
upgrade. In case ownCloud get stuck in maintenance mode, you could remove
the “'maintenance' => true,” line from /etc/owncloud/config.php, and
reconnect to the web interface to try again.
