[owncloud-devel] WD + RPi2 + Owncloud proposal

Johan Ouwerkerk jm.ouwerkerk at gmail.com
Thu Dec 17 17:30:05 GMT 2015


Bit of a delay in subscribing to the ML, but now that it is out of the way,
here goes:

Proposal: build a Debian image with owncloud, based on freedom-maker.
freedom-maker is a tool to build read-to-go, bootable Debian images with
the freedom-box software for a range of hardware board targets. It covers
the Beaglebone, Cubiebox/Cubietruck, various Raspberry Pi models (including
the RPi2) and probably other boards I forgot about.

The freedom-box project is an effort to move social networking and other
centralised services to a more P2P model that respects user freedom and
gives the user control over where their data goes and, particularly,
doesn't.

As I understand it, owncloud is to Google Drive and Google Docs as
freedombox is to Twitter or GooglePlus.

Step #1:

Generate a Debian image for the RPi2 with owncloud and freedombox based off
the existing board support bits in freedom-maker (a Debian w/ freedom box
image builder).
Set up a ifupdown script to auto-configure the ethernet port of the RPi2
using IPv6 DHCP as well as IPv4 DHCP.

This provides a solid basis that respects the user w.r.t. software freedom
and has been 'battle tested' on the RPi because Raspbian itself (official
RPi images) is also based on Debian and Debian has a solid record for not
x86/x64 architectures.

Step #2:

Write a client side HTML page that let's you input the MAC address (which
should be printed on the box label, like a router has), and generates links
to the web-based control panels of the RPi2 using its link-local IPv6.

This page permits the user to 'find' the box on the network, it should
basically be a simple form a bit of JQuery to show-hide it and some
JavaScript to calculate the IPv6 from the MAC. Eventually it can be
prettied-up with photos and step-by-step guide for locating the label etc.

Note that the vendor would not have to 'ship' the page, they can simply
host it -- indeed, owncloud could host it themselves. As it's static HTML
with a bit of client-side JavaScript that should be fairly low cost and low
security risk.

Step #3:

Investigate using mDNS/DNS-SD (Avahi/Bonjour) to auto-publish the box to
the local network. This would permit 'apps' to auto-discover the box.

Step #4:

Upstream this to freedom-maker project.

Benefits:

This proposal offers:
 - A certain guarantee of user freedom by default in the spirit of the
owncloud project itself.
 - A solid basis for building products on top off.
 - Simplicity of the auto-configuration scheme with attending robustness
(there's not a whole lot to go wrong).
 - Something that more business orient folks might call 'synergy' because
the user freedom aspects and efforts of the owncloud project align well
with the concerns and efforts of the freedom box project.

Risks:

Up to step #3, the entire setup relies on the (consumer) router doing IPv6,
otherwise the link-local address scheme won't work. Client OS support
should not be an issue (or rather: if the client OS doesn't do IPv6 we have
bigger problems to worry about, presumably). This can be mitigated by
offering a 'ping' function in the step #2 HTML page to detect it and then
taking appropriate action.

Step #3 reduces that problem since apps would be able to find the box over
IPv4 also, but trades it for another: clients have to speak mDNS in order
to take advantage of it. (And in some set ups it may be deliberately
firewalled.) On the flip side, mDNS was pushed pretty hard by Apple
(Bonjour), many Linux distros come with Avahi bundled by default, and on
Windows Google Chrome ships with a mDNS responder these days as well so it
appears to be fairly ubiquitous.

Regards,

-Johan Ouwerkerk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.owncloud.org/pipermail/devel/attachments/20151217/9211accc/attachment-0001.html>


More information about the Devel mailing list