Add your blog

If you are a KDE contributor you can have your blog on Planet KDE. Blog content should be mostly KDE themed, English language and not liable to offend. If you have a general blog you may want to set up a tag and subscribe the feed for that tag only to Planet KDE.

We also include feeds in different categories, currently Dot News, Project News feeds, User Blogs, french Language, Spanish Language, Polish Language and Portuguese Language KDE blogs. If you have a feed which falls into these categories (or another non-English language) please file a bug as below.

Planet KDE is kept in KDE's Git. If you have an account you can add or edit your own feed:

  • git clone kde:websites/planet-kde-org
  • Put your hackergotchi in website/hackergotchi/. A hackergotchi should be a photo of your face smaller than 80x80 pixels with a transparent background. git add the file.
  • At the end of the planetkde/config file add your details (the name in brackets is your IRC nick):
  • feed 45m http://path.to/my/feed.rss define_name Konqi Konqueror (konqi) define_face hackergotchi/konqi.png define_facewidth 80 define_faceheight 80
  • git commit -a; git push

If you want to add a Twitter microblog to the Microblogging sidebar add define_microblog true and follow your name with [twitter]. Currently only Twitter is known to work, please contact Jonathan Riddell before adding non-Twitter microblogs to check it works.

If you do not have a Git account, file a bug in Bugzilla listing your name, Git account (if you have one), IRC nick (if you have one), RSS or Atom feed and what you do in KDE. Attach a photo of your face for hackergotchi.

Blog Classes

The default class for blogs is English language personal blogs. Other classes are:

  • Spanish language:
    define_feedclass spanish
  • Portugese language:
    define_feedclass portuguese
  • Chinese lanugage:
    define_feedclass chinese
  • Polish lanugae:
    define_feedclass polish
  • Italian lanugae:
    define_feedclass italian
  • French lanugae:
    define_feedclass french
  • KDE User blogs:
    define_feedclass user
  • KDE News feeds:
    define_feedclass news
  • KDE Dot News:
    define_feedclass dot

Planet KDE Guidelines

Planet KDE is one of the public faces of the KDE project and is read by millions of users and potential contributors. The content aggregated at Planet KDE is the opinions of its authors, but the sum of that content gives an impression of the project. Please keep in mind the following guidelines for your blog content and read the KDE Code of Conduct. The KDE project reserves the right to remove an inappropriate blog from the Planet. If that happens multiple times, the Community Working Group can be asked to consider what needs to happen to get your blog aggregated again.

If you are unsure or have queries about what is appropriate contact the KDE Community Working Group.

Blogs should be KDE themed

The majority of content in your blog should be about KDE and your work on KDE. Blog posts about personal subjects are also encouraged since Planet KDE is a chance to learn more about the developers behind KDE. However blog feeds should not be entirely personal, if in doubt set up a tag for Planet KDE and subscribe the feed from that tag so you can control what gets posted.

Posts should be constructive

Posts can be positive and promote KDE, they can be constructive and lay out issues which need to be addressed, but blog feeds should not contain useless, destructive and negative material. Constructive criticism is welcome and the occasional rant is understandable, but a feed where every post is critical and negative is unsuitable. This helps to keep KDE overall a happy project.

You must be a KDE contributor

Only have your blog on Planet KDE if you actively contribute to KDE, for example through code, user support, documentation etc.

It must be a personal blog, or in a blog class

Planet KDE is a collection of blogs from KDE contributors.

Do not inflame

KDE covers a wide variety of people and cultures. Profanities, prejudice, lewd comments and content likely to offend are to be avoided. Do not make personal attacks or attacks against other projects on your blog.

For further guidance on good practice see the KDE Code of Conduct.

People Aggregated

FeedRSSLast fetchedNext fetched after
Rajko Albrecht (alwin) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Guillaume DE BURE (gdebure) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Christophe Giboudeaux (krop) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stuart Dickson (stuartmd) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Anant Kamath (flak37) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Akshay Ratan (akshay_r) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Evgeniy Ivanov (powerfox/pfx) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Punit Mehta (punit9462) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Alex Fiestas (afiestas) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Łukasz Jaśkiewicz (ljaskiewicz) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Arjun Basu (ultimatrix) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Cristina Yenyxe González García XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Marc Mutz XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dan Leinir Turthra Jensen (leinir) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Petr Mrázek (petrm) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Philipp Knechtges (d1saster) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Roland Wolters (liquidat) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Michał Zając (Quintasan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dinesh (saidinesh5) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Diego Casella ([Po]lentino) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mojtaba Shahi Senobari (moji) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
A. L. Spehr (blauzahl) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Felix Lemke (HobbyBlobby) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Adrian Draghici (adrianb) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dario Freddi (drf__) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Francesco Nwokeka (nwoki) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aakriti Gupta (aakriti) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Abhinav Gangwar XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Adam Celarek (adamce) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Adam Rakowski (foo-script/efes) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aditya Bhatt (adityab) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andrea Diamantini (adjam) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ahmed AbouElhamayed (TheMonster) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aike Sommer XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dmitry Ivanov (vonami) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Keith Rusler (comawhite) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Anton Kreuzkamp (akreuzkamp) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Albert Vaca (albertvaka) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Alessandro Diaferia (alediaferia) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alejandro Wainzinger (xevix) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alexander Dymo (adymo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alexander Neundorf XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jeremias Epperlein XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alessandro Cosentino (cosenal) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alan Alvarez (clsk) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lukas Tinkl XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jos Poortvliet XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sri Ramadoss M (amachu) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Amandeep Singh (amandeepsingh) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andras Mantia XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ana Guerrero (ana) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ander Pijoan (ander) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andi Clemens (aclemens) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andreas Demmer (ademmer) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andreas Schilling XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andreas Schneider (gladiac) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andrei Duma (AndreiDuma) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andrew Coles (coles) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andrius Štikonas XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Andre Moreira Magalhaes (andrunko) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aniket Anvit (packo) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Timothee Giet (Animtim) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Anmol Ahuja (DarthCodus) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Anne Wilson (annew) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Anne-Marie Mahfouf (annma) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Antonio Larrosa Jimenez (antlarr) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Antonis Tsiapaliokas (kokeroulis) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Anuj Pahuja (alasin) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Andreas Pakulat XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alexander Rieder (arieder) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Arindam Ghosh XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Arno Rehn (pumphaus) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Arthur Ribeiro (arthurribeiro) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aaron Seigo (aseigo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ashish Madeti (madeti) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Friedrich Kossebau (frinring) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aurelien Gateau XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alberto Villa (avilla) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Allen Winter XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Paul Adams XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andrew Lake (Jamboarder) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Bart Coppens (BCoppens) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Behind KDE XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stephan Binner (Beineri) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Benjamin Port (ben2367) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Benjamin Kaiser (benkaiser) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Lim Yuen Hoe (moofang) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Bhaskar Kandiyal XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Bastian Holst (bholst) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Bhushan Shah (bshah) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Will Stephenson XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mohammed Nafees (binaryking) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Hamish Rodda (blackarrow) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jesper K. Pedersen (blackie) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jeff Mitchell (jefferai) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andres Betts (anditosan) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Sune Vuorela (svuorela) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Carlos Licea XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Agustín Benito Bethencourt XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Tatiana Gornak XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Mojtaba Shahi Senobari (moji) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mailson Menezes (mailson) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Michael Pyne (mpyne) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Wang Hoi (wkai) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Adriaan de Groot (adridg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
C. Boemann (boemann) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lukas Appelhans XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jaroslav Řezník (jreznik) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Brad Hards (bradh) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Simon St James (SSJ_GZ) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stephan Platz (paalsteek) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Bharath M S (brat197) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Brijesh Patel (erione) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Michał Małek (mmalek) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Călin Cruceru (crucerucalin) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Calligra News XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Thorsten Zachmann XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Allan Sandfeld Jensen (carewolf) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Carsten Niehaus (carsten) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Remi Villatel XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Anselmo L. S. Melo (anselmolsm) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Detlev Casanova (Cazou) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Chandan Kumar (chandankumar) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Chani Armitage (Chani) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andrew Stromme (astromme) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alexandr Goncearenco XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mathieu Chouinard (chouimat) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Christian Loose XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aracele Torres (araceletorres) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Cies Breijs (cies) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Clarence Dang XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Claus Christensen (Claus_chr) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mauricio Piacentini (piacentini) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Igor Trindade Oliveira XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Daker (dakerfp) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andriy Rysin (rysin) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andrew Manson ( mansona aka real_ate ) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sven Assmann XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Colin Guthrie (coling) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Bjørn Erik Nilsen (bnilsen) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nick Shaforostoff (shaforostoff) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ryan Rix (rrix) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Fania Jöck (fjoe) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stephan Kulow (coolo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andreas Cord-Landwehr (CoLa) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sujith H (sujith_h) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Somsubhra Bairi (somsubhra) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Mirko Boehm XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Cristian Tibirna (Inorog) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Carlos Leonhard Woelz (cwoelz) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Cyril Oblikov (munknex) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Cyrille Berger XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David E. Narváez (dMaggot) XML 03:36, Friday, 22 August 03:36, Saturday, 23 August
Rolf Eike Beer (Dakon) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dan Vratil (dvratil) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Daniel Molkentin (danimo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Danny Kukawka XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Daniel Nicoletti (dantti) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dario Andres Rodriguez (Dario_Andres) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dario Massarin XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alexis Menard (darktears) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David Edmundson (d_ed) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David Vignoni (davigno) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Florentina Musat (chrome) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Vijay Dhameliya (vijay13) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Sander Koning XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Denis Steckelmacher (steckdenis) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dennis Nienhüser (Earthwings) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Luca Beltrame (einar77) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Josef Spillner XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David Faure (dfaure) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Derek Kite (dkite) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dimitrios T. Tanis (diggy) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Gilles Caulier (cgilles) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sebastian Sauer (dipesh) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David Jarvie (djarvie) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dimitri Popov XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dmitry Kazakov (dmitryK) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dominik Seichter XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ariya Hidayat XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Klaas Freitag (dragotin) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Daniele E. Domenichelli (drdanz) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Simon at Facebook Open Academy XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Eduardo Robles Elvira (Edulix) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mihail Ivchenko (EgorMatirov) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Eike Hein (Sho) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Joon-Kyu Park XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Pau Garcia i Quiles (pgquiles) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Elvis Stansvik (estan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Enrico Ros XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Adrien Facelina XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kevin Ottens (ervin) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
kunal ghosh (kunalghosh) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Constantin Berzan (exit) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Akarsh Simha (kstar) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andreas Ramm (psychobrain) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Fabrice Mous (fab) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Boudewijn Rempt (boud) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Fathi Boudra (fabo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Filipe Saraiva (filipesaraiva) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Christian Mollekopf (cmollekopf) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Flavio Castelli XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nadeem Hasan XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Fabrizio Montesi (fmontesi) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Diane Trout (detrout) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Frank Karlitschek (karli) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Frank Osterfeld (fosterfeld) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Frederic Coiffier (fcoiffier) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Frederik Gladhorn (fregl) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Frederik Gladhorn (fregl) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rafael Fernández López (ereslibre) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Siddharth Sharma (siddvicious) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Frank Reininghaus XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Freoffice: KOffice based Open Mobile Office Suite XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Friedrich Pülz (fkpulz) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Harri Porten XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Frerich Raabe XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Koos Vriezen XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nicolas Lécureuil (neoclust) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Felix Rohrbach (fxrh) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Gokmen Goksel (gokmen) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Gabriel Voicu (gvoicu) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Michael Gapczynski (MTGap) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Bruno Coudoin (bdoin) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Ian Geiser (geiseri) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Gerhard Kulzer (gkulzer) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Giannis Konstantinidis (giannisk) XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Giorgos Tsiapaliokas (terietor) XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Gregor Iaskievitch XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
George Kiagiadakis (gkiagia) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Cédric Bellegarde (gnumdk) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Antonio Aloisio XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Inge Wallin (ingwa) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Cezar Mocan (CezarMocan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Debjit Mondal (debjit) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Simon A. Eugster (Granjow) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Johannes Bergmeier (joselb) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
George Goldberg (grundleborg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Denis Kuplyakov (dener.kup) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Denis Kuplyakov XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Denis Kuplyakov (denerkup) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Vedant Agarwala (vedu) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Siddharth Srivastava (akssps011) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Edward Toroshchin (hades) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Harald Hvaal (metellius) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Harshita Mistry XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Sebastian Pipping (sping) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Diego Iastrubni XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Helio Castro (heliocastro) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Henri Bergius (bergie) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Henrique Pinto XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Henry de Valence (hdevalence) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Harshit Jain (hjain) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Florian Graessle (holehan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Holger Foerster (foerster) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Loic Corbasson XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mathias Kraus (hias) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ozan Çağlayan (ozancaglayan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Fabio A. Locati (flocati) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Guillermo Amaral (gamaral) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Bartosz Wadolowski XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Boudewijn Rempt's Krita blog XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Fredrik Höglund XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Gopalakrishna Bhat XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Petri Damstén XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sergey Kalinichev (klins) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Vladimir Prus XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Arnaud Dupuis (Arno[Slack]) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dani Gutiérrez Porset XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Weng Xuetian (csslayer) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Risto Saukonpaa (fri13) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nicolas Lecureuil (nlecureuil) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Francesco Riosa (riosa) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Angelo Naselli (anaselli) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David Hubner (hubner) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Daniel Meltzer (hydrogen) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Robin Burchell (w00t) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andrea Scarpino (ilpianista) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ronny Yabar (ronnyml) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
William Viana (Liw-) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Niklas Laxström (Nikerabbit) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ivan Čukić (ivan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jean-Baptiste Mardelle (j-b-m) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
James Ots XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jan Grulich (grulja) XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Jan Muehlig (janushead) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jan Gerrit Marker (jangmarker) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jarle Akselsen XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jarosław Staniek (jstaniek) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jason Harris (LMCboy) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Javier Llorente XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jens Muller (jmueller) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jan Kundrát (jkt) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Joseph Simon (jsimon3) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jörg Ehrichs XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
John Ratke XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
John Layt XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Johannes Huber (johu) XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Jon Ander Peñalba (jonan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jonathan Thomas (JontheEchidna) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Avik Pal (avikpal) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Joseph Wenninger XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
John-Paul Stanford (jp) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ashley Winters XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jonathan Riddell (riddell) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Juan Carlos Torres (jucato) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Julien Narboux (jnarboux) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jussi Schultink (jussi01) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Gaël de Chalendar (kleag) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Karan Luthra (luthrak) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Kashyap Puranik (kashthealien) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ekaterina Gerasimova (kittykat) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Adrian Lungu (lungu) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alexander Neundorf XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Christoph Cullmann (cullmann) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David Herberth (dav1d) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Diana Tiriplica (dianat) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dominik Haumann XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Emmanuel Bouthenot (bouthenot) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Erlend Hamberg XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Joseph Wenninger (jowenn) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kåre Särs (ksars) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marco Mentasti (mentasti) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Maximilian Löffler (max) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Pablo Martín Cobos (pcobos) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Shaheed Haque (shaheed) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Simon St James (ssj) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Svyatoslav Kuzmich XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Thomas Fjellstrom (fjellstrom) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
KDAB on Qt XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Laszlo Papp (lpapp) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kevin Funk (kfunk) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Shantanu Tushar (shantanu) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Tobias Koenig (tokoe) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
John Tapsell (JohnFlux) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Baltasar Ortega XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Hugo Pereira Da Costa XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
KMix - the KDE Multimedia Mixer XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nuno Pinheiro (pinheiro) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Camila Ayres (camilasan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Wagner Reck (wiglot) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Wagner Reck (wiglot) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
KDE Sysadmins XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
KDE User Working Group XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jens Reuterberg (jensreuterberg) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Martin Bříza (mbriza) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
KDE Dot News XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David Miller XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kdenlive team XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Christoph Feck (kdepepo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Egon Willighagen XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Percy Camilo Triveño Aucahuasi XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Kurt Hindenburg XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ramon Zarazua (_killerfox_) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Valerio Pilo (Amroth) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jasem Mutlaq (KNRO) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jigar Raisinghani (jigar) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nikhil Marathe (nsm) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Wade Olson XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Konrad Zemek XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kevin Krammer XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Krita News XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sahil Nagpal (sahil) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mohit Goyal (mohit) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Vladimir Kuznetsov XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rafał Kułaga (rkulaga) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kubuntu Wire XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lamarque Souza (lamarque or lvsouza) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Johannes Wienke (languitar) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Luca Tringali (lucatringali) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Leo Franchi (lfranchi) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lydia Pintscher (Nightrose) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Johan Thelin XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Gabriel Poesia (gpoesia) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Valorie Zimmerman (valorie) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sven Brauch (scummos) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alex Raymond (alexraymond) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aracele Torres (araceletorres) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Filipe Saraiva (filipesaraiva) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Luiz Romário (luizromario) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sandro Andrade (sandroandrade) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Tomaz Canabrava (tomaz) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Vinicius Azevedo (stdcout) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Vito Chiarella (vitochiarella) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Vitor Boschi (Klanticus) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alex Turbov (zaufi) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Luboš Luňák (llunak) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Frederik Schwarzer (icwiener) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lucas Lira Gomes (MaskMaster) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lucijan Busch (lucijan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Luís Gabriel Lima (luisgabriel) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lukas Dzikaras (LukasLt2) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lukas Tvrdy (lukast) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Tejas Dinkar (gja) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Piyush Verma XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andy Coder XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Mahfuz062 XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Adam Treat (manyoso) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marc Cramdal XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marcel Wiesweg (mwiesweg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marcus Hanwell (cryos) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marco Calignano (marcuzzo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mario Fux (unormal) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mark Gaiser (markg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Markus Slopianka (markuss) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marco Martin (notmart) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Martijn Klingens XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Martin Küttler (mkuettler) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Martin Klapetek (mck182) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Martin Konold (Mortimer) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Martin Gräßlin XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Martin Klapetek (mck182) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Daniel Jones XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Matthias Fuchs (mat69) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mateu Batle (mbatle) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Matt Williams XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mayank Madan (mayankmadan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Michael Bohlender (mbohlender) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kenneth Wimer (kwwii) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mehrdad Momeny (mtux) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Benjamin Meyer (icefox) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Pedro López-Cabanillas XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Pedro Lopez-Cabanillas XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Milian Wolff (milianw) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mirko Boehm (miroslav) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Magda Konkiewicz XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marijn Kruisselbrink XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mohamed Anwer (tootis) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Mohamed Malik XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ben Martin (monkeyiq) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jean-Nicolas Artaud (morice-net) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Artur Souza (MoRpHeUz) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mauro Iazzi (iazzi) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rupanjana Mitra (mrupanjana) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Miquel Sabaté (mssola) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Tony Murray (murrant) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Carsten Pfeiffer (gis) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Martyn Circus XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sven Burmeister (rabauke) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Maurizio Monge XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sayak Banerjee (sayakb) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ben Cooksley (bcooksley) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Srikanth Tiyyagura XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Myriam Schweingruber (Mamarok) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jason A. Donenfeld (zx2c4/jdonenfeld) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ingo Malchow (neverendingo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kubuntu News XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Patrick Spendrin (SaroEngels) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Abhijeet Nikam (nikam08) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Niko Sams (nsams) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nikolaos Chatzidakis XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nilesh Suthar (nil1511) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Juan Luis Baptiste (Maeztro) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jos van den Oever (vandenoever) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Guillaume Martres (smarter) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Oindrila Gupta (oini) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marta Rybczyńska XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dmitry Suzdalev (dimsuz) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Lucas Hermann Negri (lucashn) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Aaron Reichman (areichman) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kai-Uwe Behrmann (oy) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Francisco Fernandes (chicao) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Paul Mendez (paul_m) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Paul Pacheco (paulpach) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marc Pegon (mpeg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
José Luis Vergara Toloza (Pentalis) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Peter Grasch XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Adam Pigg XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Pierre Ducroquet XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rob Scheepmaker (pinda) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Matthias Meßmer (pipesmoker) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kurt Pfeifle (pipitas) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ignat Semenov (isemenov) XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Rene Kuettner (rku) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Peter Penz XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Pranav Ravichandran (Pranav_rcmas) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Frans Englich (FransE) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Paulo Rômulo (promulo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Pierre Stirnweiss (PierreSt) XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Tomasz Olszak (tolszak) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Illya Kovalevskyy (tucnak) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Raphael Kubo da Costa (rakuco) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jeremy Whiting (jpwhiting) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Peter Simonsson (psn) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Randa Meetings XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Petr Vanek XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Mark Kretschmann (markey) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Reinhold Kainhofer XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alex Merry XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rex Dieter (rdieter) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Richard Moore (richmoore2) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Richard Johnson (nixternal) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Richard Dale XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rishab Arora (spacetime) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rivo Laks XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Robert Knight XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Robert Riemann (rriemann) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Robert Mathias Marmorstein (robertm) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Radoslaw Wicik (rockford_) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Roozbeh Shafiee XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Björn Ruberg (ruberg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jordi Polo (jordl) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ruediger Gad (rcg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ryan Bitanga XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rob Buis (rwlbuis) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Maksim Orlovich (SadEagle) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sascha Manns (saigkill) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Samikshan Bairagya (samxan) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Martin Sandsmark (sandsmark) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sanjiban Bairagya (fewcha) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Sascha Peilicke (saschpe) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Adenilson Cavalcanti (Savago) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Matteo Agostinelli (agostinelli) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Scott Wheeler (wheels) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sebastian Gottfried (sebasgo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sergio Martins (sergio) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Thomas Pfeiffer (colomar) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rohan Garg (shadeslayer) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Shaun Reich (sreich) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Bernhard Beschow (shentey) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Shivaraman Aiyer (sraman) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Simon Edwards XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Peter Grasch XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sinny Kumari (ksinny) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Casian-Valentin Andrei (skelet) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Smit Patel (smitpatel) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sam Duff (Socceroos) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alvaro Soliverez (Hei_Ku) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Holger Freyther (zecke) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Christian Ehrlicher XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Germain Garand XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Shawn Starr (spstarr) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stefan Teleman XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stefan Derkits (HorusHorrendus) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stephanie Das Gupta (stephdg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stephen Kelly (steveire) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Matěj Laitl (strohel) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stuart Jarvis XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Claudio Desideri (snizzo) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sven Langkamp (slangkamp) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Swair Shah (swair) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Romain Pokrzywka (kromain) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Prakash Mohan (praksh) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sebastian Dörner XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alexandr Akulich XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Teo Mrnjavac (Teo`) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Bart Cerneels (Stecchino) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Hayri Bakici (thehayro) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Peter Schiffer (aceton) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Cornelius Schumacher XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Danny Allen (dannya) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jeffery MacEachern (jaem) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Matt Broadstone XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Andreas K. Hüttel (dilfridge) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Roopesh Chander XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Stefan Majewsky (majewsky) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Roney Gomes (roney) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Theo Chatzimichos (tampakrap) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Ahmed Ghonim XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Yuvraj Tomar (yuvrajtomar) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Kaushik Saurabh (roide) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jussi Kekkonen (Tm_T) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Gary Greene (greeneg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jan Hambrecht (jaham) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Jonathan Schmidt-Dominé (The User) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Luke Wolf (Luke_Wolf) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Harald Sitter (apachelogger) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Abhishek Patil (thezeroth) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Aleix Pol (apol) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Janet Theobroma (theobroma) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Thiago Macieira (thiago) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Philip Rodrigues (PhilRod) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Emmanuel Lepage Vallee (Elv13) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dion Moult (Moult) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Thomas McGuire XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Thomas Thym (ungethym) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Till Adam XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Duncan Mac-Vicar (duncanmv) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Tina Trillitzsch XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Raymond Wooninck (tittiatcoke) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Torgny Nyblom (tnyblom) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Torsten Rahn (tackat) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Agustin Benito Bethencourt XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Konstantinos Smanis (ksmanis) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Olaf Schmidt-Wischhöfer (ojschmidt) XML 00:36, Saturday, 23 August 01:21, Saturday, 23 August
Eva Brucherseifer XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Alexandra Leisse (troubalex) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sebastian Trueg (trueg) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sebastian Trueg XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Albert Astals Cid (TSDgeos) XML 01:06, Saturday, 23 August 01:21, Saturday, 23 August
Albert Astals Cid (TSDgeos) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Till Theato (ttill) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Davide Bettio (WindowsUninstall) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Björn Balazs XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Utku Aydın (utku) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Valentin Rusu (valir) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Vishesh Handa (vhanda) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Sebastian Kügler (sebas) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Vlad Codrea XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Vyacheslav Tokarev (vtokarev) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Pradeepto Bhattacharya XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Tirtha Chatterjee (wyuka) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Floris-Andrei Stoica-Marcu XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Laurent Montel (mlaurent) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Smit Shah XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Hans Chen (Mogger) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Nikolas Zimmermann (WildFox) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Dirk Mueller XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Daniel Kreuter (xardas008) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Matthias Klumpp (ximion) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Xavier Vello (xvello) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
YANG Qiao (yangqiao) XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Yash Shah (yashshah) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Philip Muškovac (yofel) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Zack Rusin (zrusin) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Rafał Miłecki (Zajec) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Zanshin Announcements XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
Marcin Zieminski XML 01:06, Saturday, 23 August 01:51, Saturday, 23 August
Waldo Bastian (zogje) XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August
David Nolden XML 01:06, Saturday, 23 August 01:36, Saturday, 23 August

Microblogging from KDE

August 22, 2014

Sanjiban Bairagya (fewcha)

GSoC Ends – Project Summary

Hi everyone! Okay, so GSoC finally comes to an end, and I’m going to miss it a lot. Working for Marble has become an addiction, and I am going to keep contributing to it in the future. However, here is a brief summary of what all I have been able to implement in Marble in the duration of the project.

My project is about implementing interactive tours in Marble, a feature by which we would be able to take a virtual tour of the planet, by making the camera fly from location to location on the globe, waiting at certain points, playing some music in the background through certain time-durations, and also possibly showing/hiding placemarks as well at certain moments during the tour. Tours are kml files consist of a playlist with five basic elements:
1) FlyTo : contains the latitude, longitude, altitude, etc. of the locations to which the camera is supposed to fly to.
2) Wait : contains the durations for which the camera should wait (not move) at some instances during the tour.
3) TourControl : these can be used to play / pause the tour automatically during its playback
4) SoundCue : these are required to play some music in the background while the tour is playing.
5) AnimatedUpdate : for being able to show/hide, or also create/delete balloon popups (info-boxes) at different coordinates during the tour.

-> There was a Tour Widget which showed a list-view of the different elements present in the kml tour file that has been loaded. Now I added the functionality to be able to edit the elements directly from the widget itself, thus modifying the tour without having to make any manual changes to the kml file, and providing a nice user-interface while doing so. Please go through my blog post for some screenshots and a clearer explanation of the feature.

-> Refactored tour playback logic, so that the tour is represented by only one serial track, containing of FlyTo, Wait, and TourControl items, and several parallel tracks, each representing either a SoundCue item, or an AnimatedUpdate item, which could overlap with other tracks, both serial and parallel. This refactoring of design was required in order to make the tours look more dynamic, and so that it is easier to handle and work with them in our subsequent codes.

-> Implemented seek functionality for tour playbacks, with a progress bar in the tour widget, which can be dragged manually by the user, to bring it to any position of the tour. Also, while dragging itself (not only just before and after), the respective changes, that is, the movements in the camera, along with the balloon visibility, can be seen getting changed in the map while dragging the slider itself, both forward and backward.

-> Added basic interpolation of tours in Marble, so that the camera makes smooth turns (not sharp ones) when flying from one location to the other (when the Fly-to-mode has been set to smooth). Please go though my blog post to know more about this, and the previous two features mentioned above [Note: In the kml file of the tour in the video shown there, the FlyTo modes are mostly not set to "smooth" so the "smooth interpolation" feature is not quite visible in that video, but the videos which are following later on in this blog, have all its flyto's modes set to smooth, so it will be visible there.]

-> Next, I implemented the feature of being able to create / delete placemarks, and also to show / hide the popup balloons of existing placemarks, during the playback of the tours. The showing / hiding of popup balloons can be understood more clearly if you go through this video of a tour on the moon of the various landing sites made in it in the recent past. The creation / deletion of placemarks, during the playback of tours, can be understood from this very short video.

-> Then comes viewing of routes as tours. I implemented the functionality to preview routes as tours and showing turn-type icons in waypoints during a route preview, while adjusting the speed and range of the tour according to the density of waypoints in the current visible region in the map. This can get more clear if you look at this video.

-> Finally, I implemented the functionality of being able to create videos from tours directly, without having to play and record them manually in order to get the video. So, I added a new Play button in the Routing widget, clicking on which, a dialog box would come up where we can choose the destination filename with path, along with the fps rate with which we want the video to be written. Clicking on Start would start video recording, showing the % progress in the progress-bar. We can cancel video-recording any time by clicking on Cancel. Below are two pictures showing how it would look like, before and after the the video has finished being written.

Video Export Ongoing  Video Export Complete

 

I would like to thank my mentor Dennis, for his awesome help in making me be able to complete this project. Without his motivation, I wouldn’t have been able to make it to the very end. I am going to miss GSoC like hell. But I’ll obviously keep contributing to Marble in the future. It has been a hell of a great experience for me. Thanks again! :)


19:41, Friday, 22 August UTC

Jonathan Riddell (riddell)

Do you need to be brain damaged to care about desktop Linux? and Kubuntu day at Akademy

KDE Project:

After sell out dates in Glasgow and Belgium the tour of my dramatic talk "Do you need to be brain damaged to care about desktop Linux?" is making a stop in Brno for the KDE Conference Akademy. In it I'll talk about the struggles of recoving from a head injury mixed with creating a beautiful and friendly Linux distro: Kubuntu. It'll have drame, it'll have emotion, it'll have a discussion of the relative merits of community against in-house development. Make sure you book your tickets now!

Also at Akademy is the Kubuntu day on Thursday, sign up now if you want to come and talk about your ideas or grumble about your problems with Kubuntu. Free hugs will be in store.

16:34, Friday, 22 August UTC

Denis Steckelmacher (steckdenis)

Baloo Natural Query Parser ported to KF5

In 2013, My GSoC project was about implementing a natural (or “human”) query parser for what was then Nepomuk. The parser is able to recognize simple Google-like keyword searches in which sentences like “videos accessed last week” can also be used. Sample queries include “KDE Baloo, size < 2M” and “files modified two months ago, Holidays, tagged as Important”. An explanation of how the parser can extract the advanced information and of which queries are possible can be found here.

Since then, many things have happened. First, Nepomuk was replaced by Baloo, and the query parser has been ported to Baloo. Then came the KDE Frameworks 5 and Baloo was ported to them (branch frameworks of kde:baloo). The port went well, but the query parser had been disabled in the KF5 version of Baloo.

This week, I have given some love to the QueryParser. First, it was renamed to NaturalQueryParser, because there is another query parser in Baloo (one for simple Xapian queries). Then, I ported it along with the query builder widget to KF5. Finally, I added the possibility to use KFileMetaData to match specific file properties when performing a search. You can now explicitly filter the results of a search by using “width > 300” (the width of an image), “artist contains KDE” (the artist having performed something), etc. The list is independent from Baloo and the query parser does not have to be modified when new properties appear.

Here is a screenshot. It is not yet particularly exciting (except that it is entirely KF5-based), and the auto-completion for property values is still quite basic, but more features are coming and should make this widget way more user friendly:

KF5 Query builder widget

All of this is currently waiting for being reviewed, but can already be tested by checking out the branch naturalqueryparser of Baloo and Baloo Widgets (kde:baloo and kde:baloo-widgets). These branches are based on frameworks and therefore require the Frameworks in order to be compiled.

12:22, Friday, 22 August UTC

David Edmundson (d_ed)

An update on Plasma Addons

Since my last blog post on plasma addons there has been a lot of activity, existing contributors are active on their own plasmoids, and there are many new faces coming on to take up the challenge of maintaining their own small part of Plasma.

What's been happening


All Plasma 5 development has moved to the master branch, ready for the 5.1 release.

Aleix Pol finished porting the quickshare applet which allows uploading text and images to a pastebin server by clicking and dragging. Xuetian Weng completed the Input panel plasmoid, that allows for entering chinese characters and Kai Broulik finished the Fuzzy Clock plasmoid. I started the notes plasmoid, which is close to being ready for review.

The VDG have been active in designing the ported applets, with the help of kver the system load viewer applet changed significantly:

A small bit of polish makes a huge difference to the end result, and Martin Yrjölä has been leading the porting process of that.

Spring cleaning

We are constantly adding new things so it's important to clean out old code at the same rate. We need to remove applets that failed to be maintained, or are simply gathering dust and only invest porting effort in what is useful.

With this I am sad (well, not really) to announce:

We've dropped the bouncy ball!

I know several people liked this applet but when trying to develop a professional experience toys and gimicks aren't a good thing to be shipping by default. The user's desktop is not a showcase for us to experiment with.

That isn't to say we want to police what people make and use, developers are still able to distribute all content through kde-look or other services, we are just making the most of our main distribution channels.

Getting involved

There are still several plasmoids that we want to have available to Plasma 5 users, that are seeking maintainers. Unless people step up to both port and maintain them, it won't happen. So if there's anything you use regularly and miss, please look at the TODO and talk to us on #plasma.

10:55, Friday, 22 August UTC

Björn Balazs

Intermediate results of the icon tests: Faenza

With a series of icon tests we currently study effects on the usability of icon design. This article however does not focus on these general design effects but presents findings specific to the Faenza icon set.

Keep on reading: Intermediate results of the icon tests: Faenza

10:26, Friday, 22 August UTC

Valorie Zimmerman (valorie)

Learning to git

A few years ago, I learned from Myriam's fine blog how to build Amarok from source, which is kept in git. It sounds mysterious, but once all the dependencies are installed, PATH is defined and the environment is properly set up, it is extremely easy to refresh the source (git pull) and rebuild. In fact, I usually use the up-arrow in the konsole, which finds the previous commands, so I rarely have to even type anything! Just hit return when the proper command is in place.

Now we're using git for the KDE Frameworks book, so I learned how to not only pull the new or changed source files, but also to commit my own few or edited files locally, then push those commits to git, so others can see and use them.

To be able to write to the repository, an SSH key must be uploaded, in this case done in the KDE Identity account. If the Identity account is not a developer account, that must first be granted.

Just as in building Amarok, first the folders need to be created, and the repository cloned. Once cloned, I can see either in konsole or Dolphin the various files. It's interesting to me to poke around in most of them, but the ones I work in are markdown files, which is a type of text file. I can open them in kate (or your editor of choice) either from Dolphin or directly from the cli (for instance kate ki18n/ki18n.in.md).

Once edited, save the file, then it's time to commit. If there are a number of files to work on, they can be all committed at once. git commit -a is the command you need. Once you hit return, you will be immediately put into nano, a minimal text editor. Up at the top, you will see it is waiting for your commit message, which is a short description of the file or the changes you have made. Most of my commits have said something like "Edited for spelling and grammar." Once your message is complete, hit Control X, and y and return to save your changes.

It's a good idea to do another git pull just to be sure no one else has pushed a conflicting file while the commit message was being crafted, then git push. At this point the passphrase for the ssh key is asked for; once that is typed and you hit return, you'll get something like the following:

Counting objects: 7, done.                                                                                                                                                                              
Delta compression using up to 8 threads.                                                                                                                                                                
Compressing objects: 100% (4/4), done.                                                                                                                                                                  
Writing objects: 100% (4/4), 462 bytes | 0 bytes/s, done.                                                                                                                                                
Total 4 (delta 2), reused 1 (delta 0)                                                                                                                                                                    
remote: This commit is available for viewing at:
remote: http://commits.kde.org/kf5book/90c863e4ee2f82e4d8945ca74ae144b70b9e9b7b
To git@git.kde.org:kf5book                                                                                                                                                                              
   1d078fe..90c863e  master -> master                                                                                                                                                                    
valorie@valorie-HP-Pavilion-dv7-Notebook-PC:~/kde/book/kf5book$

In this case, the new file is now part of the KDE Frameworks 5 book repository. Git is a really nifty way to keep files of any sort organized and backed up. I'm really happy that we decided to develop the book using this powerful tool.

09:55, Friday, 22 August UTC

August 21, 2014

Baltasar Ortega

Lanzado KDE Software Compilation 4.14

El pasado 20 de agosto fue lanzado KDE Software Compilation 4.14,  una nueva actualización del magnífico conjunto de aplicaciones de la Comunidad KDE. Veamos sus novedades.  Lanzado KDE Software Compilation 4.14 Antes de comentar los aspectos técnicos hemos de comentar un tema muy humano, ya que este lanzamiento está dedicado a la memoria de Volker [&hellip

22:01, Thursday, 21 August UTC

Jörg Ehrichs

Wacom Tablet KCM 2.1 beta1 Release

Almost a year has passed since the last release of the Wacom Tablet KCM. A lot has happened on my side but I finally found the time to to some hacking on the code again.

This beta tackles a few issues from the bug tracker.

* Support for more than one tablet at the same time
Now you can connect as many tablets as you want and select between them in the KCM. For each tablet the correct profile will be applied, while the global shortcuts will be used on all connected tablets.

* Support for profile rotation and status LEDs (Intuos/Cintiq)
New global shortcuts allow you to rotate through a list of profiles (for each individual device). You can map this onto the tablet (for example the button 1 on the Intuos) to do a fast profile switch.
In addition the LEDs should tell you which profile in the rotation list is currently active.
(The LED feature is highly experimental and might not actually work, as I do not own a Intuos)

* New Tablet finder application to detect unknown tablets or change the current db entries
In case new tablets are sold which are not in our own tablet database yet, you can go through the process of detecting and specifying them with the help of this application. The result will be saved in a local database that will be checked first when the tablet is connected. This way you can also override the existing tablet database with your own changes.

* Fix profile loading error in some cases
* Fix white text on white background the the plasma applet






You can find the source archive on kde-apps.org or in the releng2.1 branch.


18:28, Thursday, 21 August UTC

Niklas Laxström (Nikerabbit)

Midsummer cleanup: YAML and file formats, HHVM, translation memory

Wikimania 2014 is now over and that is a good excuse to write updates about the MediaWiki Translate extension and translatewiki.net.
I’ll start with an update related to our YAML format support, which has always been a bit shaky. Translate supports different libraries (we call them drivers) to parse and generate YAML files. Over time the Translate extension has supported four different drivers:

  • spyc uses spyc, a pure PHP library bundled with the Translate extension,
  • syck uses libsyck which is a C library (hard to find any details) which we call by shelling out to Perl,
  • syck-pecl uses libsyck via a PHP extension,
  • phpyaml uses the libyaml C library via a PHP extension.

The latest change is that I dropped syck-pecl because it does not seem to compile with PHP 5.5 anymore; and I added phpyaml. We tried to use sypc a bit but the output it produced for localisation files was not compatible with Ruby projects: after complaints, I had to find an alternative solution.

Joel Sahleen let me know of phpyaml, which I somehow did not found before: thanks to him we now use the same libyaml library that Ruby projects use, so we should be fully compatible. It is also the fastest driver of the four. Anyone generating YAML files with Translate is highly recommended to use the phpyaml driver. I have not checked how phpyaml works with HHVM but I was told that HHVM ships with a built-in yaml extension.

Speaking of HHVM, the long standing bug which causes HHVM to stop processing requests is still unsolved, but I was able to contribute some information upstream. In further testing we also discovered that emails sent via the MediaWiki JobQueue were not delivered, so there is some issue in command line mode. I have not yet had time to investigate this, so HHVM is currently disabled for web requests and command line.

I have a couple of refactoring projects for Translate going on. The first is about simplifying the StringMangler interface. This has no user visible changes, but the end goal is to make the code more testable and reduce coupling. For example the file format handler classes only need to know their own keys, not how those are converted to MediaWiki titles. The other refactoring I have just started is to split the current MessageCollection. Currently it manages a set of messages, handles message data loading and filters the collection. This might also bring performance improvements: we can be more intelligent and only load data we need.

Théo Mancheron competes in the men's decathlon pole vault final

Aiming high: creating a translation memory that works for Wikipedia; even though a long way from here (photo Marie-Lan Nguyen, CC BY 3.0)

Finally, at Wikimania I had a chance to talk about the future of our translation memory with Nik Everett and David Chan. In the short term, Nik is working on implementing in ElasticSearch an algorithm to sort all search results by edit distance. This should bring translation memory performance on par with the old Solr implementation. After that is done, we can finally retire Solr at Wikimedia Foundation, which is much wanted especially as there are signs that Solr is having problems.

Together with David, I laid out some plans on how to go beyond simply comparing entire paragraphs by edit distance. One of his suggestions is to try doing edit distance over words instead of characters. When dealing with the 300 or so languages of Wikimedia, what is a word is less obvious than what is a character (even that is quite complicated), but I am planning to do some research in this area keeping the needs of the content translation extension in mind.

16:24, Thursday, 21 August UTC

Baltasar Ortega

ownCloud Contributor Conference

Del 26 al 31 de agosto se va a celebrar en la ciudad alemana de Berlín el evento de los simpatizantes de ownCloud, su Contributor Conference, la oportunidad anual para conocer a conciencia los progresos y el futuro de esta magnífica aplicaciones para servidores que pone las nube a tus pies.   ownCloud Contributor Conference [&hellip

08:10, Thursday, 21 August UTC

Björn Balazs

Understanding Icons: Participate in fantastic fourth survey

We start the next in our little test series of different icon sets. Please, again, participate in our little game and help us to learn more about the usability of icon design.

Keep on reading: Understanding Icons: Participate in fantastic fourth survey

07:31, Thursday, 21 August UTC

August 20, 2014

KDE Dot News

LaKademy 2014 - KDE Latin America Summit

Two years have passed since the reality of the first Latin American meeting of KDE contributors in 2012 in Porto Alegre, capital of Rio Grande do Sul, Brazil. Now we are proud to announce that the second LaKademy will be held August 27th to 30th in São Paulo, Brazil, at one of the most important and prestigious universities in the world—the University of São Paulo.

In this LaKademy we intend to do something different than what we did in 2012. It's not going to be just an event to bring together KDE contributors in Latin America, who will dedicate time and passion in hacking sessions. This time we be in touch with the KDE user community and attract possible future KDE contributors. Thus, we prepared some activities such as talks and short courses for the public that will be taught by KDE members.

The event will be four days long. Its program reflects the diverse fields of KDE: there will be talks on systems administration, development with Qt (the programming library that forms the foundation under most KDE software), KDE and Qt software on Android, artwork and more. Specific technical sessions will be dedicated to topics such as developing educational software, networks, translation and software internationalization. The event will also include cultural activities, such as the Konvescote at the hackerspace Garoa.

The LaKademy 2014 website has more information about the program, directions to the venue and registration instructions.

Put LaKademy on your calendar and come join KDE community!

Dot Categories:

19:16, Wednesday, 20 August UTC

KDE Dot News

Release 4.14 - KDE Applications get better and better

The KDE Community has announced the latest major updates to KDE Applications delivering primarily improvements and bugfixes. Plasma Workspaces and the KDE Development Platform are frozen and receiving only long term support; those teams are focused on the transition to Plasma 5 and Frameworks 5. This 4.14 release is dedicated to long time KDE contributor Volker Lanz who passed away last April. The full announcement has more information and details.


KDE Applications

In the past, KDE has jointly released the three major divisions of KDE software—Plasma Workspaces, KDE Development Platform and KDE Applications. The KDE Development Platform is being reworked into KDE Frameworks. The monolithic libraries that comprise the Development Platform are becoming independent, cross platform modules (KDE Frameworks 5) that will be readily available to all Qt developers. Plasma Workspaces is being moving to a new technology foundation based on Qt5 and KDE Frameworks 5. With the 3 major KDE software components moving at different paces, their release schedules are now separated. For the most part, KDE's 4.14 release involves KDE Applications.

Development Platform/KDE Frameworks 5

The modular Frameworks structure will have widespread benefits for KDE software. In addition, Frameworks is a substantial contribution to the Qt ecosystem by making KDE technology available to all Qt developers.

Plasma Workspaces

Plasma 5 was recently released after 3 years of work; it is on its own release schedule with feature releases every three months and bugfix releases in the intervening months. The Plasma team has built a solid foundation that will support Plasma Workspaces for many years.

KDE Applications

Release 4.14 is not about lots of "new and improved stuff". Many KDE developers are focused on the Next Experience (Plasma 5) or porting to KDE Frameworks (based on Qt5). Mostly, the 4.14 release is needed by aspects of our workflow (such as translations). This release offers more software stability, with little emphasis on new and less-proven stuff. People who want the latest and greatest KDE software may want to experiment with the Plasma 5 Workspace.

There are over 200 actively maintained KDE applications. Many of them are listed in the KDE userbase. Wikipedia also has another list of KDE applications.

Most previous releases had highlights of new features and prominent applications. This gave some people the impression that KDE developers favored new-and-shiny over quality, which is not true. So, for this announcement of the 4.14 release, developers were asked for details—small, incremental improvements and bugfixes that might not even be noticeable to most users. These are the kinds of tasks that most developers work on, the kinds of tasks that allow beginners to make meaningful, mostly invisible contributions. The announcement has examples of the kinds of improvements that KDE developers have made in this release.

Thank you to all KDE developers working on behalf of people all over the world.

Spread the Word

Non-technical contributors are an important part of KDE’s success. While proprietary software companies have huge advertising budgets for new software releases, KDE depends on people talking with other people. Even for those who are not software developers, there are many ways to support the 4.13 releases. Report bugs. Encourage others to join the KDE Community. Or support the nonprofit organization behind the KDE community.

Please spread the word on the Social Web. Submit stories to news sites, use channels like delicious, digg, reddit, and twitter. Upload screenshots of your new set-up to services like Facebook, Flickr, ipernity and Picasa, and post them to appropriate groups. Create screencasts and upload them to YouTube, Blip.tv, and Vimeo. Please tag posts and uploaded materials with "KDE". This makes them easy to find, and gives the KDE Promo Team a way to analyze coverage for the 4.14 release.

Follow what is happening on the social web at the KDE live feed, buzz.kde.org. This site aggregates real-time activity from Twitter, YouTube, flickr, PicasaWeb, blogs, and other social networking sites.

Learning more and getting started

Find more details and download links in the announcement on the KDE website.

Dot Categories:

18:26, Wednesday, 20 August UTC

Andrea Scarpino (ilpianista)

How I lost my blog content...

...and, luckily, how I restored it!

Let me say this before you start reading: backup your data NOW!!!

Really, do it. I post-poned this for so long and, as result, I had a drammatic weekend.

Last Friday I had the wonderful idea to update my Ghost setup to the newer 0.5. I did this from my summer house via SSH, but the network isn't the culprit here.

You have to know that some months ago, maybe more, I switched from a package installation, through this PKGBUILD, to an installation via npm. So, as soon as I typed npm update, all my node_modules/ghost content was gone. Yep, I must be dumb.

After some minute, which helped me to better understand how the situation was, I immediately shutdown the BeagleBone Black.

The day after I went home, I installed Arch Linux ARM on a microSD and obviously the super TestDisk which got SQLite support since a while now. Cool!

This way I restored the Ghost database, BUT it was corrupted. However, a StackOverflow search pointed me to this commad:

cat <( sqlite3 ghost.db .dump | grep "^ROLLBACK" -v ) <( echo "COMMIT;" ) | sqlite3 ghost-fixed.db  

After that, I was able to open the database and to restore 14 of 40 posts.

My second attempt has been to use the Google cache. Using this method I recovered about 10 posts. Nice, I already had more than 50% of the total content! I was feeling optimistic.

The Arch Linux Planet let me recover 3 posts more, which however I could recover anyway using Bartle Doo; I never heard of this website before, but thanks to it I recovered some posts by looking for my First and Last Name.

I was almost here. About 10 posts missing, but how to recover them?? I didn't remember titles and googling without specific keywords didn't help neither.

I went back on the broken SQLite database, Vim can open it so let's look into for some data. Bingo! The missing posts titles are still there!

And then I started googling again, but for specific titles, which pointed me to websites mirroring my posts content.
At the end of this step I had 38 of 40 posts!

I can't stop now, it's more than a challenge now.

I went back again on the broken database where posts content is corrupted: there's some text, then symbols and then another text which doesn't make any sense in union with the first part. This looks like a tedious job. This Saturday can end here.

It's sunday; I'm motivated and I can't lose those 2 posts because of my laziness.
I've the missing posts titles and I now remember their content, so I started to look for their phrases in the database and, with all my surprise and a lot of patience, I recovered their content!
This mainly because Ghost keeps both the markdown and the HTML text in the database and then the post content is duplicated which decrease the chance of a corruption in the same phrase.

Another summer, another Linux survival experience (that I'm pleased to link to!).

18:23, Wednesday, 20 August UTC

Kubuntu News

KDE Applications and Development Platform 4.14

Packages for the release of KDE SC 4.14 are available for Kubuntu 14.04LTS and our development release. You can get them from the Kubuntu Backports PPA. It includes an update of Plasma Desktop to 4.11.11.

Bugs in the packaging should be reported to kubuntu-ppa on Launchpad. Bugs in the software to KDE.

15:11, Wednesday, 20 August UTC

Adriaan de Groot (adridg)

Prep for Akademy

In preparation for Akademy I wanted to swap out the drive from my laptop — which is full of work-work things — and drop in a new one with stuff I actually want to have with me at Akademy, like git clones of various repositories. I spent a few hours wrestling with my Lenovo x121e (AMD) laptop and FreeBSD, which taught me the following:

  1. You can update the BIOS from a USB stick using only Linux tools, and
  2. FreeBSD does not like it when the SATA controller is in compatibility mode, and either hangs or fails to find the hard drive at all; in AHCI mode things are fine, but
  3. Even the updated BIOS cannot boot from GPT partitions, so I had to be careful during installation to manually do an MBR / fdisk-based installation (this seems to preclude ZFS as well), and then
  4. Wireless isn’t automatically detected (but the WAN modem is), and suspend-resume doesn’t resume.

This makes for  less-than-stellar performance for a conference laptop; I’ll fiddle with it a little before departing for Berlin in two weeks time (isn’t Akademy in Brno? Yes, it is, but the most effective train journey takes me to Berlin first to catch up with the trainful of KDE people at 12:46 from HBf), so I may end up being a FreeBSD person sporting an OpenSUSE laptop.

For development purposes — sort of as a quick counterpart to the FreeBSD VM where I’m doing qt5-based things for KDE applications — I installed a project Neon VM. This way, too, I can check that I’m not breaking anything on non-FreeBSD systems. What I’m seeing on the desktop in that VM is not very encouraging to me, though. As used as I am to the current KDE software on OpenSUSE or FreeBSD (4.12 or whatever), the newer software feels weird and arbitrarily changed and oddly slow. That last bit might be due to VirtualBox, I don’t really know. I’ll have to attend some of the VDG or HCI topics to get a better feeling for the (visual) changes already made.

14:38, Wednesday, 20 August UTC

Vishesh Handa (vhanda)

Extended Attributes Updates

Recently I blogged about how we have been reducing the number of databases in Plasma. We have been doing this by using the file system to store additional information such as tags, ratings and comments.

Unfortunately, extended attributes are not supported on all file systems. The most notable ones are “FAT” and any Network File Share. With Plasma 5.1, Baloo will not support tags, ratings or comments in these file systems.

Why was this done?

With the previous code base, we had to maintain multiple code paths - one for xattr supported systems and one for the other ones. This complicated the code, and more importantly, it provided a false sense of “feature completeness”. We supported tags on these other file systems, but they were -

  • Stored in a custom database
  • Not portable
  • Not user visible mechanism to backup or restore these tags
  • The tags break horribly over Network file systems as the tags would be stored locally.

With these reasons, we decided to drop support for them completely. It’s better to not support something than to support them this poorly.

Advantages?

Not only does this greatly simplify our code base. It also allowed us to easily restructure our architecture so that we can react to xattr changes.

Before 5.1, when an application changed the tags, they would also need to update the Baloo specific index, which meant that the user could not, theoretically, use a non KDE application to write tags.

With 5.1, we now monitor for xattr changes. This means that all applications now no longer interact with Baloo when reading or writing tags. They directly interact with the file system. This makes it really fast, and simplifies the code.

The baloo_file process monitors the file system and updates its index whenever the tags change.

11:14, Wednesday, 20 August UTC

Jonathan Riddell (riddell)

Qt Licence Update

KDE Project:

Today Qt announced some changes to their licence. The KDE Free Qt team have been working behind the scenes to make these happen and we should be very thankful for the work they put in. Qt code was LGPLv2.1 or GPLv3 (this also allows GPLv2). Existing modules will add LGPLv3 to that. This means I can get rid of the part of the KDE Licensing Policy which says "Note: code may not be copied from Qt into KDE Platform as Qt is LGPLv2.1 only which would prevent it being used under LGPL 3".

New modules, starting with the new web module QtWebEngine (which uses Blink) will be LGPLv3 or GPLv2. Getting rid of LGPLv2.1 means better preserving our freedoms (can't use patents to restrict, must allow reverse enginerring, must allow to replace Qt etc). It's not a problem for the new Qt modules to link to LGPLv2 or LGPLv2+ libraries or applications of any licence (as long as they allow the freedoms needed such as those listed above). One problem with LGPLv3 is you can't link a GPLv2 only application to it (not because LGPLv3 prevents it but because GPL2 prevents it), this is not a problem here because it will be dual licenced as GPLv2 alongside.

The main action this prevents is directly copying code from the new Qt modules into Frameworks, but as noted above we forbid doing that anyway.

With the new that Qt moved to Digia and there is a new company being spun out I had been slightly worried that the new modules would be restricted further to encourage more commercial licences of Qt. This is indeed the case and it's being done in the best possible way, thanks Digia.

09:27, Wednesday, 20 August UTC

Olaf Schmidt-Wischhöfer (ojschmidt)

Protecting Software Freedom – the Qt License Update

In my latest blog post, I briefly mentioned the KDE Free Qt Foundation. Today I have some news to announce that relate to this foundation, where I am a board member representing KDE.

What is the “KDE Free Qt Foundation”?

The KDE Free Qt Foundation is a legal entity, set up by KDE e.V. and Trolltech, the company originally developing Qt. It aims to safeguard the availability of Qt as Free Software and already fulfilled an important role. Trolltech was bought by Nokia, who sold Qt later to Digia. The contracts stayed valid during all these transitions.

The foundation has four voting board members (two from Digia, two from KDE e.V.) and two non-voting advisory board members (the Trolltech founders). In case of a tie, KDE e.V.’s board members have an extra vote.

Through a contract with Digia, the KDE Free Qt Foundation receives rights to all Free Qt releases “for the KDE Windowing System” (currently defined as X11 – we plan to extend this to Wayland) and for Android. As long as Digia keeps the contract, the KDE Free Qt Foundation will never make use of these rights.

How can it be made even better?

Today Digia announced a license update from LGPL version 2.1 to version 3. Compatibility with version 2.1 will be kept for all existing Qt modules. LGPL v3 is an improved version of LGPL v2.1 that does a better job of defending the freedom of the code (updated patent language, Tivoization).

Lars Knoll from Digia explains this in his blog post.

At the same time, Digia has agreed to work with us on three improvements for our contract:

  • The contract will include the other desktop and mobile platforms (Windows, Mac, iOS and WinRT) for as long as Qt has support for running on them.
  • Qt will be released under the “GPL v2 or later” in addition to LGPL v3, which helps to safeguard us for the future. (LGPL v2.1 itself contains a similar clause which was dropped in LGPL v3.)
  • The KDE Free Qt Foundation will receive rights to Qt-project.org contributions that were not yet released.

I consider these to be major improvements to our contract.

When will new license combination take effect?

For the upcoming Qt 5.4 release, Digia will already release their new web engine as separate add-ons under the LGPL v3 (plus GPL v2 or later). The license of all other Qt modules will keep LGPL v2.1 and only add LGPL v3. In the KDE Free Qt Foundation, we have approved this approach for Qt 5.4.

We plan to update our legal agreement with Digia so that LGPLv3-licensed modules can be formally part of Qt – in combination with the other improvements mentioned above. (This depends on the KDE e.V. membership not objecting to the plan, see below.)

What does the license update mean for other existing GPL or LGPL software?

  • All Qt modules already contained in Qt 5.3 will stay with LGPL v2.1 for the time being.
  • Compatibility with GPL v2-software will be kept also for the new modules. The total license combination will be “LGPL v3, GPL v2 or any later version of the GPL”.
  • GPL-licensed applications can additionally use the new modules without problems since “GPLv2 or later” is contained in the new license combination. (But within KDE, we have already started to move from GPL v2 to GPL v3 anyway for some applications.)
  • Libraries under “LGPL v2.1 or later” can be updated to “LGPL v3 or later” to use the new modules. (It is possible to link to both LGPL v2.1 and LGPL v3, as long as the license of the application itself allows this, e.g. GPL v3.) The KDE Licensing Policy already requires compatibility with LGPL v3. To drop LGPL v2.1, however, a change of the policy will be needed.
  • Libraries under “LGPL v2.1” only can be updated to the GPL using a clause of LGPL v2.1 to use the new modules.

Please inform me if you hear of a well-maintained Qt-based library that would use the new modules and cannot migrate to LGPL v3.

What does the license change mean for proprietary software?

Proprietary software can use LGPL code if a number of conditions are met (e.g. allowing reverse engineering, passing on the license rights to Qt itself, naming the Qt authors and allowing end users to use a different Qt version). Companies that do not like these conditions can buy an enterprise license of Qt (and thereby fund the development of new Qt versions).

The conditions worded are slightly differently in v2.1 and in v3. LGPLv3 tends to have more legal “teeth”, but the principles are the same.

What are the next steps?

If there are no objections from the KDE e.V. membership, then we will work with Digia and with our own lawyer to implement the improvements of the contract and update it to “GPL v2 or later or LGPL v3”.

If people make me aware of problems with the new license combination, then we will take these into account.

If the KDE e.V. membership should decide against the license update plan, then we will not pursue an update of the contract with Digia and will discuss how to handle the web engine in the future with both Digia and the KDE e.V. membership. Not updating the agreements would mean not getting some major improvements, so I would prefer to solve any problems that might appear in a constructive way.

Conclusion

I am very happy about the planned improvements to the legal framework around Qt. But of course I might have missed something. If you have critical questions, constructive feedback or enquiries for clarification, then please leave a comment or contact me by email.

09:00, Wednesday, 20 August UTC

Baltasar Ortega

¿Qué sección de KDE Blog te gusta más? – Encuesta

Como todo en esta vida, o al menos así debería ser, este blog quiere mejorar y para ello debe tener en cuenta siempre la razón y el motivo de su existencia: sus lectores. Y para ello llega el momento de preguntaros vuestra opinión sobre un aspecto del blog: las secciones. Hace un tiempo KDE Blog [&hellip

08:10, Wednesday, 20 August UTC

Laurent Montel (mlaurent)

What’s new in porting script: clean-forward-declaration.sh?

Finally I committed a very old script.

I wrote it for kde 4.0 but it was not perfect. I took time to fix it last week end.

What does it do ? It allows to remove not necessary forward declaration. It’s very useful during kf5 migration because we change a lot of code. So sometime we keep some “class foo;” which will not create a compile error, but it will keep an unused code line.

As usual it’s not perfect you can’t launch this script and commit directly, but it works fine by default. (If you find some usercase when it failed send me an email and I will try to fix it).

It’s just a shell script, so go to the directly and launch it. Not necessary to specify file name.

For others porting script improvement:

  • I added “search-kdelibs4support-header.sh” another shell script which find all kdelibs4support class header file in a directory. I will help you to remove kdelibs4support. I show what you need to remove.
  • I continue to improve this script convert-kdialog.pl (I fixed some bugs and add new porting code)
  • convert-kmimetype.pl: I cleaned up it.
  • convert-kfiledialog.pl: I added new KFileDialog:: porting. This script is not finished yet.
  • convert-to-new-signal-slot-signal.pl: Improve++ :) Now I can search local variable and I can us it to convert to new connect API
  • convert-kurl.pl: Add new convert code.

I hope you will use them, and that theses scripts help you during porting to kf5.

05:50, Wednesday, 20 August UTC

Rupanjana Mitra (mrupanjana)

The features I have implemented in my Google Summer Of Code project

Sadly, the official coding time for Google Summer of Code has come to an end. :( It was wonderful working with my mentor Jigar. So I have coded three features for Calligra Sheets.

1. View Splitter -
-> I have pushed the code in sheets-vs-mrupanjana.
The feature enables a particular sheet view to be split into two portions vertically. The
cursors are not synchronized. Different input data can be given in the two portions. We often do not need to work with lots of columns, so the sheet view is at times more than optimum. It can easily be split and we can continue our work on both the portions.

2. Highlighting changes in a cell -
-> Code is pushed in sheets-hc-mrupanjana
This is a really interesting one and is absent in other similar applications. The user begins a session, feeds some data in the sheet, makes some changes in the cells where already there has data. The cells which have undergone changes are highlighted with dark blue colour. This enhances readability and the user will be aware of the changes made in the present session.

3. Autocorrection of function name -
-> Code has been pushed in sheets-fName-mrupanjana
Often user forgets the exact function name for calculating cos of an angle, absolute value of a number and guesses the function names. The user makes a guess and inputs a function name which is supposedly wrong. As he or she presses enter, it gets automatically corrected.If the user does not want the change in name, he or she can escape to the next cell using tab.

I have coded the storage and the implementation of all the three features. Hope to see them merged soon. :)


04:20, Wednesday, 20 August UTC

August 19, 2014

Tomaz Canabrava (tomaz)

About the use of linux for normal people

I was trying to write this blog post for quite a long time, and it become so, so big that I’ll have to split it in three posts, It is like a ‘people of kde’ but different, the focus is not to show someone that works for KDE, but someone that tried to use KDE to work – being it a non-tech person. Since I spend most of my days helping people that is struggling with Free Software to pass the hate feeling, I feel that I have lots of things to say being that I’m activelly maintaining over 5 laptops from different friends that lives on different states.

I also like to study humans, this very strange animal that has so many different ways of expressing himself that it’s so, so hard to get it right.

First case of study:

Cléo Martins, Professional Chef, Vegan and “Wanted to try linux because she liked the concept”, That’s a bold move.
cleo
Cléo is a Chef, and as such she knows how to cook and it’s not a technological person at all. She prefer being in the wild and plant her own organic food, cook, taste and be awesome. She’s also presenting a online course on vegan food. All of a sudden she removed windows from all computers from her school and switched to Ubuntu because someone over the internet told her that it was the best linux that there where and it will ever be, than this person vanished – A lovely thing to do if you need somebody to hold hands for a bit while you understand the system that you are using.

Cléo had a *huge* amount of problems on her linux install, tried a few people over the internet, some came to help, some send her a few snippets of code to paste on the terminal and that was making her insanely crazy. “Everyone tells me to do something differently” she cried.

The problems on her computers, and the fix:

  1. Bad Translations on LibreOffice
    • The correct locale was not being set on the system /etc/locale , but it was being set on gnome-settings.
  2. Printer was printing black and white when she wanted colored output.
    • Buggy drivers from HPLIP, if I converted her files to PDF and printed, things worked, but not from LibreOffice
  3. Strange Warnings regarding memory on the disk
    • The dude that installed Ubuntu for her used a 6gbs partition for root and it was full, impossible to update without learning about the unix file systems and creating a link in /var/cache/apt to the other, big partition.
  4. Laptop seems to “die” after a few minutes of idle
    • laptop was on, brigthness was set to minimum, and even if you moved the mouse it wouldn’t get brigther, you needed to unlock the screen and *then* move the mouse, but remember that the screen was pitch black
  5. Email on Thunderbird was *much* more slow than on windows
    • Her account was configured only for online mode

So finally she reached me, I’v went to her house and tried to fix all problems that I could, some I couldn’t because of lack of knowledge on Unity / Ubuntu, I’v asked her if she was willing to try another thing, installed and configured KDE correctly, removed the Unity and Gnome stuff that was there and she was much happier, but still hating Linux – “It seems to me that all of those linux guys are just kids playing with computers, those things should work and they don’t and when they do it’s because you spend a lot of time configuring stuff on my computer to make they work”, I couldn’t disagree. It’s sad, It’s the truth: We like to configure our linux boxes but the overall user wants just to use computers and it should work reliably.

Today Cléo changed her distribution be cause all of the help that she could got on ubuntu only made her computer worse, and is using the same as I use, for I know that I’ll have the time when she needs to help her – I’v spend almost a day configuring it for her so she wouldn’t need to worry about repositories, packages and whattanot. Gave her a brief introduction on what she could touch that will not break the system and what she couldn’t, and she’s now a Linux user, not happy one yet because the HPLIP is still giving her headaches. Overall, not a very good experience on her, but we can do so much better in the future.


21:46, Tuesday, 19 August UTC

Călin Cruceru (crucerucalin)

Project Progress – End of GSoC

Hello again,

As the title says, this is my last report regarding my project during the Google Summer of Code program. I’m saying during GSoC because this is certainly not my last contribution to the plugin I’ve been working on all summer. In fact not only that I will give my best during the next days to get it to a deployable shape for the next KDE release, but I’m also planning to continue contributing to Marble in the long term. But first, I will make a presentation about the changes the plugin has undergone since my last post.

Because I polished many features and added a couple of other new ones as well, I’ll only discuss a little bit about each of the most important ones. The first new thingies I implemented are the Cut/Copy/Paste actions on graphic items (polygons, placemarks, polylines) which allow an easier duplication, in case one wants to set a style to a placemark and then to use it for others and only change the description, for instance. They also increase consistency since they can be performed on all available graphic items. The second new feature I added is the possibility of drawing and customizing paths (polylines) which used to be a real hole in our Editing Mode in Marble. Now one could easily go to osm.org and export an .osm file and load it in Marble. The actions available on polylines are identical to those for polygons since, obviously, these paths are the same thing as polygons except they are not closed. Last, but maybe one of the most important changes is the introduction of the ‘Focus Item’ concept to our Editing Mode. This means that there is only one item at a time with which the user interacts. This approach is much more intuitive for them and also makes the code easier to understand (so developers benefit from this too). It also allowed to easily adjust (enable and disable) the available actions depending on the Focus Item. My work has also included fixing bugs and making some optimizations especially when interacting with polygons and paths since the data they store can become really huge as the number of nodes increases. I tried to cover in the following screencast all these new features.

I also tried through this screencast to give you a hint about how the Annotate Plugin feels like overall and what you can do so far using its available features. The plugin still needs a lot of effort to be put in until I’ll be completely satisfied with it, but until then, this is most of what I managed to do during this summer, Google’s SUMMER of code.

I can say without doubts that it has been a great summer during which I learnt a lot from some of the best programmers and community people I’ve ever met. I want to thank everyone who made it possible, but especially to: Google who came out with this program, KDE for their friendliness and the passionate people I had the chance to meet, Torsten Rahn and Dennis Nienhüser, my mentors, who were always up to help and guide us and who deeply influenced my way of thinking, my GSoC colleagues, Sanjiban and Abhinav for making me feel more competitive and last, but not least, all Marble developers for contributing to the development of such a great application.

My journey with Marble and KDE has just started.

Călin Cruceru


20:05, Tuesday, 19 August UTC

Bhaskar Kandiyal

GSOC 2014: Akonadi Commandline Client’s Current Status

Hey everyone!

GSoC 2014 just ended (today was the firm pencils down date) and I thought it would be great to blog about the current status of my project.

AkonadiClient is an application that allows power users and system administrators to manage Akonadi from the command line.

As per my proposal I had to improve upon and add commands to the already existing prototype of the client (developed by my mentors Kevin Krammer and Jonathan Marten).

I recently finished adding documentation (man pages) to the project and also finished improving upon the add command and it’s test cases. And I beleive this completes all the tasks that I had planned for in my GSoC proposal.Features of AkonadiClient

For those who are interested, following are the commands that are supported by AkonadiClient after this summers work (short description included):

  • add – Add an item to a collection
  • list – List collections
  • rename - Rename collections
  • move – Move a collection
  • copy – Copy a collection
  • create - Create new collections
  • delete - Delete an item or a collection
  • show - Shows the raw payload of an item
  • update – Update an items payload
  • edit Open an item’s payload in $EDITOR for editing
  • agents - Manage running Akonadi agents
  • export – Export a collection to XML
  • importImport a collection from XML
  • expand - Expands a contact group item
  • info – Display information about a collection or an item
  • tags - List all known tags

In addition to these commands a command shell / interpreter has also been created by me which is invoked when no arguments are passed to the akonadiclient. It can be used to run multiple commands without launching a separate instance of the application.

Future Plans

I would love to continue working on the project and add bug fixes and or enhancements (and more thorough test cases :)). I would also love to work on other parts of KDE  like other PIM applications and Plasma.

Shoutouts

I would like to thank my mentors Jonathan Marten and Kevin Krammer  for their support and guidance and I really appreciate the time and effort you put into reviewing my patches Kevin, I’ve learnt a lot working on this project with you (especially the need for properly formatted code :)) and thanks Jonathan for the invaluable suggestions that you gave at the start of the project and the implementation of the tags command :)

I would also like to thank Daniel Vrátil (KDE PIM) for suggesting the proper way to test akonadiclient using Akonadi’s isolated testing environment, Luigi Toscano (Documentation Team) for pointing me in the right direction pertaining to KDE’s standard way of writing man pages and Yuri Chornoivan (Documentation Team)  for reviewing the documentation that I’ve written for the project, much appreciated guys!

This has been a really fun summer! Now, I can finally go and get a full nights sleep :D

Cheers,

Bhaskar Kandiyal

16:30, Tuesday, 19 August UTC

Björn Balazs

Intermediate results of the icon tests: Oxygen

With a series of icon tests we currently study effects on the usability of icon design. This article however does not focus on these general design effects but presents findings specific to the Oxygen icon set.

Keep on reading: Intermediate results of the icon tests: Oxygen

15:34, Tuesday, 19 August UTC

Aaron Seigo (aseigo)

what is "the desktop": laptops now

I recently purchased a new laptop because my old one gave up. I harvested the hard disk with rest going to be recycled, and started looking for a suitable replacement. In the process of doing so it became very evident that there is a significant shift underway.

A few years back "transformable" laptops with touch screens that swiveled around to become a rather brick-like "tablet" first hit the market. I hated the hinge design and the screens were horrible, but there they were and some people bought them. Fast forward to today and Microsoft is mandating touch screens in laptops as part of their new-style Windows UI push. More and more laptops are coming with touch screens not as an exotic add-on, but as a matter-of-course feature.

The laptops that convert into tablets today are now extremely sleek little things. Some are hefty tablets with a detachable keyboard; definitely more towards tablet than laptop, but certainly still a laptop. Some are more traditional clamshell laptops with a screen that flips all the way back, which turns off the attached keyboard, and you have a rather large-screen tablet that is not much thicker than an "actual" tablet. Of course, for a couple years now bluetooth keyboards built into tablet carrying cases have been a small rage, allowing people to turn their tablet into something more like a laptop.

The trend is clear: laptops are not-so-slowly picking up the features we traditionally associate with mobile devices. Touch screens, all solid state components, lightweight .. even pretty. The difference between a tablet and a laptop is growing slimmer with each product cycle.

KDE should pause and think deeply about this. Since the laptop was adopted over a decade ago as a target platform for KDE software in addition to the traditional desktop tower, the laptop is morphing and pulling the tablet form factor into focus.

In fact, many early adopters are using tablets as their laptops. I remember a blog series on this by Henri Bergius last year (or was it early this year?).

As for me and my touchscreen laptop, I actually find myself using the touchscreen a lot more than I thought I would. Scrolling maps is far more comfortable with a finger, for instance. But you know what? It is still a laptop. That thing KDE has done so well in targeting all these years.

Building on this, along with the last two blog entries, I will offer my answer to the question, "What is the desktop?" in the next blog entry.

15:27, Tuesday, 19 August UTC

Krita News

Krita At Siggraph 2014

For the first time, Krita has been present at Siggraph! Siggraph is the largest conference on computer graphics and interactive techniques and it has a big trade show as well as presentations, posters, book shops and animations. While Krita has been presented before at the Mobile World Congress, Siggraph really is where Krita belongs!

Building the Krita Booth at Siggraph 2014

Building the Krita Booth at Siggraph 2014

On Monday, we started building our booth — as you can see, we had a beautiful backdrop made with the splashscreen graphic Tyson Tan‘s made for our upcoming, amazing 2.9 release! We also had a big screen with a running demo that drew a lot of attention. Plus, there was a demo workstation, a huge Z1 sponsored by Hewlet Packard, a Dell XPS12 showing off Krita Gemini and two more laptops for giving in-depth demos.

There were four of us: Boudewijn Rempt, Timothee Giet, Oscar Baechler and Vera Lukman, and sometimes the booth was so busy that people had to wait for a demo.

Krita_Team_Siggraph

We met people who told us that they’d been using Krita for years and loved it, and we met people who had never heard of Krita, but who loved it within 30 seconds of giving it a try. We met people from VFX studios who were already using Krita, and we met people from studios who were itching to start using Krita. Sometimes there’d be something missing in Krita’s function set, but we have a good solution for that, too! Just contact the Krita Foundation and we’ll make an offer for implementing it. We met students, teachers, illustrators, matte painters, professionals and hobbyists. We met kickstarter backers, too!
In short, it was an awesome experience!

We handed out a huge number of leaflets, stickers, postcards and we even had very stylish totebags made — black, with the Krita logo and slogan. There are still a number of them left, and you can get them, too! Just ten euros, postage included — the finest quality cotton totebag, as seen around Timothee’s neck in the picture above:


(Black Krita cloth totebag, 10 euros)

In the end, there’s only one conclusion possible: Krita is really ready for something like Siggraph. It’s a good thing for an open source project to go out and reach for users outside the free software community. We weren’t the only open source project at Siggraph either: the booth next to us was occupied by Blender, and in fact, Ton Roosendaal from Blender helped us with a host of the practical detail. Thanks! Another open source project that had a stand was the Natron compositor application, in France’s big booth.There was a big open source “beer of a feather” do in one of the posher bars on Wednesday night, and despite the horrible overcrowding, some useful conversations happened, and Krita already has improvements to the HDR painting feature thanks to it.

The actual organization of all the details was done by Irina Rempt. Thanks! And another big, big thank-you to Intel for their sponsorship! Without them, we wouldn’t have made it.

12:54, Tuesday, 19 August UTC

Călin Cruceru (crucerucalin)

Randa Meetings 2014 – Impressions

Hi!

Although a couple of days have passed since I returned from Randa, Switzerland, I had in mind long before to make a small blog post about my experience there.

For those who don’t know, the Randa Meetings are yearly events where KDE developers gather together to hack on their projects under the same roof and surrounded by the wonderful Swiss Alps.

Randa-2014

This was my first time at Randa and I can say that it was the greatest week in this summer. I met a bunch of awesome folks who are not only great programmers but also wonderful people to spend the time with. I had a great time coding on Marble alongside my GSoC mentors, Torsten Rahn and Dennis Nienhüser, my GSoC colleague Sanjiban and other KDEdu guys. I also enjoyed talking to developers from other KDE departments which were present at Randa, such as KDE Books, KDE SDK, KDE Frameworks 5 Port, etc.

eu_randa

Other cool things? There were A LOT and I’m sure I will miss something, but I’ll mention some of them: the daily walks which gave us the opportunity to admire the amazing view, the table football, the internet connection (haha, oh, it’s fine, we use git :) ), the food (oh, yeah!), the beer (FreeBeer is one of the greatest beers I have ever drunk) and, of course, the Swiss chocolate.

eu_randa2

randa3

I want to thank very much to Mario Fux who organizes these meetings since 2009 and contributed a lot to my participation since I heard about this year’s meeting after the registrations had closed and he still offered to organize the accommodation for me. So, thanks once again Mario. I’d also want to thank everyone present at Randa this year for this great experience. This was my first participation in a KDE event but not the last one for sure :).

Best Regards,
Călin Cruceru


09:31, Tuesday, 19 August UTC

August 18, 2014

Alvaro Soliverez (Hei_Ku)

Status of online banking in KMyMoney / call for testers

This is a message from Christian, who is working on online SEPA transfers for KMyMoney. We need help to find bugs before this new feature can be merged into our master branch.

Hello all,

for a long time I am working on the online banking branch already. It is close to be finished even if lot still has to be done. But have a look on what is achieved already:

• It is possible to create, edit and send sepa credit transfers. I used KMyMoney for *many* sepa credit transfers already.

• You can save and edit account numbers (<- plural!) for your payees.

• Actually you should be able to create national transfers as well. But my banks have disabled that feature, so KMyMoney automatically deactivated it as well (smart, right?). So I cannot test national transfers anymore.

So it is time for a break. I hope I can continue in about a month. There are a couple of features missing before it can be merged into master (e.g. the database). So think about a 4.x release before the merge. I won't be ready before October anyway.

Also I need more testers before it can be released. Jos had some good points in his blog why I should not test alone [1].

So if YOU are interested in HBCI online banking and are willing to compile KMyMoney yourself, please clone the add-onlinebanking branch and test it.

Then write all glitches, issues but also ideas and any feedback to this list (maybe with [onlinebanking] in the subject). You can even write a todo list
[2] for bugs, so it is easier for me to fix that stuff.

There are some design decisions to make, there I could need some help of people who used the online banking features already.

Please not that using online banking with a database is not possible at the moment! But there is some stuff on my computer regarding this already :)

Each tester helps me a lot to finish the work! Also it is very motivating to get feedback — very important during bug hunting.

Greetings
Christian

19:58, Monday, 18 August UTC

Older blog entries