You are using an obsolete web browser, or you have the page styles (CSS) disabled. You'll be able to access this site, but only a visually simplified version.

The ordeal

This is not really a KDE post, but rather something that happened and took away two days from me. So, you’re free to skip it :)

Intro

Insanely enough, I decided to completely wipe out my current system and after quite some time reinstall Debian. I completely forgot how tiresome is reinstalling everything from scratch – all the packages needed by KDE SC, all the packages needed by me, and everything else. Even more, I’m used to installing the minimal system, and then installing xorg, …

So, when the initial installation was over, I decided to make a clean KDE build (like I haven’t lost enough time already) – and after a few attempts I managed to install just enough dependencies so that the stuff I want (or work on) works without a glitch.

eeePC as a graphics card

At the time I started to get pleased by my newly refreshed and cleaned system, my screen just went blank, and after a reboot, the computer made quite a few beeps before starting to boot the OS while leaving the screen blank.

One of the capacitors on my graphic card went crazy and had blown up. Since I needed to do some work, I couldn’t allow myself to be without access to the system, and using a much slower (eee)PC with a much smaller screen while my main system lies incapacitated (or incapacitor-ated) was a no-go.

The first solution was to do an ‘ssh -X’ from eeePC and connect my big screen to it. And this worked quite well except that VGA connector didn’t want to allow the full resolution of my screen so the picture was a bit blurry.

The is in a nutshell, the power of Linux and X11.

ATI

After I finished the things I needed to do, I hurried to the last open computer-store to get a new card. The last one left in the store was ATI’s HD6450, so I didn’t have any doubts which card to get.

I have to say that I was thrilled I’m getting rid of NVidia driver problems (although I didn’t really have any :) ) and getting into AMD’s world (after all I haven’t bought a single Intel’s CPU since 80286).

But, as per Murphy’s law, while KWin worked with all fancy effects (via the openGL backend), all openGL programs decided to claim that this driver doesn’t support openGL – at all. Even the simplest examples from the ‘Computer graphics’ course I teach.

After seeking the solution on the intertubes, and trying each and every one, I almost decided to quit and leave it like that. Fortunately, after a while, I /decided/ it was the problem with the fact I need fglrx-glx package which I can’t install because it would break quite a few other packages (and thus apt would uninstall them) including some qt4 stuff which required mesa-glx.

Then I decided to do the dirty thing – to simply overwrite mesa’s libGL.so* stuff with those from fglrx. Usually, this is not really a safe thing to do, but since openGL is a C library that has to conform to a few well-defined standards, all implementations need to be binary compatible, which in turn means those can easily be interchanged.

This and a few radeon.modeset=0 sprinkled in a couple of places made my system fully functional.

Outro

This morning I even decided to tear apart all the components from the case, clean them and resemble the system (cleaning the body as well as the soul – it’s a chán/zen thing :) )

Now I have something that works and feels as a completely new system.

Contouring the Share-Like-Connect

Ok, it is the time for me to blog from Randa and KDE Platform 11 and Nepomuk sprints.

KDE and Gnome collaborationSo, what I’ve been up to? I’ve been finishing the backend stuff and the library for registering the “desktop events” aka opening a document, web page and similar. All that is contained in the activity manager, so all the recorded stats will be tied to specific activities.

Share-Like-Connect

One of the side effects of the /usage tracking/ is that we now know what document is currently being viewed/edited, so the Aaron’s S-L-C concept can finally come to life without using the fake dummy data.

Tasks Documents applet

This doesn’t exist yet, but when applications start reporting which documents they are showing, we’ll be able to make a fully document-oriented workspace for those that like that kind of stuff.

Zeitgeist integration

We (Nepomuk – Trueg and myself) and Zeitgeist people (Seif and Trever) had quite a few hours spent deciding the best way for the two systems to collaborate and I think we have done well. Apps that support Zeitgeist will automatically support us as well, and vice-versa. So, whether you are using a Gnome application in KDE, or KDE application in Gnome, it will just work(TM).

As you probably already know, I’m a sucker for fall-backs, so I still intend to make this work even if you disable one of the services. And it will work, but badly if you disable both of them.

Contour and Plasma Active

The thing worth mentioning is that I’m now a part-time member of the Contour team at basysKom, so you can expect these things to be finished faster than it was when I had to give focus to other non KDE-related projects.

Happy, happy!

I know it is a bit early to say this, but I wish you all an ECSTATIC NEW YEAR!

Click for full resolution

ASCII Plasma Theme and others

Ok, I’ve realized I really don’t have the time to finish some of the things I’ve started before. Too many things on my plate both in KDE world and outside.

Plasma themes

One of those was the promise of removing the fanciness from Plasma with ASCII art. The others include Glaze and Spoons themes.

Outsourcing

Because of this unfortunate situation, I’ve decided to give the theme creation up to the community. I’ve submitted the themes in question to gitorious at http://www.gitorious.org/kde-plasma-themes.

