Language Selection

English French German Italian Portuguese Spanish

KDE

Offline Update Arrives in KDE Neon (Unstable Edition)

Filed under
KDE

The team announced the immediate availability of the offline update feature in the KDE Neon unstable edition. Here's how it works.
Read more

KDE Plasma 5.21.2 Update Re-Enabled Key Repeat by Default, Improves System Settings

Filed under
KDE

Coming just one week after the KDE Plasma 5.21.1 update, which improved support for Nvidia Optimus laptops, the KDE Plasma 5.21.2 point release is here to re-enable key repeat by default, something that probably many of you out there were complaining about.

In addition, the KDE Plasma 5.21.2 update improves the System Settings by addressing a bug that made it crash when attempting to clear the history from the Activities page and making the screens in the Display Configuration page draggable again.

Read more

KDE Plasma 5.21.2, Bugfix Release for March

Filed under
KDE
Security

Plasma 5.21 was released in February with many feature refinements and new modules to complete the desktop experience.

This release adds a week's worth of new translations and fixes from KDE's contributors. The bugfixes are typically small but important and include...

Read more

Plasma Mobile updates make the user interface more customizable (and a bit more Android-like)

Filed under
KDE

There are several different user interfaces available for Linux smartphones, but the one that will probably feel the most familiar to Android users is KDE’s Plasma Mobile.

Like Android, it has a home screen, an app drawer, navigation buttons on the bottom, status notifications at the top, and a quick settings panel that appears when you swipe down from the top of the screen.

Soon, it may work even more like Android – developers plan to add support for multiple home screens that you can scroll through horizontally, giving you more space for app icons and widgets. Support for custom app launchers may also be on the way.

Read more

KStars v3.5.2 is released

Filed under
KDE

KStars v3.5.2 is is released on March 1st, 2021 for Windows, MacOS, and Linux. This release incorporates significant improvements to Ekos Polar Alignment Tool in addition to supporting manual rotations in the Alignment Module.

Brodrick Bassham added a manual rotation dialog to the Alignment module in Ekos for Load & Slew. Now users without motorized rotators can adjust their camera manually in order to achieve the desired frame orientation. Check the video below for a demonstration of this feature.

Read more

KDE’s Plasma Mobile Gets Improved Homescreen and Settings, Lots of App Updates

Filed under
KDE

In February 2021, Plasma Mobile received an improved homescreen to make the drawer behave as an applications list, an initial implementation of horizontal pages for widgets and apps, as well as support for those who want to create new custom launchers.

The revamped homescreen is pretty neat and you can check it out in action on PINE64’s PinePhone Linux phone in the video below, courtesy of Plasma Mobile developer Marco Martin who did all the awesome work.

Read more

The Kate Text Editor - February 2021

Filed under
KDE

Like in January 2021, a lot of stuff happened for Kate in February 2021, too. I will skip the stuff that I already reported on Valentine’s Day. The web site for example has still a new design and some people are still working behind the scenes to improve it!

Let’s take a look at which cool new stuff you can expect to have in the 21.04 release of Kate. If you are adventurous: build the current development version yourself and try the stuff today. Feedback & patches welcome!

Read more

Documentation Improvements in KDE

Filed under
KDE

Doxyqml, our documentation bridge between QML and doxygen, got various improvements, thanks to Olaf Mandel and Lasse Lopperi. Now QML enums are supported and the lexer/parser got various bug fixes.

Speaking of QML documentation, the Kirigami API documentation was improved and now uses more correctly @inherit tags and @property tags. There is still room for improvements, but the current state is already a lot better. Most Components are now showing all their properties correctly and the type of the property is correct. (kirigami!239)

Another improvement is that the generated Kirigami documentation now shows more accurate names: e.g. Kirigami.Page instead of org::kde::kirigami::Page. This makes it easier to read and navigate the documentation.

There was also a bit of background work inside KApiDox, Jannet added support for QDoc, allowing to use QDoc as an alternative to Doxygen. This might be a better solution for generating documentation for projects with a lot of QML.

Read more

Also: MJ Inventory Released

This week in KDE: a little bit of everything

Filed under
KDE

Fixing up Plasma 5.21 continues, and we also did a lot of UI polishing this week...

A Task manager can now be configured to not cause its hidden panel to become visible when one of its apps or tasks receives a “needs attention” status (Michael Moon, Plasma 5.22)

You can now apply global themes, color schemes, cursor themes, plasma themes, and wallpapers from the command-line, using some fancy new CLI tools with names like plasma-apply-colorscheme (Dan Leinir Turthra Jensen, Plasma 5.22)

KDE apps now support the HEIF and HEIC image formats (Daniel Novomeský, Frameworks 5.80)

Read more

Welcome KGeoTag!

Filed under
KDE

Just a quick shout-out to Tobias who just released version 1.0.0 of KGeoTag. As you can probably guess from the version number, KGeoTag is quite a young project - though it already has some nice features.

You can use KGeoTag to assign image files to GPS locations. This can help you with remembering the exact location where a photo was taken, or with discovering images that were taken at the same place. Of course, this is most useful when used together with another program such as KPhotoAlbum, that can adequately display this information and lets you search by GPS coordinates Wink

Read more

Syndicate content

More in Tux Machines

Canonical Chooses Google’s Flutter UI SDK to Build Future Ubuntu Apps

For those not in the known, Flutter is an open-source UI SDK (software development kit) created by Google to helps those who want to build quick and modern applications for a wide-range of operating systems, including Android, Linux, Mac, iOS, Windows, Google Fuchsia, that work across desktop, mobile, and the Web. A year ago, Canonical teamed up with Google to make the Flutter SDK available on Linux as Snap, the universal software deployment and package management system for Ubuntu `and other GNU/Linux distributions, allowing those interested in building beautiful apps on the Linux desktop. Read more

Python: Security and NumPy 1.20 Release

  • Python Package Index nukes 3,653 malicious libraries uploaded soon after security shortcoming highlighted

    The Python Package Index, also known as PyPI, has removed 3,653 malicious packages uploaded days after a security weakness in the use of private and public registries was highlighted. Python developers use PyPI to add software libraries written by other developers in their own projects. Other programming languages implement similar package management systems, all of which demand some level of trust. Developers are often advised to review any code they import from an external library though that advice isn't always followed. Package management systems like npm, PyPI, and RubyGems have all had to remove subverted packages in recent years. Malware authors have found that if they can get their code included in popular libraries or applications, they get free distribution and trust they haven't earned. Last month, security researcher Alex Birsan demonstrated how easy it is to take advantage of these systems through a form of typosquatting that exploited the interplay between public and private package registries.

  • A pair of Python vulnerabilities [LWN.net]

    Two separate vulnerabilities led to the fast-tracked release of Python 3.9.2 and 3.8.8 on February 19, though source-only releases of 3.7.10 and 3.6.13 came a few days earlier. The vulnerabilities may be problematic for some Python users and workloads; one could potentially lead to remote code execution. The other is, arguably, not exactly a flaw in the Python standard library—it simply also follows an older standard—but it can lead to web cache poisoning attacks. [...] [Update: As pointed out in an email from Moritz Muehlenhoff, Python 2.7 actually is affected by this bug. He notes that python2 on Debian 10 ("Buster") is affected and has been updated. Also, Fedora has a fix in progress for its python2.7 package.]

  • NumPy 1.20 has been released

    NumPy is a Python library that adds an array data type to the language, along with providing operators appropriate to working on arrays and matrices. By wrapping fast Fortran and C numerical routines, NumPy allows Python programmers to write performant code in what is normally a relatively slow language. NumPy 1.20.0 was announced on January 30, in what its developers describe as the largest release in the history of the project. That makes for a good opportunity to show a little bit about what NumPy is, how to use it, and to describe what's new in the release. [...] NumPy adds a new data type to Python: the multidimensional ndarray. This a container, like a Python list, but with some crucial differences. A NumPy array is usually homogeneous; while the elements of a list can be of various types, an ndarray will, typically, only contain a single, simple type, such as integers, strings, or floats. However, these arrays can instead contain arbitrary Python objects (i.e. descendants of object). This means that the elements will, for simple data types, all occupy the same amount of space in memory. The elements of an ndarray are laid out contiguously in memory, whereas there is no such guarantee for a list. In this way, they are similar to Fortran arrays. These properties of NumPy arrays are essential for efficiency because the location of each element can be directly calculated. Beyond just adding efficient arrays, NumPy also overloads arithmetic operators to act element-wise on the arrays. This allows the Python programmer to express computations concisely, operating on arrays as units, in many cases avoiding the need to use loops. This does not turn Python into a full-blown array language such as APL, but adds to it a syntax similar to that incorporated into Fortran 90 for array operations.

4 Best Free and Open Source Graphical MPD Clients

MPD is a powerful server-side application for playing music. In a home environment, you can connect an MPD server to a Hi-Fi system, and control the server using a notebook or smartphone. You can, of course, play audio files on remote clients. MPD can be started system-wide or on a per-user basis. MPD runs in the background playing music from its playlist. Client programs communicate with MPD to manipulate playback, the playlist, and the database. The client–server model provides advantages over all-inclusive music players. Clients can communicate with the server remotely over an intranet or over the Internet. The server can be a headless computer located anywhere on a network. There’s graphical clients, console clients and web-based clients. To provide an insight into the quality of software that is available, we have compiled a list of 4 best graphical MPD clients. Hopefully, there will be something of interest here for anyone who wants to listen to their music collection via MPD. Here’s our recommendations. They are all free and open source goodness. Read more

LWN on Kernel: 5.12 Merge, Lockless Algorithms, and opy_file_range()

  • 5.12 Merge window, part 1 [LWN.net]

    The beginning of the 5.12 merge window was delayed as the result of severe weather in the US Pacific Northwest. Once Linus Torvalds got going, though, he wasted little time; as of this writing, just over 8,600 non-merge changesets have been pulled into the mainline repository for the 5.12 release — over a period of about two days. As one might imagine, that work contains a long list of significant changes.

  • An introduction to lockless algorithms [LWN.net]

    Low-level knowledge of the memory model is universally recognized as advanced material that can scare even the most seasoned kernel hackers; our editor wrote (in the July article) that "it takes a special kind of mind to really understand the memory model". It's been said that the Linux kernel memory model (and in particular Documentation/memory-barriers.txt) can be used to frighten small children, and the same is probably true of just the words "acquire" and "release". At the same time, mechanisms like RCU and seqlocks are in such widespread use in the kernel that almost every developer will sooner or later encounter fundamentally lockless programming interfaces. For this reason, it is a good idea to equip yourself with at least a basic understanding of lockless primitives. Throughout this series I will describe what acquire and release semantics are really about, and present five relatively simple patterns that alone can cover most uses of the primitives.

  • How useful should copy_file_range() be? [LWN.net]

    Its job is to copy len bytes of data from the file represented by fd_in to fd_out, observing the requested offsets at both ends. The flags argument must be zero. This call first appeared in the 4.5 release. Over time it turned out to have a number of unpleasant bugs, leading to a long series of fixes and some significant grumbling along the way. In 2019 Amir Goldstein fixed more issues and, in the process, removed a significant limitation: until then, copy_file_range() refused to copy between files that were not located on the same filesystem. After this patch was merged (for 5.3), it could copy between any two files, falling back on splice() for the cross-filesystem case. It appeared that copy_file_range() was finally settling into a solid and useful system call. Indeed, it seemed useful enough that the Go developers decided to use it for the io.Copy() function in their standard library. Then they ran into a problem: copy_file_range() will, when given a kernel-generated file as input, copy zero bytes of data and claim success. These files, which include files in /proc, tracefs, and a large range of other virtual filesystems, generally indicate a length of zero when queried with a system call like stat(). copy_file_range(), seeing that zero length, concludes that there is no data to copy and the job is already done; it then returns success. But there is actually data to be read from this kind of file, it just doesn't show in the advertised length of the file; the real length often cannot be known before the file is actually read. Before 5.3, the prohibition on cross-filesystem copies would have caused most such attempts to return an error code; afterward, they fail but appear to work. The kernel is happy, but some users can be surprisingly stubborn about actually wanting to copy the data they asked to be copied; they were rather less happy.