Language Selection

English French German Italian Portuguese Spanish

Libadwaita 1.0 Arrives to Kickstart a New Era of GTK App Development

Filed under
GNOME

Libadwaita 1.0 has been released, kickstarting a new era in GTK app development.

Now, there’s been a fair bit of controversy and misunderstanding over what libadwaita is and isn’t. It’s pitched as a library that implements the (new) GNOME HIG, and is a GTK4-based successor to the GTK3-based libhandy library that has, over the past few years, given GTK apps lots of cool adaptive capabilities.

Libadwaita is set to become tightly intwined with GNOME as, in a break with the past, this library comes with a stylesheet —what we think of as GTK themes are actually just stylesheets— baked in. This means anything built using libadwaita (i.e., like a lot of GNOME 42) should look virtually the same wherever it runs regardless of what GTK theme is set.

Read more

Alexander Mikhaylenko: Libadwaita 1.0

  • Alexander Mikhaylenko: Libadwaita 1.0

    Libadwaita 1.0 has been released, just at the end of the year.

    Libadwaita is a library implementing the GNOME HIG, complementing GTK. For GTK 3 this role has increasingly been played by Libhandy, and so Libadwaita is a direct Libhandy successor.

    You can read more in Adrien’s announcement.

    [...]

    Ever since Adwaita started using SCSS, it couldn’t really be recolored at all without recompiling it. This created big problems for applications that wanted to do that.

    For example, GNOME Web makes its header bar blue in incognito mode. This may sound simple, but involves copy-pasting large chunks of Adwaita into the app itself and making many small changes everywhere to adjust it, as well as using SCSS for it because the original style is SCSS. More recently, GNOME Console and Apostrophe started doing the same thing – copy-pasted from Web, as a matter of fact. This approach means the style is messy and extremely hard to keep up to date with Adwaita changes – I have updated this style for the 3.32 style refresh and never want to do this again.

    Another approach applications like Contrast are using (were using with GTK 3, anyway), is copying the whole stylesheet from GTK, and using libsass to recompile it in runtime. This worked – it’s much more maintainable than the first approach, but fell apart when libsass got deprecated.

    Meanwhile, the elementary OS stylesheet has been doing recoloring just fine with nothing but @define-color – and so Libadwaita does exactly that, it exposes all of the colors it uses (31 as of the moment of writing) as named colors. The new colors are also documented and will be treated as a proper API.

    It also drops all of the formerly used PNG assets, so the colors can affect the elements that used them.

    It also reworks the high contrast variant to use the same colors when possible to make sure that changing color for the regular style also works with high contrast.

Libadwaita 1.0 Released For Kicking Off A New Year Of GNOME App

  • Libadwaita 1.0 Released For Kicking Off A New Year Of GNOME App Development

    GNOME's libadwaita 1.0 has been released for this library implementing the GNOME Human Interface Guidelines (HIG) and complementary to the GTK toolkit.

    Libadwaita 1.0 is the successor to libhandy that complemented GTK3. Libadwaita 1.0 offers a reworked stylesheet now that the Adwaita style has become part of the library rather than within GTK. This new libadwaita style is designed to be more modern, supports runtime recoloring, a more proper dark variant contrast, style classes updates, API to support the new cross-desktop dark style preference, improved notifications, and much more.

GNOME libadwaita 1.0 released

  • GNOME libadwaita 1.0 released

    Version 1.0 of the GNOME libadwaita library is out; this will be of interest to GNOME application developers. "Libadwaita is a library implementing the GNOME HIG, complementing GTK. For GTK 3 this role has increasingly been played by Libhandy, and so Libadwaita is a direct Libhandy successor."

Libadwaita 1.0 released

  • Libadwaita 1.0 released

    Libadwaita is quite controversial, as aside from dark mode and a (promised) colour API, applications that use Libadwaita cannot be themed. It’s all the result of developers being unhappy us pesky users get to decide what our computers look like, so they decided to prevent users from theming their systems at all. GNOME’s own applications will surely transition to it, and it remains to be seen if the wider Gtk developer community will opt for it as well.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

More in Tux Machines

today's howtos

  • How to install go1.19beta on Ubuntu 22.04 – NextGenTips

    In this tutorial, we are going to explore how to install go on Ubuntu 22.04 Golang is an open-source programming language that is easy to learn and use. It is built-in concurrency and has a robust standard library. It is reliable, builds fast, and efficient software that scales fast. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel-type systems enable flexible and modular program constructions. Go compiles quickly to machine code and has the convenience of garbage collection and the power of run-time reflection. In this guide, we are going to learn how to install golang 1.19beta on Ubuntu 22.04. Go 1.19beta1 is not yet released. There is so much work in progress with all the documentation.

  • molecule test: failed to connect to bus in systemd container - openQA bites

    Ansible Molecule is a project to help you test your ansible roles. I’m using molecule for automatically testing the ansible roles of geekoops.

  • How To Install MongoDB on AlmaLinux 9 - idroot

    In this tutorial, we will show you how to install MongoDB on AlmaLinux 9. For those of you who didn’t know, MongoDB is a high-performance, highly scalable document-oriented NoSQL database. Unlike in SQL databases where data is stored in rows and columns inside tables, in MongoDB, data is structured in JSON-like format inside records which are referred to as documents. The open-source attribute of MongoDB as a database software makes it an ideal candidate for almost any database-related project. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the MongoDB NoSQL database on AlmaLinux 9. You can follow the same instructions for CentOS and Rocky Linux.

  • An introduction (and how-to) to Plugin Loader for the Steam Deck. - Invidious
  • Self-host a Ghost Blog With Traefik

    Ghost is a very popular open-source content management system. Started as an alternative to WordPress and it went on to become an alternative to Substack by focusing on membership and newsletter. The creators of Ghost offer managed Pro hosting but it may not fit everyone's budget. Alternatively, you can self-host it on your own cloud servers. On Linux handbook, we already have a guide on deploying Ghost with Docker in a reverse proxy setup. Instead of Ngnix reverse proxy, you can also use another software called Traefik with Docker. It is a popular open-source cloud-native application proxy, API Gateway, Edge-router, and more. I use Traefik to secure my websites using an SSL certificate obtained from Let's Encrypt. Once deployed, Traefik can automatically manage your certificates and their renewals. In this tutorial, I'll share the necessary steps for deploying a Ghost blog with Docker and Traefik.

Red Hat Hires a Blind Software Engineer to Improve Accessibility on Linux Desktop

Accessibility on a Linux desktop is not one of the strongest points to highlight. However, GNOME, one of the best desktop environments, has managed to do better comparatively (I think). In a blog post by Christian Fredrik Schaller (Director for Desktop/Graphics, Red Hat), he mentions that they are making serious efforts to improve accessibility. Starting with Red Hat hiring Lukas Tyrychtr, who is a blind software engineer to lead the effort in improving Red Hat Enterprise Linux, and Fedora Workstation in terms of accessibility. Read more

Today in Techrights

Android Leftovers