Samstag, 13. März 2010

ownCloud - development started


I committed ownCloud 1.0 beta 1 to gitorious.org yesterday

So what is ownCloud ?

I announced the ownCloud project during my Camp KDE presentation in January in San Diego.
Here is a short overview what we want to achieve with ownCloud.

KDE runs on all kinds of devices and operating systems

- work and home PCs
- tablets and netbooks
- mobile phones

The more devices you have the more problematic it gets to keep your data/files in sync between the devices. Also sharing your files with people, collaborative working on documents and versioning/backuping of documents is difficult.

A lot of KDE users and developers "solve" this problem by using web/cloud based services as applications.
I see people using:
- Google Docs instead of KOffice
- last.fm/pandora instead of Amarok
- Gmail instead of KMail
- Flickr instead of digiKam
Or people use proprietary services like Dropbox or Ubuntu One.

This trend is problematic and we have to make sure that free desktop applications don´t get replaced by web based apps and become irrelevant in the next 10 years. It is also important that we still own our data and don´t loose control over our personal files.

I think we have to make sure that our great KDE desktop applications support features like sharing data, accessing data from any device, automatic versioning, backuping and encryption.

ownCloud solves this by adding a personal server companion to your KDE Desktop/Netbook/Mobile. You can use it to store your files in your personal cloud storage and access it from all your devices. It will also support versioning, backuping, sharing, syncing and other server based functionalities which are useful additions to KDE applications.

ownCloud is the central exchange point for my data and a companion for different KDE powered devices using the AGPL license.

You find more information here:
http://dot.kde.org/2010/01/24/kde-gears-free-cloud
http://www.socialdesktop.org/kdeandthecloud.pdf


Great, but how do I use it?

At the moment the software is in beta stage and has only limited features. So I suggest that endusers wait a few more month bevor using it for real data.
ownCloud can be installed on:
- your own root server
- your home PC with (DynDNS)
- your company/workgroup server
- rent it from a service provider (a provider is already interested in providing hosting)
- buy a dedicated storage device connected with your home internet line (if somebody builds such a device)


What do we have today?

At the moment we have a fileserver feature to store your documents in your personal cloud storage. The files can be accessed via a web interface which also works with mobile phones. Or you can access the files via WebDAV. So you can mount your document folder on Mac, Windows, Linux PCs or use the KDE WebDAV KIOSlave directly. Access can be SSL encrypted and works with proxy servers and firewalls.
The access is logged in an internal logging system, so you can see what is happening with your files. We have a plugin system, so it is easy to write additional server services like a personal music server or a central storage for your KDE configuration.


What are the plans for the next few months?

- support sharing of files/directories with other people
- using git as a storage backend, so you have a history for all your files
- automatic backuping
- offline support via local syncing
- desktop notification via OCS
- plugin for syncing of notes
- plugin for a groupware integration for example Kolab
- plugin for a personal music server


How can you contribute?

We are looking for developers to make this happen. Especially PHP developers for the server and Qt developer for the syncing client are welcome.
The client could also be implemented in a scripting language like for example Python.

website and wiki: ownCloud.org
mailinglist: owncloud@kde.org
git: http://gitorious.org/owncloud/

Open TODOs are:
- Remove the dependency on MySQL to make the installation of your ownCloud easier. Perhaps SQLite
- Internationalization of all texts.
- Better Ajax Web Interface (Plasma Theming perhaps?)
- Better documentation. Especially for installation.



Cheers
Frank

Kommentare:

info hat gesagt…

that is great news. just yesterday i had to use google docs to work on my documents.

would it be possible to integrate akonadi? i think it is an overload to run an mysql server on a mobile device (also on my laptop..) but to share the pim-data with all my kde devices would be great. will the owncloud also provide the possibility to store akonadi data?

thanks.

felix

kilian.lackhove hat gesagt…
Dieser Kommentar wurde vom Autor entfernt.
SexyMimi hat gesagt…

Well, as it is plugin-based, I guess it would be very possible to code an Akonadi plugin : it just takes someone to code it (and it won't be me hinhin).
I'm already enjoying the centralized KDE configuration :) ! And I just hope ownCloud and it's KDE integration can be released before the 4.6 (or 4.5 ?).

Thomas hat gesagt…

Awesome :) This is one of those projects that everyone had a vague idea they wanted but nobody thought it through, let alone wrote real code for it.
Thanks for being the exception and *doing* it :)

As a KDE hacker I kind of assumed this would end up being a C++/Qt based server, looking at the sources I only found php stuff so far. Did I miss it? Or is your intend to make it an app run inside the webserver?

I have been writing various classes that make interaction with git easier. But those are all C++/Qt based, if you are interested let me know. They are currently GPLv3, but I'm willing to dual/relicense them if you want. Code on gitorious under 'coldstorage' and 'vng'.

Yaba hat gesagt…

As a user I am very happy that this is PHP based, as there are numerous cheap PHP web hosters available. For a C++/QT server you would need a dedicated server.

Dante hat gesagt…

Would this operate in the same way as Ubuntu One/DropBox? I'm a great user of Ubuntu One, and if all I needed to do was have a synced file between my computers...

CaStarCo hat gesagt…

Have you seen the eyeos.org project? It's something related with your project because covers some of the functionalities that you want to add in onwCloud. ¿perhaps it could be integrated with ownCloud?

I find this project very interesting, but I'm not an experienced programmer, if I want to collaborate.. where i can start?

Frank Karlitschek hat gesagt…

@Thomas: At the moment is is written in PHP because it is easier to run this on a hosted server. But it would be great, if someone write a version in C/C++ of course.

Frank Karlitschek hat gesagt…

