Vou começar afirmando que tenho certeza de que essa é uma bagunça única do meu próprio design, mas espero que alguém tenha encontrado isso e possa ajudar.
A configuração
Meu laptop roda Pop!_OS 22.04 (Baseado no Ubuntu Jammy). Eu realmente gosto dos pacotes xscreensaver , mas os repositórios de lançamento Debian/Ubuntu/Pop!_OS contêm uma versão desatualizada, e apenas sid (também conhecido como Unstable) contém o pacote atualizado * .
Sem problemas, é por isso que a fixação existe, e é assim que eu configurei:
/etc/apt/preferences.d/unstable-200
Arquivo:Package: * Pin: release a=unstable Pin-Priority: 200
/etc/apt/preferences.d/xscreensaver-2000
Arquivo:Package: xscreensaver* Pin: release a=unstable Pin-Priority: 2000
/etc/apt/sources.list.d/debian.sid.list
Arquivo:deb [arch=amd64] http://http.us.debian.org/debian sid main contrib non-free
Isso realmente funciona, neste momento, a execução sudo apt install xscreensaver
instala as versões atualizadas. No entanto, há um efeito colateral estranho.
O problema
Quando executo sudo apt update
seguido por sudo apt upgrade
, recebo a seguinte saída:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages will be DOWNGRADED:
alsa-topology-conf appmenu-gtk-module-common aspell-en ca-certificates
chrome-gnome-shell dictionaries-common dns-root-data emacsen-common folks-common
fonts-arphic-ukai fonts-noto-cjk fonts-noto-cjk-extra fonts-noto-color-emoji
fonts-urw-base35 friendly-recovery gir1.2-flatpak-1.0 gir1.2-gdkpixbuf-2.0
gir1.2-graphene-1.0 gir1.2-gtksource-4 gir1.2-polkit-1.0 gir1.2-secret-1
gir1.2-soup-2.4 gsfonts gsfonts-x11 hunspell-ar hunspell-de-at-frami
hunspell-de-ch-frami hunspell-de-de-frami hunspell-en-au hunspell-en-ca hunspell-en-gb
hunspell-en-us hunspell-en-za hunspell-es hunspell-fr hunspell-fr-classical hunspell-it
hunspell-pt-br hunspell-pt-pt hunspell-ru hyphen-de hyphen-en-gb hyphen-es hyphen-fr
hyphen-it hyphen-pt-br hyphen-pt-pt ieee-data javascript-common klibc-utils
laptop-detect liba52-0.7.4 libappmenu-gtk2-parser0 libbytesize-common libffi8
libflatpak-dev libgl1 libgles2 libgutenprint-common libgweather-4-0 libio-stringy-perl
libjs-jquery libldacbt-abr2 libmpcdec6 libmysofa1 libopengl0 libpolkit-gobject-1-0
libsndio7.0 libsoup-gnome2.4-1 libtermkey1 libvterm0 libwacom-common libxkbcommon0
mythes-ar mythes-de mythes-de-ch mythes-en-au mythes-en-us mythes-es mythes-fr
mythes-it mythes-pt-pt mythes-ru neovim-runtime netbase pass policykit-1 poppler-data
powermgmt-base printer-driver-all python3-certifi python3-fido2 python3-jinja2
python3-launchpadlib python3-lazr.uri python3-macaroonbakery python3-more-itertools
python3-pkg-resources python3-pyatspi python3-rfc3339 python3-setuptools python3-tz
python3-wheel python3-ykman sensible-utils sgml-base sgml-data sound-icons ssl-cert
tpm-udev ucf update-inetd va-driver-all wamerican wbrazilian wbritish wfrench witalian
wngerman wogerman wspanish wswiss xfonts-base xml-core yubikey-manager
0 upgraded, 0 newly installed, 125 downgraded, 0 to remove and 0 not upgraded.
Need to get 257 MB/283 MB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n]
Isso também elimina a contagem de atualizações do Pop!_OS Shop, com esses pacotes sendo exibidos como atualizações pendentes do sistema operacional.
Solução de problemas
Alguns dados que coletei ao tentar solucionar isso.
Remover /etc/apt/sources.list.d/debian.sid.list
e executar sudo apt update
resolve o problema, então eu sei que é apenas um erro de cálculo/lógica falha em algum lugar.
Focando no primeiro pacote da lista alsa-topology-conf
:
Embora eu saiba que o erro é completamente superficial, a princípio pensei de apt
alguma forma rastrear de onde (qual repositório) o pacote veio, então removi, limpei e reinstalei o pacote. Não fez diferença.
sudo apt remove alsa-topology-conf
sudo apt clean
sudo apt update
sudo apt install alsa-topology-conf
Executando apt policy alsa-topology-conf
, os resultados são:
alsa-topology-conf: Installed: 1.2.5.1-2 Candidate: 1.2.5.1-2 Version table: *** 1.2.5.1-2 200 200 http://http.us.debian.org/debian sid/main amd64 Packages 100 /var/lib/dpkg/status 1.2.5.1-2 501 501 http://us.archive.ubuntu.com/ubuntu jammy/main amd64 Packages 501 http://us.archive.ubuntu.com/ubuntu jammy/main i386 Packages
Parece que ambos sid
e jammy
têm exatamente a mesma versão e, por algum motivo, apt
combinam o pacote com a 200
prioridade, em vez da 501
entrada de prioridade.
Com /etc/apt/sources.list.d/debian.sid.list
removido, a saída fica assim:
alsa-topology-conf: Installed: 1.2.5.1-2 Candidate: 1.2.5.1-2 Version table: *** 1.2.5.1-2 501 501 http://us.archive.ubuntu.com/ubuntu jammy/main amd64 Packages 501 http://us.archive.ubuntu.com/ubuntu jammy/main i386 Packages 100 /var/lib/dpkg/status
Perguntas relacionadas
A seguir estão perguntas relacionadas com situações semelhantes, mas nenhuma das respostas me ajudou a entender ou resolver isso.
- apt fixando prioridade restrita
- Debian 10: Por que alguns pacotes SSL serão rebaixados?
- Como se livrar da mensagem apt "Pacotes foram rebaixados e -y foi usado sem --allow-downgrades"
Eu tentei todas as respostas nas perguntas acima, mas nenhuma parece ser relevante ou funcionar.
Minha pergunta
Alguém tem alguma sugestão de como conciliar isso para que o sistema não pense constantemente que esses pacotes precisam ser DOWNGRADED?