I finally finished “my” exams yesterday and now I’m free to restart hacking on Yesterday night I moved to KDE SC 4.5 and I have to say that the compilation was incredibly smooth! I had just two problems and just on the beginning: when I finally could compile & install kdelibs, I start my usual compile scripts and this morning everything was ok! My two problems were:
Phonon: as it seems that Qt 4.7 will ship with phonon 4.4.2, I tried using just that for my needs. This because I’d like to compile Qt with phonon, cause of webkit and some other not so important stuffs. It doesn’t work. It said “installed phonon 4.3.1″ and things didn’t work. So, I tried hacking the phonon release version and kdelibs “compiled well” (see point 2 about). That’s not the same with kdebase_runtime. it seems it’s a problem of angular brackets against double quotes one. I could solve it just installing a new phonon copy on my $KDEDIR (btw, I install Qt on /opt/qt ...read more...
Phonon already has video capture support. But nobody thought to tell firstname.lastname@example.org, #phonon, or the planet(s). I’m also slightly miffed that I wrote a proposal for the same exact thing and never got considered.
So karma decided to deliver my big box of homemade DDR machine fun from Newegg 2 days earlier. Such is life.
Compared to that merge request, my changes were miniscule, but I feel that I should still explain what I did, what I had planned, and how Casian’s changes fall (more or less) right in line. Hopefully my input will help.
The nucleus of my design was the CaptureDevice. I planned on adding a constructor to the MediaSource that would take this newly invented CaptureDevice class. CaptureDevices would be abstract devices and could represent any well-defined hardware-based source of media. Here’s what I wrote:
A lot of events happened during the last weeks. The most important one, aKademy, represented for me a great chance to meet a lot of people from our community. I found out about great ideas and initiatives and I'm looking forward on contributing also, using parts of the code I'll write in the future for KStars, to other parts in KDE also.
It was a great opportunity to meet Akarsh and Prakash, my two mentors for the project I've been working on KDE under GSoC so far, and in Season of KDE from now on. We were three developers working on KStars, and here's a picture of us from aKademy:
Victor, Prakash, Akarsh
Besides from meeting my mentors, I'm glad I've had the chance to speak with people from all over the world, working and doing such a great work in the KDE project.
Just before going to bed I managed to get a rather rough but working implementation of QML in plasma-mediacenter as welcome item view. The view is entirely written in QML while the delegate is a C++ implementation of a QGraphicsWidget that I also use as delegate in the other ordinary views in PMC.
Week 27 saw about 40 commits to Krita. Especially Sven Langkamp did a lot of cleaning up in our bug list, so we're at 59 bugs now, despite having received quite a few new reports. Sven's call for testing did work, but we still need more thorough testing if Krita 2.3 is going to be the Ready For You release!
And look what Ico-dY has made with the trunk version of Krita:
Adam Celarek already blogged about his work: this week he spent time polishing his new color selectors and adding support for colorspaces to them.
Boudewijn Rempt "fixed" a bug in our handling of metadata. Well, it's a quote-unquote fix, because it is more a paper-over of the problem that many real-world files have invalid names in the name/value pairs in their metadata. For now, we change the invalid names to something properly scary, like "INVALID", but don't halt krita when encountering the name anymore.
During the Akademy, I continu to work on my GSoC. I work more exactly on text shape animation, i.e. only animate a part of text. In my opinion it’s one of the more efficient animation, it allows user to only display a text paragraph by pragraph for example.
Currently, we can load this kind of animation and display it. Saving works too, but not yet commited.
Now, it’s time to start UI, to allow user to add animation into KOffice.
My first mock-up :
Appear animation :red
Dissapear animation : blue
Other animation : green
The button (+) allow user to add the selected Shape (on the presentation) to animation timeline.
On each animation there is a little square (icon), it’s representing subtype.
Mouse over animation : Tooltip with the following information : Animation type, subtype and duration
Right click on animation : allow user to remove animation, modify animation (start time, duration, type, subtype)
... a lot of work and some trouble. Since yesterday is the new openSUSE wiki online, as I discovered today as I checked my last week updated user page. The page was gone ... I had to create a new version of the page. Thanks!
I really appreciate the time the openSUSE wiki-team spend on the update, but unfortunately the new wiki don't always work as exprected:
You can export any page via Special:Export (from the old wiki, which you can reach via http://old-en.opensuse.org) and you should be able to import the page via Special:Import. But the import page don't work, you get "Permission error: The action you have requested is limited to users in the group: Administrators.". No way to migrate a page from the old to the new wiki for now!
Qt 4.7.0 beta 2 and Qt Creator 2.0.0 have been released upstream. There’s some noticeable changes in our Qt packages compared to Qt 4.6.x series: - legacy Qt Assistant (ADP) is removed - new Qt declarative module is introduced - Qt Multimedia and Qt Webkit aren’t being built anymore
In case your package depends on the deprecated Qt Assistant, it is still being shipped in a separated Qt Assistant compatibility package called qt-assistant-compat.
Qt Multimedia is now shipped from Qt Mobility API instead of Qt. The module has been renamed to Qt Mobility MultimediaKit. Qt Mobility delivers a set of APIs for mobile device functionality.
Qt WebKit is shipped standalone, separated from Qt. Hopefully, it will make Qt WebKit security support easier.
There are also a new component in the family: Qt Messaging Framework (QMF). The Qt Messaging Framework, QMF, consists of a C++ library and daemon server process that can be used to build email clients, and more generally software that interacts with email and mail servers.
In case you use Icecream (the distributed compile system which makes your coworkers' machines compile KDE for you ) and happen to be using a glibc >= 2.11.2, you might notice that you are not able to send compilation jobs to other machines while still being visible to the scheduler and receiving jobs from other hosts.
It turns out that some commits to ldconfig made the script which created the environment sent to all other clients not work as expected because of a missing directory.
So until a new stable Icecream release is made (the current one is 0.9.4), make sure to apply this commit to your package to keep things running smoothly.
Back when I switched from Debian to Fedora, the biggest, and hardest to get used to, change was the fact that the bash prompt looked like this:
Not having the full directory in the pathname had always been hard to get used to, but as I learned to delve deeper and deeper into source trees, that became really nice. And then (I think, feel free to correct me) Pinochio at Akademy reminded that that setup has its own set of limitations, and it was more and more clear that having only part of the PWD in the prompt could be an annoyance, particularly as I used pwd to constantly check whether I was in a CMake build dir, or the source dir. Well, not any more.
bash’s ability to colorize things suddenly rocks hard.
I found it useful, feel free to hack on it, make it less craptastic… I picked the worst possible I-hate-Bash-Scripting way of doing this, perhaps some gurus can improve ...read more...
At last Tokamak (Plasma developer sprint), I’ve made a small KWrite proof-of-concept patch just to see how it will behave with the new activities framework – notifying system when it opens and closes a document. A lot of time has passed since, and activity classes were completely revamped, turned upside-down, went through one API review, and moved from the playground to kdebase/libs.
That original patch doesn’t exist anymore, and even if it did, it wouldn’t work for all the changes that were made to activities.
The uber-awesome KDE conference – aKademy – was a time for something new!
Ok, after this introduction you’d expect that I’ve written another patch for KWrite. Well, you’re wrong. The first application that supports activities as a client is Vim!
The main reason I went for Vim this time was to prove that non-kde apps can work with our awesome concept of activities. Another reason is that I didn’t want to use KActivity* classes, so that I can see whether the d-bus ...read more...
The second openSUSE conference takes place in Nuremberg, Germany from october, 20th to 23rd. After its great start last year, we will continue the concept of a user and developer conference around the openSUSE Project including talks, workshops and BOFs. Expect everything between technical workshops about bleeding edge linux distro technology over user presentations about software to inspiring discussions with other projects, especially since the motto for the conference is Collaboration across Borders.
The first conference has also shown how important the openSUSE Conference is for the steering of the openSUSE project. Lots of ideas could be discussed and implemented quickly but also difficult or controversal community internal topics came up in a very contructive way and are worked on since then, some until today.
That brings me to the core message of this post: You should be on the ...read more...
Using digiKam? Show this to the world with some classy stickers from World Label. If you use digiKam to process and organize your photos, you have a chance to win 5 sheets (18 stickers each) featuring an original design. And you can download the template and print stickers yourself, too. Continue to read
For months and months now, my Linux Desktop is suffering from one particular issue, which makes it a pain to use on a daily basis: After having it running for a few hours, suddenly X.org and KWin go bonkers and start eating up all my cpu horse-power.
It's not uncommon to see X.org spiking up to a whopping 60% CPU usage, followed by KWin using roughly another 25%.
Since I'm suffering from this issue now ever since I switched to KDE 4, I thought it's time to turn to you fellow KDE developers for some good advice, since all my undertakings to resolve the issue have failed:
I have tried to switch to a different / newer graphics card, experimented with various versions of the NVidia driver and tweaked X.org settings, have turned off various desktop effect plugins, switched between XRender and OpenGL, even re-installed Kubuntu on a new machine.
No dice, though... after it's been running for a few hours my desktop is completely unusable. Every mouse ...read more...
I don’t have to tell you how great Akademy was; others on the Planet have already elaborated on this quite extensively. The only bad thing is that I had to depart on Tuesday. (Also, my plane to Helsinki was delayed quite a bit, but that’s another story.)
Those of you who were there probably remember the keynote of Aaron who wants us to put a focus on elegance. Details. The small things that distinguish good and useful programs from great programs. I soaked this message up like a sponge, and started working towards more elegance in our beloved jigsaw puzzle game Palapeli immediately after the keynote.
There are already quite some visual improvements which we are working on for Palapeli 1.2 (KDE SC 4.6): During the next week, the bling-compatible Goldberg slicer will be integrated into Palapeli as the new default slicer (I have just renamed it to “Palapeli Slicer Collection” to reduce confusion over the name). This will give us more natural and random piece shapes, and more grid types ...read more...
Since this is relevant among others for Parley I am posting the article also here:
It's just two weeks ago that I started to merge the dictionary data for Ambaradan in our loader application: this is needed to make sure data is in the right shape and we won't loose any.
Well, this morning I told Outi that Joola, one of the languages she cares about, was uploaded and she wrote she'll never forget this day: the last day of the Football World Championship and Joola online.
Quite some languages were still missing, but she was right: today had to be the day ... I wanted to finish before the Champion is known: and here we are :-) the data is up and we still don't know the World Champion of 2010.
It's also quite some time now we are following 1GOAL on facebook, because they want education to happen, well: it's great that there are so many fans and we hope that many of the fans also ...read more...
With Akademy and other stuff going on, it looks like the report on the KDE Finance Sprint didn't make it to the front page. I would like to thank Guillaume and the other people who helped put the report together, and of course, the board, Claudia, Thomas snd Syrocon, who enabled the sprint to happen at all.
I snuck away from Akademy on Friday morning. My intention was to sign some legal documents (part of a resolution of the AGM of the KDE e.V.) and say good byes to all and sundry, but that got terribly sidetracked. The usual experience of walking into Demola is people saying “Hey, [ade], I need to talk to you.” I don’t imagine this is unique to me — there’s so much coordination that goes on at Akademy when you finally have every sub-project on hand to chat with. So I ended up with a long talk with Elias about truth in advertising, and then I tried to print and sign and scan the document at hand. Kaare, a guy I’d exhanged some banter during the day trip, wandered over. It turned out that Kaare is the Skanlite dude, so I took the opportunity to thank him for his work.
Then rushed goodbyes — I skipped the whole of floor 4 with the BoFs — and off to the bus. Milian, Niels, Richard and Lubos were on the same flight, and ...read more...
I'm very happy to announce you that the reverse geotagging widget is finished! This was the first part and maybe the most important part of my project in this year Google Summer of Code, so I'm glad to see it working.
Now, perhaps some of you will ask: "Ok, but what is reverse geotagging?" Well, it's a process that reads the GPS coordinate inside an image and then tags it with address elements(country, city, street...).
I actually wrote parts of this blog post past friday, so just pretend aKademy has just ended while you read this.
All good things come to an end, and aKademy is of course no exception. Demola is closed, and tomorrow the taxis, buses, trains and airplanes that will bring us home will inevitably depart on time, and even though we may not want to, we’d better be in them.
I want to talk about a few highlights of aKademy this year. It’s been my first one, so I can’t compare to earlier ones – but I promise I will be able to compare next year’s aKademy to this one!
Possibly the most amazing thing this aKademy was the fact that I finally met Diederik and Valerio, two other KMess developers. We planned to come together, and it’s been great. Next year we’re going to try to pull the rest in too, which means there’ll even be some Australian blood. We will also probably have more realistic expectations of how much work you actually get done…
Yep, I didn’t have time to blog during aKademy as you may have noticed The main reason is that I had a lot of discussions and attended to a huge number of BoFs. This aKademy rocked just as the others that I went. Huge thanks to the organization team, KDE e.V and sponsors for providing ways to make this happen and to have a lot of KDE hackers there!
Instead of doing a technical blog today, I will just say that during this aKademy KDE ‘called home’ for the first time. This means that for the first time in history we had KDE running on a mobile phone and we made a call with it! This was AWESOME! Just a summary: Plasma-Mobile and a plasmoid that worked as a dialer did the work, using the phone API of Maemo5 on a N900.
As Aaron noticed, our first call was a little bit more “interesting” than Graham Bell’s one. The first words on a telephone in history are:
Today I saw a post by The Linux Critic. In the post the author, Trent, says "I’m really not a fan of the new Amarok", which naturally got me curious as to why. After all, if you don't know what problems people have with your software, it can be hard to improve it.
I had never interacted with Trent or any other member of The Linux Critic before, nor had I ever visited their site. I was there with the best of intentions.
I'm going to let the discussion we had speak for itself. I've reproduced it below, because Trent started removing my comments and modifying his own. You can see the original blog post here -- it's not even really relevant to most of the ensuing discussion -- however I strongly recommend, in case further modification has been made to the discussion on that page, that you read the reproduction of the discussion below which is accurate as of the time of writing this post. At the ...read more...
kate-editor.org now contains all articles from the old page still applicable to Kate in KDE 4 and in addition all blog entries of Dominik which are Kate centric.
Beside that it will aggregate the blog entries of Milian for Kate
Still, a lot of work is needed. We already got an offer for help to beautify the page by a web designer, still content writers are missing. You have a nice short post about how to use Kate best? You have some howto? Just contact us or me in private. We can either give you an account on the page or just add your content if you like that more.
OK, once again I didn’t quite manage to write a blog each day… It always starts well and then the hackathon kicks in.
The last three days, I had more meetings again. We made quite some progresses on our plans for Solid. I even got some more people to write on backends for libsolid, really neat. Looking forward to share the load in this way.
Of course hacking in between, and in particular today where I made quite some progresses on the new version of Zanshin which I neglected completely for the past year. Also notable was yesterday day trip, we spent the afternoon next to a nice lake. Kind of reminded the day trip in Glasgow, except that we had great weather this time, and hungry mosquitoes.
People started to leave already, I’m part of the last group of fearless hackers here. Tomorrow it’ll be my turn to move back home, not really looking forward to the trip itself, but having some rest at home will be welcome after such a hectic and ...read more...
Faster here however must be taken with a grain of salt as the new code is not always guaranteed to be better pipelined.
And of course, it's trivial to beat this generic C code with architecture-specific hand-rolled assembly.
git show cbc22908 commit cbc229081a9df67a577b4bea61ad6aac52d470cb Author: Ariya Hidayat Date: Tue Jun 30 11:18:03 2009 +0200
Faster quaternion multiplications.
Use the known factorization trick to speed-up quaternion multiplication. Now we need only 9 floating-point multiplications, instead of 16 (but at the cost of extra additions and subtractions).
Callgrind shows that the function now takes 299 instructions instead of 318 instructions, which is not a big win. However I assume the speed-up has a better effect for mobile CPU, where multiplications are more expensive.
We initially started the push for location-aware desktops around 2006, and now the efforts are finally starting to bear fruit. Both Zeitgeist and Nepomuk are looking at indexing documents based on where you accessed them, Telepathy can share your location with your friends, and hopefully soon also your desktop clock will switch timezones when you travel.