Parece haver duas perguntas aqui:
- Como empacotar o novo software para que as dependências sejam instaladas também.
- Como distribuir o novo software
Esses dois problemas são tão antigos quanto os computadores e foram resolvidos de várias maneiras diferentes.
A solução padrão Debian / Ubuntu é um pacote deb hospedado em um repositório Debian ou Ubuntu . Existem outros métodos: Pip, PPAs, Snaps, github, etc. Geralmente, você encontrará o mínimo de problemas e encontrará mais suporte com o método deb / repo padrão.
Criar um deb não é fácil - principalmente porque o processo de criação faz com que você faça muitas perguntas que não têm respostas fáceis: Licença, versões de dependência, locais de arquivos, conflitos com outros pacotes, Essas perguntas garantem a mais ampla compatibilidade com outros pacotes e evitam muitos problemas do usuário. O AskUbuntu está repleto de pedidos desnecessários porque um empacotador corta cantos.
Um excelente lugar para começar é o link do Guia de empacotamento do Ubuntu
Planeje as atualizações - você provavelmente precisará liberar uma nova versão do pacote para corrigir bugs e dependências alteradas. O ciclo do Ubuntu de seis meses é conveniente para essas atualizações.
Depois de criar um pacote , você pode simplesmente publicá-lo em um site (ou github) ou simplesmente enviá-lo para seus colegas. No entanto, a melhor prática é contribuir com o software para o Debian. Comece o processo no link . O pacote será mesclado no Ubuntu alguns meses antes do próximo lançamento de seis meses do Ubuntu.
Os grandes benefícios de usar o Debian e o Ubuntu para distribuição incluem capacidade de descoberta no apt, teste e feedback da comunidade, suporte da comunidade para o seu pacote em sites como o AskUbuntu, rastreamento de bugs no Launchpad e código conveniente ferramentas de armazenamento e manutenção de pacotes no Alioth e no Launchpad.