Atualização do Fedora 30 para 31: Não é possível ativar vários fluxos para o módulo ‘ant’

Atualização do Fedora 30 para 31: Não é possível ativar vários fluxos para o módulo ‘ant’

Estou tentando atualizar do Fedora 30 para 31 e executei estas duas etapas com sucesso:

dnf upgrade --refresh
dnf install dnf-plugin-system-upgrade

No entanto, quando faço o seguinte:

dnf system-upgrade download --releasever=31

... Eu entendi isso:

Before you continue ensure that your system is fully upgraded by running "dnf --refresh upgrade". Do you want to continue [y/N]: y
Adobe Systems Incorporated                      35 kB/s | 2.9 kB     00:00    
Fedora Modular 31 - x86_64                      23 kB/s |  25 kB     00:01    
Fedora Modular 31 - x86_64 - Updates            19 kB/s |  16 kB     00:00    
Fedora 31 - x86_64 - Updates                    17 kB/s |  18 kB     00:01    
Fedora 31 - x86_64                              37 kB/s |  25 kB     00:00    
google-chrome                                   18 kB/s | 1.3 kB     00:00    
MariaDB                                        9.7 kB/s | 2.9 kB     00:00    
packages-microsoft-com-prod                     16 kB/s | 3.0 kB     00:00    
PostgreSQL common RPMs for Fedora 31 - x86_64   11 kB/s | 3.0 kB     00:00    
PostgreSQL 12 for Fedora 31 - x86_64           3.3 kB/s | 3.8 kB     00:01    
RPM Fusion for Fedora 31 - Free - Updates       29 kB/s | 9.1 kB     00:00    
RPM Fusion for Fedora 31 - Free                 26 kB/s | 9.9 kB     00:00    
RPM Fusion for Fedora 31 - Nonfree - Updates    11 kB/s | 9.4 kB     00:00    
RPM Fusion for Fedora 31 - Nonfree              21 kB/s |  10 kB     00:00    
skype (stable)                                 6.6 kB/s | 2.9 kB     00:00    
teams                                          4.9 kB/s | 3.0 kB     00:00    
Fedora 31 - x86_64 - VirtualBox                247  B/s | 181  B     00:00    
Visual Studio Code                              19 kB/s | 3.0 kB     00:00    
Yarn Repository                                 25 kB/s | 2.9 kB     00:00    
terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'ant'
Aborted (core dumped)

Existe alguma maneira de superar esse problema? Toda e qualquer ideia é bem-vinda. Não me importo se tiver que desabilitar/remover alguns dos meus repositórios de pacotes extras, se for necessário ...

Responder1

Guia para manequins para desabilitar repositórios modulares

Eu não tinha certeza exatamente do que issocomentário de dbdemonsignificou:

Parece que tive que desabilitar os repositórios "Fedora Modular".

Então, um pouco de pesquisa traz este artigo sobreComo usar o repositório modular Fedora / RHEL 8.

Você pode listar os repositórios modulares que instalou:

dnf module list --enabled

Eu obtive esta saída:

Docker CE Stable - x86_64                        12 kB/s | 9.8 kB     00:00    
...
Fedora Modular 30 - x86_64
Name    Stream         Profiles    Summary                                      
gimp    2.10 [d][e]    default [d] GIMP                                         
                       , devel     
ripgrep latest [d][e]  default [d] Line oriented search tool using Rust's regex 
                                   library

Fedora Modular 30 - x86_64 - Updates
Name    Stream         Profiles    Summary                                      
fd-find rolling [d][e] default [d] Simple, fast and user-friendly alternative to
                                    find
gimp    2.10 [d][e]    default [d] GIMP                                         
                       , devel     
ripgrep latest [d][e]  default [d] Line oriented search tool using Rust's regex 
                                   library

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Nota: Os bits no final informam quais módulos você instalou. No entanto, tenho certeza de que nãointencionalmenteinstalar esses repositórios modulares, acontece que alguns desenvolvedores os habilitaram. Acabei de executar sudo dnf install ripgrepe instalei o repositório modular.

Então, desta lista eu tenho, fd-finde ripgrepinstalei gimpcomo módulos.

Posso então desativá-los, por exemplo, para ripgrep:

sudo dnf module disable ripgrep

Você só precisa fazer o mesmo para todos os módulos listados.

Depois de desabilitar meus 3 módulos, pude executar a atualização do Fedora sem problemas:

sudo dnf system-upgrade download --releasever=31

Responder2

De acordo comhttps://bugzilla.redhat.com/show_bug.cgi?id=1811234, desabilitar os módulos problemáticos funciona, mas lembre-se de reativá-los após a atualização. Uma solução possivelmente mais simples mencionada é:

sudo dnf module reset '*'

Então durante a instalação ele dirá algo como:

Enabling module streams:
 gimp                                          2.10                                                     
 maven                                         3.5                                                      
 meson                                         latest                                                   
 ninja                                         latest                                                   
 ripgrep                                       latest                                                   

Não entendo completamente como funciona, mas dehttps://docs.fedoraproject.org/en-US/modularity/using-modules-switching-streams/parece que um módulo pode ter no máximo 1 "stream" selecionado e resetlimpa essa seleção permitindo que outro stream seja escolhido?

Responder3

Se você tiver um problema com algum módulo como 'ant' ou 'maven', e a remoção do módulo não funcionar, tente redefinir o módulo com o comando:

"redefinição do módulo dnf", exemplo: redefinição do módulo dnf maven

Funcionou para mim com o módulo "maven", mesmo erro: término chamado após lançar uma instância de 'libdnf::ModulePackageContainer::EnableMultipleStreamsException' what(): Cannot enable multiple streams for module 'maven'

Responder4

Você precisa executar as seguintes etapas:

1)Como @icc97 disse, execute dnf module list --enabledo comando e obtenha algo como:

Fedora Modular 30 - x86_64 - Updates
Name                           Stream                               Profiles                                    Summary                                                                          
ant                            1.10 [d][e]                          default [d]                                 Java build tool                                                                  
fish                           3 [d][e]                             default [d]                                 Friendly interactive shell                                                       
gimp                           2.10 [d][e]                          default [d], devel                          GIMP                                                                             
maven                          3.5 [d][e]                           default [d]                                 Java project management and project comprehension tool 
  1. Em seguida, execute sudo dnf module reset gimp ant fish maven(após reseta parte você está inserindo apenas os listados nos resultados acima).

  2. Execute dnf system-upgrade download --releasever=31o comando e aguarde a listagem dos pacotes a serem exibidos para instalação e escolha 'y(es)' e então... prossiga normalmente com a instalação. :)

Espero que ajude.

informação relacionada