August 14, 2018

During Akademy there was finally enough time to finalize the porting of KTextEditor to KSyntaxHighlighting.

Thanks to the help of Dominik and Volker, the needed extensions to the KSyntaxHighlighting framework were done in no time ;=)

Thanks for that!

The branch for the integration was merged to master yesterday, unit tests look OK and I am using that state now for my normal coding work. Beside minor glitches that should now be corrected, no issues came up until now.

But as with all changes, for sure some regressions slipped in.

If you notice strange behavior of the highlighting in master, please report the issues on bugs.kde.org or on our mailing list (or even better: provide a fix on phabricator).

For sure there are potential further cleanups and now that we have only one implementation of the highlighting infrastructure, we will be able to move forward with extensions of it much easier.

We contacted the QtCreator people, to see if we might be able to share a common implementation, as they have an own one at the moment. Hopefully that works out in a nice way and our KDE syntax-highlighting framework gets an even broader user base!

Starting with the KDE Frameworks 5.50 release we decided to remove the capability in Kate/KTextEditor to download / update syntax highlighting files from the Kate homepage.

The reasons for this are as follows:

  1. The KTextEditor framework is released once a month, meaning that users who use latest KDE software usually anyways have the most recent versions. Other users who do not follow the latest development releases (like your mom) are likely not the target audience for downloading highlighting files.
  2. There are technical problems with only updating certain highlighting files, since it can lead to an inconsistent state when one highlighting file needs another one that was not updated or does not exist, or also if a highlighting file needs a certain indenter that does not yet exist or contains bugs.
  3. We have a nice small cleanup in the UI, since we have now one button less.

Git changes:

Contributing new Highlighting Files

By the way, we are always very happy to accept new highlighting files under MIT license. Documentation about how to write a syntax highlighting file can be found in the Kate Handbook. When you are done, please contribute your highlighting file in phabricator for the ‘syntax-highlighting’ framework (click Code Review, then on the very top right “Create Diff”). You can find nice instructions also on the Community wiki.

Monday was the first day of Akademy BoFs, group sessions and hacking. There is a wrapup session at the end of the day so that what happened in the different rooms can be shared with everyone including those not present.

Watch Monday's wrapup session in the video below

Dot Categories:

No, el evento no ha terminado, pero si su apartado de charlas públicas, quedando el resto de la semana para los grupos de trabajoº, talleres y encuentros sociales que cohesionan los equipos de trabajo. No obstante, el equipo de promoción de KDE ya ha hecho buena parte de sus deberes con lo que puedo escribir el siguiente resumen del domingo 12 de Akademy 2018 de Viena extraído de la página de noticias de oficial de la Comunidad KDE.

Resumen del domingo 12 de Akademy 2018 de Viena

Como he comentado en varias ocasiones en el blog, una Akademy consta de dos partes: el fin de semana de charlas y el resto de la semana para trabajo de los desarrolladores en una misma sala. Esta Akademy 2018 de Viena no ha sido una excepción

Así que, ya finalizada la primera parte, es el momento de compartir con todos vosotros un breve resumen de estos días llenos de exposiciones orales. Este resumen es un extracto del segundo artículo publicado por Devaja Shah en el dot.

Resumen del domingo 12 de Akademy 2018 de Viena

El segundo día de las charlas de Akademy 2018 de Viena empiezan con la ponencia principal a cargo de Claudia Garad, la directora ejecutiva de Wikimedia Austria, la cual habló tanto del estado de su proyecto como su relación de KDE, destacando el trabajo que hace la Comunidad en forma de eventos y Sprints.

Las charlas de la tarde fueron mucho más variadas y más centradas en los entornos de trabajo KDE. De esta forma tuvimos a Alan Pope de Canonical,  hablando de Snapcraft, una herramienta-web que hace que sea muy fácil crear paquetes para Linux.

También desatacan Oliver Smith, lider del proyecto postmarketOS, que habló del sistema operativo experimental basado en Alpine Linux y sus planes para la integración con Plasma Mobile.

Una de las charlas más esperadas por los usuarios corrió a cargo de David Edmundson que no solo nos predijo como será el  el escritorio Plasma en un futuro sino que que nos esbozó las difucultades que se van a ir encontrando por el camino. Además, destacó uno de los objetivos de Plasma: la plena integración con los navegadores web.

También fue protagonista Camilo Higuita que nos contó el progreso de su reproductor musical VVAVE, un ejemplo de la nueva generación de aplicaciones plenamente convergentes: escritorio Plasma y teléfono móvil. Por otra parte Camilo desveló que esto solo en el principio de un servicio de streaming de música libre.

Andreas Cord – Landwehr nos habló de Yocto y como construir imágenes y SDKs y crear dispositivos KDE. De forma similar, Volker Krause nos mostró una dispositivo basado en Raspberry Pi ejecutando Plasma Mobile.

Para finalizar el día, y antes de la entrega de los Akademy Awards de los que hablé el domingo, se reconoció públicamente la inestimable ayuda de los espónsors BlueSystems, Canonical, openSUSE, Red Hat, CodeThink y Mycroft.

Como dije ayer, no son todas las charlas que se realizaron pero si una muestra de lo que se cuece en en entorno KDE, un proyecto que crece y crece, ganando adeptos y seguidores día a día.

Hi All,

In this post I intend to inform about the final status of my GSoC project Verifying signatures of pdf files.


Things Completed:

1. Signature Properties Dialog

In this version of dialog I got rid of the icon label. The dialog has three sections displaying information about signature validation status, signer, and document revision.

Signature Properties Dialog

2. Certificate Viewer

This certificate viewer is similar to that of chromium’s. It contains two pages. The “General” page displays sort of summary and the “Details” page has all details. On bottom it provides a push button to export the certificate. This dialog can only be accessed from signature properties dialog.

‘General’ tab Certificate Viewer - General Tab

‘Details’ tab Certificate Viewer - Details Tab

3. Revision Viewer

This is a dialog similar to print preview dialog but instead of previewing what is about to be printed it loads the data covered by a signature in a read-only KPart. On top it shows a message informing the user about the read-only nature of the view and on bottom it provides a “Save As” button so that the signed version can be saved. This dialog can be accessed from signature properties dialog and signature panel’s context menu.

Revision Viewer

4. Signature Panel

This is a sidebar widget which presents all signatures in a tree structure. A context menu is available for this widget through which signed version of a document and signature properties can be accessed. Also selecting any top-level item will change document’s viewport to the page where the signature form field is located.

Signature Panel

Signature Panel 2

5. Popup

Now when a signed document is opened there will be two notifications. The former will (as usual) inform about the (signature) forms present and the latter will tell user that the opened document is signed. A toggle button will be there in the second message widget to access signature panel.

Signature Popup


Things remaining:

Menu actions

Due to making frequent changes to API and other graphical components I wasn’t able to decide on what actions to add and where to put them.


Getting the code

The patches for okular are listed in the phabricator task.

The git branch with all patches applied : gsoc2018_digitalsignature

The patches for poppler : 107055 and 107056


Finally, the following gif sums up my progress.

Phase3 GIF

Thanks for reading :)

August 13, 2018

Wooo... this is the last day of coding phase of GSoC. I am writing this blog to share my experience and work done in the coding phase. I want to specially thank my mentor David Rosca for his help, suggestions and reviews. This was my first exposure to the KDE community and I am proud that it was great. I really enjoyed the whole program from proposal submission - intermediate evals - then now this final evaluation. Also, I had learned a lot working on my project. Frankly speaking, I didn't knew about i18n and l10n much but with the help of my mentor now I have a quite good understanding of how these works and are implemented. I can truly say this was one of my best summer vacations.

The code will soon be merged with the master branch of falkon. You can see my status report page for more details about the work done during GSoC. Also in the last weeks I have implemented an extensions page for falkon similar to about:addons in firefox. Below is the screenshot of falkon:extensions page. This also enables to remove the extension from local storage. Also, the themes can be viewed and controlled by the theme panel on the same page.

Falkon_Extensions_Page

Falkon_Themes_Page

And yes, I will regularly contribute to KDE community specially Falkon.

Happy August

No, el evento no ha terminado, pero si su apartado de charlas públicas, quedando el resto de la semana para los grupos de trabajo, talleres y encuentros sociales que cohesionan los equipos de trabajo. No obstante, el equipo de promoción de KDE ya ha hecho buena parte de sus deberes con lo que puedo escribir el siguiente resumen del sábado 11 de Akademy 2018 de Viena extraído de la página de noticias de oficial de la Comunidad KDE.

Resumen del sábado 11 de Akademy 2018 de Viena

Como he comentado en varias ocasiones en el blog, una Akademy consta de dos partes: el fin de semana de charlas y el resto de la semana para trabajo de los desarrolladores en una misma sala. Esta Akademy 2018 de Viena no ha sido una excepción

Así que, ya finalizada la primera parte, es el momento de compartir con todos vosotros un breve resumen de estos días llenos de exposiciones orales. Este resumen es un extracto del artículo publicado por Devaja Shah en el dot.

Resumen del sábado 11 de Akademy 2018 de Viena

Como es habitual, la Akademy empezó con la bienvenida de Lydia Pintscher, presidenta de KDE e.V., la cual dio paso a la charla inaugural de Dan Bielefeld,  director técnico de Transitional Justice Working Group, que explicó su trabajo en Corea del Norte y su relación con el Software Libre, el cual es imprescindible para proporcionar la libertad que todos los seres humanos necesitamos.

Tras esta gran charla, fue Adriaan de Groot el que continuó  con el tema de la Privacidad en el entorno KDE, uno de pilares básicos para la Comunidad, haciendo especial hicapié en proyectos como Mycroft, crucial para protegernos de las grandes coorporaciones.

También fue protagonista KMail y la privacidad, con el estado de GnuPG en dicha aplicación, la cual goza de una integración bien alta, proporcionando al usuario la privacidad que se merece.

Con estas charlas queda patente que la privacidad de los datos de los usuarios es uno de los objetivos de la Comunidad KDE, la cual se compromete a crear y mantener aplicaciones que las respeten al máximo.

Por otra parte, fue Neofytos Kolokotronis el que habló de otro de los objetivos de KDE: atraer a nuevos colaboradores. Así que explicó los progresos realizados por su grupo de trabajo y sus objetivos futuro. Además, recibió algunos consejos para optimizar su trabajo: buena y clara documentación, mentorización de nuevos contribuyentes y construir puentes con otras comunidades.

Otras charlas destacadas fueron:

Evidentemente, no son todas las charlas que se realizaron pero si una muestra de lo que se cuece en en entorno KDE, un proyecto cada vez más diversificado.

Virtlyst – a Web Interface to manage virtual machines build with Cutelyst/Qt/C++ got a new release.

This new release includes a bunch of bug fixes, most importantly probably being the ability to warn user before doing important actions to help avoid doing mistakes.

Most commits came from new contributor René Linder who is also working on a Bootstrap 4 theme and Lukas Steiner created a dockerfile for it. This is especially cool because Virtlyst repository now has 4 authors while Cutelyst which is way older has only 6.

For the next release I’ll also try to add user management (today you have a single admin account, and to add new users that need to be done via SQL) which wasn’t available on the original WebVirtMgr project but is surely the most important lacking feature.

Have Fun! https://github.com/cutelyst/Virtlyst/archive/v1.2.0.tar.gz

Google Summer of Code is finishing and many things have been done on WikiToLearn since previous post. A little recap is needed.

Talking with mentors has been crucial because they told me to focus on finishing CRUD interaction with API backend instead of working on “history mode” viewer.

On the CRUD part, users now have full control of courses and chapters, they can:

  • Edit courses title
  • Add new empty chapters to a course
  • Reorder course chapters
  • Edit chapters title
  • Add new empty page to a chapter
  • Reorder chapters pages
  • [WIP] Write content of a page

Chapter editor have the same UI of course’s one because you can do similar actions in both of them. Here you can see a real web app screenshot of it

Chapter editor user interface

Now there is some important work to do: let users write organized content in a useful and easy manner.
They need an editor that lets them insert:

  • Math formulas (with real-time compiling and rendering)
  • Theorems and demonstrations
  • Images

For these tasks we make use of CKEditor (now at the 5th version, compatible with our build system), we have to create/use existing plugins to let users write beautiful content ready to be read.

The difficult part is that this information needs to be structured to be easily saved and reused. I read most of CKEditor docs and I integrated it in our webapp, I prepared a local repo for it because we need to plugin some custom modules for make it working with math, images and with our data structure and we have to lock-down some features we don’t use. It is a bit difficult to know which part has to be touched in order to make it working but I am on the way because I understood CKEditor fundamentals by reading the docs.

The work on WikiToLearn webapp will continue even after the end of GSoC, I’ll let you know how it goes.

L'articolo What’s next for WikiToLearn? sembra essere il primo su Blogs from WikiToLearn.


Claudia Garad, Executive Director of Wikimedia Austria, reflects on the challenges of inclusivity.

Day 2 of Akademy started with a wonderfully insightful keynote by Claudia Garad, the Executive Director of Wikimedia Austria. She focused her talk on some of the challenges that organizations like hers face when trying to bring about more inclusivity and diversity within their communities.

She emphasized the importance of making underrepresented communities feel more welcome and heard within the organization, then went on to speak about how she perceived KDE as being quite ahead of Wikimedia in some aspects, especially when it came to reaching these goals.

One of the things she thought brought a positive vibe to the KDE community was that "KDE embraces cuteness", she said while displaying a slide with the "pile of Konquis" picture. On a more serious note, she said that through events such as Akademy, sprints and events around the world, you can bring together people from immensely diverse backgrounds and have them work towards building a stronger community.

Afternoon Talks

Speakers covered a wide variety of topics in the afternoon. Alan Pope from Canonical, for example, told us about Snapcraft, a web-based tool that makes it incredibly simple to build a Linux package out of code just pushed onto git. Meanwhile, Oliver Smith, the project lead of postmarketOS, spoke about the experimental phone OS based on Alpine Linux and plans for integration with Plasma Mobile.


Volker Krause showing off Plasma Mobile running on Yocto on a Raspberry Pi-powered device.

Meanwhile, David Edmundson was not only predicting where KDE's Plasma desktop would be going next, but also numbering the potential pitfalls it would have to avoid on its way getting there. One of the things in store for Plasma users is full browser integration.

Kai Uwe Broulik explained what is working (quite a lot), and how you will be able to control every aspect of your web browser with Plasma's integrated tools. Already working are controls for playback of videos and music on many popular sites using desktop widgets, including the likes of KDE Connect.

Talking of playing music, Camilo Higuita told us about the progress of VVAVE, a next generation audio player that is fully convergent (it integrates both with your Plasma desktop and on your mobile phone), and is but one part of Camilo's idea for an open audio streaming service.

Andreas Cord - Landwehr gave a talk on Yocto and how to use it to build images and SDKs and to create KDE-powered devices with Yocto. In a a similar vein, Volker Krause showed of a Raspberry Pi-based device running Plasma Mobile also on Yocto. The excitement of the KDE developers when it comes to running KDE software on mobile devices is electric and the audience was buzzing during these talks.

The day ended with Sponsor Talks by BlueSystems, Canonical, openSUSE, Red Hat, CodeThink, and Mycroft.

Akademy Awards


From left to right, Valorie Zimmerman, David Edmundson, and Aditya Mehra with their own awards and those that couldn't attend.

Finally, there were the Akademy Awards ceremony. The Akademy Awards are a way of honoring members that have done outstanding work for the benefit of the whole community.

The Application Akademy award went to Aditya Mehra for their work on the Mycroft integration providing KDE with a free speech assistant which is free as in freedom .

The Non-Application Akademy Award went to Valorie Zimmerman for for their work driving KDE's mentoring programs and the Community Working Group, and being one of KDE's good souls

There were three Jury awards this year they went to Sebastian Kügler for for their many years of relentless hacking and more (Plasma, KDE Marketing, years in the KDE e.V. Board), David Edmundson for their work on Telepathy, porting applications to Frameworks 5, Plasma, KWin, KWayland, and being the crazy guy around and to Mario Fux for supporting KDE over many years through organizing the Randa meetings.

The Akademy Team were thanked with the Organizational Award to Stefan Derkits and the whole team responsible for putting together Akademy 2018.

Congratulations to the winners and thank you for being so awesome!

Dot Categories:

August 12, 2018

Este año, al no coincidir con Akademy-es, he podido publicar el mismo día el resultado los Akademy Award 2018, es decir, los premios de la Comunidad KDE a aquellas personas que han destacado desde la última Akademy de Almería. Es más, me acabo d dar cuenta que no hice la entrada correspondiente de la última edición… lo pongo en la columna de “cosas por hacer”.

Akademy Award 2018, los premios de la Comunidad KDE

Como es tradicional, las ponencias, charlas y las minireuniones de pasillo del fin de semana de cualquier Akademy finalizan con el anuncio de los Akademy Award 2018, es decir, los premios que se otorgan a los miembros de la Comunidad KDE a aquellos integrantes que destacan por una u otra razón.

Estos premios tienen un curiosa forma de ser otorgados, ya que son elegidos por los ganadores de la anterior edición. De esta forma se consigue diversificar los ganadores a lo largo de los años, tal y como se puede apreciar en el listado de premiados.

Como hemos comentado, los ganadores de Akademy Award 2017 son los que seleccionan a los de este año. De esta forma  Kai Uwe Broulik, Cornelius Schumacher, Martin Konold y Olaf Schmidt-Wischhöfe han fallado otorgado los premios a:

Akademy Award 2018, los premios de la Comunidad KDE

De izquierda a derecha Valorie Zimmerman, David Edmundson y Aditya Mehra

  • Premio a la mejor aplicación para Aditya Mehra por su trabajo en la integración de Mycroft al entorno KDE.
  • Premio a la mejor no-aplicación para Valorie Zimmerman por su trabajo en la los programas de mentorización de KDE y su trabajo dentro de la Comunidad.
  • Premio del jurado para:
    • Sebastian Kügler por sus muchos años de trabajo y dedicación, tanto en código como en otros aspectos de la Comunidad KDE (Plasma, KDE Marketing, KDE e.V. Board)
    • David Edmundson por su trabajo en Telepathy, la migración de aplicaciones a Frameworks 5 y  su dedicación a Plasma, KWin, KWayland.
    • Mario Fux por su apoyo durante años a KDE y la organización de los Sprints de Randa.

 

¡Muchas felicidades a todos ellos!

So, my plans was always finish the full KDE1 port, and now on Akademy i have some time to get back to this pet project. Starting on Qt1 porting entirely to CMake because the experience on Qt2 was so good that i decided going back to that and do some of the same love on Qt1.

KDE 1 for that new port next. For now, i’m working on github, so https://github.com/heliocastro/qt1

And guess what, on Akademy you can get all possible surprises ��

Thanks to our kdesrc-build hero Michael Pyne, there’s *just* Qt 1 running on Windows 10 with WSL.

All credits on this picture to mpyne ��


Lydia Pintscher, President of KDE e.V. opens this year's Akademy.

Akademy 2018 got off to a wet start with rains accompanying all attendees pouring into Vienna for KDE's largest annual community conference. Although the Pre-Registration event was held on Day Zero (Friday the 10th) and it was a fun-filled affair, Akademy kicked off in earnest on Saturday, with talks, panels and demonstrations. Read on to find out about Day 1 of Akademy and all that transpired:

Keynote: Mapping Crimes Against Humanity in North Korea with FOSS

Dan Bielefeld, the Technical Director of the Transitional Justice Working Group, explained the work they do to map North Korean locations of mass burial and execution sites using mapping technologies. He also delivered insight into how North Korea and the Kim regime operates, and how his organization gleans information both from interviews with refugees and from studying satellite imagery.


Dan Bielefeld talks about how the Transitional Justice Working Group tries to shed light on North Korea's crimes against humanity.

Although the topic of the suffering of North Koreans is grim, there is a silver lining, says Dan: One day there will be a transition, there will come a day when the Kim regime will end and North Koreans will regain the freedom that they have been denied for over 70 years. The work of the Transitional Justice Working Group will also help with that. Finding out what happened to loved ones and bringing those responsible for the atrocities to justice will be a crucial part of helping the nation heal.

And it makes sense, says Dan, for the Transitional Justice Working Group to work with both Free Software and Free Software communities. The software offers the group a degree of security and control they cannot find in closed source applications; and Free Software communities uphold the same values Dan's group is fighting for, that is, the right to privacy and personal freedom.

Privacy Panel

Quite appropriately, after Dan's keynote, Adriaan de Groot ran a panel where members discussed the matter of privacy. Developing privacy-respecting software is one of KDE's main goals and the panelists explained how developing free and open Personal Digital Assistants like Mycroft was crucial to protecting users from snooping corporations.

Another thing we rarely think about but is a source of concern with regard to personal information is trip planners. In actual fact, the amount of sensitive information that we unwittingly share by letting opaque apps tell us when and where to catch our flight is staggering. Since the 2017 Randa sprint, there are KDE developers actively working on a truly open and private solution that will help solve this problem.

The other thing the panel discussed was the state of GnuPG in Kmail. GnuPG is the framework that allows users to encrypt and decrypt email messages that, otherwise, would be sent in clear text -- a big privacy concern. At this stage of play, GnuPG is tightly integrated into Kmail and, is not only convenient for end users, but has also proved to be immune to recent vulnerabilities that have affected other email clients.

Combined with the underlying policy of all KDE apps of never collecting data subvertly or otherwise, KDE is sticking strictly to its goal of preserving user privacy.

Streamlined onboarding goal

Neofytos Kolokotronis talked about the progress of another of KDE's main goals, namely the onboarding of new users. Neofytos explained to attendees the progress the working group had made so far and where they wanted to go to. He had some advice on how to help new users join KDE, such as having good and clear documentation, mentoring new contributors, and building connections outside your immediate niche.

More Highlights from Day 1

Wrishiraj Kaushik in his talk titled Winds of Change - FOSS in India spoke about the current scenario of FOSS in India and his experience leading SuperX and integrating KDE with it.

The Indian union government has a nation-wide recommendation in place for the use, promotion and development of Free and Open Source software. Despite this, FOSS adoption has remained low in the country. The decision taken by some state governments to not adopt these recommendations in conjunction with the aggressive marketing carried out by proprietary software vendors in India has seriously hindered the use of Free Software. SuperX, however, has managed to find a place within the government and a few Indian universities thanks to its user-centric approach. SuperX has deployed 30,000 KDE shipments -- one of the largest deployments in the world, and there are 20,000 more in the works.

This was followed by a panel discussion by Lydia, Valorie and Bhushan in which they told the community about our KDE student programs and how to contribute to their running and up-keep. It was a talk of high relevance, given our KDE Community goal to streamline the onboarding process for new contributors and the fact that a large part of our new contributor base comes through our organized mentoring programs, namely Google Summer of Code, Google Code-in and Season of KDE.

Mirko Boehm presented a talk on the genesis of Quartermaster, a toolchain driven by Endocode and supported by Siemens and Google. Quartermaster implements industry best practises of license compliance management. It generates compliance reports by analysing data from the CI environment and building graphs for analysis, primarily performing a combination of build time analysis and static code analysis.


Lays Rodrigues showed off Atelier, the graphical interface for 3D printers..

Lays Rodrigues talked about Atelier, a cross-platform program designed to help you control your 3D printer. It supports most printers with open source firmware and Lays demoed the various features of Atelier during her talk, including video monitoring of the printer, 3D preview of the print design, temperature graphs and more.

Zoltan Padrah gave a talk on KTechLab and explained how he discovered it as a student of electronics engineering in 2008. KTechLab is a program that helps simulate electronic circuits and programs running on microcontrollers. It was migrated to the KDE infrastructure and joined KDE in 2017. The developers' upcoming plans are to release KTechLab for Qt4 and Qt5 and to port it to KDE Frameworks 5, as well as add new features like support to simulate automation systems for mechanics and have KiCad import/export.

Wrapping up

Day one was so full of content, it is hard to summarize everything that went on here. This has just been a summary of a few of the talks and demonstrations we enjoyed. There were many more talks on all topics, ranging from containerizing KDE's graphical apps, to an end users' perspective of using Kontact in a professional environment.

As we write this, already on day 2, it looks like today is shaping up to be equally exciting.

Dot Categories:

For this phase, I started with implementing Stamps feature in the Drawing activity. This feature allows users to use different stamps images in their beautiful arts. For now, I have added images from solar activity to use as stamps.

hyn4jb5

 

Users can also import an image to use as a stamp. Size and opacity of the stamp can also be adjusted from tool options menu.

I also added added sounds and audio effects, which includes feedback on selecting a tool and using stamps and for other notifications.

Implementation of basic keyboard navigations like undo, redo, save, load, etc. is also completed.

Added a help section, which describes the basic key board shortcuts and other useful information.

All basic tools are implemented as planned, at present I am testing drawing activity on various platforms and fixing various bugs reported by mentors. List of bugs and improvements can be found on — https://phabricator.kde.org/T9138.

Work branch — https://cgit.kde.org/gcompris.git/log/?h=gsoc_asagtani_paint.

Happy coding ��

 

 

 

This week we’re all at Akademy–KDE’s yearly gathering of developers, designers, system administrators, and users. I’m giving a presentation later today about how we can make KDE Software irresistible!

As such, it as a bit of a lighter week for the Usability & Productivity initiative, what with all the preparation and conference-going, but we still managed to get quite a bit done. And all the in-person interactions are setting the stage for many more good things to come.

Bugfixes

UI Polish & Improvement

Next week, your name could be in this list! Just check out https://community.kde.org/Get_Involved, and find out how you can help be a part of something that really matters.

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.

August 11, 2018

Pheww..so GSoC 2018 is in its last stretch now with only 3 days remaining!! Coming to the last week, the activity Note_names is finally developed and being tested on different platforms. Principle: This activity aims to teach sight reading the musical notes and their position on the staff by presenting several notes one-by-one with animation …

August 10, 2018

If you are interested in community data analytics, you will have several opportunities to discuss them during Akademy.

Firstly, there will be my talk titled Bringing Community Data Analysis Back to KDE (why the hell did I use "Analysis" there... I only used "Analytics" everywhere so far, odd). It will happen on Saturday at 15:30 in room IE7. The slot is a bit small for the topic, but I'll try my best to create interest. Indeed you can catch me around talks to chat about it, and...

Secondly, there will be a BoF "Discussing Community Data Analytics" on Monday at 10:30 in room 127. We hope to see people coming up with interesting questions to explore or willing to lend a hand in those explorations. See you there!

And of course it also means I'm on my way to Vienna, see you all during Akademy 2018!

I am Going to Akademy Banner

August 09, 2018

You probably have seen that Freenode has been getting lots of spam lately.

To protect against that some channels have activated a flag that only allows authenticated users to enter the channel.

If you're using the regular "nickserv" authentication way as I was doing, the authentication happens in parallel to entering the channels and you'll probably be rejected from joining some.

What you want is use SASL, that is a "new IRC" protocol that will first authenticate and then join the server/channels.

More info at https://userbase.kde.org/Konversation/Configuring_SASL_authentication.

Thanks Fuchs on #kde-devel for enlightening me :)

And of course, I'm going to Akademy ;)

Hello everyone. GSoC is coming to its end, so I think that I should give a report about what's been done since the last post, and also make a brief evaluation, summary of the project itself. 

As I've written in my last post, the main focus was on improving the quality of the code, cleaning, optimizing and properly documenting it. And also making it more comestible for other developers. 

The next step was searching for bugs and then fixing them. In order to do this properly, I implemented a unit test for the main MQTT related features. This proved to be useful since it helped discover several hidden bugs and errors which were all corrected. The main features, that tests were developed for, are: checking if a topic contains another one, checking if two topics are "common topics" (meaning they only differ at only one level, and are the same size), managing messages, subscribing&unsubscribing.

As I said in the previous post, a problem was that LabPlot couldn't plot QDateTime, so using an index column was necessary. However, fortunately Alexander Semke, as he promised, dealt with the matter, so plotting of data from a single topic is now possible without needing any plus/additional data. I'm truly thankful to Alexander for this.

The main improvements were related to algorithms needed for subscribing and unsubscribing. This process is now more optimal, and I really hope that is bug-free, since a lot of time was spent on testing every possible scenario for this feature. Not only the algorithms were improved regarding this feature, but the user interface as well. Now we use two tree widgets, which really does look better than the previous list widget (used for listing subscriptions). Using the tree widget for listing subscriptions made room for further improvements. Now not only the subscription is listed, but if the subscription contains wildcards, then every topic contained by the subscription and present in the topic tree will be added as children of the subscription, in order to make the user's life easier. Searching for root subscriptions in the tree widget is possible just like in the case of the topic tree widget.
 
New UI for subscribing&unsubscribing

Another improvement is dealing properly with multiple MQTTClient objects, which wasn't quite alright at the time of the last post. Now it works fine, and the user can easily control each of the MQTTClients using the LiveDataDock. Another bug/absurdity was fixed. Namely, the user could add more MQTTClients with the same hostname, which is quite illogical (since the user can control every topic of a broker with a single MQTTClient). Another minor visual improvement is that an icon for MQTTClient and MQTTSubscripiton was added.
 
Dealing with multiple MQTTClients


As I presented the major improvements, I think it's high time I showed you a possible and practical use of the features developed and the benefits of LabPlot having MQTT support. MQTT, as I mentioned in earlier posts, is mainly used to communicate data collected by sensors. So if one had the possibility and adequate sensors, then one can save&plot data collected by those sensors. However, there are less sophisticated uses as well. As we all know our phones have quite a few sensors, which could be put to use. And there is an application for this, which can be used by everyone who owns a smartphone: Sensor Node Free. In the app the user can choose from multiple sensors, the data of which can be sent to a preferred MQTT broker using a preferred topic name. As you can see in the next picture.
Choosing the sensors, setting the broker and the topic name in the app

Of course, any app, that has these features, could be used (for example a fitness app), but my mentor suggested this one.  The data of these sensors will be ploted in the demo video. Almost every sensor sends data divided to x, y, z axis. These 3 will be shown in the same plot, their data set as Y value, and the QDateTime allocated to the values as X value. the curves based on data from x axis will be red, the y axis green, and the z axis purple. The plotting was done for a while before starting to record the video. So here is the demo video:

Demo video


And finally here comes the evaluation/summary. I truly think that every feature presented in my proposal is implemented and working. So I think the main aim is met: LabPlot now has full support for MQTT. There were difficulties along the way, but with work, and help from my mentor, everything was dealt with. As I said everything works, but some unforeseen bugs or errors might appear in the future. Some steps for the future may be to improve the overall performance of the new features.

Working on this project for the last 3 months has been a very great experience, and I can honestly say that I improved my coding skills and way of thinking in a way I haven't even dreamt for. I'm more than grateful to my mentor, Kristóf, who always helped me and had my back if I encountered any hardship. I'd also like to express my gratitude towards Alexander Semke, my mentor's former mentor and an invaluable member of the LabPlot team, who also helped me a great deal. I am determined to further improve the features, even after GSoC ended. I would be more than happy to stay in this amazing team and help them whenever they need me. It's my goal for next summer to join GSoC  again and work on LabPlot with Kristof, since I really liked being part of this team. I truly think that people should contribute more to the open source community, and the end of GSoC shouldn't mean the end of the involvement as well.

This is it, guys. Thank you for reading the post, and thank you for your interest in my project. If there's any development regarding my project or a new task (in the future) I'll let you know here. Bye :)

Hello Planet,

It has been some time. I come back from the shadows to announce the release of Ring-KDE 3.0.0, A GNU Ring.cx client. GNU Ring is a secure and distributed communication platform based on open standards. It weaves industry standard technologies to work together and provides audio calls, video conferences, chat, screen sharing and peer to peer file transfer between you and your friends. Additionally, its use of open standards allows to bridge to various other systems like the main phone network or SIP compatible devices.

When joining the GNU Ring, no servers or centralized accounts are needed. Beside an optional blockchain-based way to reserve your username against takeover, nothing leaves your device. All your data is kept under your control. Ring-KDE provides a simple wizard to help you create credentials or import your personal information from other devices.

This release is a full rewrite of the application to use more modern technologies such as touch support, QtQuick2 and KDE Kirigami adaptive widget framework. The old Ring-KDE was a fork of an older KDE application called SFLPhone. At the time, it was focused on being a office phone replacement for your KDE desktop instead of being a more generic multimedia communication software.

The screenshots below show the old SFLPhone/Ring-KDE 2.x versus Ring-KDE 3.0.0:

 

This blog entry wont try to list every single change from the 2.x series because
that’s too much amazement for a single post. A more useful introduction is how to use it.

Ring 2.x and the older SFLPhone versions used mostly the history and address book to select who to call. This made sense for a phone, but the newly expanded scope changes this. While they are both still available, from now on, the user interface is based on the timeline concept:

timeline.gif

Version 3.x also has better support for video, screen sharing and file streaming.

video

Most relevant audio call features have been ported to the new application including multi-call support, hold, recording and notifications:

call4

The basic chat support has been replaced with an integrated timeline that contains all the calls, chat messages, video capture, recordings and eventually file transfer and images.

chat

Navigation has been revamped and is now using a search box as the primary way of finding your friends. It uses locally stored data to avoid uploading too much potentially private information to the cloud. Only looking for registered user names normally uses the internet. It is optionally possible to download this information locally, but it uses more disk, CPU and network resources to keep up-to-date.

search.gif

In the immediate future, the next few versions will try to fix bug, improve performance and catch up with recent improvements to Kirigami2, KDE own touch-friendly set of widgets and application design guidelines. Since beginning to work on Ring-KDE 3, Kirigami has made great progress, but Ring-KDE 3.0 still mostly reflects the state of the art from a year ago.

 

Download:

Ring-KDE can be built from source if the ring-daemon is also built from source. The source code for Ring-KDE 3.0.0 can be downloaded here.

For everyone else, Ring-KDE is available as an easy to use AppImage:

https://download.kde.org/stable/ring-kde/3.0.0/ring-kde_3.0.0_x86_64.AppImage

To use the AppImage, download it, right click, choose Properties -> Permissions and check “is executable”, Then open the file. When using the AppImage, no other dependencies are required. If you also have another GNU Ring.cx like the Gnome client, please close it and run “killall dring” before executing the AppImage to avoid conflicts between the two versions.

akademy.jpg

August 08, 2018

Hi everyone, The coding period phase three is now completed. After the second evaluation, Poppler’s maintainer Albert Astals Cid commented on my bug report https://bugs.freedesktop.org/show_bug.cgi?id=107151#c3 stating that the current parsing and creation of DA string is handled by Qt5 frontend whereas the API should be changed and the creation and parsing of the DA string and font … 

The post GSoC :: Coding Period – Phase Three (July 8th to August 6th): Create and parse DA string in poppler-core and font family implementation appeared first on Dileep Sankhla.

Before getting started with Poppler, let’s first understand the PDF structure and different terminologies used. Annotations are PDF objects that enable user-clickable actions as well as contents text or other graphics and media. The following is a snippet of FreeText annotation created on a PDF page in Acrobat Reader. It is in the decompressed form: … 

The post FreeText Annotation :: Font family implementation in Poppler appeared first on Dileep Sankhla.

A lovely lunch and a shared afternoon and evening with Ade was a pleasant interlude in our time together here in beautiful Deventer. We changed tables a few times to avoid the sun! Last night we were wakened at around 2am with wind blowing rain into the open windows, which was quite exciting. Thunder roared in the south. It was still quite cool and breezy this morning so we ate inside.




After lunch, Boud proposed a walk around the town while the temperatures were moderate. We walked over much of the old town of Deventer, and spend some time in the Roman Catholic church, the old church on the "hill" with twin spires, the old Brush Shop, and back past the Weighing House and a lovely cast bronze map of Deventer.

Our favorite tree:


The Roman Catholic church whose steeple we see from the terrace:

On the wall of the Weighing House:



Our little corner of Deventer:


Tomorrow we travel by fast train to Vienna! I hope there is time to drink a cup of coffee. :-)

So, After a month-long delay, I finally managed to got my VISA approved, it was a really close call. I reached the VISA agency, today for receiving my application and after opening the application, I saw my visa on my passport! So yes I am coming to Akademy, this will be my first Akademy to attend, I am really excited to meet my mentors and all the people who make KDE awesome :D. Looking forward to attend, all the events, workshop and see the beautiful Vienna city!

Little about me: I was selected for this year’s GSoC project for Fwupd-Integration in Discover Software Center.

Google Summer of Code with KDE

Hey everyone, one more month has passed now, Fwupd-Backend is now finally merged in discover master branch, though it took quite a number of changes. This post will relatively small as in the past month I have worked mainly on fixing the mistakes and improving the code and getting it merged.

#1 Phabricator Merge diff: (https://phabricator.kde.org/D14050 ) This is the phabricator request, for merging the code into the master( commit: a30850900bbf9487f08bd43d988267e2ec034fd0).

#2 CI fail after Merging:  So after the code was merged the build started to fail on the CI system, the main problem behind that was some issue in the findLIBFWUPD.cmake code and the backend dependency was not installed on CI system, For it, I added the request for sys-admins (https://phabricator.kde.org/T9305). Though I violated some community code, the dependency got installed in CI system, thanks to bcooksley, (link: https://phabricator.kde.org/R857:1b0c2d39907a90bf6854fffafdab3d461fe8e69e), also thanks to adridg for pointing out the issue in my License in the cmake file, I fixed that in the (commit: 03aeb5ba2077c344b5de38ec37858a3603b07733) with some other fixes.

It was fun working with the KDE community, special thanks to my mentors Aleix Pol and David Edmundson, for guiding me throughout this summer break very much thanks to people at IRC for entertaining my problems!

It’s not a goodbye, I am currently working on another project for driver management which will use Linux driver management (https://github.com/solus-project/linux-driver-management) libraries to enumerate and discover devices and provide the suitable drivers for their hardware! (https://cgit.kde.org/scratch/abhijeetsharma/kdrivermanagement.git/), currently, the only temporary file structure is added, still, a long way to go!

Disclaimer: The Fwupd-Backend code is not been tested on a real device, may contain issues.

FeedBack Feel free to write comments below!

Thanks

Our QA tests have turned green which means we have switched on the preview publishing for the KDE neon Installable Images based on Bionic.

 Download installable ISO images

A reminder of what the different editions mean:

  • User: Packages continuously built from latest releases.  Use this edition if you are uncertain.
  • Developer Edition Git Stable Branches: Built continuously from Git beta and stable branches.  Use this edition to test beta and forthcoming code which has not gone through QA.
  • Developer Edition Git Unstable Branches: Built continuously from Git unstable branches.  Use this edition to test forthcoming feature code which has not gone through QA.

Remember this is still a preview in testing.  Upgrade testing will be announced shortly and final expected sometime after. Read the release notes. Give us feedback on the KDE forums or by filing specific bugs and keep and eye on the todo board to track us.

August 07, 2018

So after a (too long) break, I am going back to Akademy this year! Having been away from KDE work for a while now, this will be the first time I attend the conference as a user. It's going to be interesting to see how this feels. In any case, I am looking forward to the sessions and to catching up with old friends.

I will only be attending the first two days unfortunately, but I will try to make the best of these days to meet as many people as possible.

Now time to go packing, as I am actually landing in Vienna tomorrow to do some sightseeing before the conference. See you there!

Akademy

As a first KDE application, KStars got localization working on Android. KStars has the traditional gettext translations in the KDE system and these translations had to be downloaded, converted and packaged inside the apk.

The basic steps were to enable localization on Android:

1. Set CMake variable KDE_L10N_AUTO_TRANSLATIONS to ON. This step will automatically download the translations during the build with a custom build target "fetch-translations".
2. Convert the translations from .po extension into .mo format. This step was done with a custom build target in CMake:

IF (ANDROID)
    ADD_CUSTOM_TARGET(convert_translations_to_android ${CMAKE_SOURCE_DIR}/tools/convert_translations.sh ${CMAKE_BINARY_DIR}/android/export/share/kstars
                        WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
    ADD_DEPENDENCIES(convert_translations_to_android fetch-translations)
ENDIF ()


The convert_translations.sh script can be found here: https://github.com/KDE/kstars/blob/master/tools/convert_translations.sh

3. Set the application domain for translation as usual in the sources:

KLocalizedString::setApplicationDomain("kstars");

4. Add the installation directory on the device like a locale dir:

#if defined(__ANDROID__)
KLocalizedString::addDomainLocaleDir("kstars", "/data/data/org.kde.kstars.lite/qt-reserved-files/share/kstars/locale");
#endif

With the above steps and the current bleeding-edge KI18n KF5 module, your application will load with the current system language on the device.

You can check the whole commit by visiting: https://github.com/KDE/kstars/commit/bf4ac1e6a9a745eb37fc2e719e3fd95b00f84135

Of course, it was not so easy. There were some challenges with the KI18n module because it uses libintl-lite on Android and this lightweight library does not work exactly like the GNU gettext. This library expects a locale filename to bind for the current localization context instead of the location of locale subdirectories. KI18n had to be fixed to provide the filename for libintl-lite on Android platform.

@tetris4 wrote:

Also available in Taiwanese Mandarin.

Hey people,

We are excited to share that two of Chakra’s contributors, @s8321414 and I, will be attending KDE’s annual Akademy conference. This year it will take place in Vienna, Austria, from Saturday 11th to Friday 17th August.

This is the place where the KDE Community meets “to discuss and plan the future of the Community and its technology”.

We’ll be participating and presenting Chakra in the KDE Distro BoF, where there will be “short introductions for GNU/Linux distributions and open discussion on distribution-related topics”.

I’ll personally also be giving a talk on KDE’s Streamlined Onboarding goal, hoping to inspire current contributors to care more about introducing newcomers to their projects.

If you are also attending, leave a comment below so we can arrange to meet!

Posts: 1

Participants: 1

Read full topic


Photo by rawpixel. Licensed under CC0 license.

Akademy 2018 is less than a week away. Apart from meeting up again with friends and colleagues, the KDE community has another reason to be joyful: this year we have broken the record for the number of sponsors for the event. Although there have been many sponsors of Akademy over the years, never have there been so many at one time.

Eike Hein, Treasurer of the KDE e.V. board, believes that the extra influx of sponsors is thanks to "KDE software being loved again." Eike points out that Plasma is reaching more kinds of devices every day, attracting larger communities and more hardware manufacturers -- some of which will be at Akademy this year. KDE applications are also becoming more mainstream and reaching larger audiences. Krita and Kdenlive, for example, are making inroads within the community of graphical artists, raising awareness of KDE in a whole new sector of end users. Kirigami is becoming the go-to framework for projects that need convergence on desktop and mobile devices.

"I would also attribute the increase in support to the fact that KDE actively engages with partners" says Eike. A case in point is the Advisory Board. The Advisory Board makes organization-to-organization interaction more rewarding and helps build a stronger network of like-minded Free Software associations and companies. Through the Advisory Board, KDE can better reach and support larger communities, which in turn reinforces KDE's position within Free Software.

About Akademy

For most of the year, KDE -- one of the largest free and open software communities in the world-- works on-line by email, IRC, forums and mailing lists. Akademy provides all KDE contributors the opportunity to meet in person to foster social bonds, work on concrete technology issues, consider new ideas, and reinforce the innovative, dynamic culture of KDE. Akademy brings together artists, designers, developers, translators, users, writers, sponsors and many other types of KDE contributors to celebrate the achievements of the past year and help determine the direction for the next year. Hands-on sessions offer the opportunity for intense work bringing those plans to reality. The KDE Community welcomes companies building on KDE technology, and those that are looking for opportunities.

This year, Akademy will be held in Vienna, Austria, from the 11th to the 17th of August. You can join us by registering on the event's website.

For more information, please contact the Akademy Team.


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.