instrua o instalador do pacote apt para acessar uma versão diferente do python

instrua o instalador do pacote apt para acessar uma versão diferente do python

Estou usando uma instalação bastante antiga do Linux, o sistema python não inclui o Python 3.7. No entanto, instalei o Python 3.7, como pode ser visto na seguinte saída do terminal, mas gostaria de instruir o instalador do pacote a acessá-lo quando tentar executar uma instalação:

cardamom@jupiter ~ $ python --version
Python 2.7.12
cardamom@jupiter ~ $ python3.7 --version
Python 3.7.7
cardamom@jupiter ~ $ sudo apt install -y dangerzone
[sudo] Passwort für cardamom: 
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Einige Pakete konnten nicht installiert werden. Das kann bedeuten, dass
Sie eine unmögliche Situation angefordert haben oder, wenn Sie die
Unstable-Distribution verwenden, dass einige erforderliche Pakete noch
nicht erstellt wurden oder Incoming noch nicht verlassen haben.
Die folgenden Informationen helfen Ihnen vielleicht, die Situation zu lösen:

Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 dangerzone : Hängt ab von: python3:any (>= 3.7~)
E: Probleme können nicht korrigiert werden, Sie haben zurückgehaltene defekte Pakete.
cardamom@jupiter ~ $ 

É possível fazer isso?

Responder1

Como você não informou qual distribuição Linux baseada em apt está usando, presumo que seja o Debian. Isto deve se aplicar a distribuições derivadas, desde que o pacote equivsabaixo exista.

Você realmente deveria atualizar seu sistema para uma versão recente/suportada, porque você começará a ter cada vez mais problemas de dependência.

De qualquer forma, para satisfazer seu problema de dependência, você pode tentar usar o pacoteequivs:

[...]

Outro uso é contornar a verificação de dependências: deixando o dpkg pensar que um determinado nome e versão de pacote está instalado quando não está, você pode contornar bugs nas dependências de outros pacotes. (Por favor, ainda registre esses bugs.)

Você deveria criar um arquivo de controle com equivs-control:

equivs-control python3

edite o arquivo criado python3, para o seu caso você pode adicionar ou alterar as linhas relevantes para:

Package: python3
Version: 3.7.7
Architecture: all

(e qualquer outro campo que você considere útil, como Description)

Em seguida, execute equivs-build python3para criar um pacote vazio (neste caso) chamado, python3_3.7.7_all.debque você pode instalar usando dpkg -i python3_3.7.7_all.deb.

Isso satisfará as dependências, mas não oferece garantia de que você terá um resultado funcional: depende do que você realmente fornece com sua própria instalação do python. O mínimo que você pode fazer é garantir, se ainda não estiver presente, que também exista um link simbólico chamado python3. Pode ter que estar presente em /usr/bin/e não apenas em /usr/local/bin/.

informação relacionada