A PPD (Printer Postcript Definition) is a peculiar file including all the characteristic of your printer to permit CUPS and system-config-printer programs to set up it up:
https://en.wikipedia.org/wiki/PostScrip ... escription
PREVIOUS PORTEUS POST ON PPD: SOURCES OF PPD OR WHERE TO GET THEM.
viewtopic.php?f=61&t=2079&p=14252#p14252
STEPS AND EXAMPLES TO GET THE SPECIFIC PPD OF A PRINTER
INSTALLING PPD.
Installing a ppd from print settings (system-config-printer):
viewtopic.php?f=81&t=4647
The .ppd should be installed into /etc/cups/ppd/. Then:
A. usb printer (easier) :
1) On the panel menu:
porteus menu > system > printing
will lead you to the system-config-printer gui.
2) in the menu select server > new
3) your printer should appear if it is usb connected, select it and follow the recommendations.
4) select provide ppd file
5) click on the rectangle with the word none in it and find your ppd file in the /usr/share/cups/model/epson folder.
B. network printer:
viewtopic.php?f=81&t=2411&p=16678#p16678
FINDING A PPD FOR YOUR PRINTER: DIFFERENT EXAMPLES.
1.0 ppds of openprinting (2014) for different brand names of printers:
https://openprinting.org/download/PPD/
1.1 Finding the linux cupswrapper driver for a sp
ecific printer on the brother site:
You can have a look on the brother printer site. For example, there a linux driver for the DCP-L2540-DW:
http://support.brother.com/g/b/download ... _as&os=128
For the HL-L2300D:
http://support.brother.com/g/b/download ... &type3=561
Use the following link to verify the linux drivers for other printers.
http://www.brother.ca/en/customer_care/?PGID=5
2.0 Extacting the ppd from cupswrapper package:
When a printer is not in the list proposed by the printer settings (system-config-printer utility) of porteus (panel menu > system > printer settings), you can fetch its ppd and install it. Then within that same application, choose the ppd method and point to the directory where the ppd for you printer is located. The ppd is available in the .deb cupswrapper file (see 1,0). CUPS should also offer the ppd option.
A specific example for DCP-L2540W:
- download cupswrapper .deb for the printer
- deb2xzm to convert to a porteus module
- extract the this module into a regular folder
- you find the /dcpl2540dwcupswrapper-3.2.0-1.i386/opt/brother/Printers/DCPL2540DW/cupswrapper/brother-DCPL2540DW-cups-en.ppd
For HL-L2305W and HL-L2300D you get:
- proceeding the same way as the DCP-L2540W ppd
- you find the /brgenml1cupswrapper-3.1.0-1.i386/opt/brother/Printers/BrGenML1/cupswrapper/brother-BrGenML1-cups-en.ppd
- you find the /hll2300dcupswrapper-3.2.0-1.i386/opt/brother/Printers/HLL2300D/cupswrapper/brother-HLL2300D-cups-en.ppd
An example of ppd:
Code: Select all
*PPD-Adobe: "4.3"
*%================================================
*%
*% Copyright Brother Industries,Ltd 2006-2014
*% "Brother HL-L2300D for CUPS"
*%
*%================================================
*%
*%BrCustomPaperSize: TRUE
*%BrPrinterType: DTM
*%
*%==== General Information Keywords ========================
*FormatVersion: "4.3"
*FileVersion: "1.00"
*LanguageEncoding: ISOLatin1
*LanguageVersion: English
*Manufacturer: "Brother"
*PCFileName: "HLL2300D.PPD"
*Product: "(Brother HL-L2300D series)"
*cupsVersion: 1.1
*cupsManualCopies: True
*cupsModelNumber: 72
*cupsFilter: "application/vnd.cups-postscript 0 brother_lpdwrapper_HLL2300D"
*cupsFilter: "application/vnd.cups-pdf 0 brother_lpdwrapper_HLL2300D"
*PSVersion: "(3010.106) 3"
*ModelName: "HL-L2300D"
*NickName: "Brother HL-L2300D for CUPS "
*ShortNickName: "Brother HL-L2300D"
*%==== Basic Device Capabilities =============
*LanguageLevel: "3"
*TTRasterizer: Type42
*ColorDevice: False
*DefaultColorSpace: Gray
*FileSystem: True
*?FileSystem:"
save
/devname (%disk0%) def
/ret false def
0 1 7{
devname exch 48 add 5 exch put
devname devstatus {
0 ne {/ret true def}if
pop pop pop pop pop pop pop
}if
}for
ret {(True)}{(False)} ifelse = flush
restore
"
*End
*Throughput: "18"
*FreeVM: "1700000"
*HWMargins: 12 12 12 12
*VariablePaperSize: True
*MaxMediaWidth: 612
*MaxMediaHeight: 1008
*NonUIOrderDependency: 105 AnySetup *CustomPageSize
*LandscapeOrientation: Plus90
*CustomPageSize True: " "
*ParamCustomPageSize Width/Width 3.0-8.5in(76.2-215.9mm): 1 points 216 612
*ParamCustomPageSize Height/Height 5.0-14.0in(127.0-355.6mm): 2 points 360 1008
*ParamCustomPageSize Orientation: 3 int 0 0
*ParamCustomPageSize WidthOffset: 4 points 0 0
*ParamCustomPageSize HeightOffset: 5 points 0 0
*UIConstraints: *InputSlot TRAY1 *PageSize Custom
*UIConstraints: *InputSlot TRAY1 *PageSize CUSTOM1
*UIConstraints: *InputSlot TRAY1 *PageSize CUSTOM2
*UIConstraints: *InputSlot TRAY1 *PageSize CUSTOM3
*UIConstraints: *Duplex DuplexTumble *PageSize Custom
*UIConstraints: *Duplex DuplexNoTumble *PageSize Custom
*UIConstraints: *Duplex DuplexTumble *PageSize CUSTOM1
*UIConstraints: *Duplex DuplexNoTumble *PageSize CUSTOM1
*UIConstraints: *Duplex DuplexTumble *PageSize CUSTOM2
*UIConstraints: *Duplex DuplexNoTumble *PageSize CUSTOM2
*UIConstraints: *Duplex DuplexTumble *PageSize CUSTOM3
*UIConstraints: *Duplex DuplexNoTumble *PageSize CUSTOM3
*%==== Media Selection ======================
*OpenUI *PageSize: PickOne
*OrderDependency: 30 AnySetup *PageSize
*DefaultPageSize: A4
*PageSize Letter/Letter: " "
*PageSize Legal/Legal: " "
*PageSize Executive/Executive: " "
*PageSize FanFoldGermanLegal/Folio: " "
*PageSize A4/A4: " "
*PageSize A5/A5: " "
*PageSize A6/A6: " "
*%PageSize 210x270mm/270mm Paper: " "
*PageSize Env10/Com-10: " "
*PageSize EnvMonarch/Monarch: " "
*PageSize EnvDL/DL: " "
*PageSize EnvC5/C5: " "
*PageSize ISOB5/B5(ISO): " "
*PageSize B5/B5(JIS): " "
*PageSize ISOB6/B6(ISO): " "
*PageSize B6/B6(JIS): " "
*PageSize 4x6/4x6: " "
*PageSize Postcard/Postcard: " "
*PageSize DoublePostcardRotated/Postcard(Double): " "
*PageSize EnvYou4/Y4 Envelop: " "
*PageSize 195x270mm/16K(195x270mm): " "
*PageSize 184x260mm/16K(184x260mm): " "
*PageSize 197x273mm/16K(197x273mm): " "
*PageSize CUSTOM1/[CUSTOM1]User Defined Paper Size: " "
*PageSize CUSTOM2/[CUSTOM2]User Defined Paper Size: " "
*PageSize CUSTOM3/[CUSTOM3]User Defined Paper Size: " "
*CloseUI: *PageSize
*OpenUI *PageRegion: PickOne
*OrderDependency: 40 AnySetup *PageRegion
*DefaultPageRegion: A4
*PageRegion Letter/Letter: " "
*PageRegion Legal/Legal: " "
*PageRegion Executive/Executive: " "
*PageRegion FanFoldGermanLegal/Folio: " "
*PageRegion A4/A4: " "
*PageRegion A5/A5: " "
*PageRegion A6/A6: " "
*%PageRegion 210x270mm/270mm Paper: " "
*PageRegion Env10/Com-10: " "
*PageRegion EnvMonarch/Monarch: " "
*PageRegion EnvDL/DL: " "
*PageRegion EnvC5/C5: " "
*PageRegion ISOB5/B5(ISO): " "
*PageRegion B5/B5(JIS): " "
*PageRegion ISOB6/B6(ISO): " "
*PageRegion B6/B6(JIS): " "
*PageRegion 4x6/4x6: " "
*PageRegion Postcard/Postcard: " "
*PageRegion DoublePostcardRotated/Postcard(Double): " "
*PageRegion EnvYou4/Y4 Envelop: " "
*PageRegion 195x270mm/16K(195x270mm): " "
*PageRegion 184x260mm/16K(184x260mm): " "
*PageRegion 197x273mm/16K(197x273mm): " "
*PageRegion CUSTOM1/[CUSTOM1]User Defined Paper Size: " "
*PageRegion CUSTOM2/[CUSTOM2]User Defined Paper Size: " "
*PageRegion CUSTOM3/[CUSTOM3]User Defined Paper Size: " "
*CloseUI: *PageRegion
*DefaultImageableArea: A4
*ImageableArea Letter/Letter: "12 12 600 780"
*ImageableArea Legal/Legal: "12 12 600 996"
*ImageableArea Executive/Executive: "12 12 510 744"
*ImageableArea FanFoldGermanLegal/Folio: "12 12 600 924"
*ImageableArea A4/A4: "12 12 583 830"
*ImageableArea A5/A5: "12 12 409 583"
*ImageableArea A6/A6: "12 12 285 408"
*%ImageableArea 210x270mm/270mm Paper: "12 12 583 753"
*ImageableArea Env10/Com-10: "12 12 285 672"
*ImageableArea EnvMonarch/Monarch: "12 12 267 528"
*ImageableArea EnvDL/DL: "12 12 300 612"
*ImageableArea EnvC5/C5: "12 12 447 637"
*ImageableArea ISOB5/B5(ISO): "12 12 487 697"
*ImageableArea B5/B5(JIS): "12 12 504 717"
*ImageableArea ISOB6/B6(ISO): "12 12 342 487"
*ImageableArea B6/B6(JIS): "12 12 351 504"
*ImageableArea 4x6/4x6: "12 12 277 419"
*ImageableArea Postcard/Postcard: "12 12 271 408"
*ImageableArea DoublePostcardRotated/Postcard(Double): "12 12 555 408"
*ImageableArea EnvYou4/Y4 Envelop: "12 12 286 654"
*ImageableArea 195x270mm/16K(195x270mm): "12 12 541 753"
*ImageableArea 184x260mm/16K(184x260mm): "12 12 510 725"
*ImageableArea 197x273mm/16K(197x273mm): "12 12 546 762"
*ImageableArea CUSTOM1/[CUSTOM1]User Defined Paper Size: "12 12 583 830"
*ImageableArea CUSTOM2/[CUSTOM2]User Defined Paper Size: "12 12 583 830"
*ImageableArea CUSTOM3/[CUSTOM3]User Defined Paper Size: "12 12 583 830"
*%==== Information About Media Sizes ========
*DefaultPaperDimension: A4
*PaperDimension Letter/Letter: "612 792"
*PaperDimension Legal/Legal: "612 1008"
*PaperDimension Executive/Executive: "522 756"
*PaperDimension FanFoldGermanLegal/Folio: "612 936"
*PaperDimension A4/A4: "595 842"
*PaperDimension A5/A5: "420 595"
*PaperDimension A6/A6: "297 420"
*%PaperDimension 210x270mm/270mm Paper: "595 765"
*PaperDimension Env10/Com-10: "297 684"
*PaperDimension EnvMonarch/Monarch: "279 540"
*PaperDimension EnvDL/DL: "312 624"
*PaperDimension EnvC5/C5: "459 649"
*PaperDimension ISOB5/B5(ISO): "499 709"
*PaperDimension B5/B5(JIS): "516 729"
*PaperDimension ISOB6/B6(ISO): "354 498"
*PaperDimension B6/B6(JIS): "363 516"
*PaperDimension 4x6/4x6: "289 431"
*PaperDimension Postcard/Postcard: "283 420"
*PaperDimension DoublePostcardRotated/Postcard(Double): "567 420"
*PaperDimension EnvYou4/Y4 Envelop: "298 666"
*PaperDimension 195x270mm/16K(195x270mm): "553 765"
*PaperDimension 184x260mm/16K(184x260mm): "522 737"
*PaperDimension 197x273mm/16K(197x273mm): "558 774"
*PaperDimension CUSTOM1/[CUSTOM1]User Defined Paper Size: "595 842"
*PaperDimension CUSTOM2/[CUSTOM2]User Defined Paper Size: "595 842"
*PaperDimension CUSTOM3/[CUSTOM3]User Defined Paper Size: "595 842"
*%==== 5.13 Media Handling Features ============================
*OpenUI *BrMediaType/MediaType: PickOne
*OrderDependency: 28 AnySetup *BrMediaType
*DefaultBrMediaType: PLAIN
*BrMediaType PLAIN/Plain Paper: " "
*BrMediaType THIN/Thin Paper: " "
*BrMediaType THICK/Thick Paper: " "
*BrMediaType THICKERPAPER2/Thicker Paper: " "
*BrMediaType BOND/Bond Paper: " "
*BrMediaType ENV/Envelopes: " "
*BrMediaType ENVTHICK/Env. Thick: " "
*BrMediaType ENVTHIN/Env. Thin: " "
*BrMediaType RECYCLED/Recycled Paper: " "
*CloseUI: *BrMediaType
*OpenUI *InputSlot/InputSlot: PickOne
*OrderDependency: 29 AnySetup *InputSlot
*DefaultInputSlot: TRAY1
*InputSlot MANUAL/Manual Feed: " "
*InputSlot TRAY1/Tray1: " "
*CloseUI: *InputSlot
*RequiresPageRegion All:True
*%=== Duplex ================================
*OpenUI *Duplex: PickOne
*OrderDependency: 25 AnySetup *Duplex
*DefaultDuplex: None
*Duplex DuplexTumble: " "
*Duplex DuplexNoTumble: " "
*Duplex None: " "
*CloseUI: *Duplex
*%=== Output Bin =============================
*% === Collate ==========
*%==== 5.14 Finishing Features =================================
*%%%%% Resolution and Appearance Control %%%%%
*OpenUI *Resolution: PickOne
*OrderDependency: 11 AnySetup *Resolution
*DefaultResolution: 600dpi
*Resolution 300dpi: " "
*Resolution 600dpi: " "
*Resolution 2400x600dpi/HQ1200: " "
*CloseUI: *Resolution
*OpenUI *TonerSaveMode/Toner Save: PickOne
*DefaultTonerSaveMode: OFF
*OrderDependency: 10 AnySetup *TonerSaveMode
*TonerSaveMode OFF/Off: "statusdict begin false tonersave end"
*TonerSaveMode ON/On: "statusdict begin true tonersave end"
*CloseUI: *TonerSaveMode
*OpenUI *Sleep/Sleep Time [Min.]: PickOne
*DefaultSleep: PrinterDefault
*OrderDependency: 10 AnySetup *Sleep
*Sleep PrinterDefault/Printer Default: " "
*Sleep 2minutes/2: "statusdict begin 2 powersavetime end"
*Sleep 10minutes/10: "statusdict begin 10 powersavetime end"
*Sleep 30minutes/30: "statusdict begin 30 powersavetime end"
*CloseUI: *Sleep
*%==== 5.20 Font Related Keywords ==============================
*DefaultFont: Courier
*Font AvantGarde-Book: Standard "(001.006S)" Standard ROM
*Font AvantGarde-BookOblique: Standard "(001.006S)" Standard ROM
*Font AvantGarde-Demi: Standard "(001.007S)" Standard ROM
*Font AvantGarde-DemiOblique: Standard "(001.007S)" Standard ROM
*Font Bookman-Demi: Standard "(001.004S)" Standard ROM
*Font Bookman-DemiItalic: Standard "(001.004S)" Standard ROM
*Font Bookman-Light: Standard "(001.004S)" Standard ROM
*Font Bookman-LightItalic: Standard "(001.004S)" Standard ROM
*Font Courier: Standard "(002.004S)" Standard ROM
*Font Courier-Bold: Standard "(002.004S)" Standard ROM
*Font Courier-BoldOblique: Standard "(002.004S)" Standard ROM
*Font Courier-Oblique: Standard "(002.004S)" Standard ROM
*Font Helvetica: Standard "(001.006S)" Standard ROM
*Font Helvetica-Bold: Standard "(001.007S)" Standard ROM
*Font Helvetica-BoldOblique: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow: Standard "(001.006S)" Standard ROM
*Font Helvetica-Narrow-Bold: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow-BoldOblique: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow-Oblique: Standard "(001.006S)" Standard ROM
*Font Helvetica-Oblique: Standard "(001.006S)" Standard ROM
*Font NewCenturySchlbk-Bold: Standard "(001.009S)" Standard ROM
*Font NewCenturySchlbk-BoldItalic: Standard "(001.007S)" Standard ROM
*Font NewCenturySchlbk-Italic: Standard "(001.006S)" Standard ROM
*Font NewCenturySchlbk-Roman: Standard "(001.007S)" Standard ROM
*Font Palatino-Bold: Standard "(001.005S)" Standard ROM
*Font Palatino-BoldItalic: Standard "(001.005S)" Standard ROM
*Font Palatino-Italic: Standard "(001.005S)" Standard ROM
*Font Palatino-Roman: Standard "(001.005S)" Standard ROM
*Font Times-Bold: Standard "(001.007S)" Standard ROM
*Font Times-BoldItalic: Standard "(001.009S)" Standard ROM
*Font Times-Italic: Standard "(001.007S)" Standard ROM
*Font Times-Roman: Standard "(001.007S)" Standard ROM
*Font ZapfChancery-MediumItalic: Standard "(001.007S)" Standard ROM
*Font ZapfDingbats: Special "(001.004S)" Special ROM
*Font Symbol: Special "(001.007S)" Special ROM
*Font Alaska: Standard "(001.005)" Standard ROM
*Font AlaskaExtrabold: Standard "(001.005)" Standard ROM
*Font AntiqueOakland: Standard "(001.005)" Standard ROM
*Font AntiqueOakland-Bold: Standard "(001.005)" Standard ROM
*Font AntiqueOakland-Oblique: Standard "(001.005)" Standard ROM
*Font ClevelandCondensed: Standard "(001.005)" Standard ROM
*Font Connecticut: Standard "(001.005)" Standard ROM
*Font Guatemala-Antique: Standard "(001.005)" Standard ROM
*Font Guatemala-Bold: Standard "(001.005)" Standard ROM
*Font Guatemala-Italic: Standard "(001.005)" Standard ROM
*Font Guatemala-BoldItalic: Standard "(001.005)" Standard ROM
*Font LetterGothic: Standard "(001.005)" Standard ROM
*Font LetterGothic-Bold: Standard "(001.005)" Standard ROM
*Font LetterGothic-Oblique: Standard "(001.005)" Standard ROM
*Font Maryland: Standard "(001.005)" Standard ROM
*Font Oklahoma: Standard "(001.005)" Standard ROM
*Font Oklahoma-Bold: Standard "(001.005)" Standard ROM
*Font Oklahoma-Oblique: Standard "(001.005)" Standard ROM
*Font Oklahoma-BoldOblique: Standard "(001.005)" Standard ROM
*Font Utah: Standard "(001.005)" Standard ROM
*Font Utah-Bold: Standard "(001.005)" Standard ROM
*Font Utah-Oblique: Standard "(001.005)" Standard ROM
*Font Utah-BoldOblique: Standard "(001.005)" Standard ROM
*Font UtahCondensed: Standard "(001.005)" Standard ROM
*Font UtahCondensed-Bold: Standard "(001.005)" Standard ROM
*Font UtahCondensed-Oblique: Standard "(001.004)" Standard ROM
*Font UtahCondensed-BoldOblique: Standard "(001.005)" Standard ROM
*Font BermudaScript: Standard "(001.005)" Standard ROM
*Font Germany: Standard "(001.005)" Standard ROM
*Font SanDiego: Standard "(001.005)" Standard ROM
*Font US-Roman: Standard "(001.005)" Standard ROM
*?FontQuery: "
save
count 1 gt
{exch dup dup
=string cvs (/) print print (:) print
FontDirectory exch known
{pop(Yes)}
{(fonts/)AppendName exch pop mark exch
{}=string filenameforall counttomark
0 gt
{cleartomark(Yes)}
{cleartomark(No)}ifelse
}ifelse
=
}if
(*) = flush
restore
"
*End
*?FontList: "
save
FontDirectory{pop ==}forall
(fonts/*)
{dup length 6 sub 6 exch getinterval cvn ==
}=string filenameforall
(*) = flush
restore
"
*End
Using a generic driver (you have to experiment with the printer in hand):
In addition, I have found that for my brother printers (we have had or are owning 4 different models, my wife, me and at work) the generic pcl laser driver works flawlessly.
Note (to be revised):
As brother printers were covered by the printing.xzm module constructed by ahau, the installation procedure of individual printer driver became obsolete for porteus. However, it happens that some individual printers are missing. Finding and installing the ppd for a specific printer is the solution.
The method for installing the driver for one or another of these printers without the printing module but with a functional CUPS installation is explained here for .deb or rpm:
http://support.brother.com/g/s/id/linux ... edirect=on
-gutenprint-ghostprint solution:
http://forum.porteus.org/viewtopic.php?f=39&t=822
-individual driver install lpr:
http://forum.porteus.org/viewtopic.php? ... 6491#p6491
The porteus installation for this procedure involving deb2xzm is here (a little old):