Observação : este é um conselho geral para qualquer aplicativo que precise de uma biblioteca excêntrica anterior, substituída ou de outra forma. A biblioteca libnss3 e o aplicativo upwork são exemplos perfeitamente bons.
1. Corrija seu sistema
OK, primeira coisa, desfaça o que você fez. Se você usou algum apt-pin, remova-o (para libnss3) e faça:
apt-get install libnss3
aptitude update; aptitude safe-upgrade
Em seguida, verifique se você tem a última versão atualizada instalada:
apt-cache policy libnss3
ou
dpkg-query -l libnss3
Certo, o seu sistema está funcionando corretamente novamente.
2. Trabalhe com upwork
Em seguida, faça o aplicativo upwork funcionar. Primeiro, baixe separadamente uma versão anterior do libnss3 e coloque essa versão anterior desclassificada em outro diretório. Eu estou no debian, então peguei o pacote estável do link . O lugar para tais bibliotecas é em / usr / local / lib / someDir /. Uma vez que o arquivo thelibnss3_3.17.2-1.1 + deb8u2_i386.deb (digamos) estiver neste diretório ou em um diretório temporário, extraia seu conteúdo a partir dele:
dpkg-deb -x libnss3_3.17.2-1.1+deb8u2_i386.deb
e mova as bibliotecas libnss3 para o seu / usr / local / lib / someDir /
mv <extractDir>/usr/lib/i386-linux-gnu/nss/* /usr/local/lib/someDir/
que pode ser
mv /usr/local/lib/someDir/usr/lib/i386-linux-gnu/nss/* /usr/local/lib/someDir/
Agora você tem as bibliotecas desatualizadas em um diretório separado. Agora você só precisa fazer o aplicativo upwork usar essas bibliotecas.
export LD_LIBRARY_NAME=/usr/local/lib/someDir:$LD_LIBRARY_NAME
upwork
A melhor solução é criar um script curto chamado / usr / local / bin / upwork (sim, exatamente o mesmo nome), então garantir (sim, garantir) que / usr / local / bin / está em você $ PATH antes / usr / bin. Este pequeno script incluirá
export LD_LIBRARY_PATH=/usr/local/lib/someDir:$LD_LIBRARY_PATH
/usr/bin/upwork 2 >& 1 &
torne o script executável
chmod 755 /usr/local/bin/upwork
Seu aplicativo upwork agora usará essas bibliotecas libnss3 com downgrade.