Why and how libadwaita prevents theming?

Then don’t use software, because all software places artificial restrictions.

Libadwaita provides the UI appearance and behaviours described in the GNOME human interface guidelines. If an application is using libadwaita then its authors have decided to follow the GNOME guidelines; any attempt at changing that is going to break the application’s intended user experience.

If a user wishes to inject their own styles into an already styled application, with no regards to the intent of the authors of that application, then they can, by using the facilities exposed by GTK—namely, adding styles to the $HOME/.config/gtk-4.0/style.css file that is automatically loaded. If you do that, you get to keep both the pieces when things inevitably break, and you don’t get to complain about it.

There is nothing in the licensing terms or development practice that says that application of library developers in free and open source software have to provide knobs and settings for people who want to modify applications and libraries without paying the cost of learning how to read and modify the code.

1 Like