Eu usei o próximo script de askububtu para automatizar o download de todos os pacotes instalados em uma nova instalação debian 9.3 LXDE.
#!/bin/bash
dpkg --get-selections | while read line
do
package=`echo $line | awk '{print $1}'`
mkdir $package
cd $package
apt-get -q source $package
cd ..
done
Meu problema é que recebo alguns erros e ele baixa um pacote semelhante, mas não o desejado:
sh: 1: dpkg-source: não encontrado W: O download é executado sem sandbox como root, pois o arquivo 'libreoffice_5.2.7-1.dsc' não pôde ser acessado pelo usuário '_apt'. - pkgAcquire::Run (13: Permissão negada) E: Falha ao descompactar o comando 'dpkg-source --no-check -x libreoffice_5.2.7-1.dsc'. Lendo listas de pacotes... Escolhendo 'libreoffice' como pacote fonte em vez de 'libreoffice-calc'
Você pode imaginar que ele baixa 300 MB ou mais a cada 3-4 minutos (libreoffice) por muitas vezes (para quase todas as dependências do libreoffice)...
Alguém tem uma sugestão melhor do que esse script para automatizar o download dos fontes dos pacotes usados no meu sistema?
Há um problema fundamental com o script que você está usando: ele é baseado em pacotes binários, não em pacotes fonte. É por isso que você está baixando o código-fonte do LibreOffice várias vezes: há muitos pacotes binários criados a partir do mesmo pacote-fonte...
Outro problema é que você não
dpkg-source
instalou, então os pacotes fonte não podem ser extraídos.Eu usaria algo assim em vez disso:
Se não quiser extrair a fonte, adicione
-d
naapt-get
linha, isso evitará osdpkg-source
erros.