Você está na página 1de 6

Como contribuir com a atualização de pacotes no Void Linux:

Void é um sistema operacional de propósito geral, baseado no kernel Linux monolítico . Seu
sistema de pacotes permite instalar, atualizar e remover software rapidamente; o software é
fornecido em pacotes binários ou pode ser construído diretamente de fontes com a ajuda da
coleção de pacotes de fontes XBPS.

A atualização de pacote é feita ao abrir um PR no GitHub do projeto: https://github.com/void-


linux/void-packages

1º passo é necessário criar um fork do projeto(é preciso ter uma conta no github)

Agora o projeto é seu, crie um clone e atualize o fork:


Abrindo o terminal realize os passos abaixo:
sudo xbps-install git base-devel xtools
git clone https://github.com/NOME_DO_SEU_GITHUB_QUE_FOI_COPIADO/void-packages.git
cd void-packages
git remote add upstream https://github.com/void-linux/void-packages.git
git fetch upstream
git rebase upstream/master
git push origin master
./xbps-src binary-bootstrap

O próximo passo não é necessário embora em penso que é uma forma mais fácil de visualizar em que
branch estou:

curl -sS https://starship.rs/install.sh | sh

Adicione o seguinte ao final de ~/.bashrc:

eval "$(starship init bash)"

Para os outros shells visite https://starship.rs/

Feche e abre o terminal novamente e entre na pasta:

cd void-packages

Pronto, agora entraremos na página dos pacotes pendentes de atualização, iremos focar em pacotes
simples e órfãos(nada impede de atualizar um pacote que já tenha um mantenedor, porém sempre dê
preferência aos orfãos):

https://a-hel-fi.m.voidlinux.org/void-updates/void-updates.txt

dê control + f no navegador e pesquise por orphan

Atualizaremos o pacote rpm:


Voltando ao terminal dentro da pasta void-packages:

git checkout -b rpm

se quisermos voltar novamente para o branch master:

git checkout master

para retornar ao branch rpm que criamos:

git checkout rpm

nano srcpkgs/rpm/template

Editar a versão do pacote para o rpm de version=4.17.0 para (nesse momento é a)


version=4.17.1 e salve

Para verificar o checksum:

xgensum -f srcpkgs/rpm/template

Copie o gerado em vermelho e atualize no template:


nano srcpkgs/rpm/template

Salve o arquivo alterado.

Rode o lint, Se estiver tudo ok não retornará nenhuma informação:

xlint srcpkgs/rpm/template

Gerar o pacote com os testes:

./xbps-src -Q pkg rpm

Se tudo ocorreu bem não apresentará mensagem de erro, caso dê erro terá que verificar, pedir
ajuda etc.

Pacote criado corretamente

É aconselhável compilar em uma outra arquitetura, para verificar se tudo ocorre bem, sempre
compilo em ARM também.

./xbps-src -a armv7l pkg rpm


Tudo ocorrendo bem, instale o programa com o comando e teste:

sudo xbps-install --repository=/home/sua_home/void-packages/hostdir/binpkgs/rpm rpm

Sobe o commit:

git add srcpkgs/rpm/template

xbump rpm (rpm no caso o nome do pacote atualizado)

git push --set-upstream origin rpm (rpm no caso o nome do branch)

entre com o nome e chave do github.

Ir para o GitHub do projeto: https://github.com/void-linux/void-packages

Click Compare & pull request

Eu preenchi o comentário conforme abaixo e dei o ok:

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes

- I tested the changes in this PR: **briefly**

<!--

#### New package

- This new package conforms to the [quality requirements](https://github.com/void-linux/void-


packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**

-->

<!-- Note: If the build is likely to take more than 2 hours, please [skip
CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous
-integration)

and test at least one native build and, if supported, at least one cross build.

Ignore this section if this PR is not skipping CI.

-->

#### Local build testing


- I built this PR locally for my native architecture, (x86_64)

- I built this PR locally for these architectures (if supported. mark crossbuilds):

- armv7l

Você também pode gostar