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

Coding and Gardening

Thu, 2018/03/22 - 11:42pm

Warning: metaphors ahead! May be inappropriate or stretched.

Reading through student proposals for Google Summer of Code yesterday, I took a break from sitting in front of a keyboard to get some gardening done. We've had a few windstorms since I last raked, and with spring beginning, a few weeds have been popping up as well.

One of the issues I've been reminding almost every student about is unit testing. The other is documentation. These are practices which are seen as not fun, not creative.

Raking isn't seen as fun or creative either! Nor is hunting and digging the wily dandelion. But I rake away the dead branches and fir cones, and snag those dandelions because later in the season, my healthy vegetables and beautiful flowers not only flourish without weeds, but look better without litter around them. In addition, we chop up the branches and cones, and use that as mulch, which saves water and keeps down weeds. The dandelions go into the compost pile and rot into richer soil to help transplants be healthy. In other words, the work I do now pays off in the future.

The same is true of writing unit tests, commenting your code, and keeping good notes for user documentation as well! These are habits to build, not onerous tasks to be put off for tomorrow. Your unit tests will serve you well as long as your code runs anywhere. The same is true of your commented code. And finally if you code is user-facing, user documentation is what lets people use it!

So students, please remember to put those necessary bits into your proposal. This along with good communication with your mentor and the entire team are absolutely crucial for a successful project, so bake these into your plans.

Kraft out of KDE

Thu, 2018/03/22 - 7:41pm

Following my last blog about Krafts upcoming release 0.80 I got a lot of positive reactions.

There was one reaction however, that puzzles me a bit and I want to share my thoughts here. It is about a comment about my announcement that I prefer to continue to develop Kraft on Github. The commenter reminded my friendly that there is still Kraft code on KDE infrastructure, and that switching to a different repository might waste peoples time when they work with the KDE repo.

That is a fair statement, of course I don’t want to waste peoples time. What sounds a bit strange to me is the second paragraph, that says that if I decide to stay with Github, I should let KDE people know that I wish Kraft to not be a KDE project anymore.

But … I never felt that Kraft should not be a KDE project any more.

A little History

Kraft has come a long way together with KDE. I started Kraft in (probably) 2004, gave a talk about Kraft at the Akademy Dublin 2006, maintained it with the best effort I could contribute until today. There is a small but loyal community around Kraft.

During all the time I got little substancial contribution to the code directly, with the exception of one cool developer who got interested for some time and made some very interesting contributions.

When I asked a for the subdomain long time ago I got the reply that it is not in the interest of KDE to give every little project a subdomain. As a result I reserved and run it since then, happily showing a “Part of the KDE family” logo on it.

Beside the indirect contributions to libraries that Kraft uses, I shipped Kraft with the translations made by the KDE i18n team, for which I always was very grateful. Otherwise I got no other services from KDE.

Why Github?

Githubs workflow serves me well in my day job, and since I have only little time for Kraft, I like to use the tools that I know best and give me the most efficiency.

I know that Github is not free software and I am sceptical about that. But Github also does not lock in, as we still are on git. We all know the arguments that usually come on the table at this point, so I am not elaborating here. One thing I want to mention though is that since I moved to Github publically I already got two little pull requests with code contributions. That is a lot compared to what came in the last twelfe years when living on KDE infrastructure only.


Kraft is a small project, driven by me alone. My development turnaround is good with Github as I am used to it. Even if no KDE developer would ever look at Github (which I know is not true) I have to say with heavy heart that Kraft would not take big harm by leaving KDEs infra, based on the experience of the last 12 years.

If the KDE translation teams do not want to work with Github, I am fine to accept that, and wonder if there could be a solution rather than switching to Transifex.

One point however I like to make very clear: I did not wish to leave KDE, nor aimed to move Kraft out.
I still have friends in the KDE community, I am still very interested in free software on desktop and elsewhere, and my opinion is still that KDE is the best around.

If the KDE community feels that Kraft must not be a KDE project any longer because it is on Github, ok. I asked KDE Sysadmins to remove Kraft from the KDE git, and it is already done.

Kraft now lifes on on Github.

Krita 4.0.0 Released!

Thu, 2018/03/22 - 10:02am

Today we’re releasing Krita 4.0! A major release with major new features and improvements: improved vector tools, SVG support, a new text tool, Python scripting and much, much, much more!

The new splash screen for Krita 4.0, created by Tyson Tan, shows Kiki among the plum blossoms. We had wanted to release Krita 4 last year already, but trials and tribulations caused considerable delays. But, like the plum blossoms that often bloom most vibrantly when it’s coldest, we have overcome, and Krita 4 is now ready!


We’ve again created a long, long page with all the details of everything that’s new and improved in Krita 4.

See the full release notes with all changes!

We already mentioned SVG support, a new text tool and Python scripting, so here are some other highlights:

  • Masked brushes: add a mask to your brush tip for a more lively effect. This opens up some really cool possibilities!

  • New brush presets! We overhauled the entire brush set for Krita 4. Brush presets are now packaged as a bundle, too. And Krita 3’s brush set is available as well, it’s just disabled by default.

