Subscribe to Planet KDE feed
Planet KDE -
Updated: 38 min 13 sec ago

A neat UNIX trick for your bash profile

5 hours 56 min ago

Hi folks! I have been spending a lot of time with KStars lately. I will write a detailed account on the work done till now, but here’s something I found interesting. This, I think is a handy ‘precautionary’ trick that every newbie should implement to avoid pushing to the wrong git repo/branch.

Here’s what you do. Open up the konsole and type cd ~ (This should take you to your home directory. Now what we need to do is add one line to your .bashrc file.

$nano .bashrc

Opens up your .bashrc file in the nano editor (you could choose vim, or emacs too).

Add this line export PS1=’\W$(__git_ps1 “(%s)”)> to the part of the ‘if block’ that pertains to bash completion. In my case this is how my .bashrc looks.

  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
        export PS1=’\W$(__git_ps1 “(%s)”)> ‘
  elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion

What this does is that it changes the text on your konsole. Whenever you enter a git repository, the text on your console reads the repo name with the git branch you are on currently (hence the %s to the __git_ps1 variable). This is how my kstars repository now looks.

~> cd Projects/kstars/
kstars(gsoc2015-constellationart)> git branch
* gsoc2015-constellationart
kstars(gsoc2015-constellationart)> git checkout master
Switched to branch ‘master’
Your branch is up-to-date with ‘origin/master’.

Now you can always know what branch you are on, without typing git branch. Pretty neat! 😎



Reminder: Evolving KDE survey milestone on May 31st

16 hours 24 min ago

Evolution is a powerful concept and tool. When harnessed properly, humans have been able to tailor and adapt crops and domesticate animals. We’ve been able to grow the Dutch unnecessarily tall and create beautiful and consequence-free theme parks as shown in the Jurassic Park documentary series on the BBC. However, when not monitored closely or left to nature’s own devices, the result is the terrifying land based sharks that have caused such recent devastation across most of Australia.

Nature gone wrong

It has already been a month since KDE launched Evolving KDE: an initiative that allows our healthy community to continue growing organically while setting goals, direction, and taking action. The digital world is only accelerating in its pace of change; will we be proactive or reactive?


KDE is ours.

It has also been eight long years since I created this image for KDE, and I firmly believe the concept to be more relevant than ever. KDE is powerful enough to respect the different backgrounds, geographies and goals of the individual while channeling that diversity as a strength.  With unity and vision, our best is yet to come.

The beauty of the Evolving KDE announcement to me came from the three distinctive voices I’ve seen post on the topic here on the Planet.

You have Lydia, who as President of the KDE e.V. shows leadership  in announcing  and defining this initiative.

You have Paul, universally known as being to smart for his own good and apparently having enough time to read more that xkcd comics, showing the theory, necessity and impact of such ventures.

And finally you have Boudewijn, who actually gives a testimonial on his own experiences with Krita and powerful results yielded from taking the time to chart a course and create a plan to reach that destination.  Years ago, I distinctly remember Krita’s identity crisis, lack of momentum, and the very purposeful and honest conversations on their current state, definition of goals, and the plans created to achieve them.  When he writes, “Krita’s evolution has gone from being a weaker, but free-as-in-freedom alternative to a proprietary application to an application that aspires to be the tool of choice, even for people who don’t give a fig about free software” he may be underselling the hard work, the vision, the plan, and the metamorphosis.

So, as Lydia shared in her blog post, Evolving KDE is an ongoing journey, but it does have a specific train stop coming up quickly.  On May 31st, we’ll be taking the survey results entered.  We’ll summarize, review, discuss and present at Akademy.  The survey will remain open, and the questions will likely evolve over time (it be hypocritical to remain static when asking about change, n’est-ce pas?), but May 31st is a milestone necessary to harvest and present.

With one week remaining, you have plenty of time, so take the short and simple Evolving KDE Survey, and have your voice heard!


GSOC 2015

Sat, 2015/05/23 - 1:39pm
I got accepted for the project, Integration of Cantor into LabPlot in this year's google summer of code (GSOC) under mentor Alexander Semke with KDE Organization. Looking forward to ..

First phase to GSOC 2015 has ended, that is community bonding period. I have tried my best to interact with my mentor and community members, but I was mostly occupied with my university examination during most of the time. 

Looking forward to the coding period I have started working on integration of Cantor's UI into LabPlot. I will push all my commits to branch integrate-cantor[1] of LabPlot. 

Looking forward to learn, code and develop this summer !


Interview with Mary Winkler

Sat, 2015/05/23 - 8:00am
Could you tell us something about yourself?

My name is Mary Winkler and I work under the brand Acrylicana. I love coffee, cats, pastels, neons, sunshine, and sparkles.

Do you paint professionally, as a hobby artist, or both?

Professionally mostly, but also just because I love creating. If I can make a mark, painting, drawing, crafting, etcetera, I will.

What genre(s) do you work in?

Realism, kawaii, stylized, pop art… there’s a lot of terms that define my art, and it has changed and continues to change over time.

Whose work inspires you most — who are your role models as an artist?

I adore the work of Peter Max, Macoto, Junko Mizuno, Lisa Frank, Bouguereau, and Erte, as well as artist friends Miss Kika, Anneli Olander, Zambicandy, and Brittany Ngo.

How did you get to try digital painting for the first time?

In high school my oldest brother bought me an off-brand graphics tablet, well over a decade ago. I’ve been creating art digitally ever since.

What makes you choose digital over traditional painting?

I love both mediums, actually. If I’m pressed for time, working with a client, or just don’t want a mess, digital is the way to be. Most of my work is done digitally. I do love to be able to paint up wood, canvas, or paper with acrylics or watercolors for gallery shows or small pieces to put in my shop.

How did you find out about Krita?

I was writing an article for Tuts+ covering drawing and design programs that weren’t made by Adobe. I had some twitter followers mention it and later when the article ran a few people commented about the program because I missed it. Rectified that mistake by painting for three days straight and haven’t shut up about Krita.

What was your first impression?

The program immediately detected my tablet (Wacom Cintiq) and while some larger file sizes and my machine can produce a little bit of lag, the program doesn’t freeze on me, crash unexpectedly, or cause weird jagged lines when they should be smooth. Krita’s smooth and lighter than Photoshop, and has such good painting tools!

What do you love about Krita?

LOVE the blending tools. I’m used to those of Paint Tool SAI, and finding a program whose brushes are far more customizable and can do more is digital art heaven. Especially an open source one!

What do you think needs improvement in Krita? Is there anything that really annoys you?

I know it’s small, but I’d love a zoom tool in the toolbar. I’m happy to push plus and minus, but not seeing the little magnifying glass first thing was something I missed from a new user standpoint.

What sets Krita apart from the other tools that you use?

It’s not hogging all of my RAM like Painter or Adobe products can. While it’s lighter than those programs, it’s also packed with more features than something like FireAlpaca or Paint Tool SAI. I have the ability to customize brushes and tools fantastically, and have barely done so so far thanks to kickass default tools.

If you had to pick one favourite of all your work done in Krita so far, what would it be, and why?

So far I’ve only done two: the tart piece and a poster design for an upcoming gallery show. I love them both and cannot choose. I do plan on adding hundreds of doodles done in Krita to my harddrive.

What techniques and brushes did you use in it?

So far I love the watercolor-style brushes, sparkle brushes, and the blending ones. I’ve been playing with default ones mostly to get the hang of what Krita has to offer. Simply love anything that is intuitive in its use. Immediately I could apply my painting techniques to the program without having to learn new ways to use layers or complex blending or painting styles. It’s like working with acrylics, and I love that.

Where can people see more of your work?

You can follow me on behance, instagram, facebook, twitter, and deviantart.

Anything else you’d like to share?

I write a lot of tutorials for Tuts+ ( and add videos occasionally on youtube ( I hope to add Krita to my roster of tutorials/courses/process videos soon. :)

Second stretchgoal reached and new builds!

Fri, 2015/05/22 - 7:38am

We’ve to got our second stretchgoal through both Kickstarter and the Paypal donations! We hope we can get many more so that you, our users, get to choose more ways for us to improve Krita. And we have got half a third stretch goal actually implemented: modifier keys for selections!

Oh — and check out Wolthera’s updated brush packs! There are brush packs for inking, painting, filters (with a new heal brush!), washes, flow-normal maps, doodle brushes, experimental brushes and the awesome lace brush in the SFX brush pack!

We’ve had a really busy week. We already gave you an idea of our latest test-build on Monday, but we had to hold back because of the revived crash file recovery wizard on windows… that liked to crash. But it’s fixed now, and we’ve got new builds for you!

So what is exactly new in this build? Especially interesting are all the improvements to PSD import/export support. Yesterday we learned that Katarzyna uses PSD as her working format when working with Krita – we still don’t recommend that, but it’s easier now!

Check the pass-through switch in the group layer entry in the layerbox!

Check the pass-through switch in the group layer entry in the layerbox!

  • Dmitry implemented Pass-Through mode for group layers. Note: filter, transform and transparency masks and pass-through mode don’t work together yet, but loading and saving groups from and to PSD now does! Pass-through is not a fake blending mode as in Photoshop: it is a switch on the group layer. See the screenshot!
  • We now can load and save layerstyles, with patterns from PSD files! Get out your dusty PSDs for testing!
  • Use the right Krita blending mode when a PSD image contains Color Burn.
  • Add Lighter Color and Darker Color blending modes and load them from PSD.
  • When using Krita with a translation active on windows, the delay on starting a stroke is a bit less, but we’re still working on eliminating that delay completely.
  • The color picker cursor now shows the currently picked and previous color.
  • Layer styles can now be used with inherit-alpha
  • Fix some issues with finding templates.
  • Work around an issue in the oxygen widget style on Linux that would crash the OpenGL-based canvas due to double initialization
  • Don’t toggle the layer options when right-clicking on a layer icon to get the context menu (patch by Victor Wåhlström)
  • Update the Window menu when a subwindow closes
  • Load newer Photoshop-generated JPG files correctly by reading the resolution information from the TIFF tags as well. (Yes, JPG resolution is marked in the exiv metadata using TFF tags if you save from Photoshop…)
  • Show the image name in the window menu if it hasn’t been saved yet.
  • Don’t crash when trying to apply isolate-layer on a transform mask
  • Add webp support (at least on Linux, untested on Windows)
  • Add a shortcut to edit/paste into a new image. Patch by Tiffany!
  • Fix the autosave recovery dialog on Windows for unnamed autosaves!
  • Added a warning for intel users who may still be dealing with the broken driver. If Krita works fine for you, just click okay. If not, update your drivers!

New builds for Linux are being created at the moment and will be available through the usual channels.

Linux: Windows:

From Vista and up, Windows 7 and up is recommended. There is no Windows XP build. If you have a 64 bits version of Windows, don’t use the 32 bits build! The zip files do not need installing, just unpacking, but do not come with the Visual Studio C runtime that is included in the msi installer.


(Please keep in mind that these builds are unstable and experimental. Stuff is expected not to work. We make them so we know we’re not introducting build problems and to invite hackers to help us with Krita on OSX.)

Updates on Kate's Rust plugin, syntax highlighting and the Rust source MIME type

Thu, 2015/05/21 - 11:17pm
KDE Project:

The other day I introduced a new Rust code completion plugin for Kate, powered by Phil Dawes' nifty Racer. Since then there's been a whole bunch of additional developments!

New location

Originally in a scratch repo of mine, the plugin has now moved into the Kate repository. That means the next Kate release will come with a Rust code completion plugin out of the box! (Though you'll still need to grab Racer yourself, at least until it finds its way into distributions.)

For now the plugin still works fine with the stable release of Kate, so if you don't want to build all of Kate from git, it's enough to run make install in addons/rustcompletion in your Kate build directory.

This also means the plugin is now on - product kate, component plugin-rustcompletion (handy pre-filled form link). And you can submit patches via ReviewBoard now.

New feature: Go to Definition

In addition to code completion popups, the plugin now also installs Go to Definition action (in the Edit menu, the context menu, and you can configure a keyboard shortcut for it as well). It will open the document containing the definition if needed, activate its view and place the cursor at the start of the definition.

Rust syntax highlighting now bundled with Frameworks

After brainstorming with upstream, we decided together that it's best for Rust and Kate users to deprecate the old rust-lang/kate-config repository and move the syntax highlighting file into KDE's KTextEditor library (the foundation of Kate, KDevelop and several other apps) for good, where it now resides among the many other rules files. With 1.0 out the door, Rust is now stable enough that delivering the highlighting rules via distro packages becomes feasible and compelling, and moving the development location avoids having to sync multiple copies of the file.

The full contribution history of the original repo has been replayed into ktexteditor.git, preserving the record of the Rust community's work. The license remains unchanged (MIT), and external contributions remain easy via ReviewBoard or

KTextEditor is a part of KDE's Frameworks library set. The Frameworks do monthly maintenance releases, so keeping up with the Rust release cadence will be easy, should the rules need to be amended.

It's a MIME type: text/rust

Kate plugins and syntax highlighting files preferably establish document identity by MIME type, as do many other Linux desktop applications. The desktop community therefore maintains a common database in the shared-mine-info project. With the inclusion of a patch of mine on May 18th, shared-mime-info now recognizes the text/rust type for files matching a *.rs glob pattern.

If you're searching, opening or serving Rust source files, you should be using text/rust from now on.

That's it for today! I still have a bunch of improvements to the plugin planned, so stay tuned for future updates.

Krita comes to Discworld!

Thu, 2015/05/21 - 9:47am

We found out that the German Discworld covers were made with Krita, and had the privilege to ask the artist to talk about her work.
Color of Magic z napisami Katarzyna Oleska

Hi. My name is Katarzyna Oleska and I am an Illustrator working for publishers, magazines and private clients. A couple of months ago, I came across a free program for painters called Krita. My experience of free programs in the past wasn’t great, but to my surprise, Krita was different. At first I was overwhelmed with the number of dockers and settings, but soon found that they were there for a reason. I fell in love with Krita so much that I left my old Corel Painter and started using Krita to paint my commissions. Most of my recent Terry Pratchett covers were painted in Krita.

How did you get into illustration/book cover painting in the first place?

I started painting covers back in 2003 when I was still studying architecture. I’d always liked to draw and paint and wanted to see my works in print. So one day I took a chance and e-mailed one of the Publishers I wanted to work for. I attached a couple of samples of my works and I got my first job straight away. Pretty lucky. Back then I was still working traditionally but as time went by I bought a tablet and started working digitally.

Pyramids z napisami Katarzyna Oleska

How do you find jobs?

It really depends. Some of the commissions come to me and some I have to chase. If the commission comes to me it’s usually through word of mouth or because the client saw my works online. But I also approach new publishers, send them my work samples, my portfolio etcetera.

Can you choose which books you illustrate, or do you just do what a publisher throws you?

Unfortunately I don’t have the comfort of choosing what I want to illustrate. I can refuse politely if I think I can’t deliver a good illustration, for example when I feel my style wouldn’t fit the story. But publishers usually know what I am good at, they know my portfolio and I have never really refused any cover yet.

How do you determine which scene/character(s) to put on the cover?

The best decision of which scene or characters to put on the cover can only be made if I know the story so whenever I have a chance to read a book I take it. Being a fan of reading myself, I know how important it is for the cover to reflect the story inside; especially with a series like the Terry Pratchett Discworld novels. I was already a huge Terry Pratchett fan, so that wasn’t a problem.

When choosing a scene to paint I usually try to analyse where the main focus of the story is. Very often I am tempted to paint a scene that would look amazing on the cover but I catch myself in time and remind myself that this particular scene, though amazing, wouldn’t really sell the story. So I choose the one that will do it better and will also resonate with the title. For example with “Guards, Guards” the only reasonable choice was to paint the Guards running away from a dragon they were trying to track down. Nothing else would really fit.

Guards Guards z napisami Katarzyna Oleska

Sometimes, however, it’s impossible to read a book because of a tight deadline or the language it was written in. When that happens I try to make sure I find out as much as possible about the book from the publisher.

What sets Krita apart from other tools you’ve used?

The first and most obvious thing is that it’s free. I love than young artist will now have access to such a great tool without spending lots of money. But I would never recommend a program based solely on the price. I have used some free programs and never liked them. They would last a very short time on my computer. With Krita it’s different – I think it’s already a strong competitor to the best known programs on the market.

For me, Krita feels very natural to use. I have worked both in Photoshop and Painter before and although I like them, I’ve always been hoping to find a program that sits somewhere in between those two. As an illustrator I am mostly interested in paint tools. Photoshop has always seemed too technical and not so intuitive. Painter, while trying to deliver the painterly feel, wasn’t really delivering it. With Krita I feel almost like I’m painting. The number of settings for brushes can be overwhelming at first, but it helps to create brushes that are customized specifically for me. I especially like how Krita manages patterns in brushes.

Sorcery z napisami Katarzyna Oleska

What does Krita already do better, and what could make it better still?

As well as the brushes, I also love the vector tools in Krita. I have never before seen a program where tools would change their characteristics depending on what kind of layer we use them on (paint/vector).

I also love that I can pick a color with ctrl and dynamically change the size of the brush by holding shift and dragging my pen. I often only have to use my pinky to control these two.

Rotating the canvas is easy (space-shift) and I am addicted to the mirror tool as I use it to verify the proportions in my paintings (mirroring the image helps spot mistakes). I love that when I’m using two windows for one file the mirror tool only affects one of the windows. The warping tool is also great. I don’t use it much, but I tried it out and I love the way it works. Multiple Brushes and Wrap Around Mode are great too, they make creating patterns so easy. But one of my favourite things is that I can choose my own Advanced Color Setting Shape and Type and that there are so many options that come with it.

Things that could be improved: when I overwrite a brush preset I cannot keep the old icon I created. Perhaps an option to keep the old icon could be added. Seems like a small problem but when using many brushes I get used to the icon and when it’s gone I have to search for my brush. The other improvement would be the ability to merge multiple layers together.

Can you give a quick overview of your workflow?

Sure. I actually prepared a short video that shows how I work. It’s a sketch for Terry Pratchett’s “Wyrd Sisters”. I used the older version of Krita back then but the workflow remains the same.

Do you work closely with the publisher for a book cover, or do you only deliver a painting so you don’t see the result until it’s published?

Very often, before I even start sketching, the publisher will send me a draft of the cover’s layout so that I am aware of how much space I have to work with. Sometimes however, when the publisher doesn’t know the final layout, they give me some directions and let me decide how much space I want to leave for the lettering. Usually after I’ve handed them the initial sketch they can correct me, and ask to change the composition a bit. When it comes to the finished illustration I have full control over it until I’ve e-mailed it to the publisher. Once they have approved it, how it looks when it is published is out of my hands. Sometimes they will send me the final version of the cover, so that I know what it will look like in print and I can make some last minute suggestions but I don’t have real control over the cover itself.

What are the special requirements (colour, resolution, file format) and challenges when you work for print?

I like to work with bigger formats. I think a painting looks better when painted big and then shrunk to the size of the cover rather than when it’s painted with only small size in mind. A big size forces me to be more precise in details so in the end the image looks more crisp and the quality is better. Besides, the client may in the future want to use the painting for a poster and then I know the painting will look great.

I usually work with psd files. I use many layers and this is the best file type for me. When I send out the final image I flatten the image and save it as a tiff file. It may be heavier than jpg but there is no loss in quality. Also I work in an RGB mode but I always switch to CMYK in the end to see if I like how it’s going to look in print (CMYK has fewer colors). If necessary I correct any mistakes I see.

To see more of Katarzyna’s work, visit her site:

Twenty years of Qt!

Thu, 2015/05/21 - 7:08am

I first encountered Qt in Linux Journal in 1996. Back then, I wasn't much of programmer: I had written a GPL'ed mail and Usenet client in Visual Basic and was playing around with Linux. I wanted to write a word processor, because that was really missing, back then.

I tried to use xforms, but that didn't have open source (it was binary only, can you believe it?), and besides, horrible. Since I didn't particularly care about having a GUI, I tried to use curses, which was worse. I had taken a look at Motif years before, so I didn't look again. Sun's OPEN LOOK had a toolkit that looked nice, but wasn't. For work, I had used Delphi and MFC, and had had to make sense of Oracle 2000. None of those were useful for writing a word processor for Linux.

And then, suddenly, out of the blue (though I remembered some of the names involved with Qt as being involved with my favorite ZX Spectrum emulator), appeared Qt. Qt made sense: the classes were helpfully named, the api's were clear and sensible, the documentation was good, the look and feel worked fine. It had everything you'd need to write a real application. Awesome!

So I got started and discovered that, in the first place, I didn't know what makes a word processor tick, and in the second place, I didn't know C++... So my project foundered, the way projects tend to do, if you're trying to do stuff all by your lonesome.

Then I changed jobs, stopped working on a broken-by-design Visual Basic + Oracle laboratory automation system for Touw in Deventer, started working with Tryllian, building Java-based virtual agent systems. Fun! I learned a lot at that job, it's basically where I Was taught programming properly. I discovered Python, too, and loved it! Pity about that weird tkInter toolkit! And I started using KDE as soon as I had a computer with more than 4 megabytes of ram, and KDE used Qt.

Qt still made sense to me, but I still didn't know C++, though it looked to me that Qt made C++ almost as easy as Java, maybe easier, because there were seriously dumb bits to Java.

Then PyQt arrived. I cannot figure out anymore when that was: Wikipedia doesn't even tell me when it was first released! But I threw myself into it! Started writing my first tutorials in 1999 and followed up writing a whole book on PyQt. My main project back then was Kura, an alternative to SIL's Shoebox, a linguistic database application that later got handed over to the Ludwig-Maximilians University in Munich.

I never could make sense out of Java's GUI toolkit: Swing didn't swing it for me. But that was work stuff, and from 2003, I worked on Krita. I started doing my own painting application in PyQt, about the time Martin Renold started MyPaint. I quickly decided that I couldn't do a painting application on my own, just like I couldn't do a word processor on my own. By that time I had taken a good hard look at GTK as well, and concluded that anyone who'd propose to a customer to base a project on GTK should be sued for malpractice. Qt just made so much more sense to me...

So I found Krita, learned bits of C++, and since then there haven't been many days that I haven't written Qt-based code. And without Qt, I probably would have started a second-hand bookshop or something. Qt not just lets me code with pleasure and profit, it is what keeps me sane, coding!

Qt was first released 20 years ago!

Thu, 2015/05/21 - 12:07am

Right from the start, we at KDAB have had lots of fun playing a leading role – and as the Qt experts, we look forward to continuing to contribute to the growing Qt community.

As a toast to the next 20 years of fun and success, we are combining the company meeting, this year here in the Netherlands, with the celebration of the 20th Qt anniversary.

A IMG_8882 LR

Check out the video below showing us on our way to the celebration – in Dutch style.

Happy Birthday, Qt!

The post Qt was first released 20 years ago! appeared first on KDAB.

fresh breeze for LibreOffice

Wed, 2015/05/20 - 10:27pm

LibreOffice is a great OpenSource project. They have a Design Group and help you a lot if you’d like to do something for LibreOffice. Now LibreOffice prepare the new release LibreOffice 5.0 and for this release I’d like to be finished the LibreOffice Breeze icon set. Uri and I work since last November on the icon set so you also have a package available in your repository. Now I’d like to post that we are nearly finished. 98 % (2.700 icons) of the icon set is done, so it is ready for your review. As the monochrome LibreOffice icon set Sifr is less finished than Breeze, I though the fallback icon set for Sifr is Breeze.

writer1We have the LibreOffice git repository for the finished icons as png file and the breeze github repository as working repository with the original svg files. There you also found an script to generate a libreoffice breeze and breeze dark icon set. So if you are a fan of breeze dark take a look.

If you’d like to test the new icon set use the script from the repository or download the LibreOffice daily build for your operation system. Recommandation please in the comments or the breeze repository.

I have to thanks for all people how make icons, review, recommandations, help me with git, ….


Protocols Plugfest Europe 2015

Wed, 2015/05/20 - 4:06pm

Last week I had the pleasure of speaking at Protocols Plugfest Europe 2015.  It was really good to get out of the bubble of free software desktops where the community love makes it tempting to think we’re the most important thing in the world and experience the wider industry where of course we are only a small player.

This conferences, and its namesakes in the US, are sponsored by Microsoft among others and there’s obviously a decent amount of money in it, the venue is a professional conference venue and there’s a team of people making sure small but important details are taken care of like printed signposts to the venue.

What’s it all About?

In 2008 Microsoft lost an EU antitrust case because they had abused their monopoly position in operating systems.  This required them to document their file formats such as MS Office and protocols such as SMB.  This conference is part of that EU requirement meaning they have to work with anyone who wants to use their formats and protocols.  They have a website where you can file a request for information on any of their documents and protocols and everyone said they were very responsive in assigning engineers getting answers.

Since 2008 Microsoft have lost a lot of ground in new areas in the industry such as mobile and cloud.  Because they’re not the dominant player here they realise they have to use formats and protocols others can use too otherwise they lock themselves out.

The Talks

I spoke about Interoperability on the Linux Desktop which seemed well received, the reason Linux desktop hasn’t taken off is there are many other systems we need to interoperate with and many of them don’t want to interoperate with us. (Of course there are financial reasons too.) It was well received with many people thanking me for a good talk.

I went to talks by people working on Samba, LibreOffice and Kolab which all gave pleasing insight into how these project work and what they have to do to workaround complex proprietary protocols and formats.  LibreOffice explained how they work with OpenDocument, they add feature and for any feature added they submit a request for it to be added to the standard.  It’s a realistic best practice alternative.

I went to a bunch of Microsoft talks too about changes in their file formats, protocols and use of their cloud service Azure.

The inter-talks

It was great meeting some people from the free software and MS worlds at the conference.  I spoke to Christopher about how he had been hired to document SMB for MS, to Dan about taking over the world, to Miklos about LibreOffice and many others.  On the MS side I spoke to Tom about file formats, Darryl about working with Linux, to Jingyu about developing in MS.

I hope I won’t offend anyone to say that there’s a notable culture difference between the open source and the MS sides.  Open Source people really do dress scruffy and act socially awkward.  MS people reminded me of the bosses in Walter Mitty, strong handshakes, strong smiles and neat dress.

culture difference

One part of the culture that depressingly wasn’t difference was the gender ratio, there was only half a dozen women there and half of those were organising staff.

The Microsoft people seemed pretty pleased at how they were open and documented their protocols and formats, but it never occurred to them to use existing standards.  When I asked why they invented OOXML instread of using OpenDocument I was told it was “MS Office’s standard”.  When I asked if Skype protocols were open they seemed not to know.  It probably doesn’t come under the EU court requirements so it doesn’t interest them, but then all their talk of openness is for nothing.  When I suggested Skype should talk XMPP so we can use it with Telepathy I was given largely blank faces in return.

Talking to Samba people and OpenChange people about my opinion that their products should be stop gaps until a better open protocol can be used was met with the reasonable argument that in many cases there are no better open protocols.  Which is a shame.

I went into the MS testing lab to test some basic file sharing with Samba and reminded myself about the problems in Kubuntu and discovered some problems in Windows.  They had to turn off firewalls and twiddle permissions just to be able to share files, which was something I always thought Windows was very good at.  Even then it only worked with IP address and not browsing.  They had no idea why but the Samba dudes knew straight away that name browsing had been disabled a while ago and a DNS server was needed for that.  Interesting the MS interoperability staff aren’t great at their own protocols.


I had a great time in Zaragoza, only spoiled by travellers flu on the last day meaning I couldn’t go to the closing drinks.  It’s on the site of a 2008 world fair expo which feels like one of those legacy projects that get left to rot, 2008 wasn’t a great year to be trying to initiate legacy I think.  But the tapas was special and the vermut sweet.  The conference timetable was genius, first day starts at 9:00 next at 10:00 and final at 11:00.  The Zentyal staff who organised it was very friendly and they are doing incredible stuff reimplementing exchange.  It’s lovely to see MS want to talk to all of us but they’ve a way to go yet before they learn that interoperability should be about an even playing field not only on their terms.


facebooktwittergoogle_pluslinkedinby feather

KSysGuard: The Green Paper

Wed, 2015/05/20 - 1:20pm

This green paper summarizes user comments regarding needs and wishes for a new KSysGuard and presents a couple of mockups to initiate the discussion at the KDE forums.

Keep on reading: KSysGuard: The Green Paper

LaKademy 2015 – here we go!

Wed, 2015/05/20 - 2:10am

ArteLakademy2015Hi there,

Everything is ready for the 3rd edition of LaKademy – The KDE Latin America Summit \o/. The meeting will take place from 03-06 June, 2015, in Salvador, north-eastern Brazil. Besides of being the city where I live in :), it was the venue of the 1st Akademy-BR in 2010, when we began some efforts to create and then expand the culture of KDE hacking sprints in Brazil and, after, in Latin-America. Hence, we are now somewhat with that cosy feeling of returning to the grandma’s house for a portion of home-made cookies :). For this year, we decided on having only hacking sessions and quick meetings, rather than talks and/or introductory short-courses. We want to leverage contributions and have more things done during these four nice days of LaKademy 2015. We aren’t, by any means, alien to newcomers, though. The LaKademy 2015’s Call for Participation was already announced and everyone interested in knowing more about KDE contributions may join us at the hacking sessions, ask questions, get involved, and have fun.

For these four days, seven KDE contributors (and, hopefully, some visitors) will meet at the Information Technology Offices of the Federal University of Bahia. We are still settling the details of the program, but I would like to revisit some stuff I’ve done for KDevelop in the past, Filipe should keep working in Cantor enhancements, Lamarque in Plasma Network Manager, and Aracele in translation and promo stuff. As usual, we have also a promo meeting involving all participants where we set the plans for conquering the world with KDE :).

Keep tuned for upcoming news about LaKademy 2015 ! See you …

Updates to KDE Applications 15.04.1 , Frameworks 5.10 and other packages available

Mon, 2015/05/18 - 7:24pm

KDE's first update of its 15.04 series of Applications and Frameworks 5.10.0 are now available in Chakra. With this release kde-workspace has also been updated to version 4.11.19 and kdelibs and kdepim to 4.14.8. Have in mind that the applications that have been ported to Frameworks 5 will not be updated in the stable repositories but remain at their previous versions. The new versions of these packages are pushed into the [kde-next] repository which provides Plasma 5.

If you want to test Plasma 5 under Chakra, you can follow the instructions on the forum. Feel free to let us know of your comments and feedback on the related thread.

In addition, the following notable updates are now available with this move:
-digikam 4.10.0
-php 5.6.9
-sqlite3 3.8.9
-wine 1.7.43
-nvidia-settings for the 340xx and 304xx series of drivers have been added to the extra repository.

It should be safe to answer yes to any replacement question by Pacman. If in doubt or if you face another issue, please ask or report it on the related forum section.

As always, make sure your mirror is fully synced (at least for the core, desktop and platform repositories) before performing this update, by running the mirror-check application.

Target Reached!

Mon, 2015/05/18 - 1:35pm

