Eu acredito que o Centro de Software tem um recurso para sincronização entre computadores nos dias de hoje. Se esse identificador falhar nos pacotes corretamente, isso poderá resolver o seu problema.
O problema aqui é que dpkg
não está ciente dos repositórios, apenas dos pacotes instalados. Você pode descobrir se um pacote está disponível em um repositório executando apt-cache policy $package
. Se você vir um repositório no Version Table
, ele estará disponível lá.
Então, que tal isso? É lento, mas deve funcionar:
dpkg --get-selections '*' \
| while read line; do
apt-cache policy $(echo "$line" | cut -f1 ) \
| grep -q 'http://' \
&& echo "$line"
done