Sunday, June 23, 2013

get that google monkey off my back

It seems that email is too much of a pain in the ass to host yourself, but we can at least host our own contacts and calendar with CardDAV and CalDAV servers  These are two of the most important cloud-based phone features, if not some of the most sensitive.

OwnCloud is the option I went with.  I've been itching to do something with lil turbo ever since I got her put back together, and this is the perfect thing for it.

This is the sort of service I would contend ought to be isolated in a VM, so I installed virtualbox.  To this point, I had been keeping the Debian install on lil turbo headless, but creating a VM with vboxmanage is a pain, and I couldn't even think of a way to install the OS in the guest without a GUI, so I installed openbox - which was completely painless - and immediately fell in love with it.  I created the VM, installed a minimal Debian, and set it up:
  1. aptitude install vim htop nmap
  2. Edit /etc/vim/vimrc, uncommenting most lines
  3. Edit /etc/bash.bashrc and add the aliases I rely on
The folks at OpenSuse package ownCloud in a .deb repo, which is incredibly convenient - all you have to do is edit sources.list and add a key.

Aptitude found two conflicts, with libgd2-noxpm and apache-mpm-worker.  The first resolution that aptitude gave me was the one I went with, which involved uninstalling the noxpm package and not installing the apache one.  It seems to have worked ok.

After the install completes, open a browser and go to http://[serveraddress]/owncloud to begin configuration.  This is how everybody should do it - it's extremely convenient.

I had a warning about the .htaccess file being inaccessible, which I was able to resolve by editing /etc/apache2/sites-enabled/000-default - change the AllowOverride option inside the <Directory /var/www> block to be All instead of None.

Create an admin account and a database account.  You get a few options if you click "Advanced".  I left the DB option on SQLite, figuring for a small, single-user webapp, it shouldn't matter much.  SQLite is awesome for many use cases, but it doesn't have the performance of an in-memory database, which you would need if you were going to do much more with your ownCloud installation.

And that's about it!  Now ownCloud is installed and ready for you to set up!