Language Selection

English French German Italian Portuguese Spanish

Kde Planet

Syndicate content
Planet KDE - http://planetKDE.org/
Updated: 6 hours 10 min ago

Thanks to our Sponsors

Friday 18th of October 2019 07:05:45 PM

The Kubuntu community is delighted and proud to ship Kubuntu 19.10. As a community of passionate contributors we need systems and services that enable us to work together, and host our development tools.

Our sponsors page provides details and links to the organisations that have supported us through our development process.

Bytemark is a UK based hosting provider that generously provide racked and hosted bare metal hardware upon which our build chain KCI ( Kubuntu Continuous Integration ) operates.

Kubuntu Continuous Integration Server, provided and sponsored by Bytemark

Linode, our US based hosting provider that generously provide scalable hosting upon which our build chain KCI operates.

Build and Packaging Servers provided and sponsored by Linode

Big Blue Button provide an online virtual classroom primarily targeted for online learning environments, but has proved itself a valuable tool for remote collaborative working, and community events.

Video conference and training suite, as used by Kubuntu Podcast, provided by Big Blue Button

We are deeply grateful for the support these organisations provide, and we welcome others to come join our community and pitch in.

Akademy 2019 in Beautiful Milan

Friday 18th of October 2019 11:03:57 AM

Akademy 2019 was hosted in University of Milano-Bicocca, Milan from 7th to 13th September. It was great to meet all the fellow KDE contributors again

Akademy gives a chance to bring together artists, designers, developers, translators, users, writers and other contributors to meet in person and discuss about achievements of the past year and plan out the goals for the next year.

Group Photo

First two days contributors presented talks on their respective projects. You can go through the talks as now the videos for the same are available.
All talks were so great and full of knowledge, but out of all there were few topics that fascinated me, and I would like to share those topics with you.

Last year in Akademy, KDE Goals were announced, which were:

  1. Usability and Productivity for Basic Software.
  2. Privacy Software.
  3. Streamlined Onboarding of New Contributors.

So in this Interactive Session, Lydia discussed with the goal keepers how far they have reached and how was their experience while working on these goals, and then finally this year’s Goals were announced,

  • Wayland
  • Consistency
  • All about the apps

This year unfortunately I didn’t give any talk but instead tried my hands in volunteering. I volunteered to be a Session-Chair, basically my job was to introduce speaker and manage talk room. It was such a learning and amazing experience to be a volunteer.

Having a word with the Keynote speaker Leonardo Favario.
{Photo credit Paul Brown}

Rest of the week was BoFs (Bird of Feather), Workshops, Meetings, Daytrip and Training.

There were many BoF sessions scheduled for a week and I attended the following sessions:

KDE PROMO :

We discussed on some marketing strategies, and did some brainstorming on few topics. Learnt how far we have reached on spreading KDE to new users and determined few tasks we would work on for this year.

OpenQA :

I work and contribute in OpenQA Project, in this session Harald Sitter and Jonathan Riddle gave a brief introduction on OpenQA and then we discussed the workflow for writing new tests cases, and I personally got a chance to learn alot of new things from Jonathan Riddle.

KDE India :

We discussed on next KDE Conference India, listed few places were we can host the conference, and I am happy to announce that conf.kde.in is coming back in 2020 It will be held in Maharaja Agrasen Institute of Technology from 17th to 19th January. If you love open source and wish to learn more about our community come join us in this conference

Privacy :

In Privacy BoF we discussed on various aspects, determined goals for this year, talked a bit on funds for next sprint and did brainstorming on few topics.

KDE Students Program :

Here we discussed about the students program, took feedback on what we need to improve, what should be the work pattern for this year and our main focus was on Season of KDE Program, It is an upcoming project so we were discussing on its timeline and structure which soon you will come to know

Daytrip

It is a tradition of Akademy that Wednesday afternoon we all attendees go out and explore a particular area. This time the trip went to the North to Varenna near Lake Como, Ahhh! it was indeed the most magnificent place, a day where I enjoyed the nature’s beauty accompanied with my incredible friends.

Enjoying Daytrip

Training

Communication Training:

KDE e.V. had organized Communication Training session for community members, and I am so glad I could attend this training. Our trainer Tilman Krakau gave some basic but very essential lessons on communication, how to coordinate with your team-workers and always try to understand the receivers’ point of perception.

Conclusion

Akademy was really productive, it was great socializing and meeting old friends and making new ones. Learnt alot of new stuffs and it was an amazing experience. I am really thankful to the KDE e.V. for sponsoring my trip.

And to those who aren’t part of KDE yet and wish to be, I have something interesting to share with you, Season of KDE is coming soon. It is a great way to join our community, learn new things and get comfortable with coding, and there is one thing I would like to tell about this program, it is just not for students it is open for everyone

See you all next Akademy, till then Happy Coding!

 

 

Qt Creator 4.11 Beta released

Friday 18th of October 2019 10:29:03 AM

We are happy to announce the release of Qt Creator 4.11 Beta!

Plasma Mobile: weekly update: part 3

Friday 18th of October 2019 12:00:00 AM

Thanks to the awesome KDE community, we are happy to present the Plasma Mobile project’s third weekly update.

Shell User Interface

David Edmundson backported some Qt Wayland patches that improve the overall stability of the shell.

Marco Martin added further refinements to the shell.

Kaidan

Jonah Brüchert replaced the custom contacts search field by the recently added Kirigami search field in Kaidan. The search is accessible by using the search action or by pressing Ctrl+F as usual. Robert Maerkisch improved the performance of the search by using a proxy model instead of hiding contacts from QML. Apart from that the contacts are now sorted chronologically and secondarily also alphabetically thanks to Linus Jahn.

Kirigami

Kirigami apps no longer show an empty context drawer in certain circumstances (Nicolas Fella).

Marco Martin fixed the Kirigami drawer handles on Plasma Mobile.

KBibTeX

Thomas Fischer has started work on a mobile-friendly BibTeX client.

Dialer

Nicolas Fella made sure that an appropriate message is shown when no contacts could be found.

Settings Application

The code for the settings applications received a small cleanup. Names of various settings entries have been adjusted to be more concise: they now show “Foo” instead of “Configure Foo” in the top bar.

Calindori

When creating or editing an entry, saving is now the most prominent action.

Angelfish

Angelfish, the browser, has seen some refactoring by Jonah Brüchert which avoids loading all kinds of dialogs (authentication, webrtc permissions etc) at startup and loads them when needed. This should result in reduced startup times.

Input of urls in its settings is now converted into proper urls, to make sure for example the homepage can actually be loaded even though the user did not enter https://kde.org but just kde.org.

Maui Project

The file browser component has gained improvements for focus chaining, keyboard navigation and new keyboard shortcuts. The places list can now browse all available tags. Files now keep their associated tags even when renamed or moved. Furthermore it now supports copy/pasting files into/out of the app.

The file previewer now uses Okular to preview any document supported by Okular.

The browser view has an improved Miller Column view and its model features improved performance by only adding or removing the necessary paths.

The MauiKit framework and some Maui apps can now be built for Android using CMake in addition to qmake. This allows building Index and vvave using the KDE Binary Factory and making them available in the KDE F-Droid repository (Nicolas Fella). This allows you to test some of the Plasma Mobile apps even without a Plasma Mobile device. MauiKit gained initial support for handling system accounts in a more integrated way by using libaccounts on Linux.

MauiKit parts now have been separated into components to allow having lighter builds when using static linking. Those components are: Editor, Filemanager, Tagging, Syncing, Accounts, Terminal and Store.

When using qmake, MauiKit now automatically fetches all the needed extra binaries, library sources, and assets needed to compile when statically linking.

vvave’s codebase has received some cleanups and improvements.

Want to be part of it?

Next time your name could be here! To find out the right task for you, from promotion to core system development, check out Find your way in Plasma Mobile. We are also always happy to welcome new contributors on our public channels. See you there!

Kubuntu 19.10 is released today

Thursday 17th of October 2019 10:40:35 PM

Kubuntu 19 .10 has been released, featuring the beautiful KDE Plasma 5.16 desktop.

Codenamed “Eoan Ermine”, Kubuntu 19.10 integrates the latest and greatest open source technologies into a high-quality, easy-to-use Linux distribution.

The team has been hard at work through this cycle, introducing new features and fixing bugs.

Under the hood, there have been updates to many core packages, including a new 5.3-based kernel, Qt 5.12.4, KDE Frameworks 5.62.0, Plasma 5.16.5 and KDE Applications 19.04.3. Firefox 69 is the default browser and LibreOffice 6.3 is provided by default in the full installation, along with updates and bugfixes to latte-dock, Elisa 0.4.2, Kdenlive, Yakuake, Krita, Kdevelop and Ktorrent.

Getting Kubuntu 19.10

Upgrading from 19.04
Detailed upgrade instructions can be found here: Kubuntu 19.04 to 19.10 Upgrade

Download a Disk Image
Download a Bootable image. Direct downloads, torrents, and zysnc are available as options.

For more about the changes in the Ubuntu base, see the Ubuntu Release Notes

Since Plasma 5.17 has been released too late in our release cycle to make it into 19.10 as default, users can install these via our backports PPA.

A Plasma Wayland session can be added by installing the package plasma-workspace-wayland, but is not officially supported. This will add a Plasma (wayland) session option at the login screen. Users needing a stable desktop experience should select the normal ‘Plasma’ (without Wayland) option at login.

NVIDIA drivers are now included with the ISO, which allows the installer to select and install these when the 3rd party and restricted drivers and codecs option is chosen, even if you are installing offline.

ZFS on root installer support landed too late in the Eoan cycle to implement and test for the Ubiquity KDE front end. This option is therefore targeted for the 20.04 LTS release.

See our Release Notes for more information: https://wiki.ubuntu.com/EoanErmine/ReleaseNotes/Kubuntu

conf.kde.in is live!

Thursday 17th of October 2019 10:00:00 PM

At least twice I have been to India. Atil Chitnis closed FOSS.IN in 2008, and I wrote about that only briefly, and in 2011 there was conf.kde.in in Bangalore which I wrote about some more.

During one of those conferences I fell asleep on the ground in the hall at the KDE booth.

But there’s a new conf.kde.in happening at the beginning of 2020. You can read more on the dot. Based in Delhi this time, the conference remains true to its roots:

conf.kde.in is a platform for Qt/KDE contributors, developers and enthusiasts to come together, share their knowledge, contribute, learn and play.

Kai-Uwe has made a badge that, frankly, rivals my own kolourpaint prowess:

Now, I’m not going yet. Like everyone else, I go through the call-for-papers process (which means thinking up things to talk about!). You can find the link on the site, along with other information (you’ll need a KDE identity account).

During one of those conferences there were monkeys.

For me personally, it’s weird and inspiring seeing conf.kde.in return. I remember the excitement of an own conference in India, of first shirt designs, of The KDE Handbook which Pradeepto put together with the enthusiasts of the time (I still have my copy). The amazing “we’ll make it work” attitude to conference organization which seems to be a hallmark of KDE events to this day.

If you watched the Akademy BoF summary videos this summer, you saw the results of the KDE India BoF, which included planning – starting the planning – of this event. And now it’s here.

So watch the site, write a proposal, and be there!

List stores in kde.org/applications

Thursday 17th of October 2019 06:35:35 PM

Announcing a small update for the goal: KDE is All About the Apps. kde.org/applications is now listing the stores where the application is available. For the moment, it’s only listing Linux and the Windows Store, but support for F-Droid and the Play Store is planned. Stay tuned!

Announcing LaKademy 2019

Thursday 17th of October 2019 05:53:13 PM

Hi there,

The seventh edition of the KDE Latin-American Summit (LaKademy 2019) is ready to go! It will take place at Salvador-Bahia, northeastern Brazil, from 14th to 17th November. 24 participants, hopefully accompanied by some local guests, will meet at Information Technology Superintendence of Federal University of Bahia for four days of hacking sessions, promo meetings, and all sort of KDE-related things.

Salvador (the city I live in) is well known for its beatiful beaches, the biggest carnival in the planet, and its unique cuisine. In November, attendees can already have a glimpse on our warm summer and hopefully that will bring a bunch of additional energy for having a fun and productive meeting.

Salvador - Bahia - Brazil

Stay tuned for the upcoming news of our achievements at LaKademy 2019. Many thanks to Angela Cunha for coming up with such a nice LaKademy 2019 logo and to the KDE e.V. for supporting the meeting.

See you!

KDE neon 5.17

Tuesday 15th of October 2019 02:48:02 PM

KDE neon 5.17 is out. You can upgrade your existing KDE neon User Edition install or install fresh from an ISO image or run the Docker image. Featuring Plasma 5.17 it is packed full of new features according to OMG Ubuntu.

Very Hot New Stuff

Tuesday 15th of October 2019 01:58:40 PM


K', Hot off the presses, here's some New Stuff for you, with the Quickness! ...terribly sorry about that, i shall endeavour to do better. Let's try that again.

As of KDE Frameworks 5.63, released on 2019/10/12, we officially introduce the fruits of my labour over the last few months, the shiny, new Qt Quick components, which were created to bring the Qt Quick submodule of KNewStuff up to par with the old QWidget based UX. Not only that, they also bring with them some shiny, new abilities in KNewStuff, which previously did not have any concept of comments outside of the very basic information of how many a content item had (which, incidentally, was also incorrect, and had been since, well... since that code was written about a decade ago - guess nobody noticed, because the information is a bit useless on its own).

Before running off and explaining what's what, have a video of my presentation from Akademy 2019, where i gave an overview of the new components and functionality:


Or, indeed, download the mp4 file by clicking right here.
Now, before you hop over to the API documentation and start digging in to work out how to actually use all this hot new stuff really quickly (sorry), here's a really quick visual rundown of some of the shiny stuff:

You know this. It's the KNS::Button button, but now more Quick [API]. Don't use this unless you're doing some porting, keep going...
The dialog we all know and love, but with a twisty twist and shiny new tile types [API] Don't use this either (with a similar caveat), use the next thing instead!
The new Page. The new intended central access. Shown here in the similarly new test tool. [API]
The entry details dialog, except as a Kirigami Page [API]
A lot of entries have multiple options for stuff to get - the DownloadItems Sheet shows those. [API]
You want comments? We got comments! All automatic, except if you feel like doing something much deeper. Have a model. [API]
Authors are important. So we should trust what they tell us they're called, and what they look like, right? Anyway, a super easy data provider Component for Author information. [API]
When you have a UI-less library that needs to get some feedback from the user, what do you do? Well, KNewStuff uses a QuestionAsker system. [API]
If you (like Peruse) was already using the old Qt Quick components List and Item, they still work just fine. In fact, finer than they did before by a fair chunk. Do consider using the Page, though. [API]
i hope you have enjoyed your screenshots and videos ;) Now go forth and implement getting that hot new stuff in your Qt Quick applications!

Also don't hesitate to mention, when you discover it, the various holes in the documentation that undoubtedly are there, so that we might get those fixed. Even better yet, we are very happy to take patches over on Phabricator, both code and documentation ones. One thing that i know is missing is a porting guide, to help people transition from the old QWidgets based stuff to the Qt Quick components for people who have got applications they're looking to port or are already porting.

The word of the day is: Shiny. Because shiny things are neat ;)

2D using Godot

Monday 14th of October 2019 07:13:54 PM

As mentioned, I’ve started using Godot to create some games with my kids. We decided to start with something simple, so we created Super Memory. I’m still waiting for a graphics delivery, so right now the you play with “dad’s placeholder cards”. They aren’t pretty – but they get the job done.

I had three major goals when creating this game:

  1. Teaching the kids basic programming logic – how to think like a machine.
  2. Teaching myself a bit about Godot.
  3. Creating a game that I can push all the way to Google Play.

The first two items are done – for the third I’m still waiting for the graphics delivery. Kids are such lazy team members ;-)

When it comes to the game logic, I decided to push it all into the entry point of the game: the table scene. The main parts are in the init_game function and the _on_card_flipped function. I would consider the rest of the code support functions, or GUI driving functions.

This brings me to the GUI parts. I’m still not convinced that I understand how to properly layout stuff using Godot, but at least it looks ok now – at the cost of some fixed element sizes and such. I need to spend some more time to really understand how the anchoring and stretching really works. I guess I have a hard time wrapping my head around it as the approach is different from what I’m used to from Qt.

Looking at the rest of the code, I’ve tried to make all the other scenes (in Godot, everything is a scene) like independent elements. For instance, the card scene has a face, and an is_flipped state. It can also signal when it is being flipped and clicked. Notice that the click results in a signal that goes to the table scene, which decides if the card needs to be flipped or not.

The same goes for the GUI parts. They simple signal what was clicked and the table scene reacts. There are some variables too, e.g. the number of pairs setting in the main menu, and the points in the views where that is visible.

All in all, the code is quite messy. I’m getting used to GDScript, so parts of the code has static typing information, while others don’t. Also, naming and underscore prefixing is a bit random. I’m also a bit unsure about the onready var pattern to hold references to various scene elements vs hard coding the reference. And one more thing – some parts are in Swedish before it all shifted to English.

At the moment, I have built installers for all desktop platforms and tried them. I’ve also setup an Android toolchain and pushed development builds to a couple of phones. This also works beautifully. Next step is to get the graphics delivery and push something to Google Play. I will keep you posted.

Interview with Fabian Mosakowski

Monday 14th of October 2019 08:00:29 AM

Could you tell us something about yourself?

My name is Fabian Mosakowski and I’m an aspiring illustrator living in France. I’m currently working on my portfolio creating an illustrated fantasy tale called “If Only Blood Was Red”. It deals with what’s left of humans thriving to survive in a land that doesn’t welcome them.

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

Currently as a hobby artist. I made a few comissions for close relatives but I’d like to make it professional once my portfolio will be done.

What genre(s) do you work in?

Mainly fantasy as it’s the narrative thread of my project but I also mix it with dark art, another genre I really enjoy, to fit the story atmosphere. I also occasionnally work in vectorial or comic book style for lighter projects.

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

I try to learn everyday from various artists, beginners and professionals, traditional and digital. They always have something to teach me whether it’s a composition, a texture, a story they wish to share or even a color palette. But if I had to choose one, I would go for Magali Villeneuve, a well-known fantasy illustrator. The detail of her work and her path as a self-taught artist both have my admiration.

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

The first time I painted on screen was in September 2017 when I entered a video game school as a Game Art student. We were being taught the basics of a digital painting software interface from the first days of class.

What makes you choose digital over traditional painting?

I think digital medium offers me the opportunity to be more organized and cautious when drawing. I tend to get very messy and insecure on paper whereas on screen, you can rely on guardrails such as layers and CTRL+Z

How did you find out about Krita?

During my years as a Game Art student. Krita was the software teachers made us work with. Although I couldn’t continue my formation, I didn’t give up on Krita and still learn to discover its capabilities.

What was your first impression?

At first sight, I was really confused about how to use the interface as I never painted digitally before. But still I found it more intuitive than other licences because tools were specific to drawing. Krita is very user-friendly and I managed to get used to it (and the graphic tablet) within only a week.

What do you love about Krita?

I especially enjoy the fact that Krita never imposed me technical constraints. Whether it’s a texture, a pattern or a special effect, there is always the perfect brush or technique to achieve it. Once you managed to isolate every tool, it becomes much more intuitive to modify brushes, mix them and add filters.

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

I don’t have much to complain about except for the Mirror tool which sometimes has difficulty tracking the stylus path.

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

To be honest, except Inkscape for the vectorial drawing, I never used any other digital painting software than Krita. I started with it and I intend to keep working on it. Krita is also an accessible tool in times when you cannot afford proprietary digital painting software. Art can be a really tough sector to penetrate so FLOSS allow you to first gain experience and then contribute.

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

It would be “Madame de Visembaut, Dead-Blood Duchess”. I really enjoyed working on atmospherical lights and clothes patterns like the victorian lace dress. This character needed a really specific setting, reflecting her leader status, her occult abilities and the faction state of mind.

What techniques and brushes did you use in it?

I mainly use two brushes in every painting: Airbrush_Soft to do colour planes and Blender_Basic to blend them.

The textures and special effects require more specific brushes such as Speedpaint Light Sparks for the candlelights and Blender_Rake to create the wooden texture of the staircase.

For the lighting, I also used the Soft Light SVG blending mode which is really useful to make the setting take on the light source colour.

Where can people see more of your work?

I’d to be glad to introduce them to my project storyline here: http://www.fabianmosakowski.com/if-only-blood-was-red/
From there, they can access my gallery portfolio

Anything else you’d like to share?

I also have accounts on Twitter and ArtStation and I’d love to meet other artists (illustrators, writers, musicians…) and discover their work

Contributor License Agreement and Developer Certificate of Origin references

Sunday 13th of October 2019 03:30:00 PM

In the last few years I have come across the CLA topic several times. It is and will be a popular topic in automotive the coming years, like in any industry that moves from being an Open Source Producer towards becoming an Open Source Contributor.

In my experience, many organizations take the CLA as a given by looking at the google, microsoft or intels of the world and replicate their model. But more and more organizations are learning about alternatives, even if they do not adopt them.

What I find interesting about discussing the alternatives is that it brings to the discussion the contributor perspective and not just the company one. This enrichs the debate and, in some cases, leads to a more balanced framework between any organization behind a project and the contriibutor base, which benefits both.

Throughout these years I have read a lot about it but I have never written anything. It is one of those topics I do not feel comfortable enough to write about in public probably because I know lots of people more qualified than I am to do so. What I can do is to provide some articles and links that I like or that have been recommended to me in the past.

Articles
  • Why you probably shouldn’t add a CLA to your open source project“, written by Ben Alter back in 2018 is a must read. Ben is a United States-based lawyer who works for GitHub as their “evangelist” to government agencies.
    • CLAs are Not a Sham” by Kyle E. Mitchell, a lawyer, is a respond to the previous article.
  • “The trouble with Harmony: Part 1 and Part 2″ by Richard Fontana 2011, a Red Hat lawyer. He came back to the topic this year (2019) in his article “Why CLAs aren’t good for open source” summarising Red Hat’s position.
  • Why Your Project Doesn’t Need a Contributor Licensing Agreement” by by Bradley M. Kuhnon June 9, 2014. Bradley is a well known member of the Software Freedom Conservancy.
  • Contributor Agreements Considered Harmful” by Eric S. Raymond on July 8, 2019, represents a clear view from the individual contributors perspective on the CLA topic.
  • Community contributions and copyright assignment” By Jonathan Corbet, October 28, 2009. This article analyses from the contributor’s perspective the Canonical Ltd CLA which started a heated debate back then, leading to the Harmony project creation first and the initiative by the Mark Shuttleworth Foundation later on, two of the main attempts to standardise CLAs up to date.
  • Some thoughts on Copyright Assignment” by Michael Meeks, 2011, is still one of the most relevant articles on the topic, covering not just the theory but also putting examples of how harmful unbalanced relations with an entity that controls an Open Source project might be for contributors. Specially relevant has been over time the Recommendations section of this article.
DCO

It is impossible nowadays to talk about CLAs without talking about DCO (Developer Certificate of Origin). Here are some articles that I find interesting:

  1. Ben’s Cotton article “CLA vs DCO What’s the difference“, from 2018 is a good article to read because it does not favour one over the other one.
  2. I like the article “CLAs and using DCO clearly” from Hen written back in 2018 because it summarises well the costs associated to CLAs and how they (do not apply) apply to the DCO.
  3. It is worth reading the summary of James talk at Linux Foundation Collaboration Summit 2014, “The most powerful contributor agreement” done by Jonathan Corbet.
  4. Julien Ponge wrote “Developer Certificate of Origin versus Contributor License Agreements” back in 2016.

For companies that “do not buy into the anti-CLA” case, R. Fontana propose another two options:

  1. Eclipse Contributor Agreement
  2. The Software Freedom Conservancy’s Selenium CLA, which are not proper CLAs but DCOs in his view.
FLA

It is always interesting to learn about the Fiduciary License Agreement FLA, developed by the FSFE:

  1. Fiduciary Programme
  2. FLA FAQ
  3. FLA-2.0 announcement.
Inbound = outbound

A serious conversation about CLA requires to understand the concept of inbound=outbound:

GitHub explains inbound=outbound as:

  • outbound licensing”, refers to granting a licence to another party to use, copy, distribute…. (depending on the license) your intellectual property.
  • inbound licensing” means obtaining a licence from another party, to use, copy, distribute…. (depending on the license) its IP for your own consumption (distribution, etc. again depending on the license).

GitHub explains inbound=outbound as:

Whenever you make a contribution to a repository containing notice of a license, you license your contribution under the same terms, and you agree that you have the right to license your contribution under those terms.[…]

In the CLA discussion context, the general idea behind inbound=outbound is that the project should make evident to every contributor the contribution conditions, including those related with licenses rights and restriction. The contributor will then contributes her code with the same license, giving little room for later claims, either by the project, the contributor or third parties, based on those conditions being unclear or not easily reachable.

The project license and its description should be prominent and located at least where it is common practice in Open Source to find them. The same applies to all the assumptions and conditions affecting the contributors and the project in this area.

Common practice, many will claim, but sadly some projects are better than others on this.

Who is doing what?

In CLA discussions, it helps to know what others are doing. Here you have some links I have collected over the years and I still find relevant. I have to recognise that in a couple of cases cases I do not remember exactly why they called my attention at the time.

Company driven projects:

Consortium driven projects:

Community driven projects

Organizations with different agreements for individuals and entities:

Organizations with CLA:

Additional links

And finally, I have several links that I think are worth reading for different reasons:

  1. Project Harmony is worth investigating as an interesting attempt to standardize CLAs:

2. GitHub uses an Individual and an entity CLA. It is interesting their CLA-assistant.

3. James Bottomley’s ideas about the Corporate Contribution Pledge published back in 2016 as complement to the DCO are worth reading.

Additional suggestions from readers

I hope my effort triggers the contributor in you so you provide additional links or challenge the ones above. I will substitute this text for those links you provide, obviously giving you credit by default. It would be a great way to help others in the future. Thank you very much in advance.

Rudimentary KBibTeX client using Kirigami2

Sunday 13th of October 2019 02:08:13 PM

KBibTeX is a bibliography editor (BibTeX and somewhat BibLaTex) used in conjunction with LaTeX and friends. Based on this code base, a SailfishOS client called ‘BibSearch’ exists which allows to search for bibliographic data in various online sources (IEEE Xplore, Google Scholar, ACM Digital Library, …). BibSearch&aposs code makes use of KBibTeX&aposs C++ code, has its user interface implemented in SailfishOS&aposs Silica QML, and provides just two C++ files on its own to glue together everything.

It has long been my goal to provide a QML or Kirigami-based client of KBibTeX of similar functionality, either to be used as Plasma widget or for Plasma Mobile (thus equivalent to the SailfishOS implementation). Finally I have been able to put together an initial implementation using Kirigami2. There are several rough edges and bugs, and much of the intended functionality is missing, but at least one can search for bibliographic data. If you are familiar with Kirigami, it should be a low-hanging fruit to fix the obvious issues, especially given that there is already a Silica-based client as reference. Code contributions to branch feature/kirigami are welcome!



comments

Follow-up on ‘ASCII Transliteration without ICU or iconv’

Sunday 13th of October 2019 01:51:24 PM

In a recent blog posting I presented some code on how to transliterate common Unicode characters into ASCII-only representations using a offline-generated lookup table to avoid dependencies on ICU which would normally do this job.

By an anonymous commenter, I got pointed to that Unicode (in Qt) is slightly more complicated than I had considered when writing the code: I missed to handle planes beyond the Basic Multilingual Plane (BMP) and the ‘surrogates’ between code points 0xD800 and 0xDFFF. In a series of recently pushed Git commits I addressed problem of surrogates and fixed some more issues. Some preparatory work has been done to support more planes in the future, but as of now, only the BMP is supported. For details, please have a look at the five commits posted on 2019-10-12.



comments

This week in KDE: Plasma 5.17 approaches

Sunday 13th of October 2019 06:01:32 AM

Lots of great backend work happened this week which is very important, but not terribly flashy. And most of the in-progress work I alluded to last week hasn’t landed yet. So I’m afraid the user-visible changes will have to be a bit light this week. But fear not! For Plasma 5.17 is undergoing its last rounds of final polish and bugfixing before the release next week, and work churns along on lots of great stuff slated for Plasma 5.18 and the next apps versions!

Bugfixes & Performance Improvements User Interface Improvements How You Can Help

Check out https://community.kde.org/Get_Involved and find out ways to help be a part of something that really matters. You don’t have to already be a programmer. I wasn’t when I got started. Try it, you’ll like it! We don’t bite!

Finally, consider making a tax-deductible donation to the KDE e.V. foundation.

Akademy 2019 recap

Saturday 12th of October 2019 11:30:00 AM

Akademy 2019 was hosted in the Milan, Italy. I had opportunity to attend the event and meet the other KDE developers, designers and users.

Talks

There were many interesting talks, including use of opensource in government, flying drones, virtual reality and several community related topics. Honestly it is impossible to list all the awesome talks I attended here, so go and check schedule for list of talks and slides. However I want to highlight the one talk which I gave,

Plasma on embedded devices

In Akademy 2018, I gave a talk about Plasma on mobile devices. Talk discussed why it is harder to run a Linux userland on the off-the-shelf mobile devices. This year I and Marco presented a slightly different topic, Plasma on embedded devices. Talk was about what solutions are offered by the KDE community for such embedded devices, and what efforts are being made.

Marco Martin also presented a new shell package, plasma-nano, which is a minimal shell you can extend to create a Plasma based user interfaces for embedded devices.

Birds of Feather sessions Gitlab community & Workflow

Gitlab developers Alessio Caiazza, Jacopo Beschi and Ray Paik hosted a BoF session about the Gitlab workflow, and how to contribute to Gitlab. It was interesting BoF to attend. Seeing as KDE is working on adoption of the Gitlab for it’s code-hosting. It was quite useful session to attend.

Plasma Mobile

On Tuesday, We hosted a Plasma Mobile BoF, where we discussed topics ranging from general shell user-interface to the applications, topics which were discussed includes,

  • File chooser implementation for Plasma Mobile: Currently it just shows the desktop based file dialog, which is not user friendly on mobile
  • Start-up speed improvements for shell and applications
  • Updating the information on Plasma Mobile website
  • Documentation and developer experience, and how to improve it
  • Various application specific issues
  • Hosting a Plasma Mobile sprint in 2020
  • Status of Packaging for Plasma Mobile in various distribution

Overall, it was quite productive BoF, even though we were constrained by the time!

Plasma on Devices

As a extension to our talk, Marco and I hosted a “Plasma on devices” BoF. Where we demostrated the Plasma Nano shell. Talked about the infrastructure we have currently in the Plasma, and also talked about how we can make this more interesting for hardware vendors.

KDE PIM

As Plasma Mobile is making various improvements, one of the requirement is the personal information management applications like Calender, Email, Contacts will be needed, I attended the KDE PIM BoF to discuss how best these two teams (Plasma Mobile and KDE PIM) can work together, you can find out more details abut this in Volker Krause blog. In general we discussed following topics,

  • Moving of KCalendarCore and Kcontacts to KDE Frameworks
  • Moving of the KDAV protocol library to KDE Frameworks
  • Plugin Infrastructure in the KCalendarCore
  • KAccounts integration in the KDEPIM
KDE India

Indian KDE-ers (is it even word? I made it up) met together to discuss the possible location and dates for next conf.kde.in, and how better we can improve the conf.kde.in organization procedure. There were several possible venues and dates were suggested by the attendees.

Sysadmin

Ben Cooksley hosted a KDE sysadmin BoF, where we discussed various topics related to our infrastructure, and scale of data/traffic we have to handle. We also agreed upon some internal todo items to work on in future.

Online Accounts Integration in KDE

As a follow-up to KDE PIM BoF, I and Daniel Vrátil hosted a Online Accounts integration BoF, where we discussed various topics,

  • Current state of kaccounts infrastructure
  • Possible API improvements for KAccounts
  • Where we can make use of the KAccounts in KDE
Student Programs

We hosted a BoF session to talk about the KDE Student Programs, Google summer of Code, Season of KDE, and GCI. We also discussed the timeline and structure of Season of KDE program. Short note that I will be attending Google Summer of Code 2019 Mentor summit in Munich later this week.

Closing thoughts

Overall quite exciting event, I would like to thank KDE e.V. for sponsoring the accomodation and travel. It is quite awesome to meet community in-person and share ideas, and learn new things!

The Road to KDE Frameworks 6

Saturday 12th of October 2019 09:15:00 AM

At Akademy Lars presented the plans for Qt 6 in his keynote. With Qt 6 planned for November 2020 we have to look at KDE Frameworks 6 within a two year horizon as well. We therefore need to get started with this as well, so we can help to shape Qt 6, and so we ensure a smooth as possible transition.

Planning Frameworks 6

I have previously briefly mentioned the discussions around this at Akademy here, and David has sent a more detailed report on this to the Frameworks mailing list. This topic deserves a few more details though, and things have evolved since Akademy.

The central hub for coordinating plans and work is the KF6 Workboard. The tasks we currently have there basically fall into three categories:

  • Ideas/proposals: that is things that still need to be discussed and decided upon, sometimes requiring a more detailed analysis on the impact, or a transition plan. If you have topics you would like to see addressed in KF6, that’s the place to start a discussion. That’s especially a call to Frameworks users.
  • Preparation tasks that can be done in KF5-based code already: This is mostly about removing the use of deprecated modules, classes or methods that are expected to go away with Qt 6 or KF6. If you want to get your hands dirty right now, that’s the best place to get started.
  • Tasks that depend on Qt 6 or require executing actual ABI breaks: That’s the minority of tasks at this point, and those of course need to wait until that phase of the development starts (I’d guess around H2 2020).

To make progress on the first category there’s the idea to have a KF6 sprint in the not too distant future. We did that for a week in Randa for planning KF5, and that was tremendously helpful in order to come up with a detailed plan on what we wanted to achieve. So I’d not only encourage everyone contributing to Frameworks development to participate there, but also those of you heavily using Frameworks. Feedback from application or workspace developers is immensely valuable, and this is the place to influence the platform you build your software on top. Same goes for the people working on different form factors or underrepresented platforms. Subscribe to T11535 and indicate your interest to participate there.

Planning the Transition

Besides planning what we want to achieve in KF6 I think it’s equally important to plan how we transition there, especially since those transitions haven’t been always exactly smooth in previous occasions. Lars presented Qt’s approach (only minor source incompatibilities if your code builds cleanly without using deprecated methods in the last Qt 5 release), and that’s a good starting point for KF6 too I think.

However, the situation for KDE is different to Qt’s in some aspects. KDE is not primarily producing Frameworks, but products build on top of those (Plasma and hundreds applications), which allows us to define additional criteria for what we are allowed to change or remove.

The current proposal is to define a set of modules that block a breaking change, that is those modules need to be adjusted (or at least need to be trivial adjustable) before a breaking change is allowed. This is less about things like a renamed but otherwise unchanged method but about the less straightforward changes. I would like to avoid things like “KHTML was dropped, just port to QWebEngine”. Yes, both can render an HTML document somehow, but that’s where the similarities end, the API and the capabilities of the APIs are vastly different, and not all use-cases can be easily mapped, if at all. The burden to sort this out should not solely fall on the application maintainers, as that will result in many things staying behind on Qt5/KF5 for years to come.

Which components are part of this set is still under discussion in T11563. This should contain all actively developed and released products, but ideally nothing on life support and still full of remains from the 4 era. The starting point is Plasma, Applications, Krita and Extragear. So this is also a good reason to promote actively developed things out of Playground, and to retire things from the other categories that we don’t want to carry forward.

Ongoing Work

It’s not all planning and discussion though, actually quite some work has happened since Akademy already:

  • Friedrich has been working on infrastructure to disable deprecated methods in KDE Frameworks at compile time in a similar way as Qt does support this, see his blog post for details as well as the corresponding task on how to help. This will ease long-term maintenance, and it will allow us to uncover remaining users of deprecated KF5 API.
  • Andreas has ported Step, Kalzium and Parley away from KHTML, and Sune has started to do the same for KHelpCenter. We also got rid of quite a few uses of KHTML in Konqueror, only the about screen is remaining there now.
  • Dan and Laurent have been porting KSieve, KSMTP and KIMAP away from KTcpSocket.
  • David, Laurent and others have been porting away from deprecated Qt methods all over the place, aiming at being able to build things with Qt 5.14 with deprecated methods disabled.
Contribute

It’s a great time to get into KDE Frameworks development! In terms of development tasks there is something for everyone, ranging from simple porting jobs to redesigns of entire modules. It’s also a rare time window where we have more freedom to change things than usual, so it’s the best possible time to bring in your ideas and suggestions, via the KF6 workboard or by participating in the KF6 sprint, especially as a Frameworks user.

Kdenlive 19.08.2 is out

Friday 11th of October 2019 08:00:34 AM

Kdenlive 19.08.2 is out with many goodies ranging from usability and user interface improvements all the way to fixes to speed effect bugs and even a couple of crashes. Automask effect gets back the possibility to store the tracking data to clipboard which then can be used for motion following by importing the tracking data into i.e transform effect.

Check it out:

  • Fix crash on composition resize. Commit.
  • Update MSYS2 build script. Commit.
  • Fix Windows audio screen grab (#344). Commit.
  • Remove local reference to current project. Commit.
  • Disable multitrack view on render. Commit.
  • Fix clip duration incorrectly reset on profile change. Fixes #360. Commit.
  • Fix compile warnings. Commit.
  • Make affine filter bg color configurable. Fixes #343. Commit.
  • Fix speed job in some locales. Fixes #346. Commit.
  • Fix some remaining effectstack layout issues. Commit.
  • Fix keyframes not deleted when clip start is resized/cut. Commit.
  • Fix track effects not working when a clip is added at end of track or if last clip is resized. Commit.
  • Add clickable field to copy automask keyframes. Fixes #23. Commit.
  • Show track effect stack when clicking on it’s name. Commit.
  • Fix crash trying to access clip properties when unavailable. Commit.
  • Fix effectstack layout spacing issue introduced in recent commit. Commit.
  • Fix proxy clips lost on opening project file with relative path. Commit.
  • Update AppData version. Commit.
  • Cleanup effectstack layout. Fixes !58 #294. Commit.
  • Fix mixed audio track sorting. Commit. See bug #411256
  • Another fix for speed effect. Commit.
  • Speed effect: fix negative speed incorrectly moving in/out and wrong thumbnails. Commit.
  • Fix incorrect stabilize description. Commit.
  • Cleanup stabilize presets and job cancelation. Commit.
  • Deprecate videostab and videostab2, only keep vidstab filter. Commit.
  • Fix cancel jobs not working. Commit.
  • Fix some incorrect i18n calls. Commit.
  • Don’t hardcode vidstab effect settings. Commit.

Plasma Mobile: weekly update: part 2

Friday 11th of October 2019 12:00:00 AM

Thanks to the awesome Plasma Mobile community, we are happy to present a second weekly update from Plasma Mobile project.

Shell user interface

Marco Martin made several changes in the shell to improve the overall user experience.

The application grid was updated to show application names in single line and with a smaller font size.

Marco Martin is also working on re-designing the top panel and top drawer, and bugfixes related to that. Below is screenshots of current state:

Both the top and bottom panels were updated to use the normal color scheme instead of the inverted/dark color scheme.

Marco martin also added several fixes 1 and 2 in KWin/wayland for fullscreen windows used by the top drawer and the window switcher.

Kirigami

Nicolas Fella added new API to Kirigami that allows us to make menus in a more traditional style on the desktop.

globalDrawer: Kirigami.GlobalDrawer { isMenu: true actions: [ Kirigami.Action { icon.name: "document-import" text: i18n("Import contacts") onTriggered: { importFileDialog.open() } } ] }

Setting isMenu property to true on the Drawer, should hide the drawer handle when used on the desktop. Instead, a similar looking hamburger button should appear in the toolbar, which behaves appropriately for the desktop.

Applications

Simon Schmeißer added various improvements to the QR-Code scanner application, qrca. It now suppports decoding vcard QR-Codes which include trailing spaces, and features a Kirigami AboutPage. The sheet that appears once a code has been decoded now doesn’t flicker if the code is scanned a few times in a row. Jonah Brüchert ported the app’s pageStack to make use of the new Kirigami PagePool introduced in last weeks blog post, which fixes page stack navigation issues with the About page.

Jonah Brüchert implemented setting a photo for contacts in plasma-phonebook. Nicolas Fella improved the contacts list in the plasma-phonebook simplifying codebase. He also reworked the code for individual contact actions to make them functional and improve the scrolling experience.

Settings applications by default only shows the KCM modules which are suitable for mobile platform, Jonah Brüchert fixed the audio configuration KCM module to add the supported form factors key in desktop file, which makes Audio module visible in the Settings application again. If you are developing a system settings module with Plasma Mobile in mind, don’t forget to add X-KDE-FormFactors key in the metadata.desktop file, e.g.

X-KDE-FormFactors=handset,tablet,desktop

MauiKit file management component now can make use of all the KIO supported protocols, like kdeconnect, applications, recentdocuments, fonts, etc, to browse your file system. This will allow you to seemlessly copy files and folders between various protcols like webdav and sftp. MauiKit has gained a couple of new components, designed to be used as visual delegates for list and grid views, one of those is the new SwipeItemDelegate, which works both on wide and small screen form factors. This delegate can contain quick action buttons which depending on the available space get shown inline when hovering, or underneath, revealing by a swipe gesture.

Index, the file manager, has seen some feature improvements in the selection bar, when selected items are clicked you get a visual preview of the file and on long press the item is removed from the selection bar, making it easy to keep track of what you have selected. You can also mark files as Favorites and browse them easily in a new dedicated Quick section in the sidebar. The Miller column view now auto scrolls to the last column. By making use of the new MauiKit delegate controls, the file and directories on Index, can be dragged on top of each other to perfom actions like copy, move and link and also be dragged out of the app to be open or shared with an external application. Due to usage of KIO framework, Index can now browse various kio slaves like, applications, favorites, webdav, remote, recently used etc.\

vvave, the music player, now has an improved Albums and Artist grid view, and a has gained a lot of small paper cut fixes to be ready for a release soon. If you are interested in helping testing this early packages and report back issues you can join the telegram channel.

Downstream

Bhushan Shah worked on several changes in postmarketOS to make telephony on devices like Pinephone and Librem 5 possible with Plasma Mobile. The upstream change was suggested by Alexander Akulich to not hardcode a telepathy account name in the dialer source code.

We have successfully tested this change on Librem 5 developer kit.

Want to help?

Next time your name could be here! To find out the right task for you, from promotion to core system development, check out Find your way in Plasma Mobile. We are also always happy to welcome new contributors on our public channels. See you there!

More in Tux Machines

Announcing the release of LTTng 2.11

We're happy to announce the release of LTTng 2.11 "Lafontaine". This is a combined release announcement for the 2.11.0 - "Lafontaine" release of the LTTng Tools, LTTng UST, and LTTng modules projects. This release is named after a modern Saison beer from Montréal's Oshlag microbrewery. It is a refreshing, zesty, rice beer with hints of fruit and spices. Some even say it makes for a great Somaek when mixed with Chamisul Soju, not that we've tried! Lafontaine is also a tongue-in-cheek reference to a water leak that affected EfficiOS's offices during the development of this release. Read more Also: LTTng 2.11.0 "Lafontaine" released

Top 20 Best Openbox Themes for Linux System in 2019

Have you ever heard about the stacking window manager, Openbox? It is broadly used in Unix-like systems. Most probably, it’s among the most customizable parts out there. You can easily modify and beautify this with a little bit of effort. The question may arise- with what and how can you do this? Well! We are going to disclose it now. It’s by Openbox themes, which lets you have a minimalist and fantastic visual interface for your desktop manager. Read more

Fedora IoT Review

With the rise in IoT use, we are witnessing a demand for ready-made operating systems to support smart device development. Currently, the race is between proprietary versions such as IoT Plug and Play by Microsoft and open source operating systems. One such emerging open source player is Fedora which has a workstation that supports virtualization and containers. Fedora is also slated to release an Internet of Things edition called “Fedora IoT” in future. Here is a review of the open source product’s support capabilities for IoT and relevant installation details. Read more

5 Practical Examples of the Read Command in Linux

With read command, you can make your bash script interactive by accepting user inputs. Learn to use the read command in Linux with these practical examples. Read more