@CaStarCo I know eyeOS very well. I´m running eyeOS-Apps.org. :-) It would be great if we could work together with them.

Frank Karlitschek hat gesagt…

@Dante: On of the usecases of ownCloud will be a syncing solution like Dropbox or Ubuntu One. But it will do more hopefully. :-)

Frank Karlitschek hat gesagt…

And thank you for all the kind words. Let´s make this happen together. :-)

CaStarCo hat gesagt…

I think that http://www.webtoolkit.eu/wt libraries would be useful to write a C/C++ version of ownCloud.

gerlos hat gesagt…

Wow, great! Since I have my own server, I looked for a long tim for something like it, and at last I went on dropbox. I love dropbox, but I don't like that is closed source :-(
Your project seems the solution for me!
How can I contribute? I'm not a programmer, but I can write some documentation and some translation to Italian! Feel free to contact me!

Bernhard hat gesagt…

hey!
Looks like a very intresting project :-)
I tried to get it running on my freshly set up debian 5.0 server, checked out the source in /var/www/owncloud and tried to run index.php but it tells me that require_once(lib_base.php) can't find the config.php.... Is this known, as this is still very early in the project life cycle, or did i make any mistakes? A normal index.php showing phpinfo works....
Sorry that i can't provide you with all details but i'm writing this on my phone on my way to work...

Thanks for your great work so far :-)

Ian Monroe hat gesagt…

I don't see the point of a C++ version if PHP is working. :)

Since ownCloud is already a LAMP thing, I'd suggest that the music server 'plugin' just be Ampache. It scans music, has a nice web interface and integrates with Amarok already.

So the trick would be to install the Ampache plugin with no additional setup over the original ownCloud setup. The hard part would be using the same authentication scheme. But overall these are pretty minor problems compared to writing an entire music server from scratch. :)

Ian Monroe hat gesagt…

And oh yea: I'd encourage you to look to look into doing something similar to what Akonadi does with MySQL (basically starting a new mysql instance to avoid manual configuration) instead of using sqlite. Sqlite doesn't scale well and also my Ampache suggestion wouldn't work out either. :)

Frank Karlitschek hat gesagt…

@Ian Thank you for your feedback. I will check how Ampache can be integrated. :-)

The User hat gesagt…

It will definitely need a component for rights-management. I think you people want to share data, so it would be a key-feature.
Why should we need a C++-based server-implementation?
1. There are some purists
2. (much more important) OwnCloud should also allow P2P transactions and I do not think that a local apache-installation would be the best way.

The User

The User hat gesagt…

PS:
Backups, versioning etc. could be implemented with git or bzr.

areichman hat gesagt…

Bernhard: The error you're getting sounds like something similar to one I got when I first tried it out. The problem was in line 39 of config/config.php. Somehow the include path doesn't get set correctly if you don't put owncloud in the root or your webserver. I think I saw somebody mention it on the mailing list also, but see if putting in your root web directory fixes that.

alex hat gesagt…

About the smartphone? Can use all O.S?

Jonathan-David SCHRODER hat gesagt…

Hello Frank,
for deploying ownCloud servers everywhere (on cloud computing spaces, on one's own server as a full boot, inside virtual machines), there's a cool tool growing named cloudlets.
I am not a developer of it, but find it nice : http://bitbucket.org/dotcloud/cloudlets/

Take care !

maniacmusician hat gesagt…

Not sure how I feel about the idea of integrating it with Ampache; it definitely has some benefits, as Ian Monroe mentioned above.

However, my biggest gripe while using it with Amarok was the lack of tight integration with the great features that Amarok provides for local collections. Ampache was convenient for occasional use, but I found myself greatly missing things like access to my dynamic playlists, rating and score information, podcasts, etc. I think it's great that we can use Amarok to connect to an existing Ampache server seamlessly, but it would be even better if I could connect directly to a remote Amarok collection.

You said you were aiming for "a personal server companion to your KDE Desktop/Netbook/Mobile." I think this would be much better accomplished by leveraging the feature-filled technologies that already exist in, and are tightly integrated into the KDE Software ecosystem.

The main benefits of using Ampache are basically not having to create a web interface or write collection-scanning code. But if you borrow the collection code from Amarok, you could even establish something like a remote, headless Amarok server that supports all the features of Amarok collections -- similar to the external MySQL database Amarok currently allows, but including things like playlists, configuration settings, internet service settings, etc. This would work out very nicely for those people that would rather install ownCloud on a standalone server rather than their personal computers.

Frank Karlitschek hat gesagt…

Thank you for all the great comments. I suggest to move the discussion to our new malinglist. Subscribe here: https://mail.kde.org/mailman/listinfo/owncloud

Cheers
Frank

miltramp hat gesagt…

to make the system easily manageable and clean, why not look into http://www.nixos.org ? (There is a nice explanation on lwn.net )

Natanael hat gesagt…

Have you seen Opera Unite?
That system looks interesting to me.

I'd love a common database+file storage system+server the plugin support!

Seamless integration in anything you want FTW!

Mr.Filbert. Hutchison hat gesagt…
Der Kommentar wurde von einem Blog-Administrator entfernt.
Multilingual SEO Services hat gesagt…
Der Kommentar wurde von einem Blog-Administrator entfernt.
Debra Mennins hat gesagt…

I use Ubuntu 11.10 (not really a power user) and I have to admit, I'm a Gdocs, Dropbox, and Gmail user instead of using the native desktop clients on my laptop. I also save a lot of dental web design projects on a variety of cloud based storage and project management platforms. KDE is still unexplored territory for me so I think I'll keep updated on your project to see if I'll switch over.

Cisgirin hat gesagt…
Der Kommentar wurde von einem Blog-Administrator entfernt.


Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.