Afinal, por que reclamam tanto da biblioteca libadwaita do GNOME no mundo Linux?

Afinal, por que reclamam tanto da biblioteca libadwaita do GNOME no mundo Linux?

Em março de 2020, o projeto GNOME anunciou uma nova biblioteca chamada Libadwaita. Aqui, damos uma olhada em Libadwaita, e mostramos as diferentes perspectivas que as pessoas têm.

Em março de 2020, o projeto GNOME anunciou uma nova biblioteca chamada libadwaita. Isso prometia corrigir inúmeros problemas fundamentais com o GTK, a biblioteca que o GNOME usa para construir seu ambiente de desktop.

Infelizmente, este anúncio também resultou em uma reação significativa da comunidade. Embora isso não tenha realmente diminuído a adoção da libadwaita, parece que alguns usuários estão agora começando a boicotar o GNOME por causa disso.

Mas que impacto a libadwaita tem no mundo real? E como isso difere para usuários e desenvolvedores?

Principais características da libadwaita

Embora fosse originalmente destinada a ser uma solução para as muitas bibliotecas específicas do GNOME que os desenvolvedores precisavam usar, desde então ela cresceu e se tornou muito mais. Como Adrian Plazas disse em seu blog:

GNOME precisa de uma biblioteca abençoada implementando rapidamente seu HIG (Human Interface Guidelines) desenvolvido em colaboração com sua equipe de design. [...] Para resolver tanto a necessidade de independência da GTK quanto a necessidade do GNOME de se mover mais rápido, estamos criando o projeto libadwaita. Esta nova biblioteca libadwaita pretende estender esse conceito sendo a parte de código ausente de Adwaita. A biblioteca será implementada como uma continuação direta do GTK 4 e substituição do libhandy, e será desenvolvida pelos desenvolvedores atuais da Libhandy. Adrian Plazas

Basicamente, libadwaita é feito para ser uma versão específica do GTK4 do GNOME, com o projeto GNOME em controle completo da aparência e sensação dos aplicativos. No entanto, ela também incorpora uma série de outras características:

  • Widgets adaptativos para que os aplicativos possam funcionar em ambos os desktops, laptops, tablets e smartphones (como o PinePhone)
  • Nova versão do Adwaita, seguindo as últimas tendências do design de interface do usuário
  • Estilos incorporados para botões e outros widgets
  • Notificações incorporadas no aplicativo
  • Animações melhoradas e mais personalizáveis
  • Melhorias de velocidade e fluidez

Embora todos esses recursos sejam incríveis, alguns poucos dividiram a comunidade, principalmente entre desenvolvedores e usuários.

Perspectiva do usuário

Infelizmente, libadwaita foi recebido por imensa reação negativa por alguns usuários do GNOME. Tudo isso decorre de uma mudança fundamental no libadwaita: a incapacidade de usar temas. Isso ocorre porque o tema Adwaita é construído apenas em libadwaita, o que significa que ele precisaria ser recompilado toda vez que o tema fosse alterado.

Este é um aspecto fundamental da libadwaita, para o bem ou para o mal. Como resultado, alguns usuários decidiram que esta é uma tentativa do GNOME de bloquear seu ecossistema de aplicativos.

No entanto, isso não significa que a libadwaita esteja morta na água. Desde o início, os desenvolvedores do GNOME têm sido inflexíveis de que uma API para temas viria em breve, e parece que isso vai acontecer.

Embora isso não resolvesse a questão da incompatibilidade dos temas existentes do GTK e do GNOME, resolveria algumas questões mais fundamentais. Como já foi dito inúmeras vezes, os temas baseados em CSS que o GTK usa atualmente é muito mais um remendo para o problema dos temas do que uma solução permanente. E, como em muitos projetos de código aberto, esta correção foi construída na medida em que há muito pouca chance de voltar.

libadwaita iria alguns passos para corrigir isso, mas ao custo do ecossistema de aplicativos existente. Com todo esse ódio, no entanto, os desenvolvedores continuam a implementá-lo. Por que?

Perspectiva do desenvolvedor

Como você viu na lista de recursos antes, há um grande número de recursos que ajudam os desenvolvedores tremendamente. Uma notável tem sido a capacidade de criar aplicativos convergentes, e a única razão pela qual alguns desenvolvedores usam a libadwaita.

Infelizmente, como em quase todas as novas bibliotecas do GNOME, há uma documentação mínima específica da linguagem disponível. Em vez disso, isso é substituído por um sistema de documentação muito mais genérico e gerado automaticamente.

Embora isso seja melhor do que nada, ainda é bastante carente, especialmente considerando a incrível comunidade de desenvolvedores que o GNOME tem.

Uma solução melhor?

libadwaita foi criado em resposta ao ritmo de desenvolvimento mais rápido que o GNOME precisava. No entanto, isso não poderia ser alcançado através de um ramo da GTK4?

Isso permitiria que o GTK herdasse todos os recursos interessantes do libadwaita, além de permitir uma abordagem mais unificada às bibliotecas do GNOME. Como dito antes no artigo sobre Flutter, o desktop Linux é muito fragmentado, e isso se estende ao GTK.

O que acha da libadwaita? Você apoia ou vai boicotar o GNOME? Por favor, deie suas opiniões nos comentários abaixo!

Última atualização deste artigo: 9 de july de 2022