Wednesday, December 10, 2008

Net in KDE4 works finally

After a total recompile of Qt4, KDE4 apps can finally access the internet.
Too bad the weather plasmoid can't find my city :))

Monday, December 8, 2008

KDE4 got a lot better

After I installed Debian, I wanted a KDE4 desktop, just to play with it.
My first option would have been installing the kde 4.1.3 packages from the experimental repository. This would remove my kde3, which I wanted to avoid.
My other option would have been to use this tutorial to make a chroot environment in which I could install these packages without removing kde3.
I did this, it worked, but chroots aren't notorious about their comfort, besides KDE 4.2 beta was out. So I decided that I'll build the current SVN snapshot.
I followed this techbase article. But, you can use kdesvn. My friend, DjDarkman, has written a nice tutorial for Intrepid, although this one is good too.

After resolving many dependencies, getting optional packages, checking out from svn, stuff like that, I was ready to compile a subset of my choice of kde4 modules. Again, I have to give credit to Debian, most of the dependencies can be easily installed from apt and if you need something very new (like the last version of cmake), you can install it from the experimental repository.

After a few hours of compiling KDE4 was ready to use, it still needed some configuring and fine tuning though. Now it's up and running as my default desktop environment.
My desktop:

Dolphin is looking nice too:

As you can see, the look and feel of the desktop is very nice and professional, a bit mac like, but still original.
Mostly everything runs fast and smooth. The desktop effects are light years faster than compiz. They are very subtle, they don't attract my attention, but I'm sure I'd miss them if I would turn them off.
Amarok 2 looks very promising too.

I have some problems with kopete kde4, but it's better than the last time I tried it. It's too buggy for me. I did report some of those bugs. So ,for the time being, I'm using kopete kde3. I installed a nice kde4 like theme for kde3, so the apps blend in. Also, there is a nice theme for firefox. The gtk-qt engine takes care of gtk apps. So the desktop is pretty much uniform.

My biggest problem is that kde4 apps except kopete kde4, can't access the net.
I can ping google.com from konsole kde4, but amarok can't retrieve lyrics, the weather plasmoid can't get data from it's servers, gethotnewstuff can't access it's serverlist and krusader kde4 can't connect to my favorite ftp servers.
I tried asking everywhere on irc and it seems that only I have this problem.
I tried recompiling kdebase with the networkmanager backend, but no results.
I simply don't have net in kde4 apps (except a few of them). Not even in konqueror.
kde-devel@debian:~$ solid-network query status
solid-network(8683)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from "/var/tmp/kdecache-kde-devel/ksycoca4"
solid-network(8683)/Solid (NetworkManager) NMNetworkManagerPrivate::fillNetworkInterfacesList: Got device list
solid-network(8683)/Solid (NetworkManager) NMNetworkManagerPrivate::fillNetworkInterfacesList: adding: "/org/freedesktop/NetworkManager/Devices/eth0"
solid-network(8683) Solid::Control::ManagerBasePrivate::loadBackend: Backend loaded: "NetworkManager"
solid-network(8683)/Solid (NetworkManager) NMNetworkManager::isNetworkingEnabled:
solid-network(8683)/Solid (NetworkManager) NMNetworkManager::isNetworkingEnabled: got state: 3
networking: is enabled
solid-network(8683)/Solid (NetworkManager) NMNetworkManager::isNetworkingEnabled:

As I saw in many cases, the net should work regardless of the network management backend in solid, so I guess that's not the problem.
I'm sure that I set kde to connect directly, without proxies.
I use pppoe, and the internet works in every non kde app, in konsole kde4 and in kopete kde4, so I have no idea what causes this problem.
Anyway, I'm sure it will be fixed till the release. But if anyone has any idea please leave me comments.

Yesterday, I decided that it's time I tried writing software with the KDE api.
So I headed to the kde techbase programming tutorials. After doing a few variations of the Hello World! application, I decided to write the application that I write every time I learn a new language/toolkit/api, the BMI calculator application. I used Qt-designer for the ui. I quickly familiarized myself with cmake and the guys from freenode #kde-devel helped me when I got stuck.
So here it is, along with the other BMI calculators, the KBMICalc application:

Top-left : Qt, top-right: Java (Eclipse RCP, SWT) , bottom-left: Java (Swing), bottom-right: KDE.


It is pretty nice for a first app, the KDE api is a great complement of the Qt toolkit.
The last year of high school is pretty rough on me, so I doubt I'll have time for any serious kde app. Also I would like to see how KDE4 works on Windows, it will be a very nice cross platform development framework.
So in conclusion, my faith in KDE4 is restored, I'm excited again about this project and I can't wait till January for a truly stable and functional release, aimed at the masses.


P.S. : Tomorrow I'll have an exam to obtain the Cambridge University Certificate in Advanced English (CAE), so wish me luck :).



Sunday, November 23, 2008

Shifting to Debian

Well, it has been a long time and no post. So I reckon it's time for an update.
Since I need a stable and usable system, I wasn't willing to upgrade to Kubuntu Intrepid. I heard a lot about Debian from friends and I knew that it's a great distribution, so I thought I'd give it a try.
I went to the site and downloaded the latest torrent for the testing DVD.
The installer was very friendly; I chose the expert gui mode.




It was simple and straightforward, it even allowed me to choose what modules to load. As an example, I could load a pppoe module to set up my networking.
It simply asked me if I wanted to install non-free software, I answered yes and it installed all the codecs and drivers I needed. No questions asked. No need to google forums to find out which packages to install to get my mp3 working.
It automatically detected my video card, installed the open source radeon driver and set up the optimal video mode. I was impressed.
It installed Gnome by default, but I downloaded the kde packages with one command from the Romanian Debian mirrors. In 4 minutes I had kde. Great.

I disabled the services I don't need and now it boots really fast.
KDE works better. I can see everyone's avatars in kopete (I couldn't under kubuntu), and even amarok works great (even with crossfading).
I was really happy with it.

I enabled the unstable (sid) repositories and installed qOrganizer with one command. Yes, there is a qOrganizer package in the Debian repository, and now Ubuntu has one too.

This is what my desktop looks like:



After I configured my system, I went on and compiled kde4 by hand from the SVN repositories. It wasn't hard and SVN is a lot better than the release.
But it's still not good enough for me (I'm too picky).

So, in conclusion, Debian rulz! :)

Sunday, October 26, 2008

KDE4 Mixed feelings

I've been keeping my eye on KDE4 for a long time and now that I heard that Kubuntu was adopting it as the default in Intrepid I was very curious.So I went on and downloaded the Kubuntu Intrepid RC live cd just to see if KDE4 was better on a fresh install.

I had the kde4 packages installed on my Kubuntu hardy since the first release and after every update I tried it to see if I would be able to use it daily.
I would like to point that this post is by no way a rant, I love KDE4 and I wish it was ready and everyone would be able to use it.I am also a long-time fan of KDE3, which I have been using from the first day I was introduced to Linux.

That said, I ran into some serious usability problems.I like the new kopete-kde4 interface and I can see from the shell that it has new long awaited features like the ability to block messages from outside the contact list (for which I wrote a patch once, because I needed it badly in 0.12).
But the kde4 version has serious bugs handling the Yahoo protocol.
Don't get me wrong, I don't like yahoo, but everyone I know uses it.If I could , I would make everyone use Jabber with SSL, but it's not my choice.
I need instant messaging really bad. The kde4 kopete is unable to retrieve avatars, sometimes status message and it takes and awful lot of time for it to recognize which of my contacts are online and even after it does, it shows it only partially.I didn't test the file sending, which is really important for me (it didn't work in kopete-kde3 either).

Just to make things worse the kde3 version of kopete has the exact same problems using the kde4 libs.I don't know what workaround kubuntu will provide for this, but I sure hope they fix it.Maybe it will get fixed when telepathy/decibel will be ready.
I'm afraid that issues like this will leave a bad first impresion about kde4 in the new users of Kubuntu Intrepid.Of course, I could just use pidgin, but thats not the point.

The new folderview plasmoid bothers me too.Of course it's innovative but it really misses any form of configurability.What bothers me most is that it doesn't preview image files on the desktop.I know, it's a minor issue, but I miss that feature.

On the positive side the new KDE4 has stunning animations and they all work seamlessly by default on my 5 year old ATI Radeon 9200SE.
I also like the look and feel of kde4, it's really friendly and everything is in the right place, it's really elegant and all but it the default theme reminds me too much of Mac OS X, with that aluminium-like look, so that will get changed (I don't like Mac or anything Apple, don't even get me started on it).

Overall, things have improved and maybe making it the default in Kubuntu 8.10 is just the radical action it needs to push kde4 in the right direction and make it as great (or hopefully a lot better) as it's legendary predecessor.

Saturday, September 27, 2008

qSslChat v1.1 Released

New qSslChat version :)

Changelog:

-Integrated link recognizing patch by Sydney Troz.Now it automatically recognizes links

and opens them (when clicked) in the default browser.

-Improved OpenSSL handshake options.Certificate errors are reported but ignored.

-Fixed a bug in the anticipating mechanism.

-Now the file-send dialog closes when the file is successfully sent.

Saturday, September 13, 2008

Eclipse RCP - First impressions

So here I am again :).
I have finished rewriting qOrganizer's database handling function.I cleaned up most of the saving/loading mechanism.It still needs some optimizations though, but it works and it is a lot faster.But don't get your hopes up.I didn't even dare to commit it to CVS yet.It's still really far from release.

I got a nice qSslChat patch from Sydney Troz, a user.Now qSslChat automatically recognizes and opens links.
I also received a Polish translation for qOrganizer.I fixed a huge bug that caused memory consumption to go wild when running qOrganizer on 64 bit systems.
I silently updated the release not long ago.The current version is 3.1-4.
qOrganizer is now on the verge of getting into Debian Lenny unstable.

During the last two days I decided to give Eclipse a try.I heard about it's famous Rich Client Platform and since it was constantly praised I thought I should seriously look into it.
The main atraction towards Eclipse RCP consists of the fact that it has a bussiness friendly license.Many small businesses use it to develop their own applications.Businesses which otherwise couldn't afford a .NET or a Qt license.
Eclipse was originally developed by IBM after which it was handed over to the Eclipse organization.I really like everything IBM :).Lotus Notes uses Eclipse RCP too.
It's good enough for NASA too.They used it in an application that processed data sent by the Spirit Mars rover.

About a year ago I already started to learn Eclipse RCP but I wasn't really motivated (since that was when I learned Qt too and I found it a lot more interesting) and the tutorial I found wasn't the best so I kind of gave up on it.But now I decided to look into it again.
I do like it very much.Every application is based on plugins.It's a very extensible and flexible framework.It gives code reusability paramount importance.Another big advantage is that it uses SWT, so everything looks native everywhere in sharp contrast with other UI toolkits like Swing.
Last time I programmed in Java I remembered it being slow and very memory intensive.
Too my surprise Eclipse is really fast and responsive.The Eclipse IDE makes it a joy to develop plugins.Code almost writes itself.It supports autocompletion and reference documentation is easily accessible within it.
So it left me with a very good first impression although it has a really slow learning curve and it takes some time to familiarize yourself with eclipse specific concepts I think it has huge potential.
So here is a screenshot comparing a BMI (Body Mass Index) calculator application written in Qt (the one on the bottom), Swing (the one on the right, you can't miss it) and Eclipse RCP (the one on the left).
The one thing I really miss is the signal-slot mechanism from Qt.Event listeners are a lot more painful.




Since the LHC went online I read a lot about it and about space in general.
I found this really cool wallpaper featuring our galaxy, The Milky Way.

It's a really fascinating sight :)

Anyway, school starts Monday so I'll be really busy, but I'll try to free up some time to keep up with my projects.

Thursday, September 4, 2008

qSslChat v1.0 Beta released

So today I released qSslChat v1.0 Beta.
It's still a little buggy but I guess it's usable.
The project got accepted on SourceForge and I made a webpage for it.
Here it is:

http://qsslchat.sourceforge.net

Give it a try.If you bump into bugs please report them.Enjoy everyone. :)