A resposta geral para perguntas sobre codecs de vídeo ausentes é instalar o ubuntu-strict-extras . Mas esse metapacote também inclui o instalador ttf-mscorefonts, que requer a aceitação de um EULA para ser concluído. Nem todo mundo quer assinar o EULA, mas não há maneira óbvia de rejeitar o EULA. Veja Como rejeitar um EULA ao instalar pacotes com o apt?
Acabei indo e voltando algumas vezes antes de seguir em frente - acho que clicar em Avançar, Avançar sem nunca aceitar o funcionamento do EULA, mas o pacote está instalado agora, portanto a instalação deste pacote não foi cancelada.
Isso significa que eu aceitei o EULA? Existe algum lugar para ver se essa aceitação foi registrada ou armazenada ou não?
dpkg-query
mostra claramente o pacote como instalado:
amanda@mona:~$ dpkg-query -l ttf-mscorefonts-installer
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-=================================
ii ttf-mscorefont 3.4+nmu1ubun all Installer for Microsoft TrueType
ttf-mscorefonts-installer
está instalado? Você pode verificar novamente usando odpkg -s ttf-mscorefonts-installer
comando?ubuntu-restricted-extras
e foi com preguiça de me contentar com isso, em vez de descobrir qual pacote no meta pacote realmente continha o que eu precisava.Respostas:
Não, você não aceitou o EULA. E não, você não tem as fontes instaladas, mas sim, você instalou o pacote.
Eu entendo isso é confuso. Deixe-me explicar isso.
O valor real de aceitação / rejeição é gravado no banco de dados debconf. É independente da instalação do pacote. O script de pós-instalação do pacote é responsável pelas fontes a serem instaladas e o impede se você não aceitar o EULA.
Para verificar qual é o valor no banco de dados debconf, instale o debconf-utils e faça
Isto é
true
para a minha máquina, porque eu a aceitei. Para você, isso deve ser provavelmentefalse
.Mesmo se você instalou o pacote, mas não aceitou o EULA, as fontes não estão instaladas. Por quê? Porque o pacote não contém os arquivos de fonte. Ele baixa as fontes de um site externo devido a restrições de licença na distribuição. Para provar, consulte o conteúdo da embalagem:
e é por isso que é chamado de instalador . Esta é uma embalagem feia e totalmente fora do padrão. Os desenvolvedores são forçados a fazer isso, devido às restrições de licença mencionadas acima. Uma solução semelhante para isso foi desenvolvida para o Flash, empacotada como flashplugin-installer .
Após a instalação do pacote, o script postinstall, localizado em
/var/lib/dpkg/info/ttf-mscorefonts-installer.postinst
, fará o download e instalará as fontes somente se a licença for aceita (solicitada no script de pré-instalação). Ele usa o/usr/lib/msttcorefonts/update-ms-fonts
aplicativo (que faz parte do pacote) para executar o download e a instalação reais. Dê uma olhada nos scripts; eles não são ciência de foguetes.fonte
Com a instalação do ubuntu-restrição-extras, você também instalará o pacote ttf-mscorefonts-installer . Este pacote é responsável pela instalação de fontes MS restritas.
Sempre que discordarmos do EULA da Microsoft por não aceitá-lo, ele não instalará essas fontes. Podemos verificar isso facilmente, pesquisando todos os pacotes de fontes instalados:
Nenhuma fonte da Microsoft (por exemplo
Arial
) será listada depois que não concordamos com o EULA (e não instalamos manualmente uma fonte do MS por outros meios).Caso desejemos remover também o instalador da fonte, podemos fazê-lo com segurança com
Cuidado com os pacotes que dependem do mscorefonts e também podem ser removidos.
fonte
ttf-mscorefonts-installer
"este software". O instalador da fonte não instala "software", instala fontes. Um erro mais claro seria "você não pode instalar essas fontes".dpkg -l ttf-*
Nenhuma fonte da Microsoft será listada depois que não concordamos com o EULA (e não instalamos manualmente uma fonte da MS por outros meios)." Isso é falso, porque você vai ver o pacote listado no banco de dados dpkg como instalado. É exatamente isso que o OP está dizendo no corpo da pergunta! "Acho que clicar em Fwd, Fwd sem nunca aceitar o EULA funciona, mas o pacote está instalado agora" . No entanto, concordo com a sua declaração, como você vê na minha resposta.