#82 Software Performance

• Curated by Felix

Update on what happened across the GNOME project in the week from February 03 to February 10.

GNOME Core Apps and Libraries

Software

Lets you install and update applications and system extensions.

Philip Withnall announces

Georges blogged about some nice performance improvements he’s made in gnome-software recently: https://feaneron.com/2023/02/07/profiling-optimizing-gnome-software/

GLib

The low-level core library that forms the basis for projects such as GTK and GNOME.

Philip Withnall reports

Emmanuele Bassi has just landed a new GPathBuf API in GLib, for easily building file paths, https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3216

GNOME Incubating Apps

Loupe

A simple and modern image viewer.

Sophie reports

This week we made a bunch of progress in planning out the image rendering for Loupe. Not only did we land the first upstream tweak we needed, but we also discussed neat upcoming features in GTK that Loupe can make use of.

I also landed a few minor tweaks.

  • Added a double-tap gesture on touchscreens for zooming in and out
  • Added a more natural rubber-band effect for zoom gestures when hitting the maximum or minimum zoom level
  • Added some space between the images in the sliding view
  • Fixed some issues for right-to-left text direction
  • Fixed swipe gesture on touchscreens
  • Added shortcuts for the Home and End button to got to the first or last image

GNOME Circle Apps and Libraries

gtk-rs

Safe bindings to the Rust language for fundamental libraries from the GNOME stack.

slomo says

Just in time for the GNOME 44 API/ABI freeze there was a new gtk-rs release, and new releases of the Rust bindings for various other GNOME libraries. Check https://gtk-rs.org/blog/2023/02/10/new-release.html for the release notes.

Gaphor

A simple UML and SysML modeling tool.

Arjan says

TWIG-Bot Last weekend, Gaphor 2.16.0 has been released.

  • The Model browser now supports multi select
  • The GUI has been improved: diagram name shows in the header, improvements in spadding, backdrop when no diagrams are opened and icons. Thanks to Tobias Bernard.
  • The editor’s CSS editor now supports dark mode and variables.
  • It’s now easier to add top-level packages and diagrams in the model browser.

Third Party Projects

nxyz says

This week I released Paleta, a simple gtk4/libadwaita app that allows you to extract colors from an image and manage them in palettes. Extraction is done with the color-thief library and palettes are saved persistently. You can get it from Flathub.

Hunter Wittenborn announces

After a few months of work, Celeste has been released. Celeste is a file synchronization application, written in GTK, that can connect to a wide variety of cloud providers, including Google Drive, Dropbox, Nextcloud, ownCloud, and WebDAV. More storage types are also planned for the future, including Microsoft OneDrive and Amazon S3.

Celeste can be installed as a Flatpak, Snap, or Debian package.

The project is currently in it’s alpha state, so if you have any issues please report them on the project’s issue tracker.

fiaxh reports

Dino 0.4 was released. Dino is a secure and privacy-friendly messaging application. It uses the XMPP (Jabber) protocol for decentralized communication. The release adds support for message reactions and replies. We also switched from GTK3 to GTK4 and make use of libadwaita now.

Diego Iván says

This week, I released a PDF Metadata Editor. Edit the title, author, keywords, creator, producer, creation and modification dates of your PDF documents. You can get it from Flathub.

Daniel Wood announces

This week Design, a 2D CAD application for GNOME gets all touchy! Adding gesture input, usability improvements on small screens and more…

  • Touch input for pan, pinch to zoom and double tap to zoom all
  • Fix tabs not being shown
  • Fixes for text rotation
  • Fix files being read incorrectly
  • Fix ARC selection
  • Improve selection precision
  • Added ability to Save As
  • Handle keyboard shortcuts

Design 43-alpha3 is available from Flathub: https://flathub.org/apps/details/io.github.dubstar_04.design

Gradience

Change the look of Adwaita, with ease.

tfuxu says

This week, Gradience version 0.4.0 have been released, this release is a preparation for 0.8.0, the next major release that will bring GNOME Shell theming support and other long awaited features. Version 0.4.0 introduces a CLI interface, some bug fixes and general quality of life improvement changes.

Here are some of the changes:

  • Added CLI interface, useful for creating scripts or for those who prefer terminal tools (CLI guide available here)
  • Now Gradience warns user when switching to other presets, if current one has unsaved changes
  • When running Gradience from terminal, you will see easier to understand error messages, thanks to the new logging facility
  • Fixed sorting in “Explore” tab of Preset Manager not working with non-English locales
  • Now Gradience will now internally use hexadecimal color values or RGBA formatted colors if transparency is used

And some other bug fixes and under-the-hood improvements. You can find more detailed changelog here.

As always, the latest release is available to download from Flathub.

Gir.Core

Gir.Core is a project which aims to provide C# bindings for different GObject based libraries.

badcel announces

Gir.Core 0.3.0 was released. Most prominent features in this release include:

  • Addition of WebKitGtk to the supported libraries
  • Improved runtime behaviour if using .NET 7 instead of .NET 6
  • New C test library to not rely on API of other libraries to do unit tests
  • Support for detailed signals via GObject.Signal.Connect
  • The GType of a class / interface is now available in the public API

Additionally there were several bugs fixed, some new API was made available and some code cleanup took place. For details checkout the release notes.

Denaro

A personal finance manager.

Nick announces

Denaro V2023.2.0 is here! Your favorite weekly pizza man is back with a new update for your favorite personal finance manager! In this update, we gave users the ability to add passwords to protect and encrypt their account files, we provided a way for users to transfer money between accounts of different currencies, and we improved the look and feel of the application, as well as many, many other features and enhancements. Here’s a full changelog:

  • Added the ability to add a password to an account (This will encrypt the nmoney file)
  • Added the ability to transfer money between accounts with different currencies by providing a conversion rate in TransferDialog
  • Added the ability to configure how Denaro uses locale separators in amount fields
  • Added the ability to copy individual transactions
  • Added the ability to sort transactions by amount
  • LC_MONETARY and LC_TIME will now be respected
  • Added “Help” button to toast notification when there are 0 imported transactions
  • Recent accounts are now available to select from the TransferDialog
  • Improved importing of qif and ofx files
  • Added a “New Window” action to the main menu

Shell Extensions

Cleo Menezes Jr. reports

Version 16 of Auto Activities has been released.

In this new version, the user is able to choose between showing the activities overview or the apps grid when there are no windows in the workspace. In addition, the maximum window check delay limit has been increased from 1 to 10 seconds

Special thanks to Zetta1Reid0 who helped implement this.

Follow the development Get it on GNOME Extensions

Just Perfection

A tweak tool to customize the GNOME Shell and to disable UI elements.

Just Perfection says

Just Perfection GNOME Shell Extension version 23 released with more features such as overview spacing size, screen recording and sharing indicator visibility, switcher popup delay, …

This version named after Spanish painter Francisco Goya.

We also had some bug fixes in this version.

That’s all for this week!

See you next week, and be sure to stop by #thisweek:gnome.org with updates on your own projects!