So, if you want to help, just clone the repository and start creating art. I would ask you not to fork the themes, but improve these ones – just make merge requests and I’ll accept them as soon as possible. Don’t forget to add yourself to the list of authors.

If you prove to be a serious contributor, you’ll get direct commit permissions to the whole repo.

git.kde.org

If you’re wondering why I didn’t use git.kde.org but Gitorious, the main reason is that the repo was created long before git.kde.org was even in plans, and I just haven’t blogged about it.

aKademy day 1: do not conform!

I always was a nonconformist, so while everybody was at aKademy in Tampere, I decided to hold my own version of aKademy in Munich. Well, it wasn’t really my decision, I had more than 6 hours gap between my flights, so I decided to go to the town.

Pictures are worth a lot more than words so:




As you can see, the city was crowded, and they served weissbier and weisswurst.

I arrived to Tampere at 9PM – just in time to join the ongoing party in some fancy nightclub :)

Comment voes with WP

It looks like comments sometimes decide not to work here (or, to be more accurate, sometimes they decide to work).

Please notify me on IRC (or mail) when that happens… cheerio

Edit: AKISMET sucks!!!!

Runner drag and drop, serialization

Until now, drag and drop and some other things in krunner based launchers (lancelot, kickoff, and maybe SAL?) are based on a small hack – manual detection whether the result is in fact a .desktop file of an application provided by the service runner, and if it is, then we can use it.

So, the first thing I decided to make is some way of allowing serialization of the search results. I decided that the best way is to allow the results to have mime data assigned to them. Naturally, since most of the time you don’t need the mime data, it doesn’t load by default – it is loaded only when requested and only for the specific search result.

That is all for now from T4… I’m sleepy and I can’t really write more…

ZSH: bookmarks for cd (change directory) with completion

Another zsh-related post. This one is about defining a function that will allow you to define aliases for directories so that you don’t need to type something like ‘cd /this/is/a/very/long/path/in/the/filesystem’, but only ‘cdb some-alias’ (cdb – Change Directory with Bookmarks)

You can copy the script to your .zshrc, or create a zsh module as described in my previous post

# Module: Change directory with bookmarks
# path: bin/zsh-modules-available/cdbookmarks

function cdb_edit() {
  vim ~/.cdbookmarks
}

function cdb() {
  NewDir=`egrep "^$1<TAB_KEY>" ~/.cdbookmarks \
     | sed 's/^.*<TAB_KEY>//'`;
  echo cd $NewDir
  cd $NewDir
}

function _cdb() {
  reply=(`cat ~/.cdbookmarks | sed 's/<TAB_KEY>.*$//'`);
}

compctl -K _cdb cdb

That’s it. To define the bookmarks, create a file named ~/.cdbookmarks and the bookmarks in the following format:

<alias><TAB_KEY><path>

(no spaces)

Cheerio!

ZSH: Organize your .zshrc (should work for BASH as well)

My .zshrc became is too long to maintain it easily. I’ve decided to take the idea behind apache configuration in Debian and to split the .zshrc parts into easily maintainable subscripts. I have no idea if ZSH supports this in some vim-like form of .zsh/plugins, so I did it manually.

Preparation

The first step is to create the following directories

$ mkdir -p ~/bin/zsh-modules-available
$ mkdir -p ~/bin/zsh-modules-enabled

and to make a backup of old .zshrc like this

mv ~/.zshrc ~/.zshrc.backup

Setup

Open the ~/.zshrc file with your favourite editor, and copy the following into it (replacing the old code):

# Lines configured by zsh-newuser-install
source /etc/profile

for file in ~/bin/zsh-modules-enabled/*; do
source $file
done

Splitting up

Now, open .zshrc.backup file we created earlier and split it into modules which you’ll save into ~/bin/zsh-modules-available. You can split it up any way you want. For example, one of the modules could be the following:

# Module: Aliases
# path: bin/zsh-modules-available/aliases
alias :q=exit
alias la='ls -A --color'
alias rm='rm -i'
alias f='find -name '
alias df='df -h'
alias gg='ack-grep'

Enabling modules

The last step is to choose which modules you want enabled, and to specify the order of execution by prefixing the names with a number from 00 to 99.

Go to the ~/bin/zsh-modules-enabled and do the following for the modules you want to enable:

ln -s ../zsh-modules-available/module-name ./xx_module-name

That’s all folks

So, you have a easily maintainable ZSH module system – it is easy to add a new one, to delete an old one, easy to switch them off or on… You could even create functions such as zsh_module_enable/disbable, but I’m too lazy for that. (aka, if you do, please post them in the comments section and I’ll add them to the post.

Cheerio!

Happy everything!

For all of you who celebrate anything related to the fact that we are soon to be in have entered the year 2010, have a happy New Year, even happier holidays, and ecstatic life.

This year, the /card/ is rather simplistic (especially when compared to the last year’s), and looks like crap when zoomed out – so, please, click it and open the full resolution one. :)

Cheerio!

Happy everything 2010

Next Page »