Os arquivos ppd (CUPS) do Mac OS X podem ser usados para o linux?

5

Eu estou olhando para comprar uma impressora (na verdade, um all-in-one eu prefiro para os recursos que ele oferece, mas eu quero focar a parte da impressora aqui) que não fornece drivers Linux, mas fornece o Mac OS X drivers. Eu sei que ambos os sistemas operacionais (podem) usam o CUPS para impressão. Isso significa que eu poderia copiar o arquivo ppd (driver) do pacote do driver do Mac OS X e usá-lo (modificado) no linux?

Ao examinar o arquivo, há linhas específicas de diálogo de impressão do Mac OS X, como

*APPrinterIconPath: "/Library/Printers/<path to icons file>.icns"

*APDialogExtension: "/Library/Printers/<path to Mac OS X plugin file>.plugin"

*APAutoSetupTool: "/Library/Printers/<path to autoconfig utility>"

que eu acho que posso remover com segurança. Existem também linhas com caminhos específicos do OS X, como

*cupsFilter:        "application/vnd.cups-raster 0 /Library/Printers/<path to filter file>"

*OKDitherLibrary: "/Library/Printers/<path to dither library>.dylib"

que eu não sei o que fazer. Assim como na última linha, há um bom número de outras linhas com palavras-chave começando com 'OK', que eu acho que são específicas do fornecedor, como

*OKPaperCheckManualFeed_CheckOFF: True

*OKSupportCUPaperSizeCheck: True
*OKSupportCustomManualFeed_CheckOFF: True

*OKSupportPCLMediaTypeUSERTYPE: Yes

*OKSupportMarginCentering: True

que eu também não sei o que fazer com isso.

(Como um substituto, dado que a impressora suporta PCL6, eu poderia usar o driver genérico para isso, mas depois perder a funcionalidade possivelmente interessante.)

    
por equaeghe 30.12.2012 / 13:18

3 respostas

2

Os arquivos PPD são independentes de plataforma. No entanto, eles podem fazer referência a executáveis externos e são dependentes da plataforma. Em particular, cupsFilter especifica um programa que converte a entrada de um formato que o CUPS entende (aqui, application/vnd.cups-raster , ou seja, um formato de bitmap) em um formato que a impressora entenda. Você precisará encontrar uma versão Linux do programa de filtro para usar esse arquivo PPD no Linux.

Para ver o estado do suporte do Linux para uma impressora, procure-a no banco de dados do OpenPrinting .

Como a impressora aceita o PCL6, você pode usar esse arquivo PPD e substituir o filtro por um filtro genérico raster-PCL.

    
por 01.01.2013 / 02:35
4

Eu estava na mesma situação. Eu tenho uma Fuji Xerox Docuprint CM305df e, infelizmente, a Fuji Xerox não fornece drivers Linux (por quê!?!?). Mas eles fornecem um driver PPD para Mac OSX!

Um caso simples de usar isso, certo? Bem, arquivos PostScript Printer Description (PPD) são independentes de plataforma, mas como você (e eu) descobrimos, ele pode conter entradas específicas do sistema operacional (por exemplo, Mac OSX) que tornam o PPD inutilizável em outro sistema operacional (por exemplo, Linux), a menos que você faz algumas alterações primeiro.

Consegui fazer com que minha impressora funcionasse no Linux Mint 13 (CUPS 1.5.3) editando o arquivo PPD do Mac OSX e removendo entradas específicas do Mac OSX e substituindo o Linux cupsFilter no lugar do MacOSX (como mencionado por Gilles, veja o Passo 3 abaixo - espero que também funcione para você).

Como você observou, as linhas *OK... são provavelmente entradas específicas do fornecedor para sua impressora OKI. Deixá-los como estão, porque ele pode fornecer configurações / opções para gerenciar a impressora como eu vi alguns *FX... linhas quando eu estava editando meu arquivo PPD. Acabei tendo 11 páginas de opções ao usar o driver Fuji Xerox ao invés de apenas 4 páginas ao usar o driver "Generic PCL Laser Printer (en)".


Apenas no caso de alguém mais querer fazer o mesmo, aqui está o que eu fiz.

1) Faça o download do "Mac PPD e Plug-in Installer" do site da Fuji Xerox e extraia o arquivo PPD (instalei-o em um Mac executando 10.6 e encontrei o arquivo PPD dentro de / Library / Printers / PPDs / Contents / Recursos / FX DocuPrint CM305 PS.gz).


2) Exclua as seguintes linhas:

*APPrinterIconPath: "/Library/Printers/FujiXerox/Icons/FX DocuPrint CM305.icns" *APDialogExtension: "/Library/Printers/FujiXerox/PDEs/FXOPSCJHAccount.plugin" *APDialogExtension: "/Library/Printers/FujiXerox/PDEs/FXOPSCJHImageOptions.plugin"


3) Substitua a seguinte linha:

[OLD] *cupsFilter: "application/vnd.cups-postscript 0 /Library/Printers/FujiXerox/Filter/FXOPSCJHFilter"

com esta linha:

[NEW] *cupsFilter: "application/vnd.cups-postscript 0 pstops"

documentação do cupsFilter

    
por 15.07.2013 / 14:41
1
*OKDitherLibrary: "/Library/Printers/<path to dither library>.dylib"

Esta linha aponta para uma biblioteca do OS X. A menos que você possa encontrar um substituto para esse arquivo, provavelmente não será possível usá-lo em outros sistemas operacionais.

    
por 31.12.2012 / 03:31