On Sunday, we made the base target for our Kickstarter! Unless too many backers decide to cancel their pledges, funding for making Krita really, really fast and animation support is secure! Now, of course, is not the time to fold the hands and lean back: it would be a pity if we don’t manage to reach a handful or even more stretch goals!

But having reached this milestone, it’s time to make it easy to back the project through paypal:

You can chose your reward level in the comment, and from 15 euros you’ll get your stretch goal voting rights, of course!

Talking about stretch goals… Michael Abrahams surprised us all by submitting a patch on reviewboard that implemented most of the selection tools improvement stretch goal! Shift, alt, shift all, ctrl have been implemented for the polygonal, elliptical and rectangular selection tools. The rest is still todo!

To celebrate, there are new builds with that code included! These builds are slightly more experimental than, there are more code changes.

Other fixes:

  • The color picker cursor now shows the currently picked and previous color.
  • When using Krita with a translation active on windows, the delay on starting a stroke is a bit less, but we’re still working on eliminating that delay completely
  • We now can load layerstyles (with some limitations) from PSD files. Saving is coming next!
  • Layer styles can now be used with inherit-alpha
  • Fix some issues with finding templates
  • Work around an issue in the oxygen widget style that would crash the OpenGL-based canvas due to double initialization
  • Don’t toggle the layer options when right-clicking on a layer icon to get the context menu (patch by Victor Wåhlström)
  • Update the Window menu when a subwindow closes
  • Implement Pass-Through mode for group layers (note: filter, transform and transparency masks and pass-through mode don’t work together yet, but loading and saving from and to PSD does!
  • Load newer PSD-generated JPG files correctly by reading the resolution information from the TIFF tags as well. (Yes, JPG resolution is marked in the exiv metadata using TFF tags…)
  • Show the image name in the window menu if it hasn’t been saved yet.
  • Don’t crash when trying to apply isolate-layer on a transform mask
  • Add webp support (at least on Linux, untested on Windows)
  • Use the right Krita blending mode when a PSD image contains Color Burn.
  • Add Lighter Color and Darker Color blending modes and load them from PSD.
  • Add a shortcut to edit/paste into a new image. Patch by Tiffany!

Updated linux builds for OpenSUSE and Krita Lime for Ubuntu will become available soon.

Windows OSX

(Please keep in mind that these builds are unstable and experimental. Stuff is expected not to work. We make them so we know we’re not introducting build problems and to invite hackers to help us with Krita on OSX.)

Bitacora: impact mapping

Mon, 2015/05/18 - 1:00pm
This is the fourth of a series of articles about Bitacora. Please read the previous ones to get full context:
  1. The diary (aka bitácora): towards alignment in distributed environment.
  2. Bitacora: environment definition.
  3. Bitacora: personas 
Why Impact Mapping?
The steps taken so far are standard for me since long time ago. At this point though, depending on the nature of the product, I did not have a fixed procedure to follow until the creation of user stories. At some point I ended up creating use cases and relating them through mind maps.

A few months ago I read Impact Mapping, from Gojko Adzic, a reputed Agile consultant and writer. He proposes a method to go from business model to Epic/stories description that I found interesting. It fills my gap with a systematic approach using a tool I love, mind maps.

It also helps deprecating a common challenge with use cases. When you get dirty with them, it is easy to write many that are not key for the main goal of the tool. Once you have many of them, it might become tough to relate and prioritize them.

Gojko propose to get rid of use cases and go directly from impact mapping to describing the epics/user stories. I have not been able to do so. It might be that I am simply too hooked to use cases and it is only a matter of time before I follow exactly the new process. It can be also that impact mapping is rigid compared to use cases so you can only get rid of them in a second/third iteration of the impact mapping process...

In any case, for Bitacora I started with an impact mapping. Once it was mature enough, I started from scratch doing the use cases. My impact mapping ended up containing 75% percent of the use cases.... and already structured. I assume that, in a collaborative design process, this percentage will be greater. I assume also I can get better with practice. So I am confident to adopt Impact Mapping exclusively. I might loose some use cases but I gain structure. Relevant but at this point ignored use cases will probably pop up later in the design process or during development. Mistakes in the prioritization due to structure deficiencies has a bigger (negative) impact along the product life cycle.

What is an Impact Mapping?
Mr. Adzic describes in his book Impact Mapping as "a mind-map grown during a discussion facilitated by answering the following four questions: Why?, Who?, How?, What?"
  1. Why: centre of the map, represent the goal of our application. It should include the desired achievemnt based on a key metric.
  2. Who: first level of the mind map, it refers to actors who can influence the outcome. These are the personas. At this point of the process, it is not mandatory to describe them in detail
  3. How: second level of the mind map, it refers to impact we are trying to create on the actors, that is, how the product change their behaviours.
  4. What: third level of the mind map, it refers to the scope, that is, what can we do to achieve the desired impact. Depending on the dimension and complexity of your product/service, this third level will be close or far away from a user story. You can either extend the What section into sub-levels (product approach) or define epics (scrum of scrums). 
You can get further information and diagrams in the website I am still unsure about the direct relation between the What section and what engineers understand as a derivable. I prefer to reserve derivable as concept to a later stage (user stories) so they are analysed in detail by the product team, together with acceptance criteria. I find this arguable though.
Bitacora Impact mapping
Once you:
you should be able to understand the coming Bitacora Impact Map.

If not, I have probably done something wrong, which wouldn't surprise me :-) or you are not familiar with the problem to solve. Some of the ideas like "tag page" will be described in the user stories, so don't panic, we will get there.

Since these graphs has gone through several review processes, it might happen that the partial pics are not 100% up to date. The general impact map should be though.

Center and Level 1: Why? and Who?

The center lacks the quantitative goal. Since this is an ideal exercise, I will ignore it for now. We will go down to metrics and measuring impact at the very end.

At the end of the previous article, about personas, I wrote that for a introductory analysis, we could reduce them to 5. Since I went further, I considered groups and described personas for each group since we will use them at some point.

Level 2: How?
This is the second level that defines the impact for the product team members.

 This is the second level that defines the impact for the other personas.

 As you can see, the impact is described in the following areas:
  • Participation: the tool should promote an increase of interactions based on what each persona did.
  • Team/project follow up: bitacora should make following up a team or project activity easier.
  • Analysis: analize what the team is doing or has done should be easier with Bitacora. Self analysis is as important.
  • Report: Bitacora is designed to improve reporting in bothe, vertical and horizontal direction (matrix).
  • For Team Member, Bitacora should work as the central point for everyday (short term)  information.
Level 3: What?For a easier visualization I have divided this level in three different images. The first one correspond to Product Team:

This is the third level for the Scrum Master persona:

 And this is the third image, corresponding to the other three groups:

Complete Impact Map
Here you have the complete map.

You might be wondering what are the icons for.

I mentioned earlier that one of the advantages of using Impact mappings is the structure. As a consequence, you can start to assign priorities to the different scopes which is very useful before writing down the User stories. 


The result of this process should in general be features, but in certain circumstances, at this point it could also be processes. I used the "help" icon to reflect them. his concept is arguable. I am at this point unsure if it will survive the story description.

Series of articles
  1. The diary (aka bitácora): towards alignment in distributed environment.
  2. Bitacora: environment definition.
  3. Bitacora: personas
  4. Bitacora: impact mapping 
The following article will describe the use cases I worked with so you can compare both approaches.

Interview with Evgeniy Krivoshekov

Mon, 2015/05/18 - 8:00am


Could you tell us something about yourself?

Hi! My name is Evgeniy Krivoshekov, 27 years old, I’m from the far east of Russia, Khabarovsk. I’m an engineer but have worked as sales manager, storekeeper and web programmer. Now I’m a 3d-modeller! I like to draw, read books, comics and manga, to watch fantastic movies and cartoons and to ride my bicycle.

Do you paint professionally, as a hobby artist, or both?

I’m not a pro-artist yet. Drawing is my hobby now but I really want to become a full-time professional artist. I take commissions for drawings occasionally, but not all the time.

What genre(s) do you work in?

Fantasy, still life.

Whose work inspires you most — who are your role models as an artist?

Wah! So many artists who inspire me!

I think that I love not the artists but their works. For example: Peter Han’s drawings in traditional technique; Ilya Kuvshinov’s work in photoshop and with anime style; Dave Rapoza, who is an awesome artist who draws in traditional and digital technique with his own style and very detailed; Pascal Campion – his work is full of mood and motion and life! And all those artists who inspire me a little. I like many kinds of art: movies, cartoon, anime, manga and comics, music and all kinds of art inspire me,

How and when did you get to try digital painting for the first time?

Hmmmm… I’m not sure but I think that was in 2007 when my father bought our (my family’s) first computer for learning and studying. I was a student, my sister too, and we needed a computer. My first digital tablet was Genius, and the software was Adobe Photoshop CS2.

What makes you choose digital over traditional painting?

I don’t choose between digital and traditional drawing – I draw with digital and traditional techniques. I’ve been doing traditional drawing
since childhood but digital drawing I think I’m just starting to learn.

How did you find out about Krita?

I think it was when I started using Linux about 3-4 years ago. Or when I found out about the artist David Revoy and read about Krita on his website.

What was your first impression?

Ow – it was realy cool! Krita’s GUI is like Photoshop but the brushes are like brushes in Sai, wonderful smudge brushes! It was a very fast program and it was made for Linux. I was so happy!

What do you love about Krita?

Surprisingly freely configurable interface. I used to draw in MyPaint or GIMP, but it was not so easy and comfortable as in Krita. Awesome smudge brushes, dark theme, Russian support by programmer Dmitriy Kazakov. The wheel with brushes and the color wheel on right-click of the mouse – what a nice idea! The system of dockers.

What do you think needs improvement in Krita? Is there anything that really annoys you?

Managing very high resolution files, the stability and especially ANIMATION! I want to do cartoons, that’s why I want an animation toolkit in Krita. It will be so cool to draw cartoons in Krita as in TV Paint. But Krita is so powerful and free.

What sets Krita apart from the other tools that you use?

I use Blender, MyPaint, GIMP and Krita but I rarely mix them. MyPaint and GIMP I rarely use, only when I really need them. Blender and Krita are my favourite software. I think that I will soon start to combine them for mix-art: 3d-art+hand-drawing.

If you had to pick one favourite of all your work done in Krita so far, what would it be, and why?

I think Frog-rider, Sunny, detailed work with an interesting plot about the merchant on the frog. Funny and simple – everything I like.

What techniques and brushes did you use in it?

I used airbrush and circle standard brushes, basic wet brush, fill block and fill circle brushes, ink brush for sketching, my own texture brush and move tool. That’s all I need for drawing. As regards techniques… sometimes I draw by value, sometimes from a sketch with lines, sometimes black and white with colors underneath (layer blending mode) or with colors without shading – it depends on my mood of the moment,

Where can people see more of your work?

My daily traditional and digital pieces on Instagram. Some photos, but many more drawings. More art at DeviantArt and Artstation.

Anything else you’d like to share?

I just want to say that anyone can draw, it’s all a matter of practice!

Adding my blog to Planet KDE

Mon, 2015/05/18 - 4:58am

Hi folks! So this blog post is kinda a test post. I just git pushed the RSS feed from my blog to Planet KDE, KDE’s blog aggregator. Although I can see it in the git log here, I just want to make sure that my posts appear in real time on Planet KDE. If this doesn’t work, I would have to file a bug on Bugzilla, to get my blog added to Planet KDE.

Basic code completion for Rust in KDE's Kate (and later KDevelop)

Sun, 2015/05/17 - 10:45pm
KDE Project:

A few days ago the Rust community announced v1.0 of their new systems programming language, Rust. Having followed the project for some time and finally having used the language for a number of small projects this year, I've come to feel that using Rust is interesting, fun and productive. I'd like to highly encourage everyone to give it a look now that it's finally considered ready for prime time.

To aid the effort I've put some Sunday hacking time into a basic Rust code completion plugin for Kate today. It's built around Phil Dawes' very nifty Racer, freeing it up to concern itself only with exposing some configuration and getting data provided by Racer into Kate. Not difficult at all.

This is what it looks like in action:

The Rust code completion plugin for Kate


The plugin is very basic at the time of writing (which is minutes after getting things working, this Sunday is running out!). The mapping of completion match metadata to Kate's format (from fundamentals like the match type, to more complex features like smart grouping) can likely be improved still. Ditto for auto-completion behavior (i.e. defining the circumstances in which the completion popup will kick in automatically, as opposed towaiting for manual invocation) and simply performance.

The plugin also doesn't work in KDevelop 5 yet, although that one's on KDevelop -- it doesn't support the KTextEditor plugin type present in Frameworks 5 yet. I'm told the KDevelop team has addressing this on their agenda.

Syntax highlighting

Both KDE and Rust implement the AwesomeCommunity trait. The Rust community in particular maintains an official Kate syntax highlighting file here. The repository for the Kate plugin includes this as a submodule and installs it by default; if you'd like it not to do that, there's a build system toggle to disable it.

A MIME type for Rust source code

While the plugin will run for all *.rs files, Kate/KDevelop plugins and syntax highlighting files preferably identify documents by their MIME type. It turns out there isn't a MIME type for Rust source code in shared-mime-info yet, so I've started the process of getting one in.

Getting the plugin

The plugin is currently still hosted in a personal scratch repo of mine, on You can browse the source , or skip straight to this clone URL:


This location might change if/when the plugin is promoted to proper project status; I'll update the post should that happen.

I've included some install instructions that go over requirements, options and configuration. Note that you need a Rust source tree to get this working. Check them out!

Getting in touch

If you have any comments or requests and the blog won't do (say, you have a cool patch for me), you can find my mail address inside the AUTHORS file included in the repository. Signing up for's proper bug tracking and patch submission pathways is still pending :-).

