January 17, 2019



Plasma 5.15 Beta

KDE Plasma 5.15 Beta

Today KDE launches the beta release of Plasma 5.15.

For the first release of 2019, the Plasma team has embraced KDE's Usability & Productivity goal. We have teamed up with the VDG (Visual Design Group) contributors to get feedback on all the papercuts in our software that make your life less smooth, and fixed them to ensure an intuitive and consistent workflow for your daily use.

Plasma 5.15 brings a number of changes to our configuration interfaces, including more options for complex network configurations. Many icons have been added or redesigned. Our integration with third-party technologies like GTK and Firefox has been made even more complete. Discover, our software and add-on installer, has received a metric tonne of improvements to help you stay up-to-date and find the tools you need to get your tasks done.

Please test this beta release and send us bug reports and feedback. The final release will be available in three weeks' time.

Browse the full Plasma 5.15 Beta changelog to learn more about other tweaks and bug fixes included in this release:


New in Plasma 5.15 Beta

Plasma Widgets



    Bluetooth Battery Status

    Bluetooth Battery Status
  • Bluetooth devices now show their battery status in the power widget. Note that this cutting-edge feature requires the latest versions of the upower and bluez packages.
  • It’s now possible to download and install new wallpaper plugins straight from the wallpaper configuration dialog.
  • Filenames on desktop icons now have enough horizontal space to be legible even when their icons are very tiny, and are easier to read when the wallpaper is very light-colored or visually busy.
  • Visually impaired users can now read the icons on the desktop thanks to the newly-implemented screen reader support for desktop icons.
  • The Notes widget now has a 'Transparent with light text' theme.
  • It's now possible to configure whether scrolling over the virtual desktop Pager widget will “wrap around” when reaching the end of the virtual desktop list.
  • The padding and appearance of notification pop-ups have been improved.
  • KRunner has received several usability improvements. It now handles duplicates much better, no longer showing duplicate bookmarks from Firefox or duplicate entries when the same file is available in multiple categories. Additionally, the layout of the standalone search widget now matches KRunner's appearance.
  • The Devices Notifier is now much smarter. When it's configured to display all disks instead of just removable ones, it will recognize when you try to unmount the root partition and prevent you from doing so.


Settings



    Redesigned Virtual Desktop Settings

    Redesigned Virtual Desktop Settings
  • System Settings Virtual Desktops page has been redesigned and rewritten for support on Wayland, and now sports greater usability and visual consistency.
  • The user interface and layout for the Digital Clock and Folder View settings pages have been improved to better match the common style.
  • Many System Settings pages have been tweaked with the goal of standardizing the icons, wording, and placement of the bottom buttons, most notably the “Get New [thing]…” buttons.
  • New desktop effects freshly installed from store.kde.org now appear in the list on the System Settings Desktop Effects page.
  • The native display resolution is now indicated with a star icon in the System Settings Displays page.
  • The System Settings Login Screen page received plenty of visual improvements. The image preview of the default Breeze theme now reflects its current appearance, the background color of the preview matches the active color scheme, and the sizes and margins were adjusted to ensure that everything fits without being cut off.
  • The System Settings Desktop Effects page has been ported to QtQuickControls 2. This fixes a number of issues such as bad fractional scaling appearance, ugly dropdown menu checkboxes, and the window size being too small when opened as a standalone app.


Cross-Platform Integration



    Firefox with native KDE open/save dialogs

    Firefox with native KDE open/save dialogs
  • Firefox 64 can now optionally use native KDE open/save dialogs. This is an optional, bleeding-edge functionality that is not yet included in any distribution. However, it can be enabled by installing the xdg-desktop-portal and xdg-desktop-portal-kde packages and setting GTK_USE_PORTAL=1 in Firefox's .desktop file.
  • Integration modules xdg-desktop-portal-kde and plasma-integration now support the Settings portal. This allows sandboxed Flatpak and Snap applications to respect your Plasma configuration - including fonts, icons, widget themes, and color schemes - without requiring read permissions to the kdeglobals configuration file.
  • The global scale factor used by high-DPI screens is now respected by GTK and GNOME apps when it’s an integer.
  • A wide variety of issues with the Breeze-GTK theme have been resolved, including the inconsistencies between the light and dark variants. We have also made the theme more maintainable, so future improvements will be much easier.


Discover



    Distro Release Upgrade Notification

    Distro Release Upgrade Notification
  • Options for upgrading your distribution are now included in Discover’s Update Notifier widget. The widget will also display a “Restart” button if a restart is recommended after applying all updates, but the user hasn’t actually restarted yet.
  • On Discover’s Updates page, it’s now possible to uncheck and re-check all available updates to make it easier to pick and choose the ones you want to apply.
  • Discover’s Settings page has been renamed to “Sources” and now has pushbuttons instead of hamburger menus.
  • Distribution repository management in Discover is now more practical and usable, especially when it comes to Ubuntu-based distros.
  • Discover now supports app extensions offered with Flatpak packages, and lets you choose which ones to install.
  • Handling for local packages has been improved, so Discover can now indicate the dependencies and will show a 'Launch' button after installation.
  • When performing a search from the Featured page, Discover now only returns apps in the search results. Add-ons will appear in search results only when a search is initiated from an add-on category.
  • Discover’s search on the Installed Apps page now works properly when the Snap backend is installed.
  • Handling and presentation of errors arising from misconfigured add-on repos has also been improved.
  • Discover now respects your locale preferences when displaying dates and times.
  • The “What’s New” section is no longer displayed on app pages when it doesn't contain any relevant information.
  • App and Plasma add-ons are now listed in a separate category on Discover’s Updates page.


Window Management

  • The Alt+Tab window switcher now supports screen readers for improved accessibility, and allows you to use the keyboard to switch between items.
  • The KWin window manager no longer crashes when a window is minimized via a script.
  • Window closing effects are now applied to dialog boxes with a parent window (e.g. an app’s Settings window, or an open/save dialog).
  • Plasma configuration windows now raise themselves to the front when they get focus.


Wayland

  • More work has been done on the foundations - the protocols XdgStable, XdgPopups and XdgDecoration are now fully implemented.
  • Wayland now supports virtual desktops, and they work in a more fine-grained way than on X11. Users can place a window on any subset of virtual desktops, rather than just on one or all of them.
  • Touch drag-and-drop is now supported in Wayland.


Network Management



    WireGuard VPN Tunnels

    WireGuard VPN Tunnels

  • Plasma now offers support for WireGuard VPN tunnels when the appropriate Network Manager plugin is installed.
  • It’s now possible to mark a network connection as “metered”.


Breeze icons

Breeze Icons are released with KDE Frameworks but are extensively used throughout Plasma, so here's a highlight of some of the improvements made over the last three months.



    Icon Emblems in Breeze

    Icon Emblems in Breeze
  • A variety of Breeze device and preference icons have been improved, including the multimedia icons and all icons that depict a stylized version of a Plasma wallpaper.
  • The Breeze emblem and package icons have been entirely redesigned, resulting in a better and more consistent visual style, plus better contrast against the icon they’re drawn on top of.
  • In new installs, the Places panel now displays a better icon for the Network place.
  • The Plasma Vault icon now looks much better when using the Breeze Dark theme.
  • Python bytecode files now get their own icons.


Other



    KSysGuard’s optional menu bar

    KSysGuard’s optional menu bar
  • It’s now possible to hide KSysGuard’s menu bar — and it reminds you how to get it back, just like Kate and Gwenview do.
  • The plasma-workspace-wallpapers package now includes some of the best recent Plasma wallpapers.



Live Images

The easiest way to try out Plasma 5.15 beta is with a live image booted off a USB disk. Docker images also provide a quick and easy way to test Plasma.

Download live images with Plasma 5
Download Docker images with Plasma 5

Package Downloads

Distributions have created, or are in the process of creating, packages listed on our wiki page.

Package download wiki page

Source Downloads

You can install Plasma 5 directly from source.

Community instructions to compile it
Source Info Page

Feedback

Discuss Plasma 5 on the KDE Forums Plasma 5 board.

You can provide feedback direct to the developers via the #Plasma IRC channel, Plasma-devel mailing list or report issues via bugzilla. If you like what the team is doing, please let them know!

Your feedback is greatly appreciated.

January 16, 2019

Nuevo evento a la vista, y en esta ocasión de nuevo casi ni llego a anunciarlo, como pasó en noviembre. El próximo 18 de enero tendremos nuevo Meetup de GNU/Linux Valencia, una oportunidad única de conocer a gente extraordinaria que lucha por difundir el Software Libre. En esta ocasión los temas son variados: presentación de calendario de eventos y charla técnica de Introducción a Git.

18 de enero tendremos nuevo Meetup de GNU/Linux Valencia

18 de enero tendremos nuevo Meetup de GNU/Linux ValenciaDe nuevo me complace compartir con vosotros los eventos de un grupo de personas que en Valencia está impulsado el Software Libre gracias a sus reuniones.

Se trata un nuevo encuentro organizado del grupo de GNU/Linux Valencia que el próximo 18 de enero de este 2019 va a realizar la presentación de su calendario de reuniones.

Además, y aprovechando la circunstancia, habrá una charla técnica de Introducción a Git impartida por Javier Sepulveda.

 

22 de junio tendremos nuevo Meetup de GNU/Linux Valencia

Dado el planteamiento del grupo, cualquiera puede unirse, desde usuarios noveles, sin apenas conocimientos informáticos, hasta usuarios avanzados, que pueden o bien ayudar a los recién llegados resolviendo sus dudas o problemáticas, o incluso el desarrollo de aplicaciones informáticas para la resolución de problemas cotidianos.”

Convocatoria:

No te puedes perder esta nueva reunión de GNU/Linux Valencia.

Tenemos una minicharla-debate y una charla técnica a nivel de iniciación.

Empezaremos presentando el calendario de fechas previsto de los actos de GNU/Linux Valencia para este 2019, informando de las novedades para este año y lo que tenemos pensado hacer. Todo esto seguido de un minidebate recogiendo las sugerencias que los asistentes nos puedan trasladar.

A continuación habrá una charla técnica de Introducción a Git impartida por Javier Sepulveda.

Si podéis asistir no os lo perdáis, seguro que no quedáis decepcionados.

Más información: GNU/Linux Valencia

 

After many years of successful Google Code-in participation, this year we did it again! KDE attracted a number of students with exciting tasks for their eager young minds.

Google Code-in is a program for pre-university students aged from 13 to 17 and sponsored by Google Open Source. KDE has always worked to get new people involved in Free and open source (FOSS) projects with the aim of making the world a better place.

This year was no different. Our students worked very hard, and some of them already have their contributions committed to the KDE codebase!

We designed tasks in a way that made them exciting for all students. Students who were not skilled in programming took on tasks of writing blogs or documentation. To help students who had no experience with FOSS or with the community, we set up introductory tasks for IRC and mailing lists, both of which are essential in FOSS as communication channels.

The students who had some prior programming experience received tutorial tasks to get a better understanding of how KDE software works. Those types of tasks also helped them become familiar with the Qt framework on which all KDE software is based. Finally, students good at programming were put to work contributing to on-going KDE projects. They created new features or solved known bugs and wrote unit tests.

We’re happy that some really enthusiastic and persistent students joined us this year. Thanks to their passion for programming, they completed many tasks and delivered quality code we merged into our project repositories.

It wasn’t easy for the mentors to select winners, as every student had accomplished great things. Still, we finally settled on pranav and triplequantum (their GCI names). Finalists were TURX, TUX, UA and waleko.

KDE would like to congratulate all the winners and finalists, and we warm-heartedly welcome all our new contributors!

Author: Pranam Lashkari

January 15, 2019

Ya nos quedamos a solo un plasmoide de llegar a los 100. Hoy os presento Plasma-applet-brighty, el plasmoide número 99 de la serie. Una pequeña aplicación integrada en el escritorio para los usuarios que podrán controlar el brillo de su monitor de forma sencilla.

Plasma-applet-brighty – Plasmoides de KDE (99)

Plasma-applet-brighty - Plasmoides de KDE (99)De la mano de Misaglhb nos llega Plasma-applet-brighty, un sencillo plasmoide que nos permite controlar el brillo del monitor conectado por la salida HDMI de nuestro escritorio mediante con la rueda del ratón.

También sirve para controlar el brillo del monitor propio como el de cualquier portátil.

El creador comenta que ha sido probado para KDE Neon pero en los comentarios dice que han sido testeado también en Manjaro 18, lo cual nos indica que seguramente lo hará en otras distribuciones.

Y como siempre digo, si os gusta el plasmoide podéis “pagarlo” de muchas formas en la nueva página de KDE Store, que estoy seguro que el desarrollador lo agradecerá: puntúale positivamente, hazle un comentario en la página o realiza una donación. Ayudar al desarrollo del Software Libre también se hace simplemente dando las gracias, ayuda mucho más de lo que os podéis imaginar, recordad la campaña I love Free Software Day 2017 de la Free Software Foundation donde se nos recordaba esta forma tan sencilla de colaborar con el gran proyecto del Software Libre y que en el blog dedicamos un artículo.

Más información: KDE Store

¿Qué son los plasmoides?

Para los no iniciados en el blog, quizás la palabra plasmoide le suene un poco rara pero no es mas que el nombre que reciben los widgets para el escritorio Plasma de KDE.

En otras palabras, los plasmoides no son más que pequeñas aplicaciones que puestas sobre el escritorio o sobre una de las barras de tareas del mismo aumentan las funcionalidades del mismo o simplemente lo decoran.

January 14, 2019

Me complace compartir con todos vosotros que ha sido lanzada la nueva versión de SuperTux, una versión del famoso juego de plataformas que nos volvió locos hace unos años. De hecho el lanzamiento fue en diciembre del año pasado pero yo no me he enterado hasta hoy.

Lanzada la nueva versión de SuperTux

Un juego que marcó un antes y un después en la industria de los videojuegos fue el famoso Super Mario Bros, un juego donde el famoso fontanero seguía intentando rescatar a su princesa sorteando innumerables peligros y derrotando a temibles jefes finales (bueno, no tan terribles). En el mundo GNU/Linux también tenemos nuestro héroe, y no podías ser que  SuperTux, el clon de Mario para Linux.

EL pasado 23 de diciembre fue lanzada la versión 0.6, la cual nos ofrece múltiples novedades:

  • Rediseño completo del mundo helado y del mundo forestal (Gracias, RustyBox y Serano).
  • Renovación completa de nuestro motor de renderizado, el juego debería ser mucho más rápido de lo que era anteriormente.
  • Ahora soporta OpenGL 3.3 Core y OpenGL ES 2.0, lo que permite que SuperTux se ejecute en la Raspberry Pi y potencialmente en WebGL.
  • Se actualizaron algunos gráficos y se agregaron efectos.
  • La campana de guardado fue rediseñada (¡Gracias a Raghavendra “raghukamath” Kamath!)
  • Grandes mejoras en gráficos y animaciones de Tux (gracias a Alzter)
  • Añadidos varios efectos y sombreados (Gracias a Grumbel).
  • Soporte para idiomas de derecha a izquierda a través de fuentes vectoriales. Esto también solucionará algunos caracteres no ASCII, que a menudo causaron problemas antes en las traducciones
  • Un montón de otros cambios bajo el capó y correcciones de errores
  • Binarios oficiales de Linux

Lanzada la nueva versión de SuperTux

Como vemos, una avalancha de novedades para seguir disfrutando de un juego que parece que tiene un largo camino por andar todavía… y la demostración viva de que el mundo gamer tiene un hueco en el universo GNU/Linux.

 

January 13, 2019

Facebook’s AccountKit is an authentication service that can use your email or phone number to login to your services, it doesn’t require that the user has a Facebook account, just a valid email or phone.

The cool thing about it is that it sends SMS for free, and although sending SMSs is cheap being free of charge is something you might want to look when creating a new App, in fact here in Brazil some big Apps do make use of it.

So long story short story I wanted to add this to my Qt Android App.

Thanks to the great help of Kai Uwe Broulik who had give some tips on the past on how to call Java code I started with this same approach:

  • Create a Java file
  • Put the Java code of AccountKit there
  • Call the static function of Java from C++

And… it did work BUT I was unable to get the result, this is because the Java code starts a new Activity and returns the result on a method that must be implemented on the code that Qt creates for starting your activity, so this means I’d need to change the XML manifest to call my subclass instead of what Qt provides, and would need to do a bunch of other stuff myself, basically would get more maintainance work to do.

So another option would be to do all of this from C++, which Kai said it would be better at first, but doing a bunch of JNI scared me a bit, also I hadn’t found the reference page to their API (which he found after the work was done lol). There’s a tool called javap that can dump the Java signature of what is inside the package you got, so with the help of this we went on porting all the calls to AccountKit API to C++/Qt, this way we can call QtAndroid::startActivity() passing a pointer to a class that will handle the result of the new Activity, all in C++ �� .

There were some initial issues with the Enums used (aparently some new Java7 stuff), but the code now doesn’t require a single line of Java code, which is great when integrating in Qt Android Apps.

The result is on GitHub, so if you need this just copy the integration class, it has IFDEFs so if you are testing on !Android it will compile fine. (You still need to follow the Gradle and manifest integration that’s on their dev site), feel free to make PR for fixes and features ��

https://github.com/ceciletti/third-party-qt-utils

As a follow-up to my previous post, I've finally succeeded in building Imaginario as an AppImage package.

I've smoke tested the package in Ubuntu Xenial and Trusty, and while it appears to be working, I'd be happy if someone else could also download and test it in their machines and let me know how it goes. Just please keep in mind that this a very beta release and, while I'm not aware of any major bugs that could corrupt your photos, I wouldn't recommend you to import your photo archive into it, unless you backup it first.
Also, the application needs quite some more polishing before being ready to be publicly advertised to non developers (I'm also considering finding a new icon for it), so the next step after getting a nicely working AppImage will be cleaning up the user interface and make sure that all the (few) features work as advertised. And making a Windows version. And a MacOS one. Oh, I'd better stop thinking about it, or I'll start crying.

I totally missed that last week marked the one-year anniversary of my documentation and guidance of KDE’s Usability & Productivity initiative. I think we’ve achieved a lot over the course of that year!

Note that this is NOT an exhaustive log of everything that happened this week in the entire KDE community, or even in all of Plasma. The actual number of commits and improvements is always vast and enormous–too much to comprehend, really. The KDE Community is staggeringly productive.

Rather, this is always a curated list of only the user-facing improvements I believe are directly relevant to the Usability & Productivity initiative. And speaking of it, this week we got an interesting assortment of new features, bugfixes, and UI improvements–many of which I didn’t mention but will ultimately be appreciated when taken together. Check it out:

New Features

Bugfixes & Performance Improvements

User Interface Improvements

Next week, your name could be in this list! Not sure how? Just ask! I’ve helped mentor a number of new contributors recently and I’d love to help you, too! You can also check out https://community.kde.org/Get_Involved, and find out how you can 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!

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

January 12, 2019

The first release of Nanonote, my minimalist note-taking app, was a bit rushed: I broke indentation shortly before tagging version 1.0.0... meh.

So here is version 1.0.1. It fixes the indentation and adds the ability to indent or unindent whole lines with Tab and Shift+Tab, in addition to the existing Ctrl+I and Ctrl+U shortcuts.

In addition to these changes, the build system can now generate Debian and RPM packages, making the application easier to install.

These packages are generated by CPack inside an Ubuntu 18.04 Docker. This means they work on my machine, but do not have the same level of quality as packages crafted by real packagers. I am especially looking for feedback regarding the RPM packages, which I haven't tested.

You can find them on the project release page.

There aren't any other end-user changes in this release but I worked on infrastructure a bit: I added unit tests and set up Travis CI for continuous integration. I am probably going to write an article about this next. In the mean time, enjoy Nanonote 1.0.1!

TL;DR; Get your tickets from here!

For the fourth year running, foss-north is taking place. Now bigger than ever.

It all started as a one day conference in a room with too much people in it. We gathered ten speakers and started something that continues to this day.

110 ten people in a room for 110 people.

Back then we, the three organizers: Jeremiah, Mikael and myself, joked over beers that we should have trainings, conference, community rooms and much more. A moderated FOSDEM was a crude description of what we wanted to build. But this was only us dreaming away.

During the past years we’ve tried different venues. We’ve gone from one day, one track to two days and two tracks. This year we decided to go for it all: four days, trainings, a community day and the conference.

Organizing a conference is to manage a chicken and egg type problem. You need speakers to get sponsors, and you need sponsors to get speakers to the venue. The same applies to the audience – visistors wants speakers, speakers wants visitors. This is why it takes time to establish a conference.

Last year we felt that we reached a tipping point – the call for papers was so full that we had to extend the conference with an additional day. We simply could not pick the right contents for a single day. This means that we feel that the conference part is established. If you want to speak, the call for papers is still open.

That takes us to the next steps. The community day consists of various projects and groups organizing workshops, hackathons, install fests, development sprints and whatnot throughout the city. We find venues (usually conference rooms) and projects and hope that people will come visit the various events. Again, starting from zero projects, zero venues and no real idea how many visitors to expect, we are trying to put this together. At the time of writing, it looks great. We have 7 projects and 5 venues fixed, but we are still looking for both projects and venues. If you want to join in, look at our call for projects.

The same logic applies to the training. Now we have training contents, all we need are visitors. The great thing is that our teachers, Michael Kerrisk and Chris Simmonds, are great to work with and understand our situation. Now we just have to work hard to make sure that we find students for them.

The final piece of the puzzle, which is not always visible to speakers and visitors, is the hunt for sponsors. Venues does not come for free, and we believe in compensating our speakers for their costs, thus we need sponsors. We offer the opportunity to host a booth during the conference days and the chance to meet our audience. We also believe that helping a conference focused on free and open source, is a way to contribute to the free and open source movement. For this we have a network of sponsors that we’ve worked with in the past (thank you all!) but as the conference grows, we need more help. If you want to join in, have a look at our call for sponsors

I’ve written a lot about speakers, sponsors and projects. Now all we need are visitors – lots and lots of visitors. So bring your friends to Gothenburg and join us at foss-north. The early bird tickets are available now. Get yours here!

With the ongoing work on realtime data access in KDE Itinerary we need a way show notifications in case of delays or other trip changes. That’s what KF5Notifications is for, which unfortunately isn’t supported on Android yet. Since an Android specific code path in KDE Itinerary for that would be quite ugly, I did look into adding Android support for KF5Notifications. How hard can it be? ;)

KF5Notifications on Android KF5Notifications on Android

C++/Java Integration

How to do notifications with the official Android Java API is widely documented, and also matches the model of KF5Notifications well enough. This would however be the first KF5 framework using Android Java API for its backend, so I’ll focus on these integration bits here.

On the code level this means we need to be able to call Java code from C++ (to trigger a notification), and vice versa (to handle user interaction with the notification), and we need to be able to pass data back and forth.

The mechanism for this is the Java Native Interface (JNI), of which Qt abstract some parts via QAndroidJniObject. Qt itself contains a number of examples on how to use this, and you can look at the KF5Notifications code in D17851. The JNI signature syntax takes a bit of getting used too due to its built-in traps (like a different way of writing fully qualified class names compared to Java code), but at least you usually get helpful debug output at runtime in case of a mistake.

Building and Deployment

The build system integration turned out to be the most challenging part, as the framework consists of a Java part and a native part now. The general idea is that the framework builds and installs a Java library next to the native library, and provides a meta data file that tells androiddeployqt to also integrate the Java part when linking against the native part.

This is done in several Qt modules, but using qmake rather than CMake. Also, Qt only does this for Java code using the official Android Java API, not for using the Android support libraries, which is needed in case of notifications to simultaneously provide compatibility with older Android versions and to comply with requirements of very recent Android versions or the Google Play Store.

Building JARs

The first attempt was following closely what Qt does, and just implement that with CMake. You’ll find the code in D17851. There’s already basic Java support in CMake that makes this pretty straightforward, it essentially just builds a JAR library from a given set of Java source files using the Java compiler directly.

This approach works as long as you just use the basic Android API and don’t need any dependency outside of the normal Android SDK. But as that’s not enough for notifications, we needed another way.

Building AARs

The Android support library (and presumably other higher-level dependencies) break this approach in two places:

  • The canonical way of accessing dependencies on Android is via Maven repositories. Neither CMakre nor the raw Java compiler support that easily.
  • Those libraries are not regular Java libraries (JAR files) but Android libraries (AAR files). That’s essentially a ZIP file bundling the JAR file as well as resources, manifest elements, and other things you might find in an Android APK. However, this is also not directly supported by the Java compiler.

In order to consume AAR files we use the default Android way, building with Gradle (which is also what androiddeployqt does when building APKs). Obtaining and running Gradle is hidden behind a small CMake macro for easy integration, but how to build the Java side is now specified in a build.gradle file rather than in CMake files. This means all Android development related tools and resources become applicable for us. Besides the automatic dependency handling and inbound and outbound support for AAR libraries also things like using Kotlin should be possible. This approach has been implemented in D17986.

Consuming the result in the application is almost identical to the JAR case, we only needed a minor tweak in the androiddeployqt template for this.

Conclusion

Starting with KF5 5.55 we will have basic support for notifications, notification interaction and notification actions on Android. There’s probably still a number of features and flags in KF5Notifications that can be better mapped to Android’s native system, and there’s still work to be done to improve compatibility with a wider range of Android versions, but it’s a good start. But maybe even more importantly, we now have a template for integrating Android Java code in KF5 frameworks.

January 11, 2019

The Qt Company has been running benchmarks like QMLBench for a long time that assist us knowing when a change creates a performance regression, but it’s also important to see how Qt performs at a higher level, allowing components to interact in ways that granular tests like QMLBench can’t show. In this blog post, we’ll walk through new application startup testing results from a more real-world QML benchmark application.

 

The benchmark

For these tests, a relatively simple QML application was developed that utilizes many areas of QtDeclarative and QtGraphicalEffects. The application code was written as a casual developer might, and has not been designed for optimal startup, memory consumption, or performance. Because we’re benchmarking, the application does not make use of Interactive elements or user input. The application is of low complexity, without divergent logic, so that results are as consistent as possible between test runs. Though no benchmark will ever truly simulate real-world performance with user interaction, the test discussed here aims to more accurately represent a real-world QML workload than QMLBench or the QtQuickControls “Gallery” example.

QML Benchmark

The benchmark application. It combines textures, animations, QML shapes, repeaters, complex text, particle effects, and GL shaders to simulate a heavier, more real-world application than other QML benchmarks like QMLBench.

Download the benchmark source code here.

Lars has previously written about The Qt Company’s commitment to improving the performance of Qt, and with the recent release of Qt 5.12 LTS, the efforts made are really showing, especially on QML. Among the improvements, a good number have been towards improving startup performance. Out of the platforms tested, the greatest startup performance improvement was seen on the lowest power device we tested, a Toradex Apalis i.MX6. Let’s explore that.

Startup Performance

overview-chart

The chart above shows how the features in Qt 5.12 LTS really cut down on the startup performance, dropping time-to-first-frame from 5912ms in Qt 5.6 to only 1258ms in Qt 5.12.0, a 79% reduction! This is thanks to a number of new features that can be stacked to improve startup performance. Let’s walk through each.

  1. The Shader Cache – Introduced in Qt 5.9 LTS

    The shader cache saves compiled OpenGL shaders to disk where possible to avoid recompiling GL shaders on each execution.

    Pros: Lowers startup time and avoids application lag when a new shader is encountered if the shader is already in the cache.
    Cons: Systems with small storage can occasionally clear shader caches. If your application uses very complex shaders and runs on a low-power device where compiling the shader may produce undesirable startup times, it may be recommended to use pre-compiled shaders to avoid caching issues. There is no performance difference between cached shaders and pre-compiled shaders.
    Difficulty to adopt: None! This process is automatic and does not need to be manually implemented.

  2. Compiled QML

    Without use of the Qt Quick Compiler detailed below, QML applications built on Qt versions prior to 5.9 LTS would always be compiled at runtime on each and every run of the application. Depending on the application’s size and host’s processing capabilities, this action could lead to undesirably long load times. Two advancements in Qt now make it possible to greatly speed up the startup of complex QML applications. Both of which provide the same startup performance boost. They are:

    Qt Quick Cache – Introduced in Qt 5.9 LTS

    The Qt Quick Cache saves runtime-compiled QML to disk in a temporary location so that after the first run when qml gets compiled, it can be directly loaded on subsequent executions instead of running costly compiles every time.

    Pros: Can greatly speed up complex applications with many qml files
    Cons: If your device has a very small storage device, the operating system may clear caches automatically, leading to occasional unexpected long startup times.
    Difficulty to adopt: None! This process is automatic and does not need to be manually implemented.

    Pre-generated QML (Qt Quick Compiler) – Introduced in Qt 5.3 for commercial licensees, both commercial and open source in Qt 5.11

    The Quick Compiler allows a QML application to be packaged and shipped with pre-compiled QML. Initially available under commercial license from Qt 5.3 onwards, it is available for both commercial and open-source users from Qt 5.11 onwards.

    Pros: Using Quick Compiler has the advantage of not needing to rely on the runtime generated QML cache, so you never need to worry about a suddenly unexpected long startup time after a given application host clears its temporary files.
    Cons: None!
    Difficulty to adopt: Low. See the linked documentation. It’s often as simple as adding “qtquickcompiler” to CONFIG in your project’s .pro file!

  3. Distance Fields – Introduced in Qt 5.12 LTS

    Though Qt has been using Distance Fields in font rendering for a long time in order to have cleaner, crisper, animatable fonts, Qt 5.12 introduces a method for pre-computing the distance fields. Learn more about Distance Fields and implementation in this blog post by Eskil.

    Pros: Using pre-generated Distance Field fonts can drastically reduce start-up performance when using complex fonts like decorative Latin fonts, Chinese, Japanese, or Sanskrit. If your application uses a lot of text, multiple fonts, or complex fonts, pre-generating your distance fields can knock off a huge chunk of time to startup.
    Cons: Generated distance field font files will be marginally larger on disk than standard fonts. This can be optimized by selecting only the glyphs that will appear in your application when using the Distance Field Generator tool. Non-selected glyphs will be calculated as-needed at runtime.
    Difficulty to adopt: Low. See the linked documentation. No additional code is necessary, and generating the distance fields for you font takes seconds.

  4. Compressed textures – Introduced in Qt 5.11

    Providing OpenGL with compressed textures, ready to be uploaded to video memory right out of the gate, saves Qt from need to prepare other file types (jpg, png, etc…) for upload.

    Pros: Using compressed textures provides a faster startup time, decrease in memory usage. It may even provide a bit of performance boost depending on how heavy your texture use is, and how strong of compression you choose to utilize.
    Cons: While the compression algorithms in use for textures inherently require some tradeoff in visual fidelity, all but the most extreme compression schemes will usually not suffer any visible fidelity loss. Choosing the right compression scheme for your application’s use case is an important consideration.
    Difficult to adopt: Low +. See this blog post by Eirik for implementation details. Almost no coding is required, needing only to change texture file extensions in your qt code. Easy-to-use tools for texture compression are available, like the “texture-compressor” package for Node.

 

Conclusions

The i.MX6 is a great representation of mid-tier embedded hardware, and the performance improvements included in Qt 5.12 LTS really shine in this realm. Stack all the improvements together and you can really cut down on the startup time required in low power devices.

With these latest test results for low-power hardware, Qt 5.12 could lend a hand to your development by greatly decreasing startup times, particularly when running on low and mid-tier embedded devices. These new performance improvements are easy to adopt, requiring only the most minor of changes to your codebase, so there’s very little reason to not start using Qt 5.12 right away, especially if your project is cramming heavy QML applications into a fingernail sized SoC. The chart below is a reminder of what’s possible with Qt 5.12 LTS, and faster start-up time makes happier customers.

chart-2

The post Qt 5.12 LTS – The road to faster QML application startup appeared first on Qt Blog.

A bit more than a year ago, the KDE community decided to focus on a few goals. One of those goals (the most important one as far as I’m concerned) is to increase the users’ control over their private data.

KDE developers and users have always been a privacy-minded bunch. But due to all the fun things that have happened in the recent years, we had to switch to the next gear.

We have seen new projects like KDE Itinerary (by Volker), Plasma Vault (by yours truly), Plasma Mycroft (by Yuri and Aditya), etc. There has also been a lot of work to improve our existing projects like KMail.

Now, this post is not about any of these.

It is about a KDE Privacy developer sprint organized by Sando Knauß.

The sprint will be held in Leipzig (Germany) from 22. 3. to 26. 3. and all privacy-minded contributors are invited to join.

LeipzigLeipzig

You can support my work on , or you can get my book Functional Programming in C++ at if you're into that sort of thing.

January 10, 2019

As of a few minutes ago, i merged the code from Chinmoy Ranjan Pradhan's GSOC to support showing PDF Signatures and Certificates in Okular.



Signature handling is a big step for us, but it's also very complex, so i expect it to have bugs and things that can be improved so testers more than welcome.

Compiling is a bit "hard" since it requires poppler 0.73 that was released a few days ago.

But thanks to flatpak, there's no need to compile it, you can run the KDE Okular Nightly on your system to try it

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak remote-add --if-not-exists kdeapps --from https://distribute.kde.org/kdeapps.flatpakrepo
flatpak install kdeapps org.kde.okular

Note: if you have okular installed from another flatpak repo (for example flathub) this will switch you to the KDE Nightlies, you may want to switch back after testing.

And then you can try the adobe sample pdf
flatpak run --share=network org.kde.okular https://blogs.adobe.com/security/SampleSignedPDFDocument.pdf

And you should get stuff like this

It’s the second week of 2019 already, which means I’m curious what Nate is going to do with his series This week in usability .. reset the numbering from week 1? That series is a great read, to keep up with all the little things that change in KDE source each week — aside from the release notes.

For the big ticket items of KDE on FreeBSD, you should read this blog instead.

In ports this week (mostly KDE, some unrelated):

  • KDE Plasma has been updated to the latest release, 5.14.5.
  • KDE Applications 18.12.1 were released today, so we’re right on top of them.
  • Marble was fixed for FreeBSD-running-on-Power9.
  • Musescore caught up on 18 months of releases.
  • Phonon updated to 4.10.1, along with its backends.

And in development, Qt WebEngine 5.12 has been prepared in the incongruously-named plasma-5.13 branch in Area51; that does contain all the latest bits described above, as well.

The first dot release of the 18.12 series is out with fixes and usability improvements. The most exiting change is the fix for audio capture when recording from screen or webcam, a handy feature for people doing video tutorials.

You can now import keyframes to your effects and use them in other projects. On the usability front the “Gain” effect is now in the correct “Audio correction” category and theming issues in the AppImage are now fixed. Speaking of AppImage, we now have a fully automated build system ready so devs can focus on coding gain.

Don’t forget to check our nightly refactoring branch version which received many fixes during the holidays and is ready for another round of testing.

18.12.1 fixes

  • Fix empty warning dialog on missing font in project. Commit. Fixes bug #401903
  • Fix bin item description cannot be edited if it contains zone subclips. Commit. Fixes bug #402817
  • Fix screengrab with audio broken. Commit.
  • Move Gain effect to “Audio correction” category. Commit.
  • Ci: enable freebsd build. Commit.
  • QtScript is not used anymore. Commit.
  • Ci: add recipe for gitlab CI. Commit.
  • Fix incorrect color theme correction for AppImages. Commit.
  • Fix color theme lost on AppImage. Commit.
  • Update AppData app version. Commit.
  • Fix bin/melt.exe & libmlt* loading on Windows. Commit.
  • Necessary OpenGL headers are provided by Qt. Commit.
  • Fix keyframes import. Commit.

January 09, 2019

I happen to edit tabular data in LaTeX format quite a bit. Being scientific documents, the table columns are (almost) always left-aligned, even for numbers. That warrants carefully crafted decimal and digit alignment on such columns containing only numbers.

I also happen to edit the text (almost) always in Vim, and just selecting/changing a certain column only is not easily doable (like in a spreadsheet). If there are tens of rows that needs manual digit/decimal align adjustment, it gets even more tedious. There must be another way!

Thankfully, smarter people already figured out better ways (h/t MasteringVim).

With that neat trick, it is much more palatable to look at the tabular data and edit it. Even then, though, it is not possible to search & replace only within a column using Visual Block selection. The Visual Block (^v) sets mark on the column of first row till the column on last row, so any :<','>s/.../.../g would replace any matching text in-between (including any other columns).

To solve that, I’ve figured out another way. It is possible to copy the Visual Block alone and pasting any other content over (though cutting it and pasting would not work as you think). Thus, the plan is:

  • Copy the required column using Visual Block (^v + y)
  • Open a new buffer and paste the copied column there
  • Edit/search & replace to your need in that buffer, so nothing else would be unintentionally changed
  • Select the modified content as Visual Block again, copy/cut it and come back to the main buffer/file
  • Re-select the required column using Visual Block again and paste over
  • Profit!

Here’s a short video of how to do so. I’d love to hear if there are better ways.

Column editing in VimDemo of column editing in Vim

January 08, 2019

Managing issues is part of the daily life of most software projects. Reacting to bug reports, feature requests, pull requests, tracking what's going on and where to put attention, all that is usually handled in the bug or issue tracker of the project's choice.

On GitHub there are the GitHub issues, and they have become quite powerful over time. Just recently GitHub added the capability to show related issues, pin issues to repositories and to move them between repositories.

One important tool to manage issues on GitHub are labels, those nicely colored badges you can add to issues to get a better overview, to filter lists and queries, or to build further automation such as the presentation of good first issues to people new to the project.


If you have a lot of labels it tends to become a bit of effort to manage them well, especially if you want to keep colors consistent and descriptions up to date. It becomes even more effort when you try to do so across different repositories. We have all seen the psychedelic potpourri of colorful labels which tends to happen when you use labels generously.

Last year I saw Mitchell Hashimoto's excellent talk about anything as code at the Open Source Datacenter Conference in Berlin. He showed there how to use Terraform to manage infrastructure as code beyond the typical management of computing infrastructure such as servers or networks. He showed how to use it for more administrative tasks such as managing teams on GitHub.

This is a great approach because it replaces clicking around in a user interface by a more programming-like approach of maintaining configurations, preferably version controlled, and applying the same rules on them as on code. So you can do pull requests, review changes, have the history of what happened in git, run tests and other automation easily, etc.

The GitHub provider for Terraform also handles labels so I thought I would give it a try to manage labels as code. Directly doing this in the Terraform configuration is possible but it's a bit cumbersome and limited in what you can do with the data in this format. So I decided to put the data into a good old YAML file and writing a bit of Python code to deal with it.

The result is beautiful-labels, a small tool to manage GitHub labels from a YAML description via Terraform. It scans your repository for existing labels and their data, creates a YAML description from it, and then provides you the tools to turn it into a Terraform configuration.

Terraform is great in handling the state of things in the cloud, it takes care of operating the API in an effective way, figuring out what needs to be updated, and gives the user control, for example by providing a dry run which tells what would change without applying the changes yet. This is all quite convenient and powerful.

One thing beautiful-labels is supposed to make easy is the management of label colors. In addition to the convenience of managing them in YAML instead of having to use the UI, it also adds the option to generate an overview of the labels as SVG, nicely grouped in categories. This helps in grouping things together using colors and generally can augment documentation about how you intend labels to be used.


The tool is in an early state but it works. I use it to manage the labels in the inqlude repository on GitHub.

You could add another step of automation by letting CI run Terraform on commits to the YAML file. Maybe something to try for the future. As managing labels is not something you usually do on a daily basis, some manual step might also be good enough.

One caveat with labels is that GitHub uses the name of the label as identifier. That usually works great but can be a bit tricky when changing the name of a label. For this case I recommend to do it in the GitHub UI for now.

There are some other approaches how to do this kind of stuff. One of them is labeler which is a nice tool written in Go to manage labels from a YAML description. It directly operates the GitHub API. The advantage is that it's self-contained but it lacks the power of Terraform in terms of state management. Another is Zach Dunn's post "How we organize GitHub issue: A simple styleguide for tagging" which introduces the notion of color-coded categories.

It's wonderful when pieces come together, such as the GitHub API, Terraform, YAML, git, and people writing open source code around that. They result in a way to beautifully manage labels without having to put in too much effort.

If you have feedback or input please don't hesitate to drop me a line. I would be happy if beautiful-labels would be useful for you as well. Let me know how it goes. :-)

Here is a little playlist to show the new activities in GCompris 0.95.

If you missed it, check the release post on gcompris.net.

We have been using various tweaks to make sandboxed Qt apps well integrated into the system. For KDE Plasma integration, we have been allowing access to kdeglobals config file, where we store the most common configuration, like used icon theme, widget style, etc. A similar approach has been used by Gnome, where they need to allow access to DConf, otherwise applications will not be able to read default system configuration. These tweaks have been usually set in the runtimes and applications using these runtimes automatically inherited all the needed permissions during the build. This has some weak spots, because changing permissions in the runtime requires all applications to be rebuild to pick up the changes, or applications not using the runtimes at all had to allow all the access themself and really not everyone knows what everything needs to be enabled.

This will change with upcoming release of xdg-desktop-portal (version 1.2), which will bring new portal to solve this problem (for both Flatpak and Snap). There is new “Settings” portal, allowing apps to request various configuration from the sandbox, without need to have access outside (kdeglobals, dconf). For Gnome configuration, this has been built in directly in xdg-desktop-portal so there is no need for specific backend support. For KDE Plasma configuration, we have our specific code reading kdeglobals config file in xdg-desktop-portal-kde. This support has already been merged and will be part of Plasma 5.15 release in February. To make applications automatically ask for this configuration through the portal, instead of reading kdeglobals/dconf, I added support to both widely used Qt QPA plugins. For applications running under Plasma we have now this implemented in plasma-integration plugin. This support will be also released with Plasma 5.15 in february. For Qt apps running in Gnome, I added this support into QGnomePlatform, which has been released already some time ago and is already available in Flathub.

Hopefully with all of this released soon and more widely used, we can slowly start removing all the hardcoded permissions for both dconf and kdeglobals config file in the runtimes.

I've uploaded to the Docker hub an image that I will be using for building my Qt applications and packaging them into an AppImage file. To which you might be asking: why bother?

The point is that this is a slightly special image: as its Docker tag (trusty-qt512) says, this image ships Qt 5.12 on top of Ubuntu Trusty (yes, that's 14.04!). The reason why I'm using such an obsolete distribution is that I'm striving to get my AppImage package to be as portable as possible: in fact, my early builds of PhotoTeleport were run on a more recent Ubuntu 16.04, but some users complained that they couldn't run it in their own distributions (IIRC, these were Arch Linux and, indeed, Ubuntu 14.04). The problem is that while packages in the AppImage format bundle their own dependencies in the package, some libraries are generally excluded, as bundling them can cause a variety of issues. But that means that if you are building your application in a system which ships newer versions of these libraries than those installed in your users' machines, there's a high risk that your application will be using some newer symbols not present in the older versions — and therefore your application won't run in those machines.

To solve this problem, the recommended approach is to build on the oldest system that you wish to support; and given that I'm mostly familiar with Ubuntu, I chose Trusty as my target. Luckily, the Qt binary installer shipped at qt.io also happens to support Trusty, so I'm all settled. Indeed, Trusty does not ship recent versions of the C++ compiler, but that can be easily solved thanks to a wonderful PPA which ships up to g++-8.
I've also added the latest version of cmake, as it's unlikely that one can live with the very old version that's shipped in Trusty.

The Docker image can be pulled and used in your own machine or set as a baseline in your .gitlab-ci.yml recipe, if you happen to use Gitlab and are interested to generate the AppImage file from there. That's what I'm trying to do for another project of mine, and while I'm not there yet, the goal is getting closer and closer. Those interested in seeing exactly what is going into my Docker image can have a look at its Dockerfile. There are a few issues with this approach, though, and I feel that I should highlight them in order not to raise your expectations too much:

  • You must B.Y.O.D. (Bring Your Own Dependencies)! It's likely that at least some of the libraries used by your project won't exist in Trusty, or will be an older version unsuitable for your needs. That means that your .gitlab-ci.yml will have to be modified to retrieve a newer version of the library and build it prior to building your application. There are good and bad sides to this: the good one is that this encourages you to use the very latest version of the dependency, which otherwise you might not have used by preferring your distro's version; the bad side is that this is extra work for you (and for the Gitlab CI), and that you risk missing some critical security updates if you don't closely follow the upstream development of your dependencies — something that your distribution's maintainers are likely to do for you. Anyway, here's an example of how I've changed Imaginario's CI recipe to build and fetch exiv2 from its upstream site, with caching of the build artifacts.
  • Gitlab CI becomes slower! Compared to my previous builds, each job has become one or two minutes slower. This is mostly due to not using ubuntu:16.04 as a baseline: the standard Ubuntu images are widely popular, so Gitlab is playing smart and caching them. On the other hand, it seems that my custom image is being pulled every time from the Docker hub. :-(

Of course, if you know of a better way to build a portable binary while not renouncing to the benefits of using a newer Linux distributions, you are very welcome to let me know in the comments. :-)

January 06, 2019

This week in Usability & Productivity, the KDE VDG worked very intensively on aesthetics. The Breeze icon theme gained a lot of attention, resulting in many improvements, and we now have a good number of icon designers diligently working through a backlog of issues. More is on the way too, with several enthusiastic new VDG members who combine an eye for design with strong technical abilities. Expect good things to come of this!

New Features

Bugfixes & Performance Improvements

User Interface Improvements

Next week, your name could be in this list! Not sure how? Just ask! I’ve helped mentor a number of new contributors recently and I’d love to help you, too! You can also check out https://community.kde.org/Get_Involved, and find out how you can 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!

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

January 05, 2019

More than 11 years after sjfonts 2.0.2 was released today I'm announcing sjfonts 2.1

It contains two enhacements contributed by Yuri Chornoivan
* Delphine font now has the Euro sign
* Steve font now has "basic" Cyrillic characters

If by any chance your distribution is packaging them, update!


https://sourceforge.net/projects/sjfonts/files/sjfonts/sjfonts-2.1/

Yes, it's on sourceforge ;)

Em outubro de 2018, Florianópolis foi sede da sexta edição do LaKademy, o sprint latinoamericano do KDE. Esse momento é uma oportunidade para termos em um mesmo lugar vários desenvolvedores do KDE – tanto veteranos quanto novatos – de diferentes projetos para melhorarem os respectivos softwares em que trabalham e também planejar as ações de promoção da comunidade para o subcontinente.

Na parte técnica, eu trabalhei com Cantor, Sprat, e nos sites do KDE Brasil e LaKademy.

Para o Cantor, eu pesquisei algumas novas maneiras de implementar os backends, em especial quanto a utilização de websockets. Essa é uma ideia antiga que tenta encontrar uma abordagem a ser recomendada para implementação desses backends de forma que possam ser utilizados para qualquer linguagem de programação e funcionem em qualquer plataforma. Entretanto, como nas tentativas anteriores, ainda tenho dúvidas se essa é uma maneira interessante e se os objetivos podem ser atingidos por ela. Enfim, é algo que precisa de mais pesquisa.

Sprat é um editor de texto direcionado para a escrita de artigos científicos. O software implementa a metodologia Amadeus para escrita de artigos, e é mais como uma coleção de sentenças comuns que podem ser utilizadas in seções específicas do artigo. Sprat é meu projeto-pet, e espero lançar esse ano além de transformá-lo em um projeto do KDE.

O site do KDE Brasil uma uma antiga versão do Drupal. Eu e Fred pesquisamos alguns plugins para importar o conteúdo desse site para o WordPress, e atualmente estamos estudando como realizar essa tarefa.

Por último, portei o site do LaKademy para Jekyll. Isso é algo que ainda precisa de algum trabalho, e espero lançá-lo o quanto antes.

Na parte social, discutimos algumas atividades para o KDE nesse ano, como voltar a participar do FISL e Latinoware, tentar comparecer a outros eventos na América Latina (DebConf e Cubaconf, estamos olhando pra vocês), organizar o “Café com Qt” (nosso evento distribuído sobre Qt e KDE), feedbacks sobre o gerenciamento do nosso grupo do KDE Brasil no Telegram, nossos novos materiais promocionais para serem produzidos e distribuídos nos eventos daqui, e mais.

Ainda nesse aspecto, também ajudei os novatos no trabalho de revisão de código do KDE e tirando dúvidas sobre Qt.

LaKademy é uma grande oportunidade para encontrar outros desenvolvedores do KDE e trabalharmos juntos para aumentar nossa comunidade. Nos últimos anos, o KDE assumiu um papel de importância na comunidade brasileira, e estamos planejando expandi-la para diferentes países. Esperamos organizar o próximo LaKademy em algum outro país fora do Brasil, e trabalharemos forte para expandir a comunidade no subcontinente.

Foto em grupo do LaKademy 2018

Nos vemos no LaKademy 2019!

@totte wrote:

Also available in Simplified Chinese, and Traditional Chinese.

The following updates have been tested, and are now available.

Name Version Comment
Frameworks 5.53.0
Plasma 5.14.4
Applications 18.12.0
Qt 5.12.0
Linux 4.19.12 Con Kolivas’ patchset added
systemd 239.303
Complete list of updated packages
acpi_call-1.1.0-57-x86_64.pkg.tar.xz
acpi_call-dkms-1.1.0-57-x86_64.pkg.tar.xz
acpi_call-lts-1.1.0-14-x86_64.pkg.tar.xz
akonadi-18.12.0-1-x86_64.pkg.tar.xz
akonadi-calendar-18.12.0-1-x86_64.pkg.tar.xz
akonadi-calendar-debug-18.12.0-1-x86_64.pkg.tar.xz
akonadi-calendar-tools-18.12.0-1-x86_64.pkg.tar.xz
akonadi-calendar-tools-debug-18.12.0-1-x86_64.pkg.tar.xz
akonadiconsole-18.12.0-1-x86_64.pkg.tar.xz
akonadiconsole-debug-18.12.0-1-x86_64.pkg.tar.xz
akonadi-contacts-18.12.0-1-x86_64.pkg.tar.xz
akonadi-import-wizard-18.12.0-1-x86_64.pkg.tar.xz
akonadi-import-wizard-debug-18.12.0-1-x86_64.pkg.tar.xz
akonadi-mime-18.12.0-1-x86_64.pkg.tar.xz
akonadi-notes-18.12.0-1-x86_64.pkg.tar.xz
akonadi-search-18.12.0-1-x86_64.pkg.tar.xz
akonadi-search-debug-18.12.0-1-x86_64.pkg.tar.xz
akregator-18.12.0-1-x86_64.pkg.tar.xz
akregator-debug-18.12.0-1-x86_64.pkg.tar.xz
analitza-18.12.0-1-x86_64.pkg.tar.xz
anki-2.1.8-1-x86_64.pkg.tar.xz
aribb24-1.0.3-1-x86_64.pkg.tar.xz
ark-18.12.0-1-x86_64.pkg.tar.xz
ark-debug-18.12.0-1-x86_64.pkg.tar.xz
artikulate-18.12.0-1-x86_64.pkg.tar.xz
artikulate-debug-18.12.0-1-x86_64.pkg.tar.xz
asciidoctor-1.5.8-1-any.pkg.tar.xz
at-spi2-core-2.26.0-2-x86_64.pkg.tar.xz
attica-qt5-5.53.0-1-x86_64.pkg.tar.xz
attica-qt5-debug-5.53.0-1-x86_64.pkg.tar.xz
audiocd-kio-18.12.0-1-x86_64.pkg.tar.xz
automake-1.16.1-1-any.pkg.tar.xz
baloo-5.53.0-1-x86_64.pkg.tar.xz
baloo-debug-5.53.0-1-x86_64.pkg.tar.xz
baloo-widgets-18.12.0-1-x86_64.pkg.tar.xz
baloo-widgets-debug-18.12.0-1-x86_64.pkg.tar.xz
bbswitch-0.8-51-x86_64.pkg.tar.xz
bbswitch-lts-0.8-17-x86_64.pkg.tar.xz
bdf-unifont-11.0.03-1-x86_64.pkg.tar.xz
blinken-18.12.0-1-x86_64.pkg.tar.xz
blinken-debug-18.12.0-1-x86_64.pkg.tar.xz
bluedevil-5.14.4-2-x86_64.pkg.tar.xz
bluedevil-debug-5.14.4-2-x86_64.pkg.tar.xz
bluez-qt-5.53.0-1-x86_64.pkg.tar.xz
bluez-qt-debug-5.53.0-1-x86_64.pkg.tar.xz
bomber-18.12.0-1-x86_64.pkg.tar.xz
bomber-debug-18.12.0-1-x86_64.pkg.tar.xz
bovo-18.12.0-1-x86_64.pkg.tar.xz
bovo-debug-18.12.0-1-x86_64.pkg.tar.xz
breeze-5.14.4-2-x86_64.pkg.tar.xz
breeze-debug-5.14.4-2-x86_64.pkg.tar.xz
breeze-grub-5.14.4-2-any.pkg.tar.xz
breeze-gtk-5.14.4-2-x86_64.pkg.tar.xz
breeze-gtk-debug-5.14.4-2-x86_64.pkg.tar.xz
breeze-icons-5.53.0-1-any.pkg.tar.xz
breeze-plymouth-5.14.4-2-x86_64.pkg.tar.xz
breeze-plymouth-debug-5.14.4-2-x86_64.pkg.tar.xz
broadcom-wl-6.30.223.271-33-x86_64.pkg.tar.xz
broadcom-wl-lts-6.30.223.271-12-x86_64.pkg.tar.xz
btrfs-progs-4.19.1-3-x86_64.pkg.tar.xz
ca-certificates-20181109-1-any.pkg.tar.xz
ca-certificates-mozilla-3.41-1-x86_64.pkg.tar.xz
ca-certificates-utils-20181109-1-any.pkg.tar.xz
calendarsupport-18.12.0-1-x86_64.pkg.tar.xz
calendarsupport-debug-18.12.0-1-x86_64.pkg.tar.xz
cantor-18.12.0-1-x86_64.pkg.tar.xz
cantor-debug-18.12.0-1-x86_64.pkg.tar.xz
cervisia-18.12.0-1-x86_64.pkg.tar.xz
cervisia-debug-18.12.0-1-x86_64.pkg.tar.xz
cgroup_event_listener-4.19.12-1-x86_64.pkg.tar.xz
chakra-common-18.12.0-1-x86_64.pkg.tar.xz
chakra-init-live-2018.12-1-x86_64.pkg.tar.xz
chakra-live-skel-2018.12-5-x86_64.pkg.tar.xz
chd-nvidia-340xx-340.107-11-x86_64.pkg.tar.xz
chd-nvidia-390xx-390.87-6-x86_64.pkg.tar.xz
chd-nvidia-410.78-3-x86_64.pkg.tar.xz
cmake-3.13.2-1-x86_64.pkg.tar.xz
cpupower-4.19.12-1-x86_64.pkg.tar.xz
crda-4.14-2-x86_64.pkg.tar.xz
dbus-1.12.12-2-x86_64.pkg.tar.xz
dbus-docs-1.12.12-2-x86_64.pkg.tar.xz
dbus-glib-0.110-1-x86_64.pkg.tar.xz
dolphin-18.12.0-1-x86_64.pkg.tar.xz
dolphin-debug-18.12.0-1-x86_64.pkg.tar.xz
dolphin-plugins-18.12.0-1-x86_64.pkg.tar.xz
dolphin-plugins-debug-18.12.0-1-x86_64.pkg.tar.xz
dragon-18.12.0-1-x86_64.pkg.tar.xz
dragon-debug-18.12.0-1-x86_64.pkg.tar.xz
drkonqi-5.14.4-2-x86_64.pkg.tar.xz
drkonqi-debug-5.14.4-2-x86_64.pkg.tar.xz
e2fsprogs-1.44.5-1-x86_64.pkg.tar.xz
eventviews-18.12.0-1-x86_64.pkg.tar.xz
eventviews-debug-18.12.0-1-x86_64.pkg.tar.xz
extra-cmake-modules-5.53.0-1-x86_64.pkg.tar.xz
ffmpegthumbs-18.12.0-1-x86_64.pkg.tar.xz
filelight-18.12.0-1-x86_64.pkg.tar.xz
filelight-debug-18.12.0-1-x86_64.pkg.tar.xz
focuswriter-1.7.1-2-x86_64.pkg.tar.xz
frameworkintegration-5.53.0-1-x86_64.pkg.tar.xz
frameworkintegration-debug-5.53.0-1-x86_64.pkg.tar.xz
granatier-18.12.0-1-x86_64.pkg.tar.xz
granatier-debug-18.12.0-1-x86_64.pkg.tar.xz
grantlee-editor-18.12.0-1-x86_64.pkg.tar.xz
grantlee-editor-debug-18.12.0-1-x86_64.pkg.tar.xz
grantleetheme-18.12.0-1-x86_64.pkg.tar.xz
grantleetheme-debug-18.12.0-1-x86_64.pkg.tar.xz
grub-1:2.02-2-x86_64.pkg.tar.xz
gwenview-18.12.0-1-x86_64.pkg.tar.xz
handbrake-cli-1.2.0-1-x86_64.pkg.tar.xz
hyperv-4.19.12-1-x86_64.pkg.tar.xz
incidenceeditor-18.12.0-1-x86_64.pkg.tar.xz
incidenceeditor-debug-18.12.0-1-x86_64.pkg.tar.xz
juk-18.12.0-1-x86_64.pkg.tar.xz
juk-debug-18.12.0-1-x86_64.pkg.tar.xz
k3b-18.12.0-1-x86_64.pkg.tar.xz
k3b-debug-18.12.0-1-x86_64.pkg.tar.xz
kaccounts-integration-18.12.0-1-x86_64.pkg.tar.xz
kaccounts-providers-18.12.0-1-x86_64.pkg.tar.xz
kactivities-5.53.0-1-x86_64.pkg.tar.xz
kactivities-debug-5.53.0-1-x86_64.pkg.tar.xz
kactivities-stats-5.53.0-1-x86_64.pkg.tar.xz
kactivities-stats-debug-5.53.0-1-x86_64.pkg.tar.xz
kactivitymanagerd-5.14.4-2-x86_64.pkg.tar.xz
kactivitymanagerd-debug-5.14.4-2-x86_64.pkg.tar.xz
kaddressbook-18.12.0-1-x86_64.pkg.tar.xz
kaddressbook-debug-18.12.0-1-x86_64.pkg.tar.xz
kajongg-18.12.0-1-x86_64.pkg.tar.xz
kalarm-18.12.0-1-x86_64.pkg.tar.xz
kalarmcal-18.12.0-1-x86_64.pkg.tar.xz
kalarmcal-debug-18.12.0-1-x86_64.pkg.tar.xz
kalarm-debug-18.12.0-1-x86_64.pkg.tar.xz
kalgebra-18.12.0-1-x86_64.pkg.tar.xz
kalzium-18.12.0-1-x86_64.pkg.tar.xz
kalzium-debug-18.12.0-1-x86_64.pkg.tar.xz
kamera-18.12.0-1-x86_64.pkg.tar.xz
kamera-debug-18.12.0-1-x86_64.pkg.tar.xz
kamoso-18.12.0-1-x86_64.pkg.tar.xz
kanagram-18.12.0-1-x86_64.pkg.tar.xz
kapidox-5.53.0-1-any.pkg.tar.xz
kapman-18.12.0-1-x86_64.pkg.tar.xz
kapman-debug-18.12.0-1-x86_64.pkg.tar.xz
kapptemplate-18.12.0-1-x86_64.pkg.tar.xz
karchive-5.53.0-1-x86_64.pkg.tar.xz
karchive-debug-5.53.0-1-x86_64.pkg.tar.xz
kate-18.12.0-1-x86_64.pkg.tar.xz
kate-debug-18.12.0-1-x86_64.pkg.tar.xz
katomic-18.12.0-1-x86_64.pkg.tar.xz
katomic-debug-18.12.0-1-x86_64.pkg.tar.xz
kauth-5.53.0-1-x86_64.pkg.tar.xz
kauth-debug-5.53.0-1-x86_64.pkg.tar.xz
kbackup-18.12.0-1-x86_64.pkg.tar.xz
kblackbox-18.12.0-1-x86_64.pkg.tar.xz
kblackbox-debug-18.12.0-1-x86_64.pkg.tar.xz
kblocks-18.12.0-1-x86_64.pkg.tar.xz
kblocks-debug-18.12.0-1-x86_64.pkg.tar.xz
kblog-18.12.0-1-x86_64.pkg.tar.xz
kblog-debug-18.12.0-1-x86_64.pkg.tar.xz
kbookmarks-5.53.0-1-x86_64.pkg.tar.xz
kbookmarks-debug-5.53.0-1-x86_64.pkg.tar.xz
kbounce-18.12.0-1-x86_64.pkg.tar.xz
kbounce-debug-18.12.0-1-x86_64.pkg.tar.xz
kbreakout-18.12.0-1-x86_64.pkg.tar.xz
kbreakout-debug-18.12.0-1-x86_64.pkg.tar.xz
kbruch-18.12.0-1-x86_64.pkg.tar.xz
kbruch-debug-18.12.0-1-x86_64.pkg.tar.xz
kcachegrind-18.12.0-1-x86_64.pkg.tar.xz
kcachegrind-debug-18.12.0-1-x86_64.pkg.tar.xz
kcalc-18.12.0-1-x86_64.pkg.tar.xz
kcalc-debug-18.12.0-1-x86_64.pkg.tar.xz
kcalcore-18.12.0-1-x86_64.pkg.tar.xz
kcalcore-debug-18.12.0-1-x86_64.pkg.tar.xz
kcalutils-18.12.0-1-x86_64.pkg.tar.xz
kcalutils-debug-18.12.0-1-x86_64.pkg.tar.xz
kcharselect-18.12.0-1-x86_64.pkg.tar.xz
kcharselect-debug-18.12.0-1-x86_64.pkg.tar.xz
kcmutils-5.53.0-1-x86_64.pkg.tar.xz
kcmutils-debug-5.53.0-1-x86_64.pkg.tar.xz
kcodecs-5.53.0-1-x86_64.pkg.tar.xz
kcodecs-debug-5.53.0-1-x86_64.pkg.tar.xz
kcolorchooser-18.12.0-1-x86_64.pkg.tar.xz
kcolorchooser-debug-18.12.0-1-x86_64.pkg.tar.xz
kcompletion-5.53.0-1-x86_64.pkg.tar.xz
kcompletion-debug-5.53.0-1-x86_64.pkg.tar.xz
kconfig-5.53.0-1-x86_64.pkg.tar.xz
kconfig-debug-5.53.0-1-x86_64.pkg.tar.xz
kconfigwidgets-5.53.0-1-x86_64.pkg.tar.xz
kconfigwidgets-debug-5.53.0-1-x86_64.pkg.tar.xz
kcontacts-18.12.0-1-x86_64.pkg.tar.xz
kcontacts-debug-18.12.0-1-x86_64.pkg.tar.xz
kcoreaddons-5.53.0-1-x86_64.pkg.tar.xz
kcrash-5.53.0-1-x86_64.pkg.tar.xz
kcrash-debug-5.53.0-1-x86_64.pkg.tar.xz
kcron-18.12.0-1-x86_64.pkg.tar.xz
kcron-debug-18.12.0-1-x86_64.pkg.tar.xz
kdav-18.12.0-1-x86_64.pkg.tar.xz
kdav-debug-18.12.0-1-x86_64.pkg.tar.xz
kdbusaddons-5.53.0-1-x86_64.pkg.tar.xz
kdbusaddons-debug-5.53.0-1-x86_64.pkg.tar.xz
kdebugsettings-18.12.0-1-x86_64.pkg.tar.xz
kdebugsettings-debug-18.12.0-1-x86_64.pkg.tar.xz
kdeclarative-5.53.0-1-x86_64.pkg.tar.xz
kdeclarative-debug-5.53.0-1-x86_64.pkg.tar.xz
kde-cli-tools-5.14.4-2-x86_64.pkg.tar.xz
kde-cli-tools-debug-5.14.4-2-x86_64.pkg.tar.xz
kdecoration-5.14.4-2-x86_64.pkg.tar.xz
kdecoration-debug-5.14.4-2-x86_64.pkg.tar.xz
kded-5.53.0-1-x86_64.pkg.tar.xz
kded-debug-5.53.0-1-x86_64.pkg.tar.xz
kde-dev-scripts-18.12.0-1-any.pkg.tar.xz
kde-dev-utils-18.12.0-1-x86_64.pkg.tar.xz
kde-dev-utils-debug-18.12.0-1-x86_64.pkg.tar.xz
kdeedu-data-18.12.0-1-x86_64.pkg.tar.xz
kdegraphics-mobipocket-18.12.0-1-x86_64.pkg.tar.xz
kdegraphics-mobipocket-debug-18.12.0-1-x86_64.pkg.tar.xz
kdegraphics-thumbnailers-18.12.0-1-x86_64.pkg.tar.xz
kdegraphics-thumbnailers-debug-18.12.0-1-x86_64.pkg.tar.xz
kde-gtk-config-5.14.4-2-x86_64.pkg.tar.xz
kde-gtk-config-debug-5.14.4-2-x86_64.pkg.tar.xz
kdelibs4support-5.53.0-1-x86_64.pkg.tar.xz
kdelibs4support-debug-5.53.0-1-x86_64.pkg.tar.xz
kdenetwork-filesharing-18.12.0-1-x86_64.pkg.tar.xz
kdenetwork-filesharing-debug-18.12.0-1-x86_64.pkg.tar.xz
kdenlive-18.12.0-1-x86_64.pkg.tar.xz
kdenlive-debug-18.12.0-1-x86_64.pkg.tar.xz
kdepim-addons-18.12.0-1-x86_64.pkg.tar.xz
kdepim-addons-debug-18.12.0-1-x86_64.pkg.tar.xz
kdepim-apps-libs-18.12.0-1-x86_64.pkg.tar.xz
kdepim-apps-libs-debug-18.12.0-1-x86_64.pkg.tar.xz
kdepim-runtime-18.12.0-1-x86_64.pkg.tar.xz
kdepim-runtime-debug-18.12.0-1-x86_64.pkg.tar.xz
kdeplasma-addons-5.14.4-2-x86_64.pkg.tar.xz
kdeplasma-addons-debug-5.14.4-2-x86_64.pkg.tar.xz
kdesdk-thumbnailers-18.12.0-1-x86_64.pkg.tar.xz
kdesdk-thumbnailers-debug-18.12.0-1-x86_64.pkg.tar.xz
kdesignerplugin-5.53.0-1-x86_64.pkg.tar.xz
kdesu-5.53.0-1-x86_64.pkg.tar.xz
kdesu-debug-5.53.0-1-x86_64.pkg.tar.xz
kdewebkit-5.53.0-1-x86_64.pkg.tar.xz
kdewebkit-debug-5.53.0-1-x86_64.pkg.tar.xz
kdf-18.12.0-1-x86_64.pkg.tar.xz
kdf-debug-18.12.0-1-x86_64.pkg.tar.xz
kdialog-18.12.0-1-x86_64.pkg.tar.xz
kdialog-debug-18.12.0-1-x86_64.pkg.tar.xz
kdiamond-18.12.0-1-x86_64.pkg.tar.xz
kdiamond-debug-18.12.0-1-x86_64.pkg.tar.xz
kdnssd-5.53.0-1-x86_64.pkg.tar.xz
kdnssd-debug-5.53.0-1-x86_64.pkg.tar.xz
kdoctools-5.53.0-1-x86_64.pkg.tar.xz
kdoctools-debug-5.53.0-1-x86_64.pkg.tar.xz
keditbookmarks-18.12.0-1-x86_64.pkg.tar.xz
keditbookmarks-debug-18.12.0-1-x86_64.pkg.tar.xz
kemoticons-5.53.0-1-x86_64.pkg.tar.xz
kemoticons-debug-5.53.0-1-x86_64.pkg.tar.xz
kfilemetadata-5.53.0-1-x86_64.pkg.tar.xz
kfilemetadata-debug-5.53.0-1-x86_64.pkg.tar.xz
kfind-18.12.0-1-x86_64.pkg.tar.xz
kfind-debug-18.12.0-1-x86_64.pkg.tar.xz
kfloppy-18.12.0-1-x86_64.pkg.tar.xz
kfloppy-debug-18.12.0-1-x86_64.pkg.tar.xz
kfourinline-18.12.0-1-x86_64.pkg.tar.xz
kfourinline-debug-18.12.0-1-x86_64.pkg.tar.xz
kgamma5-5.14.4-2-x86_64.pkg.tar.xz
kgamma5-debug-5.14.4-2-x86_64.pkg.tar.xz
kgeography-18.12.0-1-x86_64.pkg.tar.xz
kgeography-debug-18.12.0-1-x86_64.pkg.tar.xz
kget-18.12.0-1-x86_64.pkg.tar.xz
kget-debug-18.12.0-1-x86_64.pkg.tar.xz
kglobalaccel-5.53.0-1-x86_64.pkg.tar.xz
kglobalaccel-debug-5.53.0-1-x86_64.pkg.tar.xz
kgoldrunner-18.12.0-1-x86_64.pkg.tar.xz
kgoldrunner-debug-18.12.0-1-x86_64.pkg.tar.xz
kgpg-18.12.0-1-x86_64.pkg.tar.xz
kgpg-debug-18.12.0-1-x86_64.pkg.tar.xz
kguiaddons-5.53.0-1-x86_64.pkg.tar.xz
kguiaddons-debug-5.53.0-1-x86_64.pkg.tar.xz
khangman-18.12.0-1-x86_64.pkg.tar.xz
khelpcenter-18.12.0-1-x86_64.pkg.tar.xz
khelpcenter-debug-18.12.0-1-x86_64.pkg.tar.xz
kholidays-1:5.53.0-1-x86_64.pkg.tar.xz
kholidays-debug-1:5.53.0-1-x86_64.pkg.tar.xz
khotkeys-5.14.4-2-x86_64.pkg.tar.xz
khotkeys-debug-5.14.4-2-x86_64.pkg.tar.xz
khtml-5.53.0-1-x86_64.pkg.tar.xz
khtml-debug-5.53.0-1-x86_64.pkg.tar.xz
ki18n-5.53.0-1-x86_64.pkg.tar.xz
ki18n-debug-5.53.0-1-x86_64.pkg.tar.xz
kiconthemes-5.53.0-1-x86_64.pkg.tar.xz
kiconthemes-debug-5.53.0-1-x86_64.pkg.tar.xz
kid3-3.7.0-1-x86_64.pkg.tar.xz
kidentitymanagement-18.12.0-1-x86_64.pkg.tar.xz
kidentitymanagement-debug-18.12.0-1-x86_64.pkg.tar.xz
kidletime-5.53.0-1-x86_64.pkg.tar.xz
kidletime-debug-5.53.0-1-x86_64.pkg.tar.xz
kig-18.12.0-1-x86_64.pkg.tar.xz
kigo-18.12.0-1-x86_64.pkg.tar.xz
kigo-debug-18.12.0-1-x86_64.pkg.tar.xz
killbots-18.12.0-1-x86_64.pkg.tar.xz
killbots-debug-18.12.0-1-x86_64.pkg.tar.xz
kimageformats-5.53.0-1-x86_64.pkg.tar.xz
kimageformats-debug-5.53.0-1-x86_64.pkg.tar.xz
kimagemapeditor-18.12.0-1-x86_64.pkg.tar.xz
kimagemapeditor-debug-18.12.0-1-x86_64.pkg.tar.xz
kimap-18.12.0-1-x86_64.pkg.tar.xz
kimap-debug-18.12.0-1-x86_64.pkg.tar.xz
kinfocenter-5.14.4-2-x86_64.pkg.tar.xz
kinfocenter-debug-5.14.4-2-x86_64.pkg.tar.xz
kinit-5.53.0-1-x86_64.pkg.tar.xz
kinit-debug-5.53.0-1-x86_64.pkg.tar.xz
kio-5.53.0-1-x86_64.pkg.tar.xz
kio-debug-5.53.0-1-x86_64.pkg.tar.xz
kio-extras-18.12.0-1-x86_64.pkg.tar.xz
kio-extras-debug-18.12.0-1-x86_64.pkg.tar.xz
kioslaves-18.12.0-1-x86_64.pkg.tar.xz
kirigami-5.53.0-1-x86_64.pkg.tar.xz
kirigami-debug-5.53.0-1-x86_64.pkg.tar.xz
kiriki-18.12.0-1-x86_64.pkg.tar.xz
kiriki-debug-18.12.0-1-x86_64.pkg.tar.xz
kitemmodels-5.53.0-1-x86_64.pkg.tar.xz
kitemmodels-debug-5.53.0-1-x86_64.pkg.tar.xz
kitemviews-5.53.0-1-x86_64.pkg.tar.xz
kitemviews-debug-5.53.0-1-x86_64.pkg.tar.xz
kiten-18.12.0-1-x86_64.pkg.tar.xz
kiten-debug-18.12.0-1-x86_64.pkg.tar.xz
kitinerary-18.12.0-1-x86_64.pkg.tar.xz
kitinerary-debug-18.12.0-1-x86_64.pkg.tar.xz
kjobwidgets-5.53.0-1-x86_64.pkg.tar.xz
kjobwidgets-debug-5.53.0-1-x86_64.pkg.tar.xz
kjs-5.53.0-1-x86_64.pkg.tar.xz
kjs-debug-5.53.0-1-x86_64.pkg.tar.xz
kjsembed-5.53.0-1-x86_64.pkg.tar.xz
kjsembed-debug-5.53.0-1-x86_64.pkg.tar.xz
kjumpingcube-18.12.0-1-x86_64.pkg.tar.xz
kjumpingcube-debug-18.12.0-1-x86_64.pkg.tar.xz
kldap-18.12.0-1-x86_64.pkg.tar.xz
kldap-debug-18.12.0-1-x86_64.pkg.tar.xz
kleopatra-18.12.0-1-x86_64.pkg.tar.xz
klettres-18.12.0-1-x86_64.pkg.tar.xz
klettres-debug-18.12.0-1-x86_64.pkg.tar.xz
klickety-18.12.0-1-x86_64.pkg.tar.xz
klickety-debug-18.12.0-1-x86_64.pkg.tar.xz
klines-18.12.0-1-x86_64.pkg.tar.xz
klines-debug-18.12.0-1-x86_64.pkg.tar.xz
kmag-18.12.0-1-x86_64.pkg.tar.xz
kmag-debug-18.12.0-1-x86_64.pkg.tar.xz
kmahjongg-18.12.0-1-x86_64.pkg.tar.xz
kmahjongg-debug-18.12.0-1-x86_64.pkg.tar.xz
kmail-18.12.0-1-x86_64.pkg.tar.xz
kmail-account-wizard-18.12.0-1-x86_64.pkg.tar.xz
kmail-account-wizard-debug-18.12.0-1-x86_64.pkg.tar.xz
kmail-debug-18.12.0-1-x86_64.pkg.tar.xz
kmailtransport-18.12.0-1-x86_64.pkg.tar.xz
kmailtransport-debug-18.12.0-1-x86_64.pkg.tar.xz
kmbox-18.12.0-1-x86_64.pkg.tar.xz
kmbox-debug-18.12.0-1-x86_64.pkg.tar.xz
kmediaplayer-5.53.0-1-x86_64.pkg.tar.xz
kmediaplayer-debug-5.53.0-1-x86_64.pkg.tar.xz
kmenuedit-5.14.4-2-x86_64.pkg.tar.xz
kmenuedit-debug-5.14.4-2-x86_64.pkg.tar.xz
kmetronome-1.0.0-3-x86_64.pkg.tar.xz
kmime-18.12.0-1-x86_64.pkg.tar.xz
kmime-debug-18.12.0-1-x86_64.pkg.tar.xz
kmines-18.12.0-1-x86_64.pkg.tar.xz
kmines-debug-18.12.0-1-x86_64.pkg.tar.xz
kmix-18.12.0-1-x86_64.pkg.tar.xz
kmix-debug-18.12.0-1-x86_64.pkg.tar.xz
kmousetool-18.12.0-1-x86_64.pkg.tar.xz
kmousetool-debug-18.12.0-1-x86_64.pkg.tar.xz
kmouth-18.12.0-1-x86_64.pkg.tar.xz
kmouth-debug-18.12.0-1-x86_64.pkg.tar.xz
kmplot-18.12.0-1-x86_64.pkg.tar.xz
kmplot-debug-18.12.0-1-x86_64.pkg.tar.xz
knavalbattle-18.12.0-1-x86_64.pkg.tar.xz
knavalbattle-debug-18.12.0-1-x86_64.pkg.tar.xz
knetwalk-18.12.0-1-x86_64.pkg.tar.xz
knetwalk-debug-18.12.0-1-x86_64.pkg.tar.xz
knewstuff-5.53.0-1-x86_64.pkg.tar.xz
knewstuff-debug-5.53.0-1-x86_64.pkg.tar.xz
knotes-18.12.0-1-x86_64.pkg.tar.xz
knotes-debug-18.12.0-1-x86_64.pkg.tar.xz
knotifications-5.53.0-1-x86_64.pkg.tar.xz
knotifications-debug-5.53.0-1-x86_64.pkg.tar.xz
knotifyconfig-5.53.0-1-x86_64.pkg.tar.xz
knotifyconfig-debug-5.53.0-1-x86_64.pkg.tar.xz
kolf-18.12.0-1-x86_64.pkg.tar.xz
kolf-debug-18.12.0-1-x86_64.pkg.tar.xz
kollision-18.12.0-1-x86_64.pkg.tar.xz
kollision-debug-18.12.0-1-x86_64.pkg.tar.xz
kolourpaint-18.12.0-1-x86_64.pkg.tar.xz
kolourpaint-debug-18.12.0-1-x86_64.pkg.tar.xz
kompare-18.12.0-1-x86_64.pkg.tar.xz
kompare-debug-18.12.0-1-x86_64.pkg.tar.xz
konqueror-18.12.0-1-x86_64.pkg.tar.xz
konqueror-debug-18.12.0-1-x86_64.pkg.tar.xz
konquest-18.12.0-1-x86_64.pkg.tar.xz
konquest-debug-18.12.0-1-x86_64.pkg.tar.xz
konsole-18.12.0-1-x86_64.pkg.tar.xz
kontact-18.12.0-1-x86_64.pkg.tar.xz
kontact-debug-18.12.0-1-x86_64.pkg.tar.xz
kontactinterface-18.12.0-1-x86_64.pkg.tar.xz
kontactinterface-debug-18.12.0-1-x86_64.pkg.tar.xz
kopete-18.12.0-1-x86_64.pkg.tar.xz
korganizer-18.12.0-1-x86_64.pkg.tar.xz
korganizer-debug-18.12.0-1-x86_64.pkg.tar.xz
kpackage-5.53.0-1-x86_64.pkg.tar.xz
kpackage-debug-5.53.0-1-x86_64.pkg.tar.xz
kparts-5.53.0-1-x86_64.pkg.tar.xz
kparts-debug-5.53.0-1-x86_64.pkg.tar.xz
kpat-18.12.0-1-x86_64.pkg.tar.xz
kpat-debug-18.12.0-1-x86_64.pkg.tar.xz
kpeople-5.53.0-1-x86_64.pkg.tar.xz
kpeople-debug-5.53.0-1-x86_64.pkg.tar.xz
kpimtextedit-18.12.0-1-x86_64.pkg.tar.xz
kpimtextedit-debug-18.12.0-1-x86_64.pkg.tar.xz
kpkpass-18.12.0-1-x86_64.pkg.tar.xz
kpkpass-debug-18.12.0-1-x86_64.pkg.tar.xz
kplotting-5.53.0-1-x86_64.pkg.tar.xz
kplotting-debug-5.53.0-1-x86_64.pkg.tar.xz
kpty-5.53.0-1-x86_64.pkg.tar.xz
kpty-debug-5.53.0-1-x86_64.pkg.tar.xz
kqtquickcharts-18.12.0-1-x86_64.pkg.tar.xz
kqtquickcharts-debug-18.12.0-1-x86_64.pkg.tar.xz
krdc-18.12.0-1-x86_64.pkg.tar.xz
krdc-debug-18.12.0-1-x86_64.pkg.tar.xz
kreversi-18.12.0-1-x86_64.pkg.tar.xz
kreversi-debug-18.12.0-1-x86_64.pkg.tar.xz
krfb-18.12.0-1-x86_64.pkg.tar.xz
krfb-debug-18.12.0-1-x86_64.pkg.tar.xz
krita-4.1.7-1-x86_64.pkg.tar.xz
kross-5.53.0-1-x86_64.pkg.tar.xz
kross-debug-5.53.0-1-x86_64.pkg.tar.xz
kross-interpreters-18.12.0-1-x86_64.pkg.tar.xz
kross-interpreters-debug-18.12.0-1-x86_64.pkg.tar.xz
kruler-18.12.0-1-x86_64.pkg.tar.xz
kruler-debug-18.12.0-1-x86_64.pkg.tar.xz
krunner-5.53.0-1-x86_64.pkg.tar.xz
krunner-debug-5.53.0-1-x86_64.pkg.tar.xz
kscreen-5.14.4-2-x86_64.pkg.tar.xz
kscreen-debug-5.14.4-2-x86_64.pkg.tar.xz
kscreenlocker-5.14.4-2-x86_64.pkg.tar.xz
kscreenlocker-debug-5.14.4-2-x86_64.pkg.tar.xz
kservice-5.53.0-1-x86_64.pkg.tar.xz
kservice-debug-5.53.0-1-x86_64.pkg.tar.xz
kshisen-18.12.0-1-x86_64.pkg.tar.xz
kshisen-debug-18.12.0-1-x86_64.pkg.tar.xz
ksirk-18.12.0-1-x86_64.pkg.tar.xz
ksirk-debug-18.12.0-1-x86_64.pkg.tar.xz
ksmtp-18.12.0-1-x86_64.pkg.tar.xz
ksnakeduel-18.12.0-1-x86_64.pkg.tar.xz
ksnakeduel-debug-18.12.0-1-x86_64.pkg.tar.xz
kspaceduel-18.12.0-1-x86_64.pkg.tar.xz
kspaceduel-debug-18.12.0-1-x86_64.pkg.tar.xz
ksquares-18.12.0-1-x86_64.pkg.tar.xz
ksquares-debug-18.12.0-1-x86_64.pkg.tar.xz
ksshaskpass-5.14.4-2-x86_64.pkg.tar.xz
ksshaskpass-debug-5.14.4-2-x86_64.pkg.tar.xz
kstars-1:3.0.0-1-x86_64.pkg.tar.xz
kstars-debug-1:3.0.0-1-x86_64.pkg.tar.xz
ksudoku-18.12.0-1-x86_64.pkg.tar.xz
ksudoku-debug-18.12.0-1-x86_64.pkg.tar.xz
ksysguard-5.14.4-2-x86_64.pkg.tar.xz
ksysguard-debug-5.14.4-2-x86_64.pkg.tar.xz
ksystemlog-18.12.0-1-x86_64.pkg.tar.xz
ksystemlog-debug-18.12.0-1-x86_64.pkg.tar.xz
kteatime-18.12.0-1-x86_64.pkg.tar.xz
kteatime-debug-18.12.0-1-x86_64.pkg.tar.xz
ktexteditor-5.53.0-1-x86_64.pkg.tar.xz
ktexteditor-debug-5.53.0-1-x86_64.pkg.tar.xz
ktextwidgets-5.53.0-1-x86_64.pkg.tar.xz
ktextwidgets-debug-5.53.0-1-x86_64.pkg.tar.xz
ktimer-18.12.0-1-x86_64.pkg.tar.xz
ktimer-debug-18.12.0-1-x86_64.pkg.tar.xz
ktnef-18.12.0-1-x86_64.pkg.tar.xz
ktouch-18.12.0-1-x86_64.pkg.tar.xz
ktouch-debug-18.12.0-1-x86_64.pkg.tar.xz
ktp-accounts-kcm-18.12.0-1-x86_64.pkg.tar.xz
ktp-approver-18.12.0-1-x86_64.pkg.tar.xz
ktp-auth-handler-18.12.0-1-x86_64.pkg.tar.xz
ktp-call-ui-18.12.0-1-x86_64.pkg.tar.xz
ktp-call-ui-debug-18.12.0-1-x86_64.pkg.tar.xz
ktp-common-internals-18.12.0-1-x86_64.pkg.tar.xz
ktp-contact-list-18.12.0-1-x86_64.pkg.tar.xz
ktp-contact-runner-18.12.0-1-x86_64.pkg.tar.xz
ktp-filetransfer-handler-18.12.0-1-x86_64.pkg.tar.xz
ktp-kded-module-18.12.0-1-x86_64.pkg.tar.xz
ktp-send-file-18.12.0-1-x86_64.pkg.tar.xz
ktp-text-ui-18.12.0-1-x86_64.pkg.tar.xz
ktuberling-18.12.0-1-x86_64.pkg.tar.xz
ktuberling-debug-18.12.0-1-x86_64.pkg.tar.xz
kturtle-18.12.0-1-x86_64.pkg.tar.xz
kturtle-debug-18.12.0-1-x86_64.pkg.tar.xz
kubrick-18.12.0-1-x86_64.pkg.tar.xz
kubrick-debug-18.12.0-1-x86_64.pkg.tar.xz
kunitconversion-5.53.0-1-x86_64.pkg.tar.xz
kunitconversion-debug-5.53.0-1-x86_64.pkg.tar.xz
kwallet-5.53.0-1-x86_64.pkg.tar.xz
kwallet-debug-5.53.0-1-x86_64.pkg.tar.xz
kwalletmanager-18.12.0-1-x86_64.pkg.tar.xz
kwalletmanager-debug-18.12.0-1-x86_64.pkg.tar.xz
kwallet-pam-5.14.4-2-x86_64.pkg.tar.xz
kwallet-pam-debug-5.14.4-2-x86_64.pkg.tar.xz
kwave-18.12.0-1-x86_64.pkg.tar.xz
kwave-debug-18.12.0-1-x86_64.pkg.tar.xz
kwayland-5.53.0-1-x86_64.pkg.tar.xz
kwayland-debug-5.53.0-1-x86_64.pkg.tar.xz
kwayland-integration-5.14.4-2-x86_64.pkg.tar.xz
kwayland-integration-debug-5.14.4-2-x86_64.pkg.tar.xz
kwidgetsaddons-5.53.0-1-x86_64.pkg.tar.xz
kwidgetsaddons-debug-5.53.0-1-x86_64.pkg.tar.xz
kwin-5.14.4-2-x86_64.pkg.tar.xz
kwin-debug-5.14.4-2-x86_64.pkg.tar.xz
kwindowsystem-5.53.0-1-x86_64.pkg.tar.xz
kwindowsystem-debug-5.53.0-1-x86_64.pkg.tar.xz
kwordquiz-18.12.0-1-x86_64.pkg.tar.xz
kwordquiz-debug-18.12.0-1-x86_64.pkg.tar.xz
kwrite-18.12.0-1-x86_64.pkg.tar.xz
kwrited-5.14.4-2-x86_64.pkg.tar.xz
kwrited-debug-5.14.4-2-x86_64.pkg.tar.xz
kwrite-debug-18.12.0-1-x86_64.pkg.tar.xz
kxmlgui-5.53.0-1-x86_64.pkg.tar.xz
kxmlgui-debug-5.53.0-1-x86_64.pkg.tar.xz
kxmlrpcclient-5.53.0-1-x86_64.pkg.tar.xz
kxmlrpcclient-debug-5.53.0-1-x86_64.pkg.tar.xz
lib32-dbus-1.12.12-2-x86_64.pkg.tar.xz
lib32-dbus-glib-0.110-1-x86_64.pkg.tar.xz
lib32-e2fsprogs-1.44.5-1-x86_64.pkg.tar.xz
lib32-glib2-2.58.1-2-x86_64.pkg.tar.xz
lib32-libcap-2.25-1-x86_64.pkg.tar.xz
lib32-libpng-1.6.36-1-x86_64.pkg.tar.xz
lib32-libtiff-4.0.10-1-x86_64.pkg.tar.xz
lib32-libva-mesa-driver-18.2.6-1-x86_64.pkg.tar.xz
lib32-mesa-vdpau-18.2.6-1-x86_64.pkg.tar.xz
lib32-nettle-3.4.1-1-x86_64.pkg.tar.xz
lib32-nss-3.41-1-x86_64.pkg.tar.xz
lib32-nvidia-utils-410.78-1-x86_64.pkg.tar.xz
lib32-opencl-nvidia-410.78-1-x86_64.pkg.tar.xz
lib32-qt-4.8.7-10-x86_64.pkg.tar.xz
lib32-speex-1.2.0-1-x86_64.pkg.tar.xz
lib32-systemd-239.303-1-x86_64.pkg.tar.xz
lib32-util-linux-2.33-1-x86_64.pkg.tar.xz
lib32-vulkan-intel-18.2.6-1-x86_64.pkg.tar.xz
lib32-vulkan-radeon-18.2.6-1-x86_64.pkg.tar.xz
lib32-wayland-1.16.0-1-x86_64.pkg.tar.xz
libaal-1.0.7-1-x86_64.pkg.tar.xz
libastro-18.12.0-1-x86_64.pkg.tar.xz
libastro-debug-18.12.0-1-x86_64.pkg.tar.xz
libcue-2.2.1-1-x86_64.pkg.tar.xz
libdvbpsi-1.3.2-1-x86_64.pkg.tar.xz
libgravatar-18.12.0-1-x86_64.pkg.tar.xz
libgravatar-debug-18.12.0-1-x86_64.pkg.tar.xz
libgudev-232-1-x86_64.pkg.tar.xz
libkcddb-18.12.0-1-x86_64.pkg.tar.xz
libkcddb-debug-18.12.0-1-x86_64.pkg.tar.xz
libkcompactdisc-18.12.0-1-x86_64.pkg.tar.xz
libkcompactdisc-debug-18.12.0-1-x86_64.pkg.tar.xz
libkdcraw-18.12.0-1-x86_64.pkg.tar.xz
libkdcraw-debug-18.12.0-1-x86_64.pkg.tar.xz
libkdegames-18.12.0-1-x86_64.pkg.tar.xz
libkdegames-debug-18.12.0-1-x86_64.pkg.tar.xz
libkdepim-18.12.0-1-x86_64.pkg.tar.xz
libkdepim-debug-18.12.0-1-x86_64.pkg.tar.xz
libkeduvocdocument-18.12.0-1-x86_64.pkg.tar.xz
libkexiv2-18.12.0-1-x86_64.pkg.tar.xz
libkexiv2-debug-18.12.0-1-x86_64.pkg.tar.xz
libkgapi-18.12.0-1-x86_64.pkg.tar.xz
libkgapi-debug-18.12.0-1-x86_64.pkg.tar.xz
libkgeomap-18.12.0-1-x86_64.pkg.tar.xz
libkgeomap-debug-18.12.0-1-x86_64.pkg.tar.xz
libkipi-18.12.0-1-x86_64.pkg.tar.xz
libkipi-debug-18.12.0-1-x86_64.pkg.tar.xz
libkleo-18.12.0-1-x86_64.pkg.tar.xz
libkleo-debug-18.12.0-1-x86_64.pkg.tar.xz
libkmahjongg-18.12.0-1-x86_64.pkg.tar.xz
libkmahjongg-debug-18.12.0-1-x86_64.pkg.tar.xz
libkomparediff2-18.12.0-1-x86_64.pkg.tar.xz
libksane-18.12.0-1-x86_64.pkg.tar.xz
libksane-debug-18.12.0-1-x86_64.pkg.tar.xz
libkscreen-5.14.4-2-x86_64.pkg.tar.xz
libkscreen-debug-5.14.4-2-x86_64.pkg.tar.xz
libksieve-18.12.0-1-x86_64.pkg.tar.xz
libksieve-debug-18.12.0-1-x86_64.pkg.tar.xz
libksysguard-5.14.4-2-x86_64.pkg.tar.xz
libksysguard-debug-5.14.4-2-x86_64.pkg.tar.xz
libmpcdec-1:0.1+r475-2-x86_64.pkg.tar.xz
libplacebo-0.6.0-1-x86_64.pkg.tar.xz
libpng-1.6.36-1-x86_64.pkg.tar.xz
libreplaygain-475-1-x86_64.pkg.tar.xz
libsystemd-239.303-2-x86_64.pkg.tar.xz
libtiff-4.0.10-1-x86_64.pkg.tar.xz
libtool-2.4.6-5-x86_64.pkg.tar.xz
libtraceevent-4.19.12-1-x86_64.pkg.tar.xz
libva-intel-driver-2.3.0-1-x86_64.pkg.tar.xz
libva-mesa-driver-18.2.6-2-x86_64.pkg.tar.xz
libva-utils-2.3.0-1-x86_64.pkg.tar.xz
libvirt-2.5.0-2-x86_64.pkg.tar.xz
libwbclient-4.8.8-1-x86_64.pkg.tar.xz
libxnvctrl-410.78-1-x86_64.pkg.tar.xz
linux-4.19.12-1-x86_64.pkg.tar.xz
linux-api-headers-4.19.12-1-x86_64.pkg.tar.xz
linux-docs-4.19.12-1-x86_64.pkg.tar.xz
linux-firmware-20181214.813fa1f-1-any.pkg.tar.xz
linux-headers-4.19.12-1-x86_64.pkg.tar.xz
linux-lts-4.4.165-1-x86_64.pkg.tar.xz
linux-lts-docs-4.4.165-1-x86_64.pkg.tar.xz
linux-lts-headers-4.4.165-1-x86_64.pkg.tar.xz
linux-tools-meta-4.19.12-1-x86_64.pkg.tar.xz
lokalize-18.12.0-1-x86_64.pkg.tar.xz
lokalize-debug-18.12.0-1-x86_64.pkg.tar.xz
lskat-18.12.0-1-x86_64.pkg.tar.xz
lskat-debug-18.12.0-1-x86_64.pkg.tar.xz
lyx-2.3.2-1-x86_64.pkg.tar.xz
mailcommon-18.12.0-1-x86_64.pkg.tar.xz
mailcommon-debug-18.12.0-1-x86_64.pkg.tar.xz
mailimporter-18.12.0-1-x86_64.pkg.tar.xz
mailimporter-debug-18.12.0-1-x86_64.pkg.tar.xz
marble-18.12.0-1-x86_64.pkg.tar.xz
marble-data-18.12.0-1-x86_64.pkg.tar.xz
marble-debug-18.12.0-1-x86_64.pkg.tar.xz
mbox-importer-18.12.0-1-x86_64.pkg.tar.xz
mbox-importer-debug-18.12.0-1-x86_64.pkg.tar.xz
mc-4.8.22-1-x86_64.pkg.tar.xz
mesa-18.2.6-2-x86_64.pkg.tar.xz
mesa-vdpau-18.2.6-2-x86_64.pkg.tar.xz
meson-0.47.2-1-any.pkg.tar.xz
messagelib-18.12.0-1-x86_64.pkg.tar.xz
messagelib-debug-18.12.0-1-x86_64.pkg.tar.xz
milou-5.14.4-2-x86_64.pkg.tar.xz
milou-debug-5.14.4-2-x86_64.pkg.tar.xz
minuet-18.12.0-1-x86_64.pkg.tar.xz
minuet-debug-18.12.0-1-x86_64.pkg.tar.xz
modemmanager-qt-5.53.0-1-x86_64.pkg.tar.xz
modemmanager-qt-debug-5.53.0-1-x86_64.pkg.tar.xz
mpd-0.21.3-1-x86_64.pkg.tar.xz
mpv-0.29.1-3-x86_64.pkg.tar.xz
musepack-tools-1:0.1+r475-2-x86_64.pkg.tar.xz
ndiswrapper-dkms-1.61-19-x86_64.pkg.tar.xz
ndiswrapper-lts-1.61-10-x86_64.pkg.tar.xz
nettle-3.4.1-1-x86_64.pkg.tar.xz
networkmanager-qt-5.53.0-1-x86_64.pkg.tar.xz
networkmanager-qt-debug-5.53.0-1-x86_64.pkg.tar.xz
nginx-1.14.2-1-x86_64.pkg.tar.xz
nss-3.41-1-x86_64.pkg.tar.xz
nvidia-340xx-340.107-11-x86_64.pkg.tar.xz
nvidia-340xx-dkms-340.107-11-x86_64.pkg.tar.xz
nvidia-340xx-lts-340.107-4-x86_64.pkg.tar.xz
nvidia-340xx-utils-340.107-10-x86_64.pkg.tar.xz
nvidia-390xx-390.87-6-x86_64.pkg.tar.xz
nvidia-390xx-dkms-390.87-6-x86_64.pkg.tar.xz
nvidia-390xx-lts-390.87-2-x86_64.pkg.tar.xz
nvidia-390xx-utils-390.87-5-x86_64.pkg.tar.xz
nvidia-410.78-3-x86_64.pkg.tar.xz
nvidia-dkms-410.78-3-x86_64.pkg.tar.xz
nvidia-lts-410.78-1-x86_64.pkg.tar.xz
nvidia-settings-410.78-1-x86_64.pkg.tar.xz
nvidia-utils-410.78-4-x86_64.pkg.tar.xz
okular-18.12.0-1-x86_64.pkg.tar.xz
okular-debug-18.12.0-1-x86_64.pkg.tar.xz
opencl-mesa-18.2.6-2-x86_64.pkg.tar.xz
opencl-nvidia-340xx-340.107-10-x86_64.pkg.tar.xz
opencl-nvidia-390xx-390.87-5-x86_64.pkg.tar.xz
opencl-nvidia-410.78-4-x86_64.pkg.tar.xz
otter-browser-1.0.01-1-x86_64.pkg.tar.xz
oxygen-5.14.4-2-x86_64.pkg.tar.xz
oxygen-cursors-5.14.4-2-x86_64.pkg.tar.xz
oxygen-debug-5.14.4-2-x86_64.pkg.tar.xz
oxygen-icons-1:5.53.0-1-x86_64.pkg.tar.xz
oxygen-icons-svg-1:5.53.0-1-x86_64.pkg.tar.xz
palapeli-18.12.0-1-x86_64.pkg.tar.xz
palapeli-debug-18.12.0-1-x86_64.pkg.tar.xz
parley-18.12.0-1-x86_64.pkg.tar.xz
perf-4.19.12-1-x86_64.pkg.tar.xz
php-7.1.25-1-x86_64.pkg.tar.xz
php-apache-7.1.25-1-x86_64.pkg.tar.xz
php-cgi-7.1.25-1-x86_64.pkg.tar.xz
php-dblib-7.1.25-1-x86_64.pkg.tar.xz
php-embed-7.1.25-1-x86_64.pkg.tar.xz
php-enchant-7.1.25-1-x86_64.pkg.tar.xz
php-fpm-7.1.25-1-x86_64.pkg.tar.xz
php-gd-7.1.25-1-x86_64.pkg.tar.xz
php-imap-7.1.25-1-x86_64.pkg.tar.xz
php-intl-7.1.25-1-x86_64.pkg.tar.xz
php-mcrypt-7.1.25-1-x86_64.pkg.tar.xz
php-odbc-7.1.25-1-x86_64.pkg.tar.xz
php-pgsql-7.1.25-1-x86_64.pkg.tar.xz
php-phpdbg-7.1.25-1-x86_64.pkg.tar.xz
php-pspell-7.1.25-1-x86_64.pkg.tar.xz
php-snmp-7.1.25-1-x86_64.pkg.tar.xz
php-sqlite-7.1.25-1-x86_64.pkg.tar.xz
php-tidy-7.1.25-1-x86_64.pkg.tar.xz
php-xsl-7.1.25-1-x86_64.pkg.tar.xz
picmi-18.12.0-1-x86_64.pkg.tar.xz
picmi-debug-18.12.0-1-x86_64.pkg.tar.xz
pimcommon-18.12.0-1-x86_64.pkg.tar.xz
pimcommon-debug-18.12.0-1-x86_64.pkg.tar.xz
pim-data-exporter-18.12.0-1-x86_64.pkg.tar.xz
pim-data-exporter-debug-18.12.0-1-x86_64.pkg.tar.xz
pim-sieve-editor-18.12.0-1-x86_64.pkg.tar.xz
pim-sieve-editor-debug-18.12.0-1-x86_64.pkg.tar.xz
plasma5-applets-ktp-desktop-18.12.0-1-x86_64.pkg.tar.xz
plasma5-applets-latte-dock-0.8.4-1-x86_64.pkg.tar.xz
plasma5-applets-welcome-plasmoid-2018.12-1-x86_64.pkg.tar.xz
plasma-browser-integration-5.14.4-2-x86_64.pkg.tar.xz
plasma-browser-integration-debug-5.14.4-2-x86_64.pkg.tar.xz
plasma-desktop-5.14.4-2-x86_64.pkg.tar.xz
plasma-desktop-debug-5.14.4-2-x86_64.pkg.tar.xz
plasma-framework-5.53.0-1-x86_64.pkg.tar.xz
plasma-framework-debug-5.53.0-1-x86_64.pkg.tar.xz
plasma-integration-5.14.4-2-x86_64.pkg.tar.xz
plasma-integration-debug-5.14.4-2-x86_64.pkg.tar.xz
plasma-nm-5.14.4-2-x86_64.pkg.tar.xz
plasma-nm-debug-5.14.4-2-x86_64.pkg.tar.xz
plasma-pa-5.14.4-2-x86_64.pkg.tar.xz
plasma-pa-debug-5.14.4-2-x86_64.pkg.tar.xz
plasma-sdk-5.14.4-2-x86_64.pkg.tar.xz
plasma-sdk-debug-5.14.4-2-x86_64.pkg.tar.xz
plasma-vault-5.14.4-2-x86_64.pkg.tar.xz
plasma-vault-debug-5.14.4-2-x86_64.pkg.tar.xz
plasma-wayland-session-5.14.4-2-x86_64.pkg.tar.xz
plasma-workspace-5.14.4-2-x86_64.pkg.tar.xz
plasma-workspace-debug-5.14.4-2-x86_64.pkg.tar.xz
plasma-workspace-wallpapers-5.14.4-2-x86_64.pkg.tar.xz
polkit-kde-agent-5.14.4-2-x86_64.pkg.tar.xz
powerdevil-5.14.4-2-x86_64.pkg.tar.xz
powerdevil-debug-5.14.4-2-x86_64.pkg.tar.xz
poxml-18.12.0-1-x86_64.pkg.tar.xz
poxml-debug-18.12.0-1-x86_64.pkg.tar.xz
print-manager-18.12.0-1-x86_64.pkg.tar.xz
print-manager-debug-18.12.0-1-x86_64.pkg.tar.xz
prison-5.53.0-1-x86_64.pkg.tar.xz
prison-debug-5.53.0-1-x86_64.pkg.tar.xz
proj-5.2.0-1-x86_64.pkg.tar.xz
purpose-5.53.0-1-x86_64.pkg.tar.xz
python2-pyqt5-5.11.3-3-x86_64.pkg.tar.xz
python2-sip-4.19.13-3-x86_64.pkg.tar.xz
python2-sip-pyqt5-4.19.13-3-x86_64.pkg.tar.xz
python3-pyqt5-5.11.3-3-x86_64.pkg.tar.xz
python3-sip-4.19.13-3-x86_64.pkg.tar.xz
python3-sip-pyqt5-4.19.13-3-x86_64.pkg.tar.xz
python-pyqt5-common-5.11.3-3-x86_64.pkg.tar.xz
q4wine-1.3.11-1-x86_64.pkg.tar.xz
qbittorrent-4.1.5-1-x86_64.pkg.tar.xz
qbs-1.12.2-1-x86_64.pkg.tar.xz
qmapshack-1.12.1-1-x86_64.pkg.tar.xz
qqc2-desktop-style-5.53.0-1-x86_64.pkg.tar.xz
qqc2-desktop-style-debug-5.53.0-1-x86_64.pkg.tar.xz
qt5-3d-5.12.0-1-x86_64.pkg.tar.xz
qt5-3d-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-base-5.12.0-1-x86_64.pkg.tar.xz
qt5-base-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-canvas3d-5.12.0-1-x86_64.pkg.tar.xz
qt5-canvas3d-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-charts-5.12.0-1-x86_64.pkg.tar.xz
qt5-charts-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-connectivity-5.12.0-1-x86_64.pkg.tar.xz
qt5-connectivity-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-datavis3d-5.12.0-1-x86_64.pkg.tar.xz
qt5-datavis3d-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-declarative-5.12.0-1-x86_64.pkg.tar.xz
qt5-declarative-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-doc-5.12.0-1-x86_64.pkg.tar.xz
qt5-examples-5.12.0-1-x86_64.pkg.tar.xz
qt5-gamepad-5.12.0-1-x86_64.pkg.tar.xz
qt5-gamepad-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-graphicaleffects-5.12.0-1-x86_64.pkg.tar.xz
qt5-graphicaleffects-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-imageformats-5.12.0-1-x86_64.pkg.tar.xz
qt5-imageformats-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-location-5.12.0-1-x86_64.pkg.tar.xz
qt5-location-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-multimedia-5.12.0-1-x86_64.pkg.tar.xz
qt5-multimedia-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-networkauth-5.12.0-1-x86_64.pkg.tar.xz
qt5-networkauth-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-quickcontrols2-5.12.0-1-x86_64.pkg.tar.xz
qt5-quickcontrols2-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-quickcontrols-5.12.0-1-x86_64.pkg.tar.xz
qt5-quickcontrols-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-remoteobjects-5.12.0-1-x86_64.pkg.tar.xz
qt5-remoteobjects-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-script-5.12.0-1-x86_64.pkg.tar.xz
qt5-script-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-scxml-5.12.0-1-x86_64.pkg.tar.xz
qt5-scxml-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-sensors-5.12.0-1-x86_64.pkg.tar.xz
qt5-sensors-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-serialbus-5.12.0-1-x86_64.pkg.tar.xz
qt5-serialbus-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-serialport-5.12.0-1-x86_64.pkg.tar.xz
qt5-serialport-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-speech-5.12.0-1-x86_64.pkg.tar.xz
qt5-speech-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-svg-5.12.0-1-x86_64.pkg.tar.xz
qt5-svg-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-tools-5.12.0-1-x86_64.pkg.tar.xz
qt5-tools-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-translations-5.12.0-1-x86_64.pkg.tar.xz
qt5-virtualkeyboard-5.12.0-1-x86_64.pkg.tar.xz
qt5-wayland-5.12.0-1-x86_64.pkg.tar.xz
qt5-webchannel-5.12.0-1-x86_64.pkg.tar.xz
qt5-webengine-5.12.0-1-x86_64.pkg.tar.xz
qt5-webengine-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-webglplugin-5.12.0-1-x86_64.pkg.tar.xz
qt5-webglplugin-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-webkit-5.212.0alpha2-10-x86_64.pkg.tar.xz
qt5-websockets-5.12.0-1-x86_64.pkg.tar.xz
qt5-websockets-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-webview-5.12.0-1-x86_64.pkg.tar.xz
qt5-webview-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-x11extras-5.12.0-1-x86_64.pkg.tar.xz
qt5-x11extras-debug-5.12.0-1-x86_64.pkg.tar.xz
qt5-xcb-private-headers-5.12.0-1-x86_64.pkg.tar.xz
qt5-xmlpatterns-5.12.0-2-x86_64.pkg.tar.xz
qt5-xmlpatterns-debug-5.12.0-2-x86_64.pkg.tar.xz
qtcreator-4.8.0-2-x86_64.pkg.tar.xz
r8168-8.045.08-18-x86_64.pkg.tar.xz
reiser4progs-1.2.1-1-x86_64.pkg.tar.xz
reiserfsprogs-3.6.27-1-x86_64.pkg.tar.xz
rocs-18.12.0-1-x86_64.pkg.tar.xz
rocs-debug-18.12.0-1-x86_64.pkg.tar.xz
rust-1.31.1-1-x86_64.pkg.tar.xz
samba-4.8.8-1-x86_64.pkg.tar.xz
sddm-kcm-1:5.14.4-2-x86_64.pkg.tar.xz
sddm-kcm-debug-1:5.14.4-2-x86_64.pkg.tar.xz
semantik-1.2.1-1-x86_64.pkg.tar.xz
shaderc-2018.0-1-x86_64.pkg.tar.xz
signon-kwallet-extension-18.12.0-1-x86_64.pkg.tar.xz
sip-4.19.13-3-x86_64.pkg.tar.xz
skrooge-2.17.0-1-x86_64.pkg.tar.xz
smbclient-4.8.8-1-x86_64.pkg.tar.xz
solid-5.53.0-1-x86_64.pkg.tar.xz
solid-debug-5.53.0-1-x86_64.pkg.tar.xz
sonnet-5.53.0-1-x86_64.pkg.tar.xz
sonnet-debug-5.53.0-1-x86_64.pkg.tar.xz
spectacle-18.12.0-1-x86_64.pkg.tar.xz
spectacle-debug-18.12.0-1-x86_64.pkg.tar.xz
speex-1.2.0-1-x86_64.pkg.tar.xz
spirv-tools-2018.5-1-x86_64.pkg.tar.xz
sqlcipher-4.0.0-1-x86_64.pkg.tar.xz
step-18.12.0-1-x86_64.pkg.tar.xz
step-debug-18.12.0-1-x86_64.pkg.tar.xz
subversion-1.11.0-1-x86_64.pkg.tar.xz
svgpart-18.12.0-1-x86_64.pkg.tar.xz
svgpart-debug-18.12.0-1-x86_64.pkg.tar.xz
sweeper-18.12.0-1-x86_64.pkg.tar.xz
sweeper-debug-18.12.0-1-x86_64.pkg.tar.xz
syndication-1:5.53.0-1-x86_64.pkg.tar.xz
syndication-debug-1:5.53.0-1-x86_64.pkg.tar.xz
syntax-highlighting-5.53.0-1-x86_64.pkg.tar.xz
syntax-highlighting-debug-5.53.0-1-x86_64.pkg.tar.xz
systemd-239.303-2-x86_64.pkg.tar.xz
systemd-resolvconf-239.303-2-x86_64.pkg.tar.xz
systemsettings-5.14.4-2-x86_64.pkg.tar.xz
systemsettings-debug-5.14.4-2-x86_64.pkg.tar.xz
threadweaver-5.53.0-1-x86_64.pkg.tar.xz
threadweaver-debug-5.53.0-1-x86_64.pkg.tar.xz
tmon-4.19.12-1-x86_64.pkg.tar.xz
turbostat-4.19.12-1-x86_64.pkg.tar.xz
tzdata-2018i-1-x86_64.pkg.tar.xz
umbrello-18.12.0-1-x86_64.pkg.tar.xz
umbrello-debug-18.12.0-1-x86_64.pkg.tar.xz
upower-0.99.9-1-x86_64.pkg.tar.xz
usbip-4.19.12-1-x86_64.pkg.tar.xz
user-manager-5.14.4-2-x86_64.pkg.tar.xz
user-manager-debug-5.14.4-2-x86_64.pkg.tar.xz
util-linux-2.33-1-x86_64.pkg.tar.xz
util-linux-debug-2.33-1-x86_64.pkg.tar.xz
vhba-module-20170610-21-x86_64.pkg.tar.xz
vhba-module-dkms-20170610-21-x86_64.pkg.tar.xz
vhba-module-lts-20170610-9-x86_64.pkg.tar.xz
virtualbox-6.0.0-3-x86_64.pkg.tar.xz
virtualbox-ext-oracle-6.0.0-3-x86_64.pkg.tar.xz
virtualbox-ext-vnc-6.0.0-3-x86_64.pkg.tar.xz
virtualbox-guest-dkms-6.0.0-3-x86_64.pkg.tar.xz
virtualbox-guest-iso-6.0.0-3-x86_64.pkg.tar.xz
virtualbox-guest-utils-6.0.0-3-x86_64.pkg.tar.xz
virtualbox-guest-utils-nox-6.0.0-3-x86_64.pkg.tar.xz
virtualbox-host-dkms-6.0.0-3-x86_64.pkg.tar.xz
virtualbox-sdk-6.0.0-3-x86_64.pkg.tar.xz
vlc-3.0.4-3-x86_64.pkg.tar.xz
vpnc-0.5.3.1-6-x86_64.pkg.tar.xz
vulkan-headers-1:1.1.92-1-any.pkg.tar.xz
vulkan-html-docs-1.1.94-1-any.pkg.tar.xz
vulkan-icd-loader-1.1.92-1-x86_64.pkg.tar.xz
vulkan-intel-18.2.6-2-x86_64.pkg.tar.xz
vulkan-radeon-18.2.6-2-x86_64.pkg.tar.xz
vulkan-validation-layers-1.1.92.0-1-x86_64.pkg.tar.xz
wayland-1.16.0-1-x86_64.pkg.tar.xz
wayland-docs-1.16.0-1-x86_64.pkg.tar.xz
wayland-protocols-1.17-1-any.pkg.tar.xz
wireless-regdb-2018.10.24-1-x86_64.pkg.tar.xz
x2goclient-4.1.2.1-1-x86_64.pkg.tar.xz
x86_energy_perf_policy-4.19.12-1-x86_64.pkg.tar.xz
xdg-desktop-portal-kde-5.14.4-2-x86_64.pkg.tar.xz
xfsprogs-4.19.0-1-x86_64.pkg.tar.xz
zeroconf-ioslave-18.12.0-1-x86_64.pkg.tar.xz
zeroconf-ioslave-debug-18.12.0-1-x86_64.pkg.tar.xz

Most of our mirrors take 12-24 hours to synchronize with the central repositories on the origin server. Use the mirror status web page to see when your mirror of choice last synchronized.

Run sudo pacman -Syu to update and upgrade your system. It should be safe to answer y (for yes) to any question about replacing installed packages with new ones. If you have any issues updating or upgrading, reply to this topic with the complete input and output in English, i.e. run LC_ALL=C sudo pacman -Syu.


“The KDE dragons” by Tyson Tan, Creative Commons BY-SA, made with Krita.

Posts: 2

Participants: 2

Read full topic

Past October 2018, Florianópolis hosted the 6th edition of LaKademy, the Latin-American KDE sprint. That moment is an opportunity to put together several KDE developers – both veterans and newcomers – from different projects in order to work for improve their respective software and plan the promotional actions of the community in the subcontinent.

In the technical side, I worked with Cantor, Sprat, the KDE Brasil and LaKademy websites.

For Cantor, I researched some new ways to implement backends, specifically the use of websockets. It is my old idea for a recommended approach to be used in order to support all backends in all platforms. But, like in previous attempts, I am in doubts if it is a interesting way and if the objectives could be achieved by it. Well, definitively it needs more research.

Sprat is a text editor aimed to write scientific papers. The software implements the Amadeus methodology for writing papers and it is more like a collection of common sentences to be used in specific sections of a paper.  Sprat is my toy project and I expect to release this year and turn it a KDE project in near future.

KDE Brasil website uses an old Drupal infrastructure. I and Fred researched for some plugins in order to import the texts to WordPress and currently we are studying how to do this task.

Last, I ported LaKademy website to Jekyll. It needs some work yet but I expect will be available soon.

In the social side, we discussed some activities for KDE this year like go back to FISL and Latinoware, try to go to new events in Latin-America (DebConf and Cubaconf, we are looking to you), organize the “Café com Qt” event (our distributed event about Qt and KDE), feedback about the management of KDE Brasil group chat in Telegram, our new promo materials to be produced and distributed in events here, and more.

In addition, I helped some newcomers in tasks like code review process in KDE and answer some doubts about Qt.

LaKademy is a great opportunity to meet other KDE developers and work to increase our community. Last years KDE took a prominent role in free software community in Brazil, and we are planning to expand it for different countries. We expect to organize next LaKademy in some country outside Brazil and work hard to expand the community in the subcontinent.

LaKademy 2018 Group Photo

See you in LaKademy 2019!

Quite regularly we see bug reports or user support questions about why KWin does not add its shadows to client side decorated windows such as GTK’s header bars. As this topic comes up so often I think it’s time to write a blog post to explain the situation.

First of all: this is a big misunderstanding. KWin does not have any shadows. KWin does not add shadows to any windows at all. There is no such thing as a generic shadow which KWin would add. Due to that of course KWin cannot add shadows to client side decorated windows.

Instead KWin provides a shadow rendering service. The windows can specify a shadow which will be rendered by KWin. This was created for Plasma’s windows which are after all also client side decorated. But is also used by the widget style Breeze and Oxygen for popup menus, etc. The protocol for the shadow rendering is available for X11 and Wayland. Also our window decoration API provides a possibility to set the shadow and inside KWin shadows are rendered using the same code path, no matter whether it’s provided through X11, Wayland or the window decoration.

The approach we chose here works really well for non-composited and composited setups. It also works well with other window managers and compositors as applications can easily check whether it’s supported and adjust rendering or just not provide the shadow. Thus a good experience is kept. Also the control over the design of the shadow is completely with the window and not enforced by the window manager. We noticed that enforcing by the window manager doesn’t work as the window manager has no idea how the light model of the window looks like. Does it require drop shadows, or is there a central top light requiring something like a glow? We don’t know only the application can know.

So if you wonder why a window is not having shadows it’s due to them not providing one. Not because KWin is evil and doesn’t add it’s shadow to it. We would be very happy to add the shadows if applications allow us to hook in. E.g. GTK could provide a plugin infrastructure so that we can add the shadows using our mechanism. We don’t expect GTK to add support for our shadow service – that’s too much asked for, though would be great. Instead all we need is a hook that allows us to add a plugin. That’s how we can do it in Qt (Qt Platform Theme plugin, QStyle plugins).

January 04, 2019

KBibTeX 0.8.2 has been released as a bug fix release on 0.8.1. It fixes a number of known and reported bugs (see below) as well as some other minor issues. Online search engines that were broken should work now again.

Read more... )

comment count unavailable comments

A lot of what happend in the open-source projects I’m involved in in 2018 hasn’t been covered in my blog, which I want to fix in this slightly delayed year summary.

Akademy

I attended Akademy, the annual conference of KDE developers and users. It was the first time I met the other Plasma Mobile and postmarketOS developers in person. It was a really interesting experience in the nice city of Vienna. The first two days were full of talks about interesting social and technological topics. The last three days were even more productive for the Plasma Mobile team, since we often found time to meet for inofficial BoFs to plan for the future of the project. Details about the technical side of things can be found on the Plasma Mobile blog.

Fortunately I could test a few apps on Plasma Mobile phones, since many developers at Akademy owned a Nexus 5X. BlogImage

I really hope that I can attend again this year, but it still depends on the date, since holidays this year will be much earlier than last time.

#movingtogitlab

2018 was also the year in which GitHub lost it’s status of being the git hosting service everyone uses. GitLab was chosen as the primary replacements by many communities. One of the positive results of this is decentralization. Most communities with the neccesary infrastructure have set up own instances of GitLab community edition, instead of depending on another centralized closed source service. My debian-pm project has also moved to GitLab, and can now be found on gitlab.com/debian-pm. We also have our own GitLab instance for Kaidan on git.kaidan.im now.

Even Plasma Mobile has moved to GitLab, not all repositories have moved yet, but the most important ones can now be found on invent.kde.org

debian-pm

Instead of building packages manually on a Raspberry pi in an unautomated and often time intensive way, I used the benefits of GitLab to automatically build packages and upload them to the new repository on repo.kaidan.im. The ci-tooling is of course also on gitlab, and is shared between all the individual package reposiories.

Additionally some people reported that the debian-pm repository works on the Raspberry Pi. For screenshots, see this mastodon post.

Prebuilt images for mobile devices are slowly becoming available, but are still broken from time to time. If you want to test them, get one on archive.kaidan.im.

Plasma Mobile

Plasma Mobile gained some new apps by Camilo Higuita, which should improve usability by a lot. We do now have a proper music player, new image viewer, and index, the new file manager. I finally finished redesigning the camera app, which is now based on Kirigami and should be easy to use. If you have further ideas for improving it, drop a merge request here.

My porting is still not really finished, and I didn’t really work much on it either. The graphics bug stays a mystery. I’m working on Plasma Mobile and it’s apps anyway, so other people who have officially supported or otherwise working devices can already test my changes. As described in our new documentation, developing apps without a real device is possible and even quite easy.

Kaidan

Although Kaidan didn’t get a new release this year, many new features and improvements landed in the repository. Unfortunately those were often not the features we needed to complete our milestone, but that’s what can happen if everyone is free to choose a task :)

Kaidan has switched the XMPP library to qxmpp, and on top of which LNJ implemented support for HTTP file upload and some other XEPs. We implemented editing messages, an invitation website for new users and many other usability improvements

Ilya Bizyaev added support for many new platforms, like Android, Android Things, Windows MacOS and iOS. I also continued working on the experimental support for Ubuntu Touch. In this process, Kirigami became a part of the default Ubuntu Touch images, making it easy to port other KDE and Qt apps to the platform.

The future

Thanks to Purism, I’m looking forward to receiving my Librem 5 development kit, on which I will be able to finally test Plasma Mobile regularly on a touch screen. Halium devices will of course still stay supported in debian-pm, although I might shift my focus a little more to mainline supported devices. Fuchsia coming nearer to entering the market means that its uncertain whether we can support many devices with Halium in the long term. In the worst case, all fuchsia drivers need to be manually reverse engeneered and rewritten for linux. If we are lucky though, more fully open-source linux devices will be released in this and the following years. See Marius Gripsgrad’s blog post for more information on the fuchsia topic.

A Plasma Mobile sprint is planned for February. If you want to join, you can find more information in the phabricator ticket.

Happy year 2019!

January 03, 2019

Enter the wonderful world of tools for which the announcement blog takes more time to write than the tool itself.

qsslint is a small command-line utility for verifying the syntax of your Qt stylesheet files (*.qss). It’s much like KDAB’s previous linter contribution, qmllint. It simply returns 0 if the stylesheet is valid, and non-zero otherwise.

Don’t get me wrong, I do dislike CSS and don’t want to encourage its use.But if you can’t run away from it, then at least use a linter to catch errors at compile time rather than production.

The suggested way to use these tools in your day-to-day is: you don’t. Instead, incorporate them into your build system or CI and forget about them until a developer makes a typo.

Furthermore, use the same advice for each different source file-type. Be it XML, JSON or QML, there are plenty of linters available. And finally, for C++, the compiler already checks the syntax for you, but now you can also verify Qt semantics by using clazy, or get advanced C++ diagnostics with clang-tidy.

So, what else should we do at build time ? Suggestions welcome. ��

The post qsslint – A linter for Qt stylesheets appeared first on KDAB.


Older blog entries


Planet KDE is made from the blogs of KDE's contributors. The opinions it contains are those of the contributor. This site is powered by Rawdog and Rawdog RSS. Feed readers can read Planet KDE with RSS, FOAF or OPML.