jump to navigation

New developer in Live Blue March 18, 2010

Posted by Vitor Boschi in uncategorized, vitor-planetkde.

Hello KDE Comunity, my name is Vitor. I’m almost (if I have some luck xP) finishing the CS course of the University of São Paulo – Brazil.At the university I’m a member of the Sanca Livre, a group dedicated to the spreading of  Free Software, which currently act by the promotion of training courses, talks and travels to events related to Free Software.

On the academic background, I got some experience on robotics, genetic algorithms and FPGA’s, besides the plain CS course. At the professional side, I work on automotive realtime systems (lots of assembly and low level stuff).

My first contact with Linux and and open source in general was quite some years ago, using the Conectiva (a brazilian distribution, now known by the name Mandriva). Since then, I’ve been using it in servers, but it was just in the last few years that I really began using it as my main desktop system, and since then I’m more and more involved with Free Software as a developer.

In the past, my contributions were limited to small patches and bug reports. I always spent a lot of time reading technical articles about many projects, notably from KDE 4 serie, but had never seriosly developed for any of them. So I began to talk to Tomaz, in order to bring him to my university as a teacher for the Qt training course he blogged about some time ago. It was talking to him that I decided to publish a personal project (it’s hosted in the KDE playground -> utils -> kpws), and develop it as an open project, marking my first serious work on the Free Software community. Besides this project, I’m planning to find something to work on related to Plasma and KDE Games.

KDE Personal WebServer, or kpws, is being written to provide a easy way to transfer data from KDE to any device connected to the same network, without relying on any OS specific software/protocol. This is achieved by means of the HTTP protocol, which is natively supported by anything having network connectivity.


The idea is to handle as many mime types as possible, so that the user can drop anything (files, folders, plasmoids, text, and so on) there, and the software will create a page to render the relevant content to the client, or in case of files, simply send it as a simple download, making it instantly accessible on any device with a browser.

At the state, there’s no drag and drop support, it can only share files/folders, and the ui is… well, a bit ugly. The code was done to support many types of objects, so it shouldn’t be so hard to make it share other things.  There’s however, many work to be done on the integration with KDE, UI beautification and a lot of polishing on the core classes, so I’m gonna write another post showing the technical side of the project.

I’m looking forward to work with you, guys, and would like to thanks Tomaz by all the support, motivation and of course, the Qt course this weekend.



1. jospoortvliet - March 18, 2010

It’s a very interesting idea, and I believe we once had something like this. I suppose the other computer has to use a webbrowser to go to a certain IP address?

Maybe this can link somehow to OwnCloud, making your stuff available (if it’s configured like that) on a local network for non-OwnCloud users 😀

Vitor Boschi - March 18, 2010

There was kpf for KDE 3 (which I found some time after the work on this project), but it was limited to just file sharing and afaik, it was not ported to KDE 4. I’ll take a look at OwnCloud to see what can be done to integrate them. Answering your question: yes, the client can view/download the content using a webbrowser pointed to the user address.

frinring - March 18, 2010

The successor of kpf for KDE 4 in some way is Kepas:

Looks like the development of Kepas is stalled, so perhaps you can pick it up and integrate it with kpws?

What I like with Kepas is the push, meaning you can actively hand-over your stuff, without having to tell your buddy “Please go to here and download yourself what you have been querying me for”.

Vitor Boschi - March 19, 2010

@frinring: it looks like Kepas is more aimed to share data between two KDE users (I assume you can only use the push feature if your peer also use Kepas), but it indeed includes the ability to share data by http too. I’m not yet sure that they should be merged all together because of the distinct approach (share between kde users, with more features X share with everything with less features), but they will probably share some (a lot?) code, and be merged at some point.

2. FACORAT Fabrice - March 19, 2010

IMHO you should be usiong Webdav …
Webdav is supported by Windows Explorer, MAC OS finder, and Konqueror/Nautilus. Webdav is IMHO more suited to handle file sharing …

And I do think also that you should have a look at ownCloud and eventually be integrate as part of this project

Vitor Boschi - March 19, 2010

I didn’t use WebDAV because it’s not supported by most mobile devices.
About ownCloud, I’m currently looking at it, but thanks for your feedback.

3. Tobias Koenig - March 19, 2010

Hej Vitor,

I hadn’t a look at the code yet, but could you offer HTTP+WebDAV? If the mobile devices do not support WebDAV, then they just use plain HTTP, however if the other host (e.g. KDE Desktop) supports WebDAV, then you have push support as well

Vitor Boschi - March 19, 2010

Hadn’t thinked about this, but it should be possible. Thanks for your suggestion.

4. Roberto Alsina - March 19, 2010

I wrote a similar program in 1998 called PWS 🙂


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: