KDE: KDE Connect, kjournald v0.0.2, and KDE Android Update

-
The Inner Workings (& Non-Workings) of KDE Connect iOS
While the UI, frontend, and related frameworks of iOS development saw drastic changes over the last 7 years since the initial KDE Connect iOS project in 2014, the file structure of the project appears to be just as sensible today as it was 7 years ago. The file structure can be roughly categorized into 6 sections:
LAN backend section: consisting of BaseLink.h/m, LanLink.h/m, BaseLinkProvider.h/m, LanLinkProvider.h/m. Responsible for establishing and managing LAN connections, including sending and receiving of data, handling sockets and connections, loading and verifying TLS identities, etc.
Network package section: consisting of NetworkPackage.h/m. Responsible for defining, serializing, and deserializing Network packets, the fundamental communication blocks of KDE Connect.
Device section: consisting of Device.h/m. Responsible for defining device objects. These are the objects that represent any remote devices that the host has interacted with, including their information, status, and any functionalities that they might have.
App background function: consisting of BackgroundService.h/m. Responsible for defining and executing functionalities that are required somewhere else in the app, such as refreshing device lists, saving remembered devices, taking the appropriate actions when device status changes (pairing, rejected, etc.).
Plugins section: consisting of PluginService.swift and the various .swift plugin files/classes. These classes are responsible for handling individual plugin functions, much like how plugins are handled in the Qt and Android versions of KDE Connect.
Views/UI section: consisting of the various .swift files, written in the SwiftUI frontend framework, to define the visible components.
-
kjournald v0.0.2
To recap, I started this small project called “kjournald” to scratch to a few itches: I wanted an abstraction of the journald C-style API in terms of a QAbstractItemModel and second, I needed an application for doing offline analysis of journald databases. The latter reason comes from embedded use cases of mine, where I find it very handy to just grab a complete journald database of some embedded device and then analyze it on my host system and look into what happened on the device. — As said before, there are existing and great projects that handle some of those use cases, but for various reasons they architecturally do not really fit to what I need.
Since my initial focus was the offline use-case, i.e. where I have a journald database that does not gain any new log entries, I shifted my perspective and looked what I needed to make the browser app usable on my host system. So I have to better deal with logs that gain new entries over time. This lead to quite a few new features and cleanups in my reference browser implementation but also helped to further cleanup the API.
-
KDE Android Update (August 2021)
A lot has happened around bringing KDE applications to Android since I last wrote about that here and spoke about it at Akademy 2021. Here are some of the highlights.
-

- Login or register to post comments
Printer-friendly version- 2976 reads
PDF version
More in Tux Machines
- Highlights
- Front Page
- Latest Headlines
- Archive
- Recent comments
- All-Time Popular Stories
- Hot Topics
- New Members
digiKam 7.7.0 is released
After three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release.
|
Dilution and Misuse of the "Linux" Brand
|
Samsung, Red Hat to Work on Linux Drivers for Future Tech
The metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world.
Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility.
|
today's howtos
|








.svg_.png)
Content (where original) is available under CC-BY-SA, copyrighted by original author/s.

Recent comments
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago