Language Selection

English French German Italian Portuguese Spanish

GNOME

Games and retro-gtk happenings

Filed under
GNOME
Gaming

Yesterday, I released GNOME Games 3.35.90, so we’re in feature freeze for 3.36.0. Let’s take a look at the changes during the 3.35.x cycle:

Faster collection loading

For a long time, Games loaded collection asynchronously using Vala async functions. While it didn’t block the UI completely, it was still slow and caused frequent UI stalls until it loaded completely. In 3.36, collection loading uses a separate thread instead and is noticeably faster as a result, while the UI is perfectly smooth the whole time.

Cover loading has been moved to a thread as well, so both initial loading and scrolling while covers are loading should now be fast and smooth.

Read more

PaperWM, the Tiling Window Manager for GNOME

Filed under
GNU
Linux
GNOME

Lately, tiling window managers have been gaining popularity even among the regular desktop Linux users. Unfortunately, it can be difficult and time-consuming for a user to install and set up a tiling window manager.

This is why projects like Regolith and PaperWM has come up to provide tiling window experience with minimal efforts.

We have already discussed Regolith desktop in details. In this article, we’ll check out PaperWM.

What is PaperWM?

According to its GitHub repo, PaperWM is “an experimental Gnome Shell extension providing scrollable tiling of windows and per monitor workspaces. It’s inspired by paper notebooks and tiling window managers.”

PaperWM puts all of your windows in a row. You can quickly switch between windows very quickly. It’s a little bit like having a long spool of paper in front of you that you can move back and forth.

This extension supports GNOME Shell 3.28 to 3.34. It also supports both X11 and Wayland. It is written in JavaScript.

Read more

Sam Thursfield on GNOME Tracker 3.0 and Michael Catanzaro on How to Spell "GNOME"

Filed under
GNOME
  • Sculpting Tracker 3.0

    We’re in the second phase of work to create version 3.0 of the Tracker desktop search engine.

    Tracker’s database is now up to date with the latest SPARQL 1.1 standards, including the magical SERVICE statement that lets you combine results from multiple databases in a single query. Now we’re converting the database from a service into a library, and turning the previously monolithic architecture into something more flexible.

  • Michael Catanzaro: Let’s Learn Spelling!

    Were you looking forward to reading an exciting blog post about substantive technical issues affecting GNOME or the Linux desktop community? Sorry, not today.

    GNOME

    It used to be an acronym, so it’s all uppercase. Write “GNOME,” never “Gnome.” Please stop writing “Gnome.”

    Would it help if you imagine an adorable little garden gnome dying each time you get it wrong?

    If you’re lazy and hate capital letters, or for technical contexts like package or project names, then all-lowercase “gnome” might be appropriate, but “Gnome” certainly never is.

KDE and GNOME: KDE Itinerary, Rust/GStreamer and Vala

Filed under
KDE
GNOME
  • December/Januaray in KDE Itinerary

    It has been a packed two month again around KDE Itinerary! Nextcloud Hub integrated the itinerary extraction engine, a presentation at 36C3 and working towards more elaborate assistance features are just some of the highlights since the last report.

  • Rust/GStreamer paid internship at Collabora

    Collabora is offering various paid internship positions for 2020. We have a nice range of very cool projects involving kernel work, Panfrost, Monado, etc.

    I'll be mentoring a GStreamer project aiming to write a Chromecast sink element in Rust. It would be a great addition to GStreamer and would give the student a chance to learn about our favorite multimedia framework but also about bindings between C GObject code and Rust.

  • Implementing a Vala Language Server

    An LSP Client can used by Source Code Editors, like GNOME Builder or elementary’s code, or Anjuta, in order to provide specific services to the coder, like completion, goto symbol definitions, diagnostics, code formatting and others. A Client request all above services from a Server. This way, a source code editor can support multiple programming languages, just implementing an LSP Client and connect to an LSP Server.

    Client and Server should cooperate in order to provide power full tools to the user. Some times one or other, provides limitations or the cooperation requires to changes in the source code editor design.

    Anjuta for example, has implemented a database to track symbols definitions, this is no necessary as an LSP Client, because the Server should track them for you. Client just need to request if a symbol is found and get back its type and children (a very common concept on Object Oriented Programming Languages like Vala).

    A Server requires lot of information from the Client, like the root directory and compilation flags used, so it can provide reliable diagnostics and, like in Vala, the --pkg switches in use so it can find the namespaces in use for both, completion and diagnostics.

    Vala has its own Language Compiler and as many others, creates a tree of structured information about the code in order to translate it to C and then use another compiler to transform the resulted code to machine code. The Vala’s tree lot of the information we need to implement an LSP.

    Recently GVls was accepted by GNOME Builder, as The Vala Language Server for source editing. It provides completion, goto definition and diagnostics, with more services coming.

Data transfer in GTK4

Filed under
Development
GNOME

  • Data transfer in GTK4

    The traditional methods for user-initiated data transfers between desktop apps are the clipboard or Drag-and-Drop. GTK+ has supported these methods since the beginning of time, but up until GTK3, the APIs we had for this kind of data transfer were thinly disguised copies of the corresponding X11 apis: selections, and properties and atoms. This is not too surprising, since the entire GDK api was modeled on X11. Unfortunately, the implementation includes horrors such as incremental transfers and string format conversions.

    For GTK4, we’re leaving these things behind as we are moving things in GDK around to be closer to the Wayland API. Data transfer is one the areas in most urgent need of this modernization. Thankfully, it is almost complete at this point, so it is worth taking a look at what has changed, and how things will work in the future.

  • GTK4 Data Transfer APIs Being Modernized Around Wayland

    Red Hat's Matthias Clasen has provided an update on one of the latest areas the GTK developers are working on finishing up with the forthcoming GTK 4.0 tool-kit... Improving the data transfer interfaces around handling for copy/paste and drag-and-drop.

    With GTK4, the data transfer interfaces are being re-engineered with an emphasis on moving closer to the Wayland API where as with GTK3 the GDK API was modeled on the X11 interfaces.

GtkSourceView branching

Filed under
GNOME

We’re currently finishing up the cycle towards GNOME 3.36, which means it’s almost time to start branching and thinking about what we want to land early in the 3.37 development cycle. My goal is to branch gtksourceview-4-6 which will be our long-term stable branch for gtksourceview-4.x (similar to how the gnome-3-24 branch is our long-term stable for the gtksourceview-3.x series. After that, master will move to GTK 4 as we start to close in on GTK 4 development. The miss-alignment in version numbers is an unfortunate reality, but a reality I inherited so we’ll keep on keepin’ on.

That means if you are not setting a branch in your flatpak manifests, you will want to start doing that when we branch (probably in the next couple of weeks) or your builds will start to fail. Presumably, this only will affect your Nightly builds, because who targets upstream master in production builds, not you surely!

Read more

GNOME Work Is Underway For Sharper Background Images

Filed under
GNOME

Canonical's Daniel Van Vugt continues working on a variety of interesting performance optimizations for upstream GNOME as well as other usability enhancements for this desktop environment. One of the latest items being tackled is improving the quality of background images on GNOME.

Long story short, for where the background/wallpaper image is larger than the desktop resolution, OpenGL is used for downscaling the image. But the existing means of downscaling could lead to blurry images or just not as sharp as possible images. But now with patches pending, the mipmap level is being limited to still downscale with OpenGL but to have the maximum sharpness possible for the display.

Read more

Doing Things That Scale

Filed under
GNOME

I used to have an Arch GNU/Linux setup with tons of tweaks and customizations. These days I just run vanilla Fedora. It’s not perfect, but for actually getting things done it’s way better than what I had before. I’m also much happier knowing that if something goes seriously wrong I can reinstall and get to a usable system in half an hour, as opposed to several hours of tedious work for setting up Arch. Plus, this is a setup I can actually install for friends and relatives, because it does a decent job at getting people to update when I’m not around.

Until relatively recently I always set a custom monospace font in my editor and terminal when setting up a new machine. At some point I realized that I wouldn’t have to do that if the default was nicer, so I just opened an issue. A discussion ensued, a better default was agreed upon, and voilà — my problem was solved. One less thing to do after every install. And of course, everyone else now gets a nicer default font too!

I also used to use ZSH with a configuration framework and various plugins to get autocompletion, git status, a fancy prompt etc. A few years ago I switched to fish. It gives me most of what I used to get from my custom ZSH thing, but it does so out of the box, no configuration needed. Of course ideally we’d have all of these things in the default shell so everyone gets these features for free, but that’s hard to do unfortunately (if you’re interested in making it happen I’d love to talk!).

Years ago I used to maintain my own extension set to the Faenza icon theme, because Faenza didn’t cover every app I was using. Eventually I realized that trying to draw a consistent icon for every single third party app was impossible. The more icons I added, the more those few apps that didn’t have custom icons stuck out. Nowadays when I see an app with a poor icon I file an issue asking if the developer would like help with a nicer one. This has worked out great in most cases, and now I probably have more consistent app icons on my system than back when I used a custom theme. And of course, everyone gets to enjoy the nicer icons, not only me.

Read more

PaperWM: tiled window management for GNOME

Filed under
GNOME

When I started using Linux on my personal computer, one of the first things I got excited about was tiny lightweight window managers, largely because my laptop at the time had 32MB of RAM and anything else was unusable.

Then I got into tiling window managers like xmonad! I could manage my windows with my keyboard! They were so fast! I could configure xmonad by writing a Haskell program! I could customize everything in all kinds of fun ways (like using dmenu as a launcher)! I used 3 or 4 different tiling window managers over the years and it was fun.

About 6 years ago I decided configuring my tiling window manager wasn’t fun for me anymore and switched to using the Ubuntu stock desktop environment: Gnome. (which is much faster now that I have 500x more RAM in my laptop Smile )

So I’ve been using Gnome for a long time, but I still kind of missed tiling window managers. Then 6 months ago a friend told me about PaperWM, which lets you tile your windows in Gnome! I installed it immediately and I’ve been using it ever since.

Read more

Also: Alberto Ruiz: GTK: OSX a11y support

GNOME 3.36 Will Feature an Improved Shell Theme (And It Looks Very Nice)

Filed under
GNOME

As spotlighted by Alex (aka BabyWogue), the current development work on GNOME 3.36 introduces a brand new aesthetic in the calendar/message tray and in the GNOME Shell search overview.

Notifications listed in the GNOME Shell Calendar/Message tray have a more prominent appearance, made distinct and separate by the use of a drop shadows (rather than only a subtle border outline, as per current code).

The “carded” look extends to other elements nestled in the drop down too, including the calendar, world clocks, and weather. A “light” effect is applied on mouse over in the standard GNOME Shell skin.

The (admittedly fuzzy) .gif above also demonstrates two additional tweaks I’m pretty pleased to see. First, new “hover” state for individual media control buttons, an effect that had been missing until now; and secondly, larger icons in notifications.

Read more

Syndicate content

More in Tux Machines

Android Leftovers

Linux 5.6.2

I'm announcing the release of the 5.6.2 kernel.

All users of the 5.6 kernel series must upgrade.

The updated 5.6.y git tree can be found at:
	git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.6.y
and can be browsed at the normal kernel.org git web browser:
	https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary

thanks,

greg k-h
Read more Also: Linux 5.6.2 Released With Fix For The IWLWIFI Intel WiFi Driver

DownZemAll is an open source download manager for Windows, Linux and macOS

Recently, while casually browsing GitHub, I came across a name that seemed familiar at first; it turned out to be a new download manager called DownZemAll. The program's name is very similar to the popular DownloadThemAll! extension for Firefox, which is what surprised me. The official page reveals that the developer of DownZemAll started the project during the time the legacy add-on stopped working with Firefox Quantum, and seems to have used it as the inspiration to rewrite this application. But that's where the similarities end, because DownZemAll is a desktop program. Let's take a look at it to see how it stacks up. The interface is mostly what you'd expect in a download manager: a menu bar, toolbar, the main pane, but unlike others, DownZemAll has a sidebar too. The options in the side panel are also available from the right-click menu. Read more

Audiocasts/Shows: Choose Linux, The Linux Link Tech Show, Bad Voltage