Bitacora: personas

Sun, 2015/05/17 - 10:39am
This is the third of a series of articles about Bitacora. Please read the previous ones to get full context:
  1. The diary (aka bitácora): towards alignment in distributed environment.
  2. Bitacora: environment definition.

The environment description is incomplete without the personas. I like this concept for many reasons but the main one is because I get extremely annoyed by the use of the word user.

When designing a product/service, it is hard to agree on what a user is, specially in engineering environments. In marketing/product environments, in general is in the DNA of those involved in product design to differentiate buyers from consumers (users). Market segmentation is understood by default. In my experience, this is not always the case in engineering environments. 

I must admit that I do not use this concept every time since again, in my experience, engineers tend to show a high resistance to this concept, specially those who have direct contact to users, that is, those who work in open and collaborative environments. They tend to consider it mainly a simplification not of a representation.

We will assume there are 4 groups/roles involved in our scenario. Each group will be represented/formed by one or several personas. To label the groups, I will use names associated with roles you probably are familiar with, which is not a good practice since it limits their potential translation to a different scenarios. I do it so it becomes easier for you to identify them. The groups, based on its interaction with Bitacora are:
  1. Product team: professionals included in the team that will develop the product.
  2. Customer representative: professionals in charge of the requirements/backlog. Responsible for the product.
  3. Senior manager: professional in charge of the above groups.
  4. Supporting actors: people that interact with the team and are needed to develop/launch the product. They can be part of the company, the open source community that develops the technology the product is based upon or the sponsor.
If this blog series would try to reflect the Bitacora design process sequentially, the number of personas, even groups, should be lower, increasing them when necessary during the design or development process.

Product team

 I have considered 4 personas:
  •  Junior developer (jdev)
  • Senior Developer (sdev)
  • Artist (art)
  • Scrum master (smast)
Artist represent non-technical profiles technical teams might include like domain experts, communication experts, etc. At this stage, defining 4 personas is not the right thing to do. Two (scrum master and the rest) would have been enough. only when going into details, the four personas will make sense.

Customer representative

I have considered two personas:
  • Product owner (pdm)
  • Sponsor (spon)



Like in the previous case, one persona is enough for most of the bitacora design process.

Senior manager

I have considered a single persona, the engineering Vice President, which is the most common non-executive senior manager (EVP).

I have considered three personas:
  • Marketeer (mark)
  • FLOSS community member (cmem)
  • HR representative (hrep)

The Marketeer could also be any other professional within the company that interacts with the team. The FLOSS community member could also be an external consultant/domain expert contracted to help the team.

As in the previous cases, for most initial stages of the process we will follow, the first two personas could be considered as one. The third one has a very specific and limited role in this design, based on my experience, so it could be ignored or somehow included in the senior manager persona. I will refer to it in very few (but relevant) cases.

For a close follow up you might want to download the slides.

The cliparts has been taken from and If
As you can see, I have considered 11 personas, which is a lot at this point. But I started with 5 which must be considered the main ones:
  1. Engineer
  2. Scrum master
  3. Product owner
  4. EVP
  5. FLOSS community member.
So from now own I will refer to them by their names or roles. Based on your input and the process design development I might refine them.
Series of articles
  1. The diary (aka bitácora): towards alignment in distributed environment.
  2. Bitacora: environment definition.
  3. Bitacora: personas
The following one will describe the impact mapping. This section will be updated with the coming articles.