Conflito de versão do pacote ao construir o pacote ubuntu do network-manager-applet a partir da fonte

Conflito de versão do pacote ao construir o pacote ubuntu do network-manager-applet a partir da fonte

Estou usando o xubuntu 18.04, que possui uma interface de usuário XFCE que usa vários widgets GNOME, principalmente o gerenciador de rede. O gerenciador de rede tem algumas limitações, como a falta de uma maneira de priorizar redes arrastando e soltando. Estou ciente das maneiras da CLI de fazer isso, mas gostaria de contribuir com esse recurso para a GUI, por isso estou tentando compilar network-manager-appleta partir do código-fonte em preparação para contribuir com código para ele.

Meus pacotes de sistema foram atualizados com apt-get updatee apt-get upgrade.

Se eu digitar:

apt-get source network-manager-applet --compile

Eu recebo:

dpkg-checkbuilddeps: error: Unmet build dependencies: dh-translations gnome-common libnm-util-dev (>= 1.8) libnm-glib-dev (>= 1.8) libnm-glib-vpn-dev (>= 1.8) network-manager-dev (>= 1.8) libnm-dev (>= 1.8) libmm-glib-dev libjansson-dev (>= 2.7) libselinux-dev libappindicator3-dev libdbusmenu-gtk3-dev (>= 16.04) libgcr-3-dev (>= 3.14) libgck-1-dev (>= 3.14) libgirepository1.0-dev gobject-introspection gtk-doc-tools libgtk-3-doc libglib2.0-doc
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
E: Build command 'cd network-manager-applet-1.8.10 && dpkg-buildpackage -b -uc' failed.

OK, é justo, então procurei como buscar as dependências:

sudo apt-get build-dep network-manager-applet
Reading package lists... Done
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 builddeps:network-manager-applet : Depends: libnm-dev (>= 1.8) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

OK, então vamos tentar instalar libnm-dev:

boutell@roxnsox:~/xubuntu$ sudo apt-get install libnm-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libnm-dev : Depends: libnm0 (= 1.10.6-2ubuntu1.1) but 1.10.14-0ubuntu2 is to be installed
E: Unable to correct problems, you have held broken packages.

Observe que não tenho pacotes retidos:

boutell@roxnsox:~/xubuntu$ dpkg --get-selections | grep hold
boutell@roxnsox:~/xubuntu$ 

Como faço para resolver o conflito libnm0para seguir em frente?

(Estou ciente de que eventualmente terei que parar --compilee entrar na pasta de origem e me construir para trabalhar no código, mas acabo no mesmo lugar nesse cenário. A série de etapas acima deve ser boa para fins de resolver esse problema.)

Obrigado pela ajuda!

Responder1

Está linha:

libnm-dev : Depends: libnm0 (= 1.10.6-2ubuntu1.1) but 1.10.14-0ubuntu2 is to be installed

Sugere que você tenha uma versão mais recente do libnm0 que seja compatível com o libnm-dev disponível; está um pouco mal formulado, eu acho.

sudo apt purge libnm0 && sudo apt install libnm-dev

Irá remover sua versão libnm0 e fazer sua instalação especificando libnm-dev, que irá extrair as dependências necessárias.

Poste de volta se ainda estiver recebendo erros de dependência.

FWIWaptitudeprocurará soluções alternativas para problemas de dependência. Então, no seu caso, no modo interativo ( sudo aptitude) quando você especifica "instalar libnm-dev" (clicando +na entrada apropriada; a pesquisa é /então digite sua palavra-chave) ele dirá algo quebrado e oferecerá para você pressionar ee então você pode usar ,/ .para trabalhar em uma lista de soluções.

Você podeuse aptitudecomo aptem um terminal também: sudo aptitude install libnm-dev

e novamente, deve oferecer várias soluções para resolver o problema da dependência.

Outra alternativa éespecifique diretamente a versão do libnm0que libnm-dev deseja:

sudo apt install libnm0=1.10.6-2ubuntu1.1

mas isso só funciona se essa versão estiver em seus repositórios (especificado em /etc/apt/sources.list &c.).

informação relacionada