Areca: Linux desktop backups made easy

Tux
There are some desktop backup tools available for Linux, but most of them are not developed anymore. Areca however is under constant development and also provides a user friendly GUI.

Backups and Linux are a twofold thing: if you have hundreds or thousands of computers backups are not a problem at all: Amanda, Bacula, Restore and others are your friends. Also, if you want to create backups on single machines, there are many tools available: rsync, tar, and many, many more.
However, all these solutions are not suitable for the average user.

In the last years several projects were started to provide user friendly solutions for the backup of Linux desktop machines. A year ago I already reported about SBackup. Also, the Ubuntu team developed the solution TimeVault and last but not least there is flyback which I used for several months to keep a backup of my thesis. But despite their advantages they all suffer from stalled development: all mentioned projects are effectively dead at the moment.

There is only one exception: the little known Areca. This in Java programmed backup solution provides a user friendly GUI and is even suited for desktop users who have a quite complex idea of backup systems.

The main view of Areca

Despite some current bugs (it chokes on large numbers of files, you have to use several backup rules in such cases) and some shortcomings (the file choose dialog only allows to mark one single file each time) the program has matured over the time and can easily be used in a productive environment. Besides the usual backup/restore it also features statistics, the ability of merging backups, different backup profiles, encryption and other gimmicks. But be sure to quickly read through the documentation so that you understand what backup groups and backup targets are before you start!

The only problem I now have is that it is not packed for Fedora - or any other bigger distribution besides Ubuntu. The download section provides pre-compiled tar.gz packages, however I would prefer a rpm I could automatically fetch with yum.

Howto: Logitech QuickCam Pro 9000 with Fedora 8

Logitech QuickCam Pro 9000 with Fedora 8
This howto shows how to install the Logitech QuickCam Pro 9000 under Linux. While the howto is focussed on Fedora 8 it should work on all distributions.

I recently got the Logitech QuickCam Pro 9000. It is a higher class webcam with a 2MP sensor and a Carl Zeiss lens - and, according to Logitech’s Linux page it is supported by the uvcvideo driver.

Kernel module installation

The problem is however that the uvcvideo driver is not yet part of the mainline Linux kernel. I fyou plug in a uvcvideo device, the kernel cannot load the right driver:


Dec  7 02:14:06 machine kernel: usb 1-5: new high speed USB device using ehci_hcd and address 4
Dec  7 02:14:06 machine kernel: usb 1-5: configuration #1 chosen from 1 choice
Dec  7 02:14:06 machine kernel: Linux video capture interface: v2.00
Dec  7 02:14:07 machine kernel: usbcore: registered new interface driver snd-usb-audio

The kernel module must be compiled manually. The fastest way to do that is:


$ mkdir linux-uvc;cd linux-uvc; svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk
A    trunk/uvc_ctrl.c
A    trunk/uvc_queue.c
A    trunk/uvc_video.c
A    trunk/uvc_v4l2.c
A    trunk/uvc_compat.h
A    trunk/uvc_driver.c
A    trunk/uvcvideo.h
A    trunk/Makefile
A    trunk/dynctrl.txt
Ausgecheckt, Revision 148.
$ cd trunk
$ make
Building USB Video Class driver...
make[1]: Entering directory `/usr/src/kernels/2.6.23.8-63.fc8-i686'
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_driver.o
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_queue.o
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_v4l2.o
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_video.o
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_ctrl.o
  LD [M]  /home/liquidat/tmp/linux-uvc/trunk/uvcvideo.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/liquidat/tmp/linux-uvc/trunk/uvcvideo.mod.o
  LD [M]  /home/liquidat/tmp/linux-uvc/trunk/uvcvideo.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.23.8-63.fc8-i686'
$ cd ../..
$ su
Passwort:
# mv linux-uvc /opt
# cd /opt/linux-uvc/trunk
# make install
Installing USB Video Class driver…
make[1]: Entering directory `/usr/src/kernels/2.6.23.8-63.fc8-i686'
  INSTALL /opt/linux-uvc/trunk/uvcvideo.ko
  DEPMOD  2.6.23.8-63.fc8
