Talvez uma pergunta idiota, mas eu sou novo nisso - então, por favor, tenha paciência comigo.
Segue uma breve descrição da situação :
Recentemente, soube de um bug significativo e de longa data
dhcpcd
- o gerenciador de rede padrão para o RPi OS. Coincidentemente, alguém enviou uma solicitação de pull aodhcpcd
site do GitHub que foi confirmada recentemente.A organização RPi não publica suas
dhcpcd
fontes no GitHub, mas elas estão disponíveis viaapt-get source dhcpcd5
. Isso gerou uma nova pasta (~/dhcpcd5-8.1.2
), um.dsc
arquivo (com várias imprecisões) e umtar
arquivo compactado (dhcpcd5_8.1.2.orig.tar.xz
) - não haviadiff.gz
arquivo/pasta. Eu incorporei a correção de código-fonte simples (uma única linha de código) e aprendi o suficiente para construir um novo.deb
arquivo com sucesso. Instalei e testei o.deb
arquivo em 3 dos meus sistemas; ele resolve o problema e não encontrei efeitos colateraisAconselhei um indivíduo da organização RPi sobre minhas descobertas há algum tempo, mas não obtive nenhum feedback. Aparentemente, não há local para enviar alterações propostas pelo usuário para os arquivos de origem do pacote Debian - nenhum mecanismo de solicitação de pull iow.
Eu gostaria de compartilhar meu esforço. Ocorreu-me que pode (deveria?) haver um método pelo qual eu possa efetivamente criar um repositório git a partir do conteúdo dos dhcpcd
arquivos de origem do pacote Debian. Eu sei o suficiente git
para fazer upload do conteúdo ~/dhcpcd5-8.1.2
em um repositório do GitHub; mas minhas dúvidas são essas :
A pasta
~/dhcpcd5-8.1.2
contém alguns arquivos binários. Acho que esses arquivos foram criados durante odebuild
processo. Como faço para limpar binários das fontes em~/dhcpcd5-8.1.2
?Existem vários patches em
dhcpcd5-8.1.2/debian/patches
; posso confiar com segurança nessas respostas de 2016 para garantir que todos os patches sejam aplicados ao código-fonte?Como não sei o suficiente para fazer mais perguntas, vou perguntar: "Isso funcionará?" O que significa que, se todos os binários forem removidos e a alteração atual e todos os patches anteriores forem aplicados - alguém sem experiência específica poderá clonar o repositório do GitHub que desejo criar e construí-lo usando
debuild -b -uc -us
?
Para limpar um pacote Debian, ou seja , remover todos os arquivos gerados e restaurar a fonte ao seu estado inicial, execute
dhcpcd5
é um pacote no formato “3.0 (quilt)”, então extraí-lo comapt source
etc. irá extraí-lo e aplicar quaisquer patches. Você pode ter certeza disso executandoSe o que você tem compilado localmente com
debuild
, então sim, enviar seu repositório como está produzirá algo que outros podem construir, desde que eles também possam recuperar o.orig
tarball correspondente. Note que seu repositório deve conter os fontes com patches não aplicados , ou seja , você deve executarantes de confirmar suas alterações e enviar o repositório.
Existe um repositório Debian git para
dhcpcd5
, mas não é mantido há muito tempo e provavelmente é irrelevante aqui.