Add printer config

This commit is contained in:
Johannes Rothe 2024-08-11 22:48:30 +02:00
parent 0278a850a2
commit 8ce610affd
3 changed files with 829 additions and 3 deletions

View File

@ -5,7 +5,9 @@
{ config, pkgs, lib, ... }:
{
imports = [];
imports = [
nixos/desktop/printing
];
# Bootloader.
boot.loader.grub.enable = true;
@ -197,8 +199,7 @@
services.tailscale.enable = true;
services.gvfs.enable = true;
services.xserver.displayManager.gdm.enable = true;
# Enable CUPS to print documents.
services.printing.enable = true;
services.blueman.enable = true;
services.syncthing = {
enable = true;

804
files/kyocera_fs-1300d.ppd Normal file
View File

@ -0,0 +1,804 @@
*PPD-Adobe: "4.3"
*%=============================================================================
*%
*% PPD file for Kyocera FS-1300D (German)
*% Linux Version
*%
*% Copyright (C) 2000 KYOCERA CORPORATION.
*% Copyright (C) 2007 Revised Edition KYOCERA MITA CORPORATION.
*%
*% Permission is granted for redistribution of this file as long as this
*% copyright notice is intact and the contents of the file are not altered
*% in any way from their original form.
*%
*% Permission is hereby granted, free of charge, to any person obtaining
*% a copy of this software and associated documentation files (the
*% "Software"), to deal in the Software without restriction, including
*% without limitation the rights to use, copy, modify, merge, publish,
*% distribute, sublicense, and/or sell copies of the Software, and to
*% permit persons to whom the Software is furnished to do so, subject to
*% the following conditions:
*%
*% The above copyright notice and this permission notice shall be
*% included in all copies or substantial portions of the Software.
*%
*% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
*% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
*% MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
*% NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
*% LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
*% OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
*% WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*%
*% [this is the MIT open source license -- see www.opensource.org]
*%
*%=============================================================================
*%=============================================================================
*FileVersion: "8.4"
*FormatVersion: "4.3"
*LanguageEncoding: ISOLatin1
*LanguageVersion: German
*Product: "(FS-1300D)"
*PSVersion: "(3011.103) 1"
*Manufacturer: "Kyocera"
*ModelName: "Kyocera FS-1300D KPDL"
*ShortNickName: "Kyocera FS-1300D (KPDL)"
*NickName: "Kyocera FS-1300D (KPDL)"
*PCFileName: "KC1300EG.PPD"
*% Basic Device Capabilities
*LanguageLevel: "3"
*ColorDevice: False
*DefaultColorSpace: Gray
*TTRasterizer: Type42
*?TTRasterizer: "
save
42 /FontType resourcestatus
{ pop pop (Type42) }{ (None) } ifelse
= flush restore"
*End
*Throughput: "28"
*% System Management
*SuggestedJobTimeout: "0"
*SuggestedManualFeedTimeout: "0"
*SuggestedWaitTimeout: "120"
*PrintPSErrors: True
*Password: "0"
*ExitServer: "
count 0 eq {true}
{dup statusdict /checkpassword get exec not} ifelse
{(WARNING : Cannot perform the exitserver command.) =
(Password supplied is not valid.) =
(Please contact the author of this software.) = flush quit} if
serverdict /exitserver get exec"
*End
*Reset: "
count 0 eq { true }
{dup statusdict /checkpassword get exec not} ifelse
{(WARNING : Cannot perform the exitserver command.) =
(Password supplied is not valid.) =
(Please contact the author of this software.) = flush quit} if
serverdict /exitserver get exec
systemdict /quit get exec
(WARNING : Printer Reset Failed.) = flush"
*End
*% Protocols
*Protocols: PJL TBCP
*1284Modes Parallel: Compat Nibble ECP
*1284DeviceID: "MFG:Kyocera;MODEL:Kyocera FS-1300D;COMMAND SET: POSTSCRIPT,PJL,PCL"
*% JCL Information
*JCLBegin: "<1B>%-12345X@PJL JOB<0A>"
*JCLToPSInterpreter: "@PJL ENTER LANGUAGE=POSTSCRIPT<0A>"
*JCLEnd: "<1B>%-12345X@PJL EOJ<0A><1B>%-12345X"
*% Installable Options
*OpenGroup: InstallableOptions/Installierte Optionen
*% Paper Feeders
*OpenUI *Option8/Papierzuf<FC>hrungen: PickOne
*DefaultOption8: None
*Option8 None/Nicht installiert: ""
*Option8 One/Eine: ""
*Option8 Two/Zwei: ""
*?Option8: "
save
(None) currentpagedevice dup /InputAttributes known {
/InputAttributes get
dup 1 known {dup 1 get null ne {exch pop (One) exch} if} if
dup 3 known {dup 3 get null ne {exch pop (Two) exch} if} if
dup 4 known {dup 4 get null ne {exch pop (Two) exch} if} if
} if pop
= flush restore"
*End
*CloseUI: *Option8
*% Disk Drive
*OpenUI *Option18/Optionaler Datentr<E4>ger: PickOne
*DefaultOption18: None
*Option18 None/Nicht installiert: ""
*Option18 RAMDisk/RAM Disk: ""
*?Option18: "
save
false
(%disk?%)
{currentdevparams dup /Writeable known
{dup /Writeable get
{exch pop /LogicalSize get dup 0 gt exch 102400 lt eq true}{pop pop false} ifelse
}{pop pop} ifelse
} 100 string /IODevice resourceforall
{{(RAMDisk)}{(HardDisk)} ifelse}{(None)} ifelse
= flush restore"
*End
*CloseUI: *Option18
*% Installed Memory
*OpenUI *InstalledMemory/Speicher: PickOne
*DefaultInstalledMemory: 32MB
*InstalledMemory 32MB/32MB Standard: ""
*InstalledMemory 96MB/64MB Erweiterung: ""
*InstalledMemory 160MB/128MB Erweiterung: ""
*InstalledMemory 288MB/256MB Erweiterung: ""
*InstalledMemory 544MB/512MB Erweiterung: ""
*?InstalledMemory: "
save
currentsystemparams dup
/RamSize known {
/RamSize get
524288 div ceiling cvi 2 div cvi
/vmsize 20 string def
vmsize cvs print
(MB) print (\n) print flush
}{
pop (Unknown) print flush
} ifelse
restore"
*End
*CloseUI: *InstalledMemory
*CloseGroup: InstallableOptions
*% Virtual Memory
*FreeVM: "25728000"
*VMOption 32MB: "25728000"
*VMOption 96MB: "32000000"
*VMOption 160MB: "32000000"
*VMOption 288MB: "32000000"
*VMOption 544MB: "32000000"
*% Constraints
*UIConstraints: *Option8 None *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *Option8 None
*UIConstraints: *Option8 None *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *Option8 None
*UIConstraints: *Option8 One *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *Option8 One
*UIConstraints: *Option18 None *KCCollate Temp
*UIConstraints: *PageSize B6 *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageSize B6
*UIConstraints: *PageRegion B6 *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageRegion B6
*UIConstraints: *PageSize EnvPersonal *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageSize EnvPersonal
*UIConstraints: *PageRegion EnvPersonal *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageRegion EnvPersonal
*UIConstraints: *PageSize Env9 *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageSize Env9
*UIConstraints: *PageRegion Env9 *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageRegion Env9
*UIConstraints: *PageSize Env10 *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageSize Env10
*UIConstraints: *PageRegion Env10 *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageRegion Env10
*UIConstraints: *PageSize EnvMonarch *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageSize EnvMonarch
*UIConstraints: *PageRegion EnvMonarch *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageRegion EnvMonarch
*UIConstraints: *PageSize EnvDL *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageSize EnvDL
*UIConstraints: *PageRegion EnvDL *InputSlot Internal
*UIConstraints: *InputSlot Internal *PageRegion EnvDL
*UIConstraints: *PageSize A6 *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageSize A6
*UIConstraints: *PageRegion A6 *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageRegion A6
*UIConstraints: *PageSize B6 *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageSize B6
*UIConstraints: *PageRegion B6 *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageRegion B6
*UIConstraints: *PageSize EnvPersonal *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageSize EnvPersonal
*UIConstraints: *PageRegion EnvPersonal *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageRegion EnvPersonal
*UIConstraints: *PageSize Env9 *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageSize Env9
*UIConstraints: *PageRegion Env9 *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageRegion Env9
*UIConstraints: *PageSize Env10 *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageSize Env10
*UIConstraints: *PageRegion Env10 *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageRegion Env10
*UIConstraints: *PageSize EnvMonarch *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageSize EnvMonarch
*UIConstraints: *PageRegion EnvMonarch *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageRegion EnvMonarch
*UIConstraints: *PageSize EnvDL *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageSize EnvDL
*UIConstraints: *PageRegion EnvDL *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageRegion EnvDL
*UIConstraints: *PageSize Statement *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageSize Statement
*UIConstraints: *PageRegion Statement *InputSlot PF100A
*UIConstraints: *InputSlot PF100A *PageRegion Statement
*UIConstraints: *PageSize A6 *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageSize A6
*UIConstraints: *PageRegion A6 *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageRegion A6
*UIConstraints: *PageSize B6 *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageSize B6
*UIConstraints: *PageRegion B6 *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageRegion B6
*UIConstraints: *PageSize EnvPersonal *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageSize EnvPersonal
*UIConstraints: *PageRegion EnvPersonal *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageRegion EnvPersonal
*UIConstraints: *PageSize Env9 *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageSize Env9
*UIConstraints: *PageRegion Env9 *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageRegion Env9
*UIConstraints: *PageSize Env10 *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageSize Env10
*UIConstraints: *PageRegion Env10 *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageRegion Env10
*UIConstraints: *PageSize EnvMonarch *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageSize EnvMonarch
*UIConstraints: *PageRegion EnvMonarch *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageRegion EnvMonarch
*UIConstraints: *PageSize EnvDL *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageSize EnvDL
*UIConstraints: *PageRegion EnvDL *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageRegion EnvDL
*UIConstraints: *PageSize Statement *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageSize Statement
*UIConstraints: *PageRegion Statement *InputSlot PF100B
*UIConstraints: *InputSlot PF100B *PageRegion Statement
*UIConstraints: *Duplex *PageSize A6
*UIConstraints: *PageSize A6 *Duplex DuplexTumble
*UIConstraints: *PageSize A6 *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageRegion A6
*UIConstraints: *PageRegion A6 *Duplex DuplexTumble
*UIConstraints: *PageRegion A6 *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageSize B6
*UIConstraints: *PageSize B6 *Duplex DuplexTumble
*UIConstraints: *PageSize B6 *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageRegion B6
*UIConstraints: *PageRegion B6 *Duplex DuplexTumble
*UIConstraints: *PageRegion B6 *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageSize EnvPersonal
*UIConstraints: *PageSize EnvPersonal *Duplex DuplexTumble
*UIConstraints: *PageSize EnvPersonal *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageRegion EnvPersonal
*UIConstraints: *PageRegion EnvPersonal *Duplex DuplexTumble
*UIConstraints: *PageRegion EnvPersonal *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageSize Env9
*UIConstraints: *PageSize Env9 *Duplex DuplexTumble
*UIConstraints: *PageSize Env9 *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageRegion Env9
*UIConstraints: *PageRegion Env9 *Duplex DuplexTumble
*UIConstraints: *PageRegion Env9 *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageSize Env10
*UIConstraints: *PageSize Env10 *Duplex DuplexTumble
*UIConstraints: *PageSize Env10 *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageRegion Env10
*UIConstraints: *PageRegion Env10 *Duplex DuplexTumble
*UIConstraints: *PageRegion Env10 *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageSize EnvMonarch
*UIConstraints: *PageSize EnvMonarch *Duplex DuplexTumble
*UIConstraints: *PageSize EnvMonarch *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageRegion EnvMonarch
*UIConstraints: *PageRegion EnvMonarch *Duplex DuplexTumble
*UIConstraints: *PageRegion EnvMonarch *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageSize EnvDL
*UIConstraints: *PageSize EnvDL *Duplex DuplexTumble
*UIConstraints: *PageSize EnvDL *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageRegion EnvDL
*UIConstraints: *PageRegion EnvDL *Duplex DuplexTumble
*UIConstraints: *PageRegion EnvDL *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageSize Statement
*UIConstraints: *PageSize Statement *Duplex DuplexTumble
*UIConstraints: *PageSize Statement *Duplex DuplexNoTumble
*UIConstraints: *Duplex *PageRegion Statement
*UIConstraints: *PageRegion Statement *Duplex DuplexTumble
*UIConstraints: *PageRegion Statement *Duplex DuplexNoTumble
*UIConstraints: *Option18 None *KCSuperWatermark
*UIConstraints: *KCSuperWatermark *Option18 None
*% Resolution
*OpenUI *Resolution/Aufl<F6>sung: PickOne
*OrderDependency: 10 AnySetup *Resolution
*DefaultResolution: 600dpi
*Resolution 300dpi/300 dpi: "<< /HWResolution [300 300] /PreRenderingEnhance false >> setpagedevice"
*Resolution 600dpi/600 dpi: "<< /HWResolution [600 600] /PreRenderingEnhance false >> setpagedevice"
*Resolution 1200dpi/Fine 1200: "<< /HWResolution [1200 1200] /PreRenderingEnhance false >> setpagedevice"
*?Resolution: "save currentpagedevice /HWResolution get 0 get ( ) cvs print (dpi) = flush restore"
*CloseUI: *Resolution
*% KCEcoprint
*OpenUI *KCEcoprint/EcoPrint: PickOne
*OrderDependency: 10 AnySetup *KCEcoprint
*DefaultKCEcoprint: Off
*KCEcoprint Off/Aus: "<< /EconoMode false >> setpagedevice"
*KCEcoprint On/Ein: "<< /EconoMode true >> setpagedevice"
*CloseUI: *KCEcoprint
*% Image Refinement
*OpenUI *Smoothing/KIR: PickOne
*OrderDependency: 50 AnySetup *Smoothing
*DefaultSmoothing: Medium
*Smoothing None/Aus: "0 statusdict /setdoret get exec"
*Smoothing Medium/Ein: "2 statusdict /setdoret get exec"
*?Smoothing: "
save
[(None)(Medium)(Medium)(Medium)]
statusdict /doret get exec {get} stopped
{pop pop (Unknown)} if
= flush restore"
*End
*CloseUI: *Smoothing
*% Halftone Information
*DefaultHalftoneType: 1
*ScreenFreq: "75.0"
*ScreenAngle: "45.0"
*ResScreenFreq 1200dpi: "75.0"
*ResScreenAngle 1200dpi: "45.0"
*ResScreenFreq 600dpi: "37.5"
*ResScreenAngle 600dpi: "45.0"
*ResScreenFreq 300dpi: "18.75"
*ResScreenAngle 300dpi: "45.0"
*DefaultScreenProc: Ellipse
*ScreenProc Dot: "
{abs exch abs 2 copy add 1 gt
{1 sub dup mul exch 1 sub dup mul add 1 sub}
{dup mul exch dup mul add 1 exch sub} ifelse}"
*End
*ScreenProc Line: "{pop}"
*ScreenProc Ellipse: "{dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub}"
*DefaultTransfer: Null
*Transfer Null: "{}"
*Transfer Null.Inverse: "{1 exch sub}"
*% Page Policy Definitions
*OpenUI *PagePolicy/Page Policy: PickOne
*OrderDependency: 15 AnySetup *PagePolicy
*DefaultPagePolicy: On
*PagePolicy On/AutoSizeSelect: "<< /DeferredMediaSelection true >> setpagedevice"
*CloseUI: *PagePolicy
*% Paper Handling
*% Page Size Definitions
*OpenUI *PageSize: PickOne
*OrderDependency: 40 AnySetup *PageSize
*DefaultPageSize: A4
*PageSize A4/A4: "<< /Policies << /PageSize 7 >> /PageSize [595 842] /ImagingBBox null >> setpagedevice"
*PageSize A5/A5: "<< /Policies << /PageSize 7 >> /PageSize [421 595] /ImagingBBox null >> setpagedevice"
*PageSize A6/A6: "<< /Policies << /PageSize 7 >> /PageSize [297 421] /ImagingBBox null >> setpagedevice"
*PageSize B5/B5 (JIS): "<< /Policies << /PageSize 7 >> /PageSize [516 729] /ImagingBBox null >> setpagedevice"
*PageSize ISOB5/B5 (ISO): "<< /Policies << /PageSize 7 >> /PageSize [499 708] /ImagingBBox null >> setpagedevice"
*PageSize B6/B6: "<< /Policies << /PageSize 7 >> /PageSize [364 516] /ImagingBBox null >> setpagedevice"
*PageSize OficioII/Oficio II: "<< /Policies << /PageSize 7 >> /PageSize [612 936] /ImagingBBox null >> setpagedevice"
*PageSize Folio/Folio (210 x 330mm): "<< /Policies << /PageSize 7 >> /PageSize [595 935] /ImagingBBox null >> setpagedevice"
*PageSize Statement/Statement: "<< /Policies << /PageSize 7 >> /PageSize [396 612] /ImagingBBox null >> setpagedevice"
*PageSize P16K/16K: "<< /Policies << /PageSize 7 >> /PageSize [558 774] /ImagingBBox null >> setpagedevice"
*PageSize Letter/US-Letter: "<< /Policies << /PageSize 7 >> /PageSize [612 792] /ImagingBBox null >> setpagedevice"
*PageSize Legal/US-Legal: "<< /Policies << /PageSize 7 >> /PageSize [612 1008] /ImagingBBox null >> setpagedevice"
*PageSize Executive/US-Executive: "<< /Policies << /PageSize 7 >> /PageSize [522 756] /ImagingBBox null >> setpagedevice"
*PageSize EnvPersonal/Umschlag #6: "<< /Policies << /PageSize 7 >> /PageSize [261 468] /ImagingBBox null >> setpagedevice"
*PageSize Env9/Umschlag #9: "<< /Policies << /PageSize 7 >> /PageSize [279 639] /ImagingBBox null >> setpagedevice"
*PageSize Env10/Umschlag #10: "<< /Policies << /PageSize 7 >> /PageSize [297 684] /ImagingBBox null >> setpagedevice"
*PageSize EnvMonarch/Umschlag US-Monarch: "<< /Policies << /PageSize 7 >> /PageSize [279 540] /ImagingBBox null >> setpagedevice"
*PageSize EnvDL/Umschlag DL: "<< /Policies << /PageSize 7 >> /PageSize [312 624] /ImagingBBox null >> setpagedevice"
*PageSize EnvC5/Umschlag C5: "<< /Policies << /PageSize 7 >> /PageSize [459 649] /ImagingBBox null >> setpagedevice"
*?PageSize: "
save
currentpagedevice /PageSize get aload pop
2 copy gt {exch} if
(Unknown)
19 dict
dup [595 842] (A4) put
dup [421 595] (A5) put
dup [297 421] (A6) put
dup [516 729] (B5) put
dup [499 708] (ISOB5) put
dup [364 516] (B6) put
dup [612 936] (OficioII) put
dup [595 935] (Folio) put
dup [396 612] (Statement) put
dup [558 774] (P16K) put
dup [612 792] (Letter) put
dup [612 1008] (Legal) put
dup [522 756] (Executive) put
dup [261 468] (EnvPersonal) put
dup [279 639] (Env9) put
dup [297 684] (Env10) put
dup [279 540] (EnvMonarch) put
dup [312 624] (EnvDL) put
dup [459 649] (EnvC5) put
{exch aload pop 4 index sub abs 5 le exch
5 index sub abs 5 le and
{exch pop exit}{pop} ifelse
} bind forall
= flush pop pop restore "
*End
*CloseUI: *PageSize
*% Page Region Definitions for Frame Buffer
*OpenUI *PageRegion: PickOne
*OrderDependency: 40 AnySetup *PageRegion
*DefaultPageRegion: A4
*PageRegion A4/A4: "<< /Policies << /PageSize 7 >> /PageSize [595 842] /ImagingBBox null >> setpagedevice"
*PageRegion A5/A5: "<< /Policies << /PageSize 7 >> /PageSize [421 595] /ImagingBBox null >> setpagedevice"
*PageRegion A6/A6: "<< /Policies << /PageSize 7 >> /PageSize [297 421] /ImagingBBox null >> setpagedevice"
*PageRegion B5/B5 (JIS): "<< /Policies << /PageSize 7 >> /PageSize [516 729] /ImagingBBox null >> setpagedevice"
*PageRegion ISOB5/B5 (ISO): "<< /Policies << /PageSize 7 >> /PageSize [499 708] /ImagingBBox null >> setpagedevice"
*PageRegion B6/B6: "<< /Policies << /PageSize 7 >> /PageSize [364 516] /ImagingBBox null >> setpagedevice"
*PageRegion Letter/US-Letter: "<< /Policies << /PageSize 7 >> /PageSize [612 792] /ImagingBBox null >> setpagedevice"
*PageRegion Legal/US-Legal: "<< /Policies << /PageSize 7 >> /PageSize [612 1008] /ImagingBBox null >> setpagedevice"
*PageRegion Executive/US-Executive: "<< /Policies << /PageSize 7 >> /PageSize [522 756] /ImagingBBox null >> setpagedevice"
*PageRegion EnvPersonal/Umschlag #6: "<< /Policies << /PageSize 7 >> /PageSize [261 468] /ImagingBBox null >> setpagedevice"
*PageRegion Env9/Umschlag #9: "<< /Policies << /PageSize 7 >> /PageSize [279 639] /ImagingBBox null >> setpagedevice"
*PageRegion Env10/Umschlag #10: "<< /Policies << /PageSize 7 >> /PageSize [297 684] /ImagingBBox null >> setpagedevice"
*PageRegion EnvMonarch/Umschlag US-Monarch: "<< /Policies << /PageSize 7 >> /PageSize [279 540] /ImagingBBox null >> setpagedevice"
*PageRegion EnvDL/Umschlag DL: "<< /Policies << /PageSize 7 >> /PageSize [312 624] /ImagingBBox null >> setpagedevice"
*PageRegion EnvC5/Umschlag C5: "<< /Policies << /PageSize 7 >> /PageSize [459 649] /ImagingBBox null >> setpagedevice"
*PageRegion OficioII/Oficio II: "<< /Policies << /PageSize 7 >> /PageSize [612 936] /ImagingBBox null >> setpagedevice"
*PageRegion Folio/Folio (210 x 330mm): "<< /Policies << /PageSize 7 >> /PageSize [595 935] /ImagingBBox null >> setpagedevice"
*PageRegion Statement/Statement: "<< /Policies << /PageSize 7 >> /PageSize [396 612] /ImagingBBox null >> setpagedevice"
*PageRegion P16K/16K: "<< /Policies << /PageSize 7 >> /PageSize [558 774] /ImagingBBox null >> setpagedevice"
*CloseUI: *PageRegion
*% Imageable Area Definitions
*DefaultImageableArea: A4
*ImageableArea A4/A4: "12 10 583 832"
*ImageableArea A5/A5: "12 10 409 585"
*ImageableArea A6/A6: "12 10 285 411"
*ImageableArea B5/B5 (JIS): "21 10 495 719"
*ImageableArea ISOB5/B5 (ISO): "12 12 487 696"
*ImageableArea B6/B6: "12 10 352 506"
*ImageableArea OficioII/Oficio II: "12 12 600 924"
*ImageableArea Folio/Folio (210 x 330mm): "12 12 583 923"
*ImageableArea Statement/Statement: "12 12 384 600"
*ImageableArea P16K/16K: "12 12 547 763"
*ImageableArea Letter/US-Letter: "12 08 600 784"
*ImageableArea Legal/US-Legal: "12 08 600 1000"
*ImageableArea Executive/US-Executive: "12 08 510 748"
*ImageableArea EnvPersonal/Umschlag #6: "12 08 249 460"
*ImageableArea Env9/Umschlag #9: "12 08 267 631"
*ImageableArea Env10/Umschlag #10: "12 08 285 676"
*ImageableArea EnvMonarch/Umschlag US-Monarch: "12 08 267 532"
*ImageableArea EnvDL/Umschlag DL: "12 10 300 614"
*ImageableArea EnvC5/Umschlag C5: "12 10 447 639"
*?ImageableArea: "
save
/cvp {cvi ( ) cvs
print ( ) print} bind def
newpath clippath pathbbox
4 -2 roll exch 2 {ceiling cvp} repeat
exch 2 {floor cvp} repeat ( )
= flush restore"
*End
*% Physical Dimensions of Media
*DefaultPaperDimension: A4
*PaperDimension A4/A4: "595 842"
*PaperDimension A5/A5: "421 595"
*PaperDimension A6/A6: "297 421"
*PaperDimension B5/B5 (JIS): "516 729"
*PaperDimension ISOB5/B5 (ISO): "499 708"
*PaperDimension B6/B6: "364 516"
*PaperDimension OficioII/Oficio II: "612 936"
*PaperDimension Folio/Folio (210 x 330mm): "595 935"
*PaperDimension Statement/Statement: "396 612"
*PaperDimension P16K/16K: "558 774"
*PaperDimension Letter/US-Letter: "612 792"
*PaperDimension Legal/US-Legal: "612 1008"
*PaperDimension Executive/US-Executive: "522 756"
*PaperDimension EnvPersonal/Umschlag #6: "261 468"
*PaperDimension Env9/Umschlag #9: "279 639"
*PaperDimension Env10/Umschlag #10: "297 684"
*PaperDimension EnvMonarch/Umschlag US-Monarch: "279 540"
*PaperDimension EnvDL/Umschlag DL: "312 624"
*PaperDimension EnvC5/Umschlag C5: "459 649"
*% Custom Page Size Definitions
*% Smallest = A6, Largest = LEGAL
*VariablePaperSize: True
*LeadingEdge Short: ""
*DefaultLeadingEdge: Short
*HWMargins: 12 12 12 12
*MaxMediaWidth: "612"
*MaxMediaHeight: "1008"
*NonUIOrderDependency: 40 AnySetup *CustomPageSize
*CustomPageSize True: "
pop pop pop
<< /PageSize [ 5 -2 roll ] /ImagingBBox null
/DeferredMediaSelection true
>> setpagedevice"
*End
*ParamCustomPageSize Width: 1 points 278 612
*ParamCustomPageSize Height: 2 points 420 1008
*ParamCustomPageSize WidthOffset: 3 points 0 0
*ParamCustomPageSize HeightOffset: 4 points 0 0
*ParamCustomPageSize Orientation: 5 int 1 1
*% Input Slot Definitions
*OpenUI *InputSlot: PickOne
*OrderDependency: 30 AnySetup *InputSlot
*DefaultInputSlot: Internal
*InputSlot Internal/Kassette 1: "<< /ManualFeed false /DeferredMediaSelection false >> setpagedevice statusdict begin 0 setpapertray end"
*InputSlot PF100A/Kassette 2: "<< /ManualFeed false /DeferredMediaSelection false >> setpagedevice statusdict begin 1 setpapertray end"
*InputSlot PF100B/Kassette 3: "<< /ManualFeed false /DeferredMediaSelection false >> setpagedevice statusdict begin 4 setpapertray end"
*InputSlot MF1/Mehrzweckzufuhr: "<< /ManualFeed false /DeferredMediaSelection false >> setpagedevice statusdict begin 3 setpapertray end"
*?InputSlot: ""
*CloseUI: *InputSlot
*% MediaType Definitions
*OpenUI *MediaType: PickOne
*OrderDependency: 95 AnySetup *MediaType
*DefaultMediaType: PrnDef
*MediaType PrnDef/Automatische Medienauswahl: ""
*MediaType Plain/Blankopapier: "<</ManualFeed false /MediaType (Plain) /DeferredMediaSelection true >> setpagedevice"
*MediaType Transparency/Folie: "<</ManualFeed false /MediaType (Transparency) /DeferredMediaSelection true >> setpagedevice"
*MediaType Labels/Etiketten: "<</ManualFeed false /MediaType (Labels) /DeferredMediaSelection true >> setpagedevice"
*MediaType Letterhead/Briefkopf: "<</ManualFeed false /MediaType (Letterhead) /DeferredMediaSelection true >> setpagedevice"
*MediaType Bond/Feinpapier: "<</ManualFeed false /MediaType (Bond) /DeferredMediaSelection true >> setpagedevice"
*MediaType Color/Mehrfarbig: "<</ManualFeed false /MediaType (Color) /DeferredMediaSelection true >> setpagedevice"
*MediaType Preprinted/Vorgedruckt: "<</ManualFeed false /MediaType (Preprinted) /DeferredMediaSelection true >> setpagedevice"
*MediaType Prepunched/Vorgelocht: "<</ManualFeed false /MediaType (Prepunched) /DeferredMediaSelection true >> setpagedevice"
*MediaType Recycled/Recycling-Papier: "<</ManualFeed false /MediaType (Recycled) /DeferredMediaSelection true >> setpagedevice"
*MediaType Cardstock/Karton: "<</ManualFeed false /MediaType (Card Stock) /DeferredMediaSelection true >> setpagedevice"
*MediaType Vellum/Pergament: "<</ManualFeed false /MediaType (Vellum) /DeferredMediaSelection true >> setpagedevice"
*MediaType Envelope/Umschlag: "<</ManualFeed false /MediaType (Envelope) /DeferredMediaSelection true >> setpagedevice"
*MediaType Rough/Grobpapier: "<</ManualFeed false /MediaType (Rough) /DeferredMediaSelection true >> setpagedevice"
*MediaType Thick/Dick: "<</ManualFeed false /MediaType (Thick) /DeferredMediaSelection true >> setpagedevice"
*MediaType Highqlty/Hohe Qualit<E4>t: "<</ManualFeed false /MediaType (Fine) /DeferredMediaSelection true >> setpagedevice"
*MediaType User1/Benutzerdefinierter Typ 1: "<</ManualFeed false /MediaType (Custom Type1) /DeferredMediaSelection true >> setpagedevice"
*MediaType User2/Benutzerdefinierter Typ 2: "<</ManualFeed false /MediaType (Custom Type2) /DeferredMediaSelection true >> setpagedevice"
*MediaType User3/Benutzerdefinierter Typ 3: "<</ManualFeed false /MediaType (Custom Type3) /DeferredMediaSelection true >> setpagedevice"
*MediaType User4/Benutzerdefinierter Typ 4: "<</ManualFeed false /MediaType (Custom Type4) /DeferredMediaSelection true >> setpagedevice"
*MediaType User5/Benutzerdefinierter Typ 5: "<</ManualFeed false /MediaType (Custom Type5) /DeferredMediaSelection true >> setpagedevice"
*MediaType User6/Benutzerdefinierter Typ 6: "<</ManualFeed false /MediaType (Custom Type6) /DeferredMediaSelection true >> setpagedevice"
*MediaType User7/Benutzerdefinierter Typ 7: "<</ManualFeed false /MediaType (Custom Type7) /DeferredMediaSelection true >> setpagedevice"
*MediaType User8/Benutzerdefinierter Typ 8: "<</ManualFeed false /MediaType (Custom Type8) /DeferredMediaSelection true >> setpagedevice"
*?MediaType: "
save
currentpagedevice /MediaType {get} stopped
{pop pop (Unknown)} {dup null eq {pop (Unknown)} if} ifelse = flush
restore"
*End
*CloseUI: *MediaType
*RequiresPageRegion All: True
*% Duplex Definitions
*OpenUI *Duplex/Duplex: PickOne
*OrderDependency: 50 AnySetup *Duplex
*DefaultDuplex: None
*Duplex None/Keine: "statusdict begin false setduplexmode false settumble end"
*Duplex DuplexTumble/Binden Kurze Seite: "statusdict begin true setduplexmode true settumble end"
*Duplex DuplexNoTumble/Binden Lange Seite: "statusdict begin true setduplexmode false settumble end"
*?Duplex: "
save
statusdict begin
duplexmode
{tumble {(DuplexTumble)}{(DuplexNoTumble)} ifelse}
{(None)} ifelse
= flush end restore"
*End
*CloseUI: *Duplex
*% Job Spooling Definitions
*OpenUI *KCCollate/Job Zwischenspeicherung: PickOne
*OrderDependency: 20 AnySetup *KCCollate
*DefaultKCCollate: PrnDef
*KCCollate PrnDef/Standard: ""
*KCCollate None/Keine: "<< /Collate false >> setpagedevice"
*KCCollate Temp/Tempor<E4>r: "
userdict /UICollateDetails known not {userdict /UICollateDetails 10 dict put} if
userdict /UICollateDetails get /Mode 0 put <</Collate true /CollateDetails UICollateDetails>> setpagedevice"
*End
*?KCCollate: "
save
currentpagedevice dup /Collate known {
dup /CollateDetails known {
/CollateDetails get
dup /Mode known {
/Mode get
1 {
dup 0 eq {pop (Temp) exit} if
pop (Unknown)
} repeat
}{pop (Unknown)} ifelse
}{pop (Unknown)} ifelse
}{pop (Unknown)} ifelse
= flush restore"
*End
*CloseUI: *KCCollate
*% KCSuperWatermark
*OpenUI *KCSuperWatermark/Super Watermark: PickOne
*OrderDependency: 10 AnySetup *KCSuperWatermark
*DefaultKCSuperWatermark: None
*KCSuperWatermark None/Keine: ""
*KCSuperWatermark UFA/Verwenden Form-A Alle Seiten: "<</BeginPage {pop mark {(%disk0%Form-A) kcloadpageimage} stopped cleartomark}>> setpagedevice"
*KCSuperWatermark UFB/Verwenden Form-B Alle Seiten: "<</BeginPage {pop mark {(%disk0%Form-B) kcloadpageimage} stopped cleartomark}>> setpagedevice"
*KCSuperWatermark UFC/Verwenden Form-C Alle Seiten: "<</BeginPage {pop mark {(%disk0%Form-C) kcloadpageimage} stopped cleartomark}>> setpagedevice"
*KCSuperWatermark UFAFP/Verwenden Form-A Erste Seite: "<</BeginPage {0 eq {mark {(%disk0%Form-A) kcloadpageimage} stopped cleartomark}if}>> setpagedevice"
*KCSuperWatermark UFBFP/Verwenden Form-B Erste Seite: "<</BeginPage {0 eq {mark {(%disk0%Form-B) kcloadpageimage} stopped cleartomark}if}>> setpagedevice"
*KCSuperWatermark UFCFP/Verwenden Form-C Erste Seite: "<</BeginPage {0 eq {mark {(%disk0%Form-C) kcloadpageimage} stopped cleartomark}if}>> setpagedevice"
*KCSuperWatermark SFA/Speichern Form-A: "<</EndPage {exch pop 2 ne dup mark exch {{(%disk0%Form-A) kcsavepageimage} stopped} if cleartomark}>> setpagedevice"
*KCSuperWatermark SFB/Speichern Form-B: "<</EndPage {exch pop 2 ne dup mark exch {{(%disk0%Form-B) kcsavepageimage} stopped} if cleartomark}>> setpagedevice"
*KCSuperWatermark SFC/Speichern Form-C: "<</EndPage {exch pop 2 ne dup mark exch {{(%disk0%Form-C) kcsavepageimage} stopped} if cleartomark}>> setpagedevice"
*CloseUI: *KCSuperWatermark
*% PPD Version Info
*OpenUI *KCVersion/PPD Version: PickOne
*OrderDependency: 25 AnySetup *KCVersion
*DefaultKCVersion: Default
*KCVersion Default/8.4 [07-12-2007]: "
globaldict /ct_AddStdCIDMap known {
globaldict /ct_AddStdCIDMap get length 7 eq
{globaldict /ct_AddStdCIDMap get 0 get type /stringtype eq
{globaldict /ct_AddStdCIDMap get 1 get 0 eq
{globaldict /ct_AddStdCIDMap get 2 get () eq
{globaldict /ct_AddStdCIDMap get 3 get /SubFileDecode eq
{globaldict /ct_AddStdCIDMap get 4 get systemdict /filter get eq
{currentglobal true setglobal globaldict
/ct_AddStdCIDMap
globaldict /ct_AddStdCIDMap get dup
globaldict /ct_AddStdCIDMap get
0 get length 1 exch
put put setglobal
} if} if} if} if} if} if} if"
*End
*CloseUI: *KCVersion
*% Font Information
*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-Light: Standard "(001.004S)" Standard ROM
*Font Bookman-LightItalic: Standard "(001.004S)" Standard ROM
*Font Bookman-Demi: Standard "(001.004S)" Standard ROM
*Font Bookman-DemiItalic: Standard "(001.004S)" Standard ROM
*Font Courier: Standard "(002.004S)" Standard ROM
*Font Courier-Oblique: Standard "(002.004S)" Standard ROM
*Font Courier-Bold: Standard "(002.004S)" Standard ROM
*Font Courier-BoldOblique: Standard "(002.004S)" Standard ROM
*Font Helvetica: Standard "(001.006S)" Standard ROM
*Font Helvetica-Oblique: 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-Oblique: Standard "(001.006S)" Standard ROM
*Font Helvetica-Narrow-Bold: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow-BoldOblique: Standard "(001.007S)" Standard ROM
*Font NewCenturySchlbk-Roman: Standard "(001.007S)" Standard ROM
*Font NewCenturySchlbk-Italic: Standard "(001.006S)" Standard ROM
*Font NewCenturySchlbk-Bold: Standard "(001.009S)" Standard ROM
*Font NewCenturySchlbk-BoldItalic: Standard "(001.007S)" Standard ROM
*Font Palatino-Roman: Standard "(001.005S)" Standard ROM
*Font Palatino-Italic: Standard "(001.005S)" Standard ROM
*Font Palatino-Bold: Standard "(001.005S)" Standard ROM
*Font Palatino-BoldItalic: Standard "(001.005S)" Standard ROM
*Font Symbol: Special "(001.007S)" Special ROM
*Font Times-Roman: Standard "(001.007S)" Standard ROM
*Font Times-Italic: Standard "(001.007S)" Standard ROM
*Font Times-Bold: Standard "(001.007S)" Standard ROM
*Font Times-BoldItalic: Standard "(001.009S)" Standard ROM
*Font ZapfChancery-MediumItalic: Standard "(001.007S)" Standard ROM
*Font ZapfDingbats: Special "(001.004S)" Special ROM
*Font Albertus-Medium: Standard "(001.008S)" Standard ROM
*Font Albertus-ExtraBold: Standard "(001.008S)" Standard ROM
*Font AntiqueOlive: Standard "(001.008S)" Standard ROM
*Font AntiqueOlive-Italic: Standard "(001.008S)" Standard ROM
*Font AntiqueOlive-Bold: Standard "(001.008S)" Standard ROM
*Font Arial: Standard "(001.008S)" Standard ROM
*Font Arial-Italic: Standard "(001.008S)" Standard ROM
*Font Arial-Bold: Standard "(001.008S)" Standard ROM
*Font Arial-BoldItalic: Standard "(001.008S)" Standard ROM
*Font CGOmega: Standard "(001.008S)" Standard ROM
*Font CGOmega-Italic: Standard "(001.008S)" Standard ROM
*Font CGOmega-Bold: Standard "(001.008S)" Standard ROM
*Font CGOmega-BoldItalic: Standard "(001.008S)" Standard ROM
*Font CGTimes: Standard "(001.008S)" Standard ROM
*Font CGTimes-Italic: Standard "(001.008S)" Standard ROM
*Font CGTimes-Bold: Standard "(001.008S)" Standard ROM
*Font CGTimes-BoldItalic: Standard "(001.008S)" Standard ROM
*Font Clarendon-Condensed-Bold: Standard "(001.008S)" Standard ROM
*Font Coronet: Standard "(001.008S)" Standard ROM
*Font CourierHP: Standard "(001.008S)" Standard ROM
*Font CourierHP-Italic: Standard "(001.008S)" Standard ROM
*Font CourierHP-Bold: Standard "(001.008S)" Standard ROM
*Font CourierHP-BoldItalic: Standard "(001.008S)" Standard ROM
*Font Garamond-Antiqua: Standard "(001.008S)" Standard ROM
*Font Garamond-Halbfett: Standard "(001.008S)" Standard ROM
*Font Garamond-Kursiv: Standard "(001.008S)" Standard ROM
*Font Garamond-KursivHalbfett: Standard "(001.008S)" Standard ROM
*Font LetterGothic: Standard "(001.008S)" Standard ROM
*Font LetterGothic-Italic: Standard "(001.008S)" Standard ROM
*Font LetterGothic-Bold: Standard "(001.008S)" Standard ROM
*Font Marygold: Standard "(001.008S)" Standard ROM
*Font SymbolMT: Standard "(001.008S)" Standard ROM
*Font TimesNewRoman: Standard "(001.008S)" Standard ROM
*Font TimesNewRoman-Italic: Standard "(001.008S)" Standard ROM
*Font TimesNewRoman-BoldItalic: Standard "(001.008S)" Standard ROM
*Font TimesNewRoman-Bold: Standard "(001.008S)" Standard ROM
*Font Univers-Medium: Standard "(001.008S)" Standard ROM
*Font Univers-MediumItalic: Standard "(001.008S)" Standard ROM
*Font Univers-Bold: Standard "(001.008S)" Standard ROM
*Font Univers-BoldItalic: Standard "(001.008S)" Standard ROM
*Font Univers-Condensed-Medium: Standard "(001.008S)" Standard ROM
*Font Univers-Condensed-MediumItalic: Standard "(001.008S)" Standard ROM
*Font Univers-Condensed-Bold: Standard "(001.008S)" Standard ROM
*Font Univers-Condensed-BoldItalic: Standard "(001.008S)" Standard ROM
*Font Wingdings-Regular: Special "(001.008S)" Special ROM
*?FontQuery: "
save
/str 80 string dup 0 (fonts/) putinterval def
{count 1 gt
{ exch dup str 6 94 getinterval cvs
(/) print print (:) print
FontDirectory exch known
{(Yes)}{(No)} ifelse =
}{exit} ifelse
} bind loop (*)
= flush restore"
*End
*?FontList: "save FontDirectory { pop == } bind forall flush (*) = flush restore"
*% Printer Messages
*Message: "%%[ exitserver: permanent state may be changed ]%%"
*Message: "%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%"
*Message: "\FontName\ not found, using Courier"
*% Status (format: %%[ status: <one of these> ]%% )
*Status: "warming up"/warming up
*Status: "idle"/idle
*Status: "busy"/busy
*Status: "waiting"/waiting
*Status: "printing"/printing
*Status: "initializing"/initializing
*Status: "printing test page"/printing test page
*% Printer Error (format: %%[ PrinterError: <one of these> ]%% )
*PrinterError: "paper entry misfeed"
*PrinterError: "cover open"
*PrinterError: "no paper tray"
*PrinterError: "out of paper"
*PrinterError: "toner low (halt)"
*PrinterError: "warming up"
*PrinterError: "other reason"
*PrinterError: "video interface mode"
*PrinterError: "offline"
*PrinterError: "toner low (warning)"
*% Input Sources (format: %%[ status: <stat>;source:<one of these> ]%% )
*Source: "Serial"
*Source: "Parallel"
*Source: "LocalTalk"
*Source: "Option"
*% End of PPD file for Kyocera FS-1300D (German)

View File

@ -0,0 +1,21 @@
{ inputs, lib, config, pkgs, ... }: {
# Enable CUPS to print documents.
services.printing.enable = true;
services.printing.drivers = [
(pkgs.writeTextDir "share/cups/model/kyocera_fs-1300d.ppd" (builtins.readFile ../../../files/kyocera_fs-1300d.ppd))
];
hardware.printers = {
ensurePrinters = [
{
name = "Kyocera_FS-1300D";
location = "Office";
deviceUri = "socket://172.16.0.4:9100";
model = "kyocera_fs-1300d.ppd";
ppdOptions = {
PageSize = "A4";
};
}
];
ensureDefaultPrinter = "Kyocera_FS-1300D";
};
}