make[1]: Leaving directory `/usr/src/kernels/2.6.23.8-63.fc8-i686'
depmod -ae

Of course this requires installed kernel development packages and other general development packages (compiler, etc.). Also, on Ubuntu based distributions you want to enter sudo su instead of the plain su.

A working webcam

After all this is done, the webcam is detected properly:


Dec  7 02:26:19 machine kernel: usb 1-5: new high speed USB device using ehci_hcd and address 7
Dec  7 02:26:19 machine kernel: usb 1-5: configuration #1 chosen from 1 choice
Dec  7 02:26:19 machine kernel: uvcvideo: Found UVC 1.00 device <unnamed> (046d:0990)
Dec  7 02:26:19 machine kernel: usbcore: registered new interface driver uvcvideo
Dec  7 02:26:19 machine kernel: USB Video Class driver (v0.1.0)

The next step is to test the webcam video input. The easiest way is to test this with an application which is known to work with Video4LinuxV2 (uvc mainly supports v4lv2 afaik). The best example is Kopete, which delivered acceptable results for me (although the colours are a bit mixed up):

Kopete showing the webcam input

Skype 2Beta also worked for me with a slightly better video quality, however the screenshot of the Sykpe interface with an embedded video showed just a blank image.

However, if you want to examine the features of your camera in combination with the uvcvideo driver in more detail you need to install luvcview. luvcview can list the possible frame rates and resolutions and also has a display where you can set saturation and similar values live.
In case of QuickCam Pro 9000 I was able to set the resolution to 960×720, and the quality was very good!

Closing words

While this howto explains how to get the uvcvideo driver up and running it does not cover all the fancy features many cameras today come with: additional speakers, microphone, auto-focus and whatnot.

But the main problem is anyway that the module has to be compiled manually. While it worked without any problems this is a task which certainly cannot be done by average computer users. Unfortunately I failed to find any further information why the uvcvideo driver is not part of the kernel yet. I would appreciate any comment which sheds more light on that topic.
It was often mentioned at the uvcvideo driver devel-list that the module will be merged “soon” into the mainline kernel, but that didn’t happen.
However, if the driver is merged at some day it will drastically improve the webcam experience of many Linux users out there since many webcams would be supported out of the box suddenly. I just hope that there are no licence problems keeping uvcvideo out of the kernel atm.

Thanks to Jun’s tech blog for some of the commands used in this howto.

Wuala: store data online, and share them if you want

store data online, and share them if you want
Wuala is a mixture of a classical online storage solution and a file sharing application: you can share your data with logged in users or entire groups while all your data are uploaded to a p2p net - even when you’re not connected. The program was now released as a Linux version.

Technical Background

The interesting advantage of Wuala compared to usual file sharing applications is the fact that every user can first define which user or group is allowed to see which content, and that you don’t have to be connected to the net to offer your friends the option to download your stuff. When you mark your data for upload they are splitt into small parts, encrypted and afterwards uploaded to the other clients of the network (including some big servers of the company behind the project). All data is saved redundant so that you most likely always have the possibility to download your data from everywhere else as long as the Wuala network has no major breakdown.

Currently the amount of data you are allowed to upload is 1 GB. However, if you provide some space for other people’s files on your hard disk you also get more space on the network - given that your network connection allows incoming connections and that your computer is online most of the day. In this regard the approach reminds a bit of Freenet which also defines your upload space by the space you provide to the network afaik. You can also “earn” additional space by inviting other users, and I guess in future you might be able to buy additional storage.

According to the web page, your data are encrypted locally and therefore cannot be viewed by other clients as long as you don’t allow it:

All files you store are encrypted such that only you and those authorized by you can access them. All encryption and decryption is performed locally and your password is never sent to us - so not even we can access your files.

Unfortunately, the program is closed source (also see below) and there are no further details on that matter. Therefore it is hard to say how strong the encryption really is. I would really prefer especially such a program to be open source, or at least open source in all important bits like encryption.

The graphical interface

Wuala itself comes along with a graphical Java client interface for Linux, MacOS and Windows. The Linux client is provided as a tar.bz package and at the moment still has to be copied to a local folder. There is no package or installation routine, but the Linux client is in an Alpha stage anyway.

The main window shows all shared files and directories and marks them with different colours for different restrictions: yellow ones are the folders which are not shared with anyone, red are the ones shared with friends and/or groups and blue ones are accessible by everyone of the network.

Wuala - Main screen

The folders themselves can be removed, downloaded, recommended, marked as favourite, etc.:

Wuala - Right Click

You can of course also alter the access rights everytime. And the rights are quite fine grained: they allow you to choose specific users and/or groups to see content and therefore remind me even a bit of ACLs.

Wuala - Access Rights

As mentioned above there is also the option to make content available for everyone. As a user of Wuala you can of course also allow others to search that content:

Wuala - Search

Of course it is debatable how useful it is to provide data on Wuala which are readable by everyone - there are similar services on the web where you don’t need the extra client, and Wuala is not the place to provide illegal content worldwide. But some people indeed seem to use the function, and I could imagine that CC content could find a place there.
Anyway, if you pay closer attention to the bottom right you see “Related Products”. This is a link to Amazon products. I guess this helps Wuala to keep the business running. In the current version you can turn off that function, the question remains if that option will still be there in the future.

Besides the main window and the world/search window there are also windows for your groups and users. There you can also start a chat with other users - however, that failed for me due to a Java error. I’m not sure if that is a problem of the Linux client, IcedTea or something else. On the other side, the project is still in Alpha/Beta testing and maybe the function is not tested enough yet or simply not implemented right now.

Another feature I dind’t test at all yet is the possibility to use portmap to have a look at for example video files while they are still not fully downloaded:

Wuala creates a network drive to which your operating system can connect. [...] Wuala has a built-in NFS server and tries to mount a NFS share in the folder named ‘direct’. For this to succeed, portmap and nfs-common must be installed.

Besides the graphical interface there is also a command line application which can be used to set up storage nodes. Since Wuala depends on computers which are online most of the time such a command line client makes a lot of sense for example for 24/7 servers without X.

Closing thoughts

Wuala is an interesting approach to provide online storage for everyone. It has nothing revolutionary new but combines several known techniques to an interesting, nice looking and working product. Still, as already said I would feel much, much better if at least the encryption part would be Open Source and documented so that users could verify that their content is really safe. In this regard the FAQ has an interesting point:

Do you plan to open the source code?
We are considering to open the source code in future. However, this is a decision that has to be thought out well as it cannot be undone. It also takes some effort to successfully implement a good open-source strategy.

I’m looking forward to the future development of Wuala - especially plans like Web access and of course to Open Source the code are very interesting.

As a last note: currently Wuala is in an early stage and does not allow new users. However, existing users have a set of invitations, so in case you would like to have an invitation, send me a short private note.

KDE 4 Beta Videos

kde-logo-official
Jos Poortvliet has produced a set of videos showing some features fo the upcoming KDE 4. Until now the featured applications are some games, KTouch, Kalzium and Gwenview.

The Videos

Jos Poortvliet produced these videos running KDE 4 apps inside of a KDE 3 session. The KDE 4 session is a recent SVN checkout and therefore has some additional features compared to the rencetly released KDE 4 Beta 3.

The videos themselves are of average quality due to the flash-based hosting but still give a good impression of the feature richness and quality of the new KDE 4. And videos are just better than static images.

At the moment there are 7 new videos at Jos’ youtube page but chances are that he will upload more of them in the near future. Four of the videos show the KDE 4 games KMines, KMajongg, KAtomic and KSudoku:

Two other videos present the development in the educational areay, KTouch and Kalzium:

The last video presents the new features of Gwenview, KDE 4’s default image viewer. Compared to the KDE 3.x version Gwenview is now able to also crop images and has a subtle but clear way to inform the user that there are still unsaved changes.

Thanks to Jos for uploading these short videos and the permission to publish them here, it is a great way to show how KDE 4 shapes up.

Why so many Games and Educational Apps?

Some people might wonder why the focus is on educational apps and games while KDE 4 will have so much more to offer. There are several reasons:
First, other stuff like Plasma was already covered several times by others. There is no need to cover it yet again as long as there are no new features because everyone already knows it.
Second, many of the new features of KDE 4 are behind the scenes - Solid, Phonon, Qt4 are difficult to show because these improvements are about design and capabilites, not actual features.

And third, and that is connected to second, to show what KDE 4 can be capable of the best is to show the applications which use these new capabilities and implement new features using them. And as in real world this is best done with games because these are the applications which take frameworks and APIs (and often hardware, btw.) to their edges and beyond.
In a file manager it would be too distrcting if it would use all the blink which is possible now - in a game that is exactly what the users want to see.

Browser Wars - Reloaded

kde-logo-official
The dispute over WebKit and KHTML reached a new peak today. With Harri Porten yesterday a KHTML supporter already pubslished his position on the subject and today Zack Rusin, a WebKit supporter, answered.

The Background

WebKit was originally forked from KHTML by Apple (more details at WebKit’s Wikipedia entry). Today it the developmnet is still backed by Apple but supported by other groups as well: Nokia, Adobe, Trolltech, some Gnome guys - and several KDE developers.
Soon after WebKit went public it was questioned if the resources of WebKit and KHTML could not be bundled to benefit both. This didn’t work out totally. Some KDE developers decided to help WebKit, some stayed with KHTML.
In the meantime WebKit became more and more famous and spread: Adobe adopted it, Nokia adopted it, Trolltech will adopt it, it is the standard browser on recent Mac OS releases and was as such even ported to Windows. Therefore WebKit became even recognized by web designers and developers.

So nowadays there is the quite open WebKit development project which is not controlled by KDE at all (but up to a certain degree by Apple) but has a nice set of features. On the other hand there is the KHTML project which is fully controlled by KDE, works nice, but still lacks several features. Especially stuff like missing support for WYSIWIG rich text editors in web applications (WordPress editor, CMS systems, etc.) is a pressing issue for several users.

As a result many users still ask what the situation around WebKit and KHTML is.

KHTML’s FAQ

The KHTML supporters team never bothered with marketing. In fact there are not even many blog posts or anything else at all about KHTML from their point of view. This became a problem recently when the KHTML supporters realized that they had no voice for the users outside of the community and that they had no way to answer many of the existing questions.
As a reaction Harri Porten published a “KHTML FAQ” yesterday on behalf of the KHTML supporters. The FAQ picks up the most important points of the discussion and highlights the stand of the KHTML fraction.
In short it can be said that they would like to work together with the WebKit project - if they get certain rights. This is understandable since the KDE project has its own needs and wishes and the KHTML team wishes to work according to these just as it did in the past.

However, the FAQ fails to explain what the WebKit project actually responded to these wishes and needs. Since the WebKit project often highlighted that they welcome other developers the question is what the outcome of current discussions and talks which issues are blocking what.

Zack Rusin’s response

One of the most famous WebKit supporters is Zack Rusin who worked for Trolltech for years. He got reviewer rights in the WebKit project quite some time ago. And he posted a response to the FAQ.
In short it can be said that Zack was pissed of by certain assumptions in the KHTML FAQ: Zack points out that many former KHTML developers simply switched over to WebKit and that they still can be seen as “KHTML developers”. He also highlights that even the founder of KHTML is a strong WebKit supporter, and that in general more KDE people contribute to WebKit than to KHTML.

However, he also does not address the real reason or problem why both projects simply do not work together. The question remains what the most blocking reasons are.

Future Development

The discussion boiled up now and will certainly stay on the radar for some time. After all, this is a discussion and an argument between software developers which are emotionally involved with their software.

There are now two solutions: one would be to let a third party step in to settle the conflict. The KDE e.V. comes to the mind: one of the tasks of the KDE e.V. is to settle major problems between developers and technology. The KDE e.V. is also “official” enough to start talks with Apple (if they want to listen). This would be the political solution.

The other solution is the more Open Source one: the one who codes decides. If there will be a WebKit kpart, then the distributions will include it. Then users will decide on their own which engine they use. In the end, the users will decide.
Or it could happen that a developer starts with a WebKit KDE browser on his/her own. If that one works well and is well integrated with KDE it might even happen that most people switch over to that one. As an example, the developer momesana has already developed an own WebKit browser:

Momesana Browser - Google main page

Momesana Browser - Overview

Momesana also published a video (Ogg, 8.8 MB) showing the “Momesana Browser” at work and performing quite nice.