Known issues

Krita 4 is a huge step for the Krita project, as big as, if not bigger than the 3.0 release. There are some known issues and caveats:

  • Krita 4 uses SVG for vector layers. This means that Krita 3 files with vector layers may not be loaded entirely correctly. Keep backups!
  • Krita 4’s new text tool is still limited compared to what we wanted to implement. We focused on creating a reliable base and making the text tool work reliably for just one, simple use-case: creating text for comic book balloons, and we’ll continue working on improving and extending the text tool.
  • We have a new binary build factory for Windows and Linux. Unfortunately, we don’t have 32 bits Windows builds at this point in time.
  • Because macOS has a very low limit on shared memory segments, G’Mic cannot work on macOS at the moment.
  • The Reference Images Docker has been removed. It was too easy to crash it if invalid image files where present. In Krita 4.1 it will be replaced by a new reference images tool.
Download Windows

Note for Windows users: if you encounter crashes, please follow these instructions to use the debug symbols so we can figure out where Krita crashes.

At this moment, we do not have 32 bits Windows builds available.

Note that on Windows 7 and 8 you need to install the Universal C Runtime separately to enable Python scripting. See the manual.


At the moment, the appimage does not have working translations.

(If, for some reason, Firefox thinks it needs to load this as text: to download, right-click on the link.)

You can also use the Krita Lime PPA to install Krita 4.0.0 on Ubuntu and derivatives. We are working on an updated snap.


Note: the gmic-qt and python plugins are not available on macOS.

Source code md5sums

For all downloads:


The Linux appimage and the source tarball are signed. You can retrieve the public key over https here:
. The signatures are here.

Support Krita

Krita is a free and open source project. Please consider supporting the project with donations or by buying training videos or the artbook! With your support, we can keep the core team working on Krita full-time.

Artwork by Ramon Miranda

KDSoap 1.7.0 is released

Wed, 2018/03/21 - 2:23pm

kdsoap128KDSoap is a tool for creating client applications for web services without the need for any further component such as a dedicated web server.

KDSoap lets you interact with applications which have APIs that can be exported as SOAP objects. The web service then provides a machine-accessible interface to its functionality via HTTP.

Changes in 1.7.0 General
  • Qt 5.9.0 support (compilation fix due to qt_qhash_seed being removed, unittest fix due to QNetworkReply error code difference)
  • Fix unwanted generation of SoapAction header when it should be empty (SOAP-135).
  • Abort the connection when destroying a job with a pending call (SOAP-138).
