First touch in GNOME project ⭐
Muito diferente do Kernel, que a contribuição é via email (Raiz), no Gnome existe vários sites e uma repositório para fazer a gerencia dessas contribuições (Nutella):
- https://developer.gnome.org/ - Site com guia de contribuição
- https://gnome.pages.gitlab.gnome.org/libadwaita/doc/1.7/ - Site para ajudar no entendimento das funções
- https://gitlab.gnome.org/GNOME/ - Repositório com os projetos
No repositório do Gnome é possível ver vários projetos nos quais você pode contribuir, como o calendar, o settings, dentre outros sistemas que compõe o universo do Gnome.
Após dar uma olhada em vários repositórios e conversar com alguns colegas, principalmente o Andrew Ijano sobre a possíveis issues que conseguiriamos contribuir, decidi por fazer uma issue do Newcommers
do settings.
O objetivo da issue era padronizar as barras de pesquisa dentro do sistemas, em questão de tamanho e de composição do componente. https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/3440
Então clonei o repositório e tentei fazer a contribuição pelo Builder (https://apps.gnome.org/pt-BR/Builder/), esse que é uma IDE e que já proporciona rodar o projeto simulando a interface e funcionalidades do sistema atualizado.
Após algumas tentativas e mais conversas com os colegas de sala, foi notado que a melhor forma de contribuir no settings na verdade é usando uma vm do fedora pelo toolbox e buildando via ninja. Então refiz as configurações do ninja, baixei as bibliotecas e tudo deu certo finalmente.
Contribuição (Código)
Após investigar o que poderia estar causando essa despadronização nas barras de pesquisa, percebi que eles utilizam .ui
para gerir boa parte da visualição e sua propriedades e diferente do html
que passamos a classe e alteramos o estilo no css
, aqui as propriedades é declarada fora da tag principal e já é especificado as propriedades de estilo.
<object class="GtkSearchEntry" id="language_filter_entry">
<property name="placeholder_text" translatable="yes">Language or country</property>
<property name="width_chars">30</property>
+ <property name="hexpand">True</property>
+ <property name="margin-start">6</property>
+ <property name="margin-end">6</property>
No total eu alterei 5 componentes, que estavam despadronizados como pode ser visto abaixo
Antes
cc-language-chooser | cc-tz-dialog | cc-format-chooser | pp-new-dialog | cc-input-chooser |
---|---|---|---|---|
Depois
cc-language-chooser | cc-tz-dialog | cc-format-chooser | pp-new-dialog | cc-input-chooser |
---|---|---|---|---|
após isso eu abri o PR e já recebi alguns feedbacks sobre a mensagem e do código, mas estou esperando o feedback dos designs para confirmar o estilo proposto.
https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/3129