Desde o Mac OS 10.2, a impressão é gerenciada pelo sistema CUPS . Embora os drivers normalmente sejam encontrados /Library/Printers
, a pasta pode conter arquivos de suporte e muitas outras coisas que não são drivers de impressão, e no mundo real não há um local canônico na pasta em que os arquivos reais do driver estão armazenados.
A única lista autorizada de drivers de impressão disponíveis no OS X é a retornada por lpinfo -m
(especificar que o host não é necessário para a máquina local). O CUPS especifica que os drivers podem consistir em um número arbitrário de arquivos, mas todos devem ser declarados em um arquivo PPD central. lpinfo -m
analisará quaisquer PPDs válidos encontrados; se não tiver um PPD que o CUPS possa analisar, não será um driver de impressão válido. Uma amostra da saída:
MacBook-Pro:~ user$ lpinfo -m
Library/Printers/PPDs/Contents/Resources/CNPZUD450ZU.ppd.gz Canon D400-450
Library/Printers/PPDs/Contents/Resources/CNPZUD490ZU.ppd.gz Canon D460-490
Library/Printers/PPDs/Contents/Resources/CN6300.ppd.gz Canon iPF6300(CUPS)
Library/Printers/PPDs/Contents/Resources/CN6300S.ppd.gz Canon iPF6300S(CUPS)
Library/Printers/PPDs/Contents/Resources/CN6350.ppd.gz Canon iPF6350(CUPS)
Library/Printers/PPDs/Contents/Resources/CN8300.ppd.gz Canon iPF8300(CUPS)
Library/Printers/PPDs/Contents/Resources/CN8300S.ppd.gz Canon iPF8300S(CUPS)
[...]
drv:///sample.drv/okidata9.ppd Oki 9-Pin Series
drv:///sample.drv/okidat24.ppd Oki 24-Pin Series
raw Raw Queue
[...]
Cada linha especifica o caminho para o arquivo PPD do driver, seguido pelo nome de exibição da impressora, conforme declarado no PPD. Como você pode ver, alguns drivers são internos ao CUPS e nem têm um arquivo PPD /Library/Printers
, portanto, lpinfo -m
é a única maneira de ter certeza de tudo disponível para o sistema de impressão.
Não parece haver muita consistência em relação aos números de versão; Vi alguns fornecedores incluirem a versão na sequência de fabricação e modelo retornada pela lpinfo -m
(Xerox, por exemplo), mas certamente não é universal. No entanto, o arquivo PPD é apenas texto sem formatação (opcionalmente compactado). Se você abrir o PPD em um editor de texto, deverá encontrar uma *FileVersion
linha que liste a versão do driver.
A exclusão de uma impressora usando o botão 'menos' em Preferências do Sistema não exclui / desinstala o driver, apenas exclui a fila que foi criada para a impressora em questão. (Tecnicamente, quando você cria uma fila de impressoras, uma cópia do PPD é criada para essa impressora, que será excluída ao excluir a fila.) A opção 'Redefinir sistema de impressão ...' também não removerá nenhum driver; excluirá apenas todas as filas de impressão configuradas e redefinirá as configurações de alguns CUPs para os padrões.
A exclusão de um arquivo PPD listado por lpinfo
excluirá efetivamente o driver, pois ele não será mais carregado pelo sistema CUPS, embora, como explicado acima, possa haver arquivos de suporte adicionais deixados para trás. Não há uma maneira padrão de removê-los porque cada driver pode incluir arquivos de suporte em locais diferentes, mas não há motivo para excluí-los, a menos que você pretenda reinstalar o driver. Nesse caso, o pacote do instalador original do fabricante deve lidar com a reinstalação de todos os arquivos relevantes.
Às vezes, tenho visto pessoas copiando manualmente arquivos PPD como meio de instalar impressoras; não confie nisso ! Alguns drivers exigem apenas um PPD, mas outros também podem precisar de arquivos de suporte. A única maneira de garantir que todos os arquivos necessários estejam instalados é usar o pacote do instalador original.