Um pequeno “bug” no Ubuntu 22.04 LTS Jammy Jellyfish pode te deixar sem alguns updates do sistema! Veja como corrigir em todos os sabores.
| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. Mais detalhes clicando aqui.
1. Introdução
No último lançamento LTS do Ubuntu, especificamente o sistema 22.04 – e seus sabores! – me ocorreu uma necessidade de configurar um pacote Python, especificamente o evdev através da instalação do python3-dev, para o funcionamento do RustDesk, porém haviam erros de dependência desencontrada:
Os pacotes a seguir têm dependências desencontradas:
python3-dev : Depende: python3 (= 3.10.4-0ubuntu2) mas 3.10.6-1~22.04 está para ser instalado
E: Impossível corrigir problemas, você manteve (hold) pacotes quebrados.
Depois de pesquisar a respeito encontrei o motivo do problema: O arquivo sources.list estava com repositórios ausentes!
2. Sources.list
Este pequeno arquivo em /etc/apt/sources.list define de onde o sistema da Canonical vai puxar os pacotes durante as atualizações e/ou instalações de novos aplicativos na máquina. Também é aonde é definido a origem do repositório, sendo o Brasil caso as linhas comecem com br. e o principal caso comecem com archive.
Exemplo de linhas do arquivo:
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://archive.ubuntu.com/ubuntu/ jammy main restricted
deb http://archive.ubuntu.com/ubuntu jammy-updates main restricted
Preenchido automaticamente durante a instalação e configuração do sistema, podem ocorrer pequenos problemas e algumas linhas podem ficar ausentes. Desde um erro no Ubiquity, o instalador do Ubuntu, até não marcar para que a instalação instale todos os pacotes padrão do sistema.
De todo modo o arquivo /etc/apt/sources.list fica incompleto e causará erros em updates ou instalação de pacotes.
3. Jammy
O problema especifico ocorreu porque o arquivo /etc/apt/sources.list estava sem as linhas que definem o repositório jammy-updates, apenas as linhas jammy.
Ou seja, o correto é copiar as 3 linhas dos repositórios main, universe e multiverse, e cria-las com jammy-updates.
Ou seja, o arquivo ficará assim (ou parecido):
# deb cdrom:[Ubuntu-MATE 22.04 LTS _Jammy Jellyfish_ – Release amd64 (20220419)]/ jammy main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu/ jammy main restricted
deb http://archive.ubuntu.com/ubuntu jammy-updates main restricteddeb http://archive.ubuntu.com/ubuntu/ jammy universe
deb http://archive.ubuntu.com/ubuntu jammy-updates universedeb http://archive.ubuntu.com/ubuntu/ jammy multiverse
deb http://archive.ubuntu.com/ubuntu jammy-updates multiversedeb http://archive.ubuntu.com/ubuntu jammy-security main restricted
deb http://archive.ubuntu.com/ubuntu jammy-security universe
deb http://archive.ubuntu.com/ubuntu jammy-security multiverse
Após isso, salve o arquivo e rode o comando de atualização novamente:
$ sudo apt update
$ sudo apt upgrade
Ao concluir o comando, verifique se há updates que estavam pendentes devido a essa ausência!
4. Conclusão
Solução simples para o que aparentava ser um problema complexo.
O problema apesar disso continuou, porque depois apareceu outro “erro” de que o pacote python3-dev não pode ser instalado porque depende de libjs-sphinxdoc que não é instalável, não está disponível nos repositórios.
A solução? Instalar o pacote python3.10-dev!
$ sudo apt install python3.10-dev
Com isso o sistema ficou Ok e o RustDesk funcionou normalmente!
Fonte:
AskUbuntu
Autodidata, me aprofundei em sistemas operacionais baseados em UNIX®, principalmente Linux. Também procuro trazer assuntos correlacionados direta ou indiretamente, como automação, robótica e embarcados.