Falha ao remover pacote não permite atualizar para Debian 11

Ao executar $ sudo apt full-upgrade alguns pacotes precisam ser removidos. Quando o apt tenta remover o pacote “python-pyicu” retorna mensagens de erro de sintaxe (que não entendo o significado). Tentei remover o pacote usando $ sudo apt purge e tive o mesmo problema.

Não tenho nenhum Desktop instalado nessa máquina pois uso como servidor e acesso usando SSH.

rootusr@wserv:~$ sudo apt purge python-pyicu
Lendo listas de pacotes... Pronto
Construindo árvore de dependências       
Lendo informação de estado... Pronto
Os pacotes a seguir serão REMOVIDOS:
  python-pyicu*
0 pacotes atualizados, 0 pacotes novos instalados, 1 a serem removidos e 461 não atualizados.
40 pacotes não totalmente instalados ou removidos.
Depois desta operação, 1.049 kB de espaço em disco serão liberados.
Você quer continuar? [S/n] 
dpkg: aviso: falta ficheiro de lista de ficheiros 'libpaper1:amd64'; assumindo que o pacote não tem actualmente ficheiros instalados
(Lendo banco de dados ... 41311 ficheiros e directórios actualmente instalados.)
A remover python-pyicu (2.2-2) ...
/usr/bin/dpkg-query: 4: /usr/bin/dpkg-query: Syntax error: word unexpected (expecting ")")
Traceback (most recent call last):
  File "/usr/bin/pyclean", line 117, in <module>
    main()
  File "/usr/bin/pyclean", line 101, in main
    pfiles = set(dpf.filter_out_ext(pfiles, ('.so',)))
  File "/usr/share/python/debpython/files.py", line 77, in filter_out_ext
    for fn in files:
  File "/usr/share/python/debpython/namespace.py", line 77, in add_namespace_files
    for fn in files:
  File "/usr/share/python/debpython/files.py", line 53, in from_package
    raise Exception("cannot get content of %s" % package_name)
Exception: cannot get content of python-pyicu
dpkg: erro ao processar o pacote python-pyicu (--remove):
 o subprocesso instalado, do pacote python-pyicu, o script pre-removal retornou erro do status de saída 1
/usr/bin/dpkg-query: 4: /usr/bin/dpkg-query: Syntax error: word unexpected (expecting ")")
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 289, in <module>
    main()
  File "/usr/bin/pycompile", line 262, in main
    options.force, options.optimize, e_patterns)
  File "/usr/bin/pycompile", line 154, in compile
    for fn, versions_to_compile in filter_files(files, e_patterns, versions):
  File "/usr/bin/pycompile", line 109, in filter_files
    for fn in files:
  File "/usr/share/python/debpython/files.py", line 77, in filter_out_ext
    for fn in files:
  File "/usr/share/python/debpython/namespace.py", line 77, in add_namespace_files
    for fn in files:
  File "/usr/share/python/debpython/files.py", line 69, in filter_public
    for fn in files:
  File "/usr/share/python/debpython/files.py", line 53, in from_package
    raise Exception("cannot get content of %s" % package_name)
Exception: cannot get content of python-pyicu
dpkg: erro ao limpar:
 o subprocesso instalado, do pacote python-pyicu, o script post-installation retornou erro do status de saída 1
Erros foram encontrados durante o processamento de:
 python-pyicu
E: Sub-process /usr/bin/dpkg returned an error code (1)
1 curtida

Tenta: sudo apt update && sudo apt autoremove -y && sudo apt autoclean
Por sinal, eu não me arriscaria remover algum pacote python na marra, já que algumas distros usam como dependência

1 curtida

sudo apt update também apresentou erros, então não executou o comando em seguida. Eu executei sudo apt autoremove manualmente e percebi que praticamente todos os pacotes python3 apresentam o mesmo erro de sintaxe. Um exemplo é o pacote “python3-pbr”:

dpkg: erro ao processar o pacote python3-pbr (--configure):
 problemas de dependência - deixando desconfigurado
Configurando python3-apt (1.8.4.3) ...
/usr/bin/dpkg-query: 4: /usr/bin/dpkg-query: Syntax error: word unexpected (expecting ")")
Traceback (most recent call last):
  File "/usr/bin/py3compile", line 290, in <module>
    main()
  File "/usr/bin/py3compile", line 270, in main
    options.force, options.optimize, e_patterns)
  File "/usr/bin/py3compile", line 154, in compile
    for fn, versions_to_compile in filter_files(files, e_patterns, versions):
  File "/usr/bin/py3compile", line 106, in filter_files
    for fn in files:
  File "/usr/share/python3/debpython/files.py", line 71, in filter_public
    for fn in files:
  File "/usr/share/python3/debpython/files.py", line 53, in from_package
    raise Exception("cannot get content of %s" % package_name)

Estaria o dpkg “quebrado”??

Tenta então limpar primeiro o cache do apt: sudo apt autoclean
Você chegou a (tentar) remover alguma coisa além do python* com o purge? @KairanD sabe ajudar?

Esqueci de citar mas tentei sim usar o autoclean. Resolvi copiar a lista de pacotes que resultaram em falha:

Erros foram encontrados durante o processamento de:
 python3-pkg-resources
 python3-configargparse
 python3-dbus
 python3-setuptools
 python3-zope.event
 python3-zope.interface
 python3-pbr
 python3-apt
 python3-certbot-nginx
 python-pyicu
 python3-zope.component
 software-properties-common
 python3-tz
 python3-mock
 python3-six
 unattended-upgrades
 python3-pycurl
 python3-zope.hookable
 python3-chardet
 python3-configobj
 python3-pyparsing
 python3-software-properties
 python3-certifi
 python3-acme
 python3-cryptography
 python3-gi
 python3-requests
 python3-idna
 python3-certbot
 python3-urllib3
 python3-josepy
 certbot
 ranger
 python3-future
 python3-rfc3339
 python3-distro-info
 python3-asn1crypto
 python3-requests-toolbelt
 python3-parsedatetime
 python3-openssl

Me parece que eu tentei fazer algo relacionado com certbot e não funcionou, depois tentei forçar a desinstalação de um pacote relacionado. Deduzo que eu tenha usado o purge nesse processo e isso tenha causado esse problema de pacotes não configurados e que precisam ser removidos.