WSDL parser / code generator changes, applying to both client and server side
  • Add support for body namespace specification in RPC calls.
  • Fix namespace handling in typename comparison for optional element used inside itself (github issue #83).
  • Add missing include in generated header, when an operation's return value needs one (ex: QDate) (github issue #110).
  • Fix namespace handling in restriction and extension tags
  • Fix wrong indentation of "};" for classes inside namespaces
  • You can see the changelog here.
  • The source code can be found on GitHub here.
  • Tarballs and zipballs are available here.
  • Prebuilt packages for some popular Linux distributions can be found here  (use the qt5-kdsoap packages unless you are still on Qt4).
  • We also provide Homebrew recipes (Qt4 and Qt5 based versions) for the Mac folks.
  • If you use KDAB Commercial you'll need to wait a few days for the download area to be updated.

continue reading

The post KDSoap 1.7.0 is released appeared first on KDAB.

Qt Champions 2017

Wed, 2018/03/21 - 12:30pm

Qt Champions

It’s time to share who the Qt Champions for 2017 are!

As always, all the nominees were incredible people. It is hard to decide who is most worthy of the Qt Champion title. I asked for help from our lifetime Qt Champion Samuel Gaist, and together we faced the tough decision.

And without further ado, here are the new Qt Champions:

@mrjj and @kshegunov have been granted the Community Builder title. Beside answering questions on the forum @mrjj is always ready to try or build test applications in order to help fellow members to solved their problem. @kshegunov‘s deep C++ knowledge and insightful comments are always appreciated for moving the debate further.

@dheerendra is this year’s Ambassador for all the work he is doing in India that promotes the use of Qt through local meetups, training and also the forum.

@marco_piccolino gets the Content Creator reward. Outside of being the driving force behind the qtmob slack channel, Marco is also the author of the Qt 5 Projects book.

@aha_1980 is the 2017 QA Champion. While being present on the forum he’s also very active on the bug reporting front helping on triaging, improving the reports and fixing these nasty bugs especially on the QtSerialBus module.

The Developer title goes to @orgads. His work on Qt’s internal might not be visible to the outside but his gerrit record speaks loudly. Between his own patches and reviews, his helpfulness and friendly nature is praised by his peers.

Our Maverick Of The Year is @benlau ! Ben provides numerous helper libraries covering interesting aspects like promises handling for QML and C++, custom Android components and more.

Thank you everyone for your involvement in Qt, you make the community a better place for everyone!

And congratulations to all the Qt Champions!

The post Qt Champions 2017 appeared first on Qt Blog.

Guest post: The Importance of QA

Wed, 2018/03/21 - 6:01am

Today we have a guest post from Buovjaga, our friendly local QA evangelist for LibreOffice, KDE, Inkscape, Firefox and Thunderbird. Without further ado, I’d like to present…

The Importance of QA

With this post I hope to convince you that a strong quality assurance team can do miraculous things for a free software project.

The spectrum of QA is wide, and reducing the skill requirements is particularly relevant for KDE’s onboarding initiative.

The critical phase of onboarding a new contributor is the first contact. Sometimes the new person does not know what they want to do. Often you do not have a clear picture of what skills they have. You need to act fast or they will lose interest and disappear! This is the moment where you should hand them snacks: a query of bugs that need to be confirmed or re-confirmed. This is the lowest threshold for them to step across and into being a contributor, because:

  • They do not need to learn version control
  • They do not need to learn the patch submission processes
  • They do not need to be wordsmiths
  • They do not need to know interface design or how to draw pretty pictures
  • They should not even need to know how to use the features they are testing, because a valid bug report includes clear steps on what to do!

QA is highly important in itself, but it is also a gateway drug. A simplified story of the evolution of a contributor might be as follows:

  1. They work on something meaningful
  2. They get familiar with the structure of the project
  3. They discover their own potential and the multitude of things they can help with

Not only does this evolution flow naturally through the QA team, but the experienced members are in a unique position to speed it up. This is because QA in the course of its work typically has to ferret out information from all the other teams. This leads to QA

  1. Knowing who the subject-matter experts are
  2. Discovering weak points in the organisation
  3. Helping the various teams stay in sync with each other

In this aspect QA is acting like neurotransmitters in the body of the project.

The most apparent beneficial effect of having a strong QA team is that the developers are not distracted by massive amounts of first-stage bug analysis.

Raatajat_rahanalaiset.JPGPrimitive development team working in the bug tracker without the luxury of a QA team

In QA, too many cooks do not spoil the broth. A large and diverse team is more effective than a small one when trying to keep up with a myriad of software and hardware configurations.
A large teams allows the freedom for members to level up their skills. The more experience on advanced triaging techniques the members have, the less work developers have to spend per bug fix.

There is a long road ahead for KDE to reach a healthy state regarding QA. Recruit contributors early and often. Aim for a feedback loop of recruiting, where even fresh contributors brainstorm to come up with ways to find new people.

I invite everyone to go through these articles and improve them:

I also recommend KDE to look into making it easy for QA to perform git bisects for pinpointing regressions. Perhaps this could be achieved by offering compressed repositories containing binary snapshots for every single commit in a project like LibreOffice does.

Unsetting QT_QPA_PLATFORM environment variable by default

Wed, 2018/03/21 - 5:52am

Since the introduction of the Plasma/Wayland session we set the QT_QPA_PLATFORM variable to wayland by default. After a long and hard discussion we decided to no longer do this with Plasma 5.13. This was a hard decision and unliked by everyone involved.

The environment variable forced Qt applications to use the wayland QPA platform plugin. This showed a problem which is difficult to address: if Qt does not have the wayland QPA platform plugin the application just doesn’t start. If you start through the console, the application will tell you:

This application failed to start because it could not find or load the Qt platform plugin "wayland" in "". Available platform plugins are: minimal, xcb. Reinstalling the application may fix this problem. Aborted (core dumped)

That is not really a useful information and does not tell the user what to do. Neither does it tell the user where the actual problem is and how to solve it. As mentioned when using a graphical launcher it’s worse as the app just doesn’t start without any feedback.

But how can it happen that the qpa platform plugin is missing although Plasma itself happily uses it? The problem is that application installed outside of the system bundle their own Qt and Qt does not (yet) include QtWayland QPA platform plugin. This affects proprietary applications, FLOSS applications bundled as appimages, FLOSS applications bundled as flatpaks and not distributed by KDE and even the Qt installer itself. In my opinion this is a showstopper for running a Wayland session.

The best solution is for Qt including the QPA platform plugin and having a proper auto-detection based on XDG_SESSION_TYPE. The situation will improve with Qt 5.11, but it doesn’t really help as the Qt LTS versions will continue to face the problem.

For now we implemented a change in Plasma 5.13 so that we don’t need to set the env variable any more. Plasma is able to select the appropriate platform plugin based on XDG_SESSION_TYPE environment variable. Non-Plasma processes will use the default platform plugin. With Qt < 5.11 this is xcb, with Qt 5.11 this will most likely change to wayland. KDE’s flatpak applications pick Wayland by default in a Wayland session and are unaffected by the change.

What is really sad about the change is that the Wayland qpa platform plugin gets less testing now. So we would like to ask our users to continue testing application with the Wayland platform plugin by setting the env variable manually or specifying –platform wayland when starting an application.

Cutelyst 2 released with HTTP/2 support

Tue, 2018/03/20 - 7:51pm

Cutelyst the Qt/C++ web framework just got a major release update, around one and half year ago Cutelyst v1 got the first release with a stable API/ABI, many improvements where made during this period but now it was time to clean up the mistakes and give room for new features.

Porting applications to v2 is mostly a breeze, since most API changes were done on the Engine class replacing 1 with 2 and recompiling should be enough on most cases, at least this was the case for CMlyst, Stickyst and my personal applications.

Due cleanup Cutelyst Core module got a size reduction, and WSGI module increased a bit due the new HTTP/2 parser. Windows MSVC was finally able to build and test all modules.

WSGI module now defaults to using our custom EPoll event loop (can be switched back to Qt’s default one with an environment variable), this allows for a steady performance without degradation when an increased number of simultaneous connections is made.

Validators plugins by Matthias got their share of improvements and a new password quality validator was added, plus manual pages for the tools.

The HTTP/2 parser adds more value to our framework, it’s binary nature makes it very easy to implement, in two days most of it was already working but HTTP/2 comes with a dependency, called HPACK which has it’s own RFC. HPACK is the header compression mechanism created for HTTP/2 because gzip compression as used in SPDY had security issues when on HTTPS called CRIME .

The problem is that HPACK is not very trivial to implement and it took many hours and made KCalc my best friend when converting hex to binary to decimal and what not…

Cutelyst HTTP/2 parser passes all tests of a tool named h2spec, using h2load it even showed more requests per second than HTTP/1 but it’s complicated to benchmark this two different protocols specially with different load tools.

Upgrading from HTTP/1.1 is supported with a switch, as well as enabling H2 on HTTPS using the ALPN negotiation (which is the only option browsers support), H2C or HTTP/2 in clear text is also supported but it’s only useful if the client can connect with previous knowledge.

If you know HTTP/2 your question is: “Does it support server push?”. No it doesn’t at the moment, SERVER_PUSH is a feature that allows the server to send CSS, Javascript without the browser asking for it, so it can avoid the request the browser would do, however this feature isn’t magical, it won’t make slow websites super fast , it’s also hard to do right, and each browser has it’s own complicated issues with this feature.

I strongly recommend reading this .

This does not mean SERVER_PUSH won’t be implemented, quite the opposite, due the need to implement it properly I want more time to study the RFC and browsers behavior so that I can provide a good API.

I have also done some last minute performance improvements with the help of KDAB Hotspot/perf, and I must say that the days of profiling with weird/huge perf command line options are gone, awesome tool!

Get it!

If you like it please give us a star on GitHub!

Have fun!

Qt Quick without a GPU: i.MX6 ULL

Tue, 2018/03/20 - 1:31pm


With the introduction of the Qt Quick software renderer it became possible to use Qt Quick on devices without a GPU. We investigated how viable this option is on a lower end device, particularly the NXP i.MX6 ULL. It turns out that with some (partially not yet integrated) patches developed by KDAB and The Qt Company, the performance is very competitive. Even smooth video playback (with at least half-size VGA resolution) can be done by using the PXP engine on the i.MX6 ULL.

continue reading

The post Qt Quick without a GPU: i.MX6 ULL appeared first on KDAB.

KDE Connect – State of the union

Tue, 2018/03/20 - 1:23am

Hey there!

We haven’t blogged about KDE Connect in a long time, but that doesn’t mean that we’ve been lazy. Some new people have joined the project and together we have implemented some exciting features. Our last post was about version 1.0, but recently we released version 1.8 of the Android app and 1.2.1 of the desktop component some time ago, which we did not blog about yet. Until now!

We got some fancy new features in place:

Remote Keyboard plugin

I think most of us can agree that typing long texts on the phone sucks compared to typing on a proper keyboard. Before, you could type your text on the desktop and copy & paste it to your phone using our clipboard sync. Now we got an even fancier method: our new Remote Keyboard plugin.
Before using it you need to enable the KDE Connect Remote Keyboard in your phones settings.


Whenever you are confronted with a text input field you can switch to the KDE Connect Remote Keyboard. Then you open up the Plasmoid, click the input field and start typing.


Big thanks to Holger Kaelberer for implementing this!


Reply to Whatsapp and others

Previously you only could reply to SMS, but not other IM apps like Whatsapp. We are pleased to announce that we were able to enable replying for several other messaging apps that support Androids quick rely, including Whatsapp. Please note that it is not within our control which apps are supported and which not.
Big thanks to Julian Wolff for implementing this!


Notification icons

On Android, most notifications have some kind of icon, like a contact picture for messaging apps or album art for media player notifications. KDE Connect now forwards those and displays them on the desktop and inside the Plasmoid.


Runtime permissions

Android Marshmallow introduced a new permission system, giving the users fine-grained control about their apps. To support this new system each plugin got a set of required and optinal permissions assigned. If a required permission has not been granted the respective plugin won’t be loaded. If an optional permission has not been granted the plugin will be loaded with reduced features.


Direct share

Android Marshmallow also introduced Direct Share. Using this we enabled you to send files or urls to your desktop without opening KDE Connect.
Screenshot_20180316-213838__01 (1)


Plasmoid redesign

Our Plasmoid got some love




Choose ringtone for Find-my-Phone

A small but requested feature is selecting a ringtone for Find-my-Phone.


Blacklist numbers

You are now able to blacklist numbers so that calls and SMS are not forwarded to the desktop. This is especially useful when you are using two-factor-authentification with your phone so it won’t get leaked to the desktop.

Those features were implemented by me.


Media controller overhaul

Matthijs Tijink has been working really hard on improving the media controller plugin. It now displays the album cover art and a media control notification as well as other polish. Make sure to check out his blog.







URL handler

Aleix Pol has implemented an URL handler that enables you to trigger phone calls for example by clicking a tel:// url in your browser.


Additionally we have fixed loads of bugs, crashes and papercuts and made many under-the-hood improvements.

There is also a lot going on in related KDE software. Friedrich Kossebau is working on bringing MPRIS support to Gwenview and Okular, enabling controlling slideshows and presentations from KDE Connect. Furthermore we fixed some issues in the MPRIS implementation of Plasma Browser Integration and Elisa (the next-gen KDE music player).
Speaking of Plasma Browser Integration: In case you haven’t, make sure to check out this awesome project which integrates neatly with KDE Connect, enabling you for example to control Youtube videos or Netflix from your phone or to send browser tabs to your phone. Thanks Kai Uwe Broulik for this awesome project!

But this is not the end. We got some more features in the pipeline and this week the core developers are meeting for a sprint to discuss the future of KDE Connect. Some weeks ago we asked people on Reddit which features they like to see and got a ton of valuable feedback. We’ll discuss it and let you know which of them are feasible.

If you are as excited about KDE Connect as we are we would love to see you join our development team. Make sure to subscribe to and ask for help at our mailing list. If you can’t contribute in a technical way but still want to support us consider donating to KDE. Your donations enable us to meet in person and work more closely on KDE Connect and other KDE Software.


KDE Applications 18.04 branches created

Mon, 2018/03/19 - 10:23pm

Make sure you commit anything you want to end up in the KDE Applications 18.04 release to them :)

We're already past the dependency freeze.

The Freeze and Beta is this Thursday 22 of March.

More interesting dates
April 5: KDE Applications 18.04 RC (18.03.90) Tagging and Release
April 12: KDE Applications 18.04 Tagging
April 19: KDE Applications 18.04 Release

WireGuard in Google Summer of Code

Mon, 2018/03/19 - 2:55pm

WireGuard is participating in Google Summer of Code 2018. If you're a student — bachelors, masters, PhD, or otherwise — who would like to be funded this summer for writing interesting kernel code, studying cryptography, building networks, making mobile apps, contributing to the larger open source ecosystem, doing web development, writing documentation, or working on a wide variety of interesting problems, then this may be appealing. You'll be mentored by world-class experts, and the summer will certainly boost your skills. Details are on this page — simply contact the WireGuard team to get a proposal into the pipeline.

KMyMoney 5.0.1 released

Mon, 2018/03/19 - 1:38pm

The KMyMoney development team is proud to present the first maintenance version 5.0.1 of its open source Personal Finance Manager. Although several members of the development team had been using the new version 5.0.0 in production for some time, a

Interview with Jennifer

Mon, 2018/03/19 - 8:00am
Could you tell us something about yourself?

I’m almost 35 years old, from a city called Passo Fundo, state of Rio Grande do Sul, Brazil. I like cats, cartoons and rock and roll. 1994 was the year when I started to have some interest in drawing. I looked for learning how to draw just for fun and sometimes to let my soul talk. But I can say that the digital art that I started practicing last year has helped me get rid of a recent depression.

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

As a hobby. At least for now.

What genre(s) do you work in?

I usually draw cartoons. But I also like painting nature and fantasy elements.

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

Most times when I draw, I don’t look up to a specific artist. I search random images on internet or the painting comes from my own mind. I think any kind of art should come from the artist’s inner soul.

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

It occurred last year, in May, I guess. I had no job but I had a nasty depression. Then my husband said he would like to learn how to draw and start work with that. It was when I started to draw again. Yes, I had stopped drawing, limiting myself to draw just when I had nothing more to do. Then we got an online course from Ivan Quirino and here I am, less than an year later, doing all kinds of digital painting.

What makes you choose digital over traditional painting?

The practicality. It is really hard when you do something wrong drawing at the traditional way. In digital painting, you can redo as many times as necessary.

How did you find out about Krita?

At Youtube or at some blog. I can’t tell for sure.

What was your first impression?

When I used Krita for the first time I already knew most of the tools, so it was easy to use. But I needed to learn more, then I watched a video that explained the basic tools and method to paint. I thought then that Krita was a good tool for painting. Today I can tell it’s a great tool for digital artists. My personal opinion: Krita is the best and I really can’t use a different program.

What do you love about Krita?

The quick access to the tools I need. The ease to work with it. I like so much of that function that allows you to paint just the line art. It’s awesome.

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

Nothing! As I said before: I really enjoy work with Krita and I recommend it to anyone who is choosing this path of digital art.

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

The brushes, the way Krita works with layers (for example: if you have a line on the top layer and you paint a background on the layer below, you won’t paint over what is drawn on the top layer). I don’t know about the functionality of all painting software, but I think this is pretty cool.

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

I like my latest work. At the time I made the work, I hadn’t thought about a name yet. But looking at it now, I could call it “The peace of the mermaid”. I think it fits well.

What techniques and brushes did you use in it?

Well, I’m not good with names of techniques, but I used the default brushes and some of those by David Revoy (airbrush, fill brush, wet brushes, some ink for the little details, some customized brush “LJF water brush 3”). I also used effect layers. So I started with the water base, just filling the area with blue and white tones. Then I painted the sky, mixing tones of blue with white. The sun was made with an airbrush, mixing yellow and white. After that, I used the customized brush to do the details of the water. Always mixing the colors to get the vision that I was looking for. Then I painted the blocks of sand, leaving the details, done with “splat_texture – Marcas”, for the end. At this point, I could start drawing the mermaid. Started by doing a shadow mermaid. After that, I put the colors, lights and shadows and the details. The effect layers were used to get more luminance on a specific element (In Portuguese: Luz viva – used on the mermaid and the starfish -, Luz suave – used to get the luminance on the full scene – , Desvio linear – to get the effect on the water light).

Where can people see more of your work?

For the moment I have:
Facebook page:

Anything else you’d like to share?

I just wanted to thank the people that work to improve Krita, an amazing box of tools for digital painting!

Akademy-es 2018 in Valencia - 11-13 May

Sun, 2018/03/18 - 11:14pm

This years Akademy-es will be happening in Valencia from 11 to 13 of May. The call for papers is still open so if speak Spanish and have something interesting to share with your fellow KDE people send a talk :)

We'll open registration shortly, be sure to attend and say hi!

This week in Usability & Productivity, part 10

Sun, 2018/03/18 - 5:19am

Christmas came early this week! Today’s Usability & Productivity status is jam-packed with awesome stuff that I think you’re all really gonna love.

There’s all the awesome work on Discover, but it doesn’t stop there:

New Features
  • Dolphin now helps you install Konsole if it’s not installed when you open the Terminal pane (KDE bug 371822, implemented in KDE Applications 18.04.0, authored by Roman Inflianskas):
  • Dolphin now lets you find a symlink’s target file or folder (KDE bug 215069, implemented in KDE Applications 18.04.0, authored by Roman Inflianskas):
  • Gwenview’s slideshow feature can now be controlled via any MPRIS-compatible playback controller, such as the Media Playback widget, KDE Connect, and laptop keyboards’ media keys (KDE Phabricator revision D10972, implemented in KDE Plasma 5.13.0 and KDE Applications 18.04.0, authored by Friedrich Kossebau). Read more about it here!
  • By default for new installations, windows can now be tiled to any edge of the screen using the Meta+arrow key shortcuts, and can be maximized and minimized with Meta+PageUp/PageDown (KDE Phabricator Revision D11377, implemented in KDE Plasma 5.13.0, authored by me, Nate Graham)
  • Fixed a bug in Gwenview causing image view’s touchpad scrolling to be uncontrollably sensitive when the scroll behavior is set to “Browse” (KDE bug 388353, fixed in KDE Applications 18.04.0, authored by Huon Imberger)
  • Fixed a bug in Gwenview causing the “Disable History” feature to not work (KDE bugs 332853 and 391527, fixed in KDE Applications 18.04.0, authored by Peter Mühlenpfordt)
  • Fixed a bug in Plasma causing fonts to be rendered in an ugly and pixellated manner when using a non-integer scale factor (e.g. 1.3x) and PLASMA_USE_QT_SCALING=1 (KDE bugs 391691 and 384031, fixed in KDE Frameworks 5.45, authored by me, Nate Graham):
    Plasma looking awesome with a 1.3x scale factor
  • Fixed a bug regarding how fonts were rendered in KDE software that uses QTQuickControls controls (such as all Kirigami apps, for example) that was causing text to appear slightly too light and wispy at non-HiDPI and integer HiDPI scale factors (KDE bug 391780, fixed in KDE Frameworks 5.45, authored by me, Nate Graham):
    Top: before. Bottom: after!
  • Fixed a bug in Konsole causing custom tab titles to be reset when changing profile options (KDE bug 354403, fixed in KDE Applications 18.04.0, authored by Ahmad Samir)
UI polish & improvements
  • The notifications widget now has a visible button to clear notifications (KDE bug 386068, fixed in Plasma 5.13.0, authored by Christian Fuchs):
  • The Audio Volume widget now presents a simplified display for the common use cases of one input and one output device and no apps recording audio (KDE Phabricator revision D11166, fixed in KDE Plasma 5.13.0, Authored by me, Nate Graham)
  • Plasma Folder View (AKA desktop icons) now provides a little bit more horizontal space for file and folder names (KDE Phabricator revision D11358, fixed in KDE Plasma 5.13.0, authored by me, Nate Graham)
  • To present a cleaner UI, Konsole now defaults to only showing the tab bar when there are multiple tabs (KDE Phabricator revision D11258, fixed in Konsole 18.04.0, authored by Kai Uwe Broulik):

    It looks even better still with a global menu or the menu in a titlebar button:
  • Gwenview’s middle-click-to-zoom feature now zooms into the mouse cursor’s position, rather then the center of the image (KDE bug 308335, fixed in KDE Applications 18.04.0, authored by Peter Mühlenpfordt)
  • Gwenview’s advanced crop settings are now always displayed in the same order (KDE bug 391758, fixed in KDE Applications 18.04.0, authored by Gregory Legrain)

Finally, A notorious and longstanding bug has been fixed! The bug was this: in KDE environments where KWallet had not been set up (such as live sessions and barebones/DIY-style distros like Arch), you would be prompted for your password twice when connecting to a password-protected wifi network. This turned out to be a bug not in KDE software, but rather in the upstream FreeDesktop networkmanager software. It’s now been fixed as of networkmanager 1.10.6. If your distro doesn’t have that yet, please ask them to update or backport the fix.

Pretty awesome stuff, huh? Well there’s even more coming! We’re committed to making KDE Plasma the finest computing environment on planet earth, and I hope this kind of progress demonstrates the depth of that commitment. Want to hop on board and become a part of something big? Consider becoming a KDE contributor, particularly in development!

If my efforts to perform, guide, and document this work seem useful and you’d like to see more of them, then consider becoming a patron on Patreon, LiberaPay, or PayPal.

Become a patron Donate using Liberapay donate with PayPal

About Campus Party + 20 years of OSI

Sat, 2018/03/17 - 2:17am

Hello Guys, My life since 2018 started is going on like crazy. I'm trying to get my bachelor degree this year, a lot of events to attend, Atelier and AtCore needing love and a lot of work... And more than a month later I'm going to report what happened at the 11th edition of Campus... Continue Reading →

This week in Discover, part 10

Fri, 2018/03/16 - 11:14pm

This week saw many positive changes for Discover, and I feel that it’s really coming into its own. Discover rumbles inexorably along toward the finish line of becoming the most-loved Linux app store! Take a look at this week’s improvements:

New Features
  • Discover can now sort apps by last release date in the browse lists and search results (KDE bug 391668, implemented in KDE Plasma 5.13, authored by Aleix Pol)
  • Fixed a bug that could cause Flatpak apps to stop being available (KDE bug 391126, fixed in KDE Plasma 5.12.4, authored by Aleix Pol)
  • Fixed a bug that could cause Discover to fail to download Plasma or Application addons (KDE bug 390236, fixed in KDE Plasma 5.12.4, authored by Aleix Pol)
  • Fixed a bug causing Plasma and Application addons to not display large screenshots (KDE bug 391190, fixed in KDE Plasma 5.13.0, authored by Aleix Pol)
  • Fixed a bug that could cause Discover to not open properly when invoked from from its context menu’s “Updates” item (KDE bug 391801, Fixed in KDE Plasma 5.12.4, authored by Aleix Pol)
  • Fixed a bug causing Addons to not be sorted by release data correctly (KDE bug D11387, fixed in KDE Plasma 5.13.0, authored by Dan Leinir))
  • Fixed a bug causing all Addon screenshots to be inappropriately rendered as square (KDE bug 391792, fixed right now, authored by Dan Leinir):
UI polish & improvements
  • On the Updates page, the selection text can no longer overlap with the Update button (KDE bug 391632, fixed in KDE Plasma 5.13.0, authored by me, Nate Graham):
  • Increased the width of the “Add Source” dialog, so the URL is less likely to get cut off (KDE Phabricator revision D11219, fixed in KDE Plasma 5.13, authored by me, Nate Graham):
  • Discover now uses a more intuitive and obvious UI for choosing which source to install an app from (KDE bug 390464, fixed in KDE Plasma 5.13, authored by Aleix Pol):

    (We’re aware of the visual papercuts in the above screenshot, and will be working to resolve them in the coming days and weeks)
  • Improved the app page by removing the redundant second copy of the app’s name (KDE Phabricator revision D11364, fixed in KDE Plasma 5.13.0, authored by me, Nate Graham) and fixed the top padding (KDE Phabricator revision D11362, fixed in KDE Frameworks 5.45, authored by me, Nate Graham):
  • Discover now shows a more obvious and less transient page when asked to open an invalid appstream://URL (KDE bug 391756, fixed in KDE Plasma 5.13, authored by Aleix Pol):

Just take a look at these screenshots! Isn’t discover looking really good these days? We’ve chewed through most of our backlog of architectural issues and are working hard on adding much-requested features and polishing the UI.

If my efforts to do, guide, and document this work seem useful and you’d like to see more of them, then consider becoming a patron on Patreon, LiberaPay, or PayPal.

Become a patron Donate using Liberapay donate with PayPal

First blog & KDE Connect media control improvements

Fri, 2018/03/16 - 9:07pm

This blog is about KDE Connect. KDE Connect is a project to communicate across all your devices. For example, with KDE Connect you can receive your phone notifications on your desktop computer, control music playing on your phone from your desktop, or use your phone as a remote control for your desktop.

Well this is my first blog.

I've started working on KDE Connect last November. My first big features were released yesterday in KDE Connect 1.8 for Android, so cause for celebration and a blog post!

My first big feature is media notifications. KDE Connect has, since it's inception, allowed you to remotely control your music and video's. Now you can also do this with a notification, like all Android music apps do! So next time a bad song comes up, you don't need to switch to the KDE Connect app. Just click next on the notification without closing you curring app. And just in case you don't like notifications popping up, there's an option to disable it.

The second big feature is album art for the media control. Since most songs belong to an album, and people put serious time into designing those album covers, it's a shame we haven't been showing those covers all this time! But wait no more: we've finally got album art in KDE Connect!

Currently, only remote album art is supported (used in e.g. Spotify). Local album art and album art in the media notifications will come in a future release of KDE Connect.

Last Weeks Activity in Elisa and Release Schedule

Fri, 2018/03/16 - 8:26pm

Elisa is a music player developed by the KDE community that strives to be simple and nice to use. We also recognize that we need a flexible product to account for the different workflows and use-cases of our users.

We focus on a very good integration with the Plasma desktop of the KDE community without compromising the support for other platforms (other Linux desktop environments, Windows and Android).

We are creating a reliable product that is a joy to use and respects our users privacy. As such, we will prefer to support online services where users are in control of their data.

Release Schedule

We are preparing the 0.1 release of Elisa. A stable branch has been created and translations set up for the stable branch.

We plan to have a string freeze starting 24th March.

The release will be tagged on 7th April with the release happening shortly after.

We are also continuing development of what will become the 0.2 release. We plan to make a release each 3 months and to support the stable release with a few bug fix releases. We have summarized the schedule for the next releases in the KDE community wiki.

Now is really a good time to join the Elisa team. You will be able to work on code that will soon reach potential users. You will not have to wait for a long time given that we will soon release.


Since the last blog posts, quite some changes went into Elisa. Most notably is the partial migration to raw Qt Quick Controls v2 and all the fixes for HighDPI support. Alexander is also looking at opportunities to leverage Kirigami.

Screenshot_20180316_212445Current Elisa interface

Here is the raw git changelog:

  • ddf1354 artist, album artist, genre composer and lyricist can be strings list: fix Elisa
  • 184f15b Don’t rely on playPause for MPRIS pause
  • 3a46c62 add tests for navigation bar
  • b38c3de add top margin for album view and all tracks view
  • f47cab3 ensure the busy indicator is not visible when not running
  • 15339f8 fix double click for playlist
  • 6b862b6 fix metadata view after merge of controls2 branch
  • 115b9bc fix music not being stopped when clearing the play list
  • d00c821 remove random generator setup from qml
  • 617c81c pipe loading of album data through proxy model
  • 9a798f8 Merge branch ‘controls2_rebase’
  • c6e928f fix other small issues with enqueue methods of MediaPlayList
  • d74f0a8 add missing explicit in front of some constructors thanks to
  • f062fb1 enqueue an empty list of tracks ID is now doing nothing
  • 8f534b2 fix a small error due to migration to object creation in c++
  • 6e4f632 Fix MPRIS pause
  • 7aceef7 fix several visual issues
  • 7255eb7 convert metadata view to a controls v2 window
  • f214758 Revert “ask Qt Quick Controls v2 style to be org.kde.desktop”
  • 4f874dc ask Qt Quick Controls v2 style to be org.kde.desktop
  • fef03db fix issues after controls2 port
  • 3afca2d port to controls2
  • 58647d0 connect to deleteLater to ensure that object is deleted
  • b91a425 main: Use HighDpiPixmaps
  • 6067340 qml: Use pointSize instead of pixelSize for HiDPI screens
  • 3d221a5 use contains for membership test
  • 7654591 fix all tracks view signals

The following authors have contributed to Elisa:

  • Alexander Stippich
  • Matthieu Gallien
  • Andreas Schneider
  • Fabian Kosmale
  • Nicolas Fella

Thanks a lot for those contributions.

Testing Elisa

There are several way to test Elisa but the easiest one is using the flatpak package produced by KDE if you are running a system supporting flatpak. The flatpak service is back automatically building a package when changes are integrated in Elisa. This is the kind of services the awesome KDE community provides. You can easily contribute your energy or some money to help this to continue.

If you happen to use windows, there is also a setup built by binary-factory KDE service (Elisa is built with craft and craft makes it very easy to produce Windows setup).

There are also some packages built for your distributions from the git repository. This is a nice way to test Elisa. Thanks for the effort of the packagers.