From b5acc2ea31954e1671af6b843e13b168ebafe00c Mon Sep 17 00:00:00 2001 From: Thomas Boerger Date: Fri, 2 Dec 2022 09:51:03 +0100 Subject: [PATCH] chore: more changes for printing and desktop --- README.md | 32 - TODO.md | 7 +- desktops/anubis/default.nix | 13 +- desktops/chnum/default.nix | 13 +- desktops/osiris/default.nix | 13 +- flake.nix | 23 - overlays/default.nix | 15 +- overlays/tailscale-systray/default.nix | 30 + profiles/programs/default.nix | 1 - profiles/programs/owncloud.nix | 26 - profiles/services/default.nix | 2 +- .../services/{owncloud.nix => nextcloud.nix} | 8 +- profiles/thomas/default.nix | 29 +- profiles/thomas/desktop/gnome.nix | 135 +- profiles/thomas/desktop/i3.nix | 11 + profiles/thomas/programs/default.nix | 2 + profiles/thomas/programs/kustomize.nix | 30 + profiles/thomas/programs/minio.nix | 44 + profiles/thomas/services/default.nix | 2 +- profiles/thomas/services/tailscale.nix | 49 + secrets/secrets.nix | 1 + secrets/users/thomas/minio.age | Bin 0 -> 3495 bytes shared/modules/tools/default.nix | 1 - shared/services/default.nix | 1 + shared/services/printing/default.nix | 32 + shared/services/printing/kmC35np.ppd | 1275 +++++++++++++++++ 26 files changed, 1651 insertions(+), 144 deletions(-) create mode 100644 overlays/tailscale-systray/default.nix delete mode 100644 profiles/programs/owncloud.nix rename profiles/services/{owncloud.nix => nextcloud.nix} (69%) create mode 100644 profiles/thomas/programs/kustomize.nix create mode 100644 profiles/thomas/programs/minio.nix create mode 100644 profiles/thomas/services/tailscale.nix create mode 100644 secrets/users/thomas/minio.age create mode 100644 shared/services/printing/default.nix create mode 100644 shared/services/printing/kmC35np.ppd diff --git a/README.md b/README.md index d06ed05..4599690 100644 --- a/README.md +++ b/README.md @@ -63,38 +63,6 @@ Currently I'm applying the updates manually by cloning the repository into the machine and executing `make switch`, but on longterm it should also just work to use the `deploy #name` command, at least if it's executed from a NixOS desktop. -### Niflheim - -```console -apt install -y sudo - -mkdir -p /etc/nix -echo "build-users-group =" > /etc/nix/nix.conf - -curl -L https://nixos.org/nix/install | sh -. $HOME/.nix-profile/etc/profile.d/nix.sh - -nix-env -f https://github.com/nix-community/nixos-generators/archive/master.tar.gz -i -v - -cat < /root/config.nix -{ - services.openssh.enable = true; - users.users.root.openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINaQYR0/Oj6k1H03kshz2J7rlGCaDSuaGPhhOs9FcZfn" - ]; -} -EOF - -nixos-generate -o /root/result -f kexec-bundle -c /root/config.nix -/root/result - -bash -c "$(curl -fsSL https://raw.githubusercontent.com/tboerger/nixos-config/master/servers/niflheim/partitions.sh)" - -mkdir -p /mnt/etc/ssh -cp /etc/ssh/ssh_host_* /mnt/etc/ssh/ -nixos-install --no-root-password --root /mnt --flake github:tboerger/nixos-config#niflheim -``` - ### Asgard ```console diff --git a/TODO.md b/TODO.md index 6fa19bc..aa966a8 100644 --- a/TODO.md +++ b/TODO.md @@ -4,8 +4,11 @@ * clickup (package https://nixos.org/manual/nixpkgs/stable/#sec-pkgs-appimageTools) * curseforge (package) -* assign windows to right desktop -* autostart standard tools on desktops +* gnupg copy +* kubectl plugins: neat, oidc_login, realname_diff, whoami +* mc config +* netrc config +* github token ## server diff --git a/desktops/anubis/default.nix b/desktops/anubis/default.nix index d7a7a3a..ec0113c 100644 --- a/desktops/anubis/default.nix +++ b/desktops/anubis/default.nix @@ -13,11 +13,11 @@ ]; personal = { - # programs = { - # citrix = { - # enable = config.personal.programs.enable; - # }; - # }; + programs = { + citrix = { + enable = config.personal.programs.enable; + }; + }; services = { desktop = { @@ -32,6 +32,9 @@ tailscale = { enable = config.personal.services.enable; }; + printing = { + enable = config.personal.services.enable; + }; }; }; diff --git a/desktops/chnum/default.nix b/desktops/chnum/default.nix index d7a7a3a..ec0113c 100644 --- a/desktops/chnum/default.nix +++ b/desktops/chnum/default.nix @@ -13,11 +13,11 @@ ]; personal = { - # programs = { - # citrix = { - # enable = config.personal.programs.enable; - # }; - # }; + programs = { + citrix = { + enable = config.personal.programs.enable; + }; + }; services = { desktop = { @@ -32,6 +32,9 @@ tailscale = { enable = config.personal.services.enable; }; + printing = { + enable = config.personal.services.enable; + }; }; }; diff --git a/desktops/osiris/default.nix b/desktops/osiris/default.nix index d7a7a3a..ec0113c 100644 --- a/desktops/osiris/default.nix +++ b/desktops/osiris/default.nix @@ -13,11 +13,11 @@ ]; personal = { - # programs = { - # citrix = { - # enable = config.personal.programs.enable; - # }; - # }; + programs = { + citrix = { + enable = config.personal.programs.enable; + }; + }; services = { desktop = { @@ -32,6 +32,9 @@ tailscale = { enable = config.personal.services.enable; }; + printing = { + enable = config.personal.services.enable; + }; }; }; diff --git a/flake.nix b/flake.nix index 5318ac7..7bec205 100644 --- a/flake.nix +++ b/flake.nix @@ -107,16 +107,6 @@ # ./profiles/tabea ]; - niflheim = mkComputer - ./servers/niflheim - "x86_64-linux" - [ - ./profiles/thomas - # ./profiles/anna - # ./profiles/adrian - # ./profiles/tabea - ]; - asgard = mkComputer ./servers/asgard "x86_64-linux" @@ -153,25 +143,12 @@ chnum = self.nixosConfigurations.chnum.config.system.build.toplevel; osiris = self.nixosConfigurations.osiris.config.system.build.toplevel; - niflheim = self.nixosConfigurations.niflheim.config.system.build.toplevel; asgard = self.nixosConfigurations.asgard.config.system.build.toplevel; utgard = self.nixosConfigurations.utgard.config.system.build.toplevel; midgard = self.nixosConfigurations.midgard.config.system.build.toplevel; deploy = { nodes = { - nilfheim = { - sshOpts = [ "-p" "22" ]; - hostname = "192.168.64.4"; - fastConnection = true; - - profiles.system = { - sshUser = "admin"; - user = "root"; - path = deployrs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.niflheim; - }; - }; - asgard = { sshOpts = [ "-p" "22" ]; hostname = "192.168.1.10"; diff --git a/overlays/default.nix b/overlays/default.nix index 39265ff..bd18f8a 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -1,13 +1,13 @@ self: super: { - citrix_workspace = super.citrix_workspace.overrideAttrs (old: { - src = super.fetchurl { - name = "linuxx64-22.7.0.20.tar.gz"; - url = "https://owncloud.boerger.ws/s/zN0Qn7e4mKuu7Tf/download"; - hash = "sha256-oX5EeK0+rEsMvJ+3vg26J1g5O6LTtqgrMHT/BTWGxfU="; - }; - }); + # citrix_workspace = super.citrix_workspace.overrideAttrs (old: { + # src = super.fetchurl { + # name = "linuxx64-22.7.0.20.tar.gz"; + # url = "https://owncloud.boerger.ws/s/zN0Qn7e4mKuu7Tf/download"; + # hash = "sha256-oX5EeK0+rEsMvJ+3vg26J1g5O6LTtqgrMHT/BTWGxfU="; + # }; + # }); vscode-extensions = self.lib.recursiveUpdate super.vscode-extensions { dzhavat.bracket-pair-toggler = self.vscode-utils.extensionFromVscodeMarketplace { @@ -19,4 +19,5 @@ self: super: }; protoc-gen-openapiv2 = super.callPackage ./protoc-gen-openapiv2 { }; + tailscale-systray = super.callPackage ./tailscale-systray { }; } diff --git a/overlays/tailscale-systray/default.nix b/overlays/tailscale-systray/default.nix new file mode 100644 index 0000000..4849067 --- /dev/null +++ b/overlays/tailscale-systray/default.nix @@ -0,0 +1,30 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, pkg-config +, libayatana-appindicator-gtk3 +, gtk3 }: + +buildGoModule rec { + pname = "tailscale-systray"; + version = "2022-11-28"; + + src = fetchFromGitHub { + owner = "mattn"; + repo = "tailscale-systray"; + rev = "e7f8893684e7b8779f34045ca90e5abe6df6056d"; + sha256 = "sha256-3kozp6jq0xGllxoK2lGCNUahy/FvXyq11vNSxfDehKE="; + }; + + vendorSha256 = "sha256-cztIq7Kkj5alAYDtbPU/6h5S+nG+KAyxJzHBb3pJujs="; + + buildInputs = [ gtk3 libayatana-appindicator-gtk3 ]; + nativeBuildInputs = [ pkg-config ]; + + meta = with lib; { + description = "Linux port of tailscale system tray menu"; + homepage = "https://github.com/mattn/tailscale-systray/"; + license = licenses.mit; + maintainers = with maintainers; [ tboerger ]; + }; +} diff --git a/profiles/programs/default.nix b/profiles/programs/default.nix index ee54c3c..fa79c03 100644 --- a/profiles/programs/default.nix +++ b/profiles/programs/default.nix @@ -24,7 +24,6 @@ ./minecraft.nix ./neovim.nix ./onepassword.nix - ./owncloud.nix ./playonlinux.nix ./readline.nix ./rocketchat.nix diff --git a/profiles/programs/owncloud.nix b/profiles/programs/owncloud.nix deleted file mode 100644 index bf1b94f..0000000 --- a/profiles/programs/owncloud.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ pkgs, lib, config, options, ... }: -with lib; - -let - cfg = config.profile.programs.owncloud; - -in -{ - options = { - profile = { - programs = { - owncloud = { - enable = mkEnableOption "ownCloud"; - }; - }; - }; - }; - - config = mkIf cfg.enable { - environment = { - systemPackages = with pkgs; [ - owncloud-client - ]; - }; - }; -} diff --git a/profiles/services/default.nix b/profiles/services/default.nix index c71de2d..86e066f 100644 --- a/profiles/services/default.nix +++ b/profiles/services/default.nix @@ -6,8 +6,8 @@ ./caffeine.nix ./flameshot.nix ./mopidy.nix + ./nextcloud.nix ./nmapplet.nix - ./owncloud.nix ./udiskie.nix ]; diff --git a/profiles/services/owncloud.nix b/profiles/services/nextcloud.nix similarity index 69% rename from profiles/services/owncloud.nix rename to profiles/services/nextcloud.nix index c05d591..601a9ac 100644 --- a/profiles/services/owncloud.nix +++ b/profiles/services/nextcloud.nix @@ -2,15 +2,15 @@ with lib; let - cfg = config.profile.services.owncloud; + cfg = config.profile.services.nextcloud; in { options = { profile = { services = { - owncloud = { - enable = mkEnableOption "ownCloud"; + nextcloud = { + enable = mkEnableOption "Nextcloud"; }; }; }; @@ -19,7 +19,7 @@ in config = mkIf cfg.enable { home-manager.users."${config.profile.username}" = { config, ... }: { services = { - owncloud-client = { + nextcloud-client = { enable = true; }; }; diff --git a/profiles/thomas/default.nix b/profiles/thomas/default.nix index e7732a7..742fb55 100644 --- a/profiles/thomas/default.nix +++ b/profiles/thomas/default.nix @@ -83,12 +83,9 @@ in onepassword = { enable = desktop; }; - owncloud = { + playonlinux = { enable = desktop; }; - # playonlinux = { - # enable = desktop; - # }; rocketchat = { enable = desktop; }; @@ -132,6 +129,12 @@ in hacking = { enable = desktop; }; + kustomize = { + enable = desktop; + }; + minio = { + enable = desktop; + }; ssh = { enable = desktop; }; @@ -144,22 +147,20 @@ in blueman = { enable = desktop; }; - caffeine = { - enable = desktop; - }; - flameshot = { - enable = desktop; - }; mopidy = { enable = desktop; }; + nextcloud = { + enable = desktop; + }; nmapplet = { enable = desktop; }; - owncloud = { + udiskie = { enable = desktop; }; - udiskie = { + + tailscale = { enable = desktop; }; }; @@ -196,6 +197,10 @@ in homeDirectory = "/home/${username}"; sessionPath = [ "$HOME/.local/bin" ]; + sessionVariables = { + LC_ALL = "en_US.UTF-8"; + }; + file = { ".local/bin/git-gh-pages" = { executable = true; diff --git a/profiles/thomas/desktop/gnome.nix b/profiles/thomas/desktop/gnome.nix index 336130e..d7dd9f2 100644 --- a/profiles/thomas/desktop/gnome.nix +++ b/profiles/thomas/desktop/gnome.nix @@ -76,32 +76,29 @@ in gnome.adwaita-icon-theme gnome.gnome-tweaks + gnomeExtensions.app-icons-taskbar + gnomeExtensions.appindicator gnomeExtensions.calc - gnomeExtensions.clipman + gnomeExtensions.custom-hot-corners-extended gnomeExtensions.espresso - gnomeExtensions.gsnap gnomeExtensions.gtile - gnomeExtensions.keyman gnomeExtensions.vitals ]; gnome = { excludePackages = with pkgs; [ gnome-tour - - gnomeExtensions.applications-menu - gnomeExtensions.launch-new-instance - gnomeExtensions.places-status-indicator - gnomeExtensions.screenshot-window-sizer - gnomeExtensions.user-themes - gnomeExtensions.weather - gnomeExtensions.window-list - gnomeExtensions.workspace-indicator ]; }; }; home-manager.users."${config.profile.username}" = { config, ... }: { + services = { + mpris-proxy = { + enable = true; + }; + }; + dconf = { settings = { "org/gnome/desktop/calendar" = { @@ -127,10 +124,6 @@ in button-layout = "appmenu:minimize,maximize,close"; }; - "org/gnome/login-screen" = { - disable-user-list = true; - }; - "org/gnome/mutter" = { attach-modal-dialogs = true; dynamic-workspaces = true; @@ -141,20 +134,104 @@ in "org/gnome/shell" = { enabled-extensions = [ + "appindicatorsupport@rgcjonas.gmail.com" "auto-move-windows@gnome-shell-extensions.gcampax.github.com" + "aztaskbar@aztaskbar.gitlab.com" "calc@danigm.wadobo.com" - "clipman@popov895.ukr.net" + "custom-hot-corners-extended@G-dH.github.com" "drive-menu@gnome-shell-extensions.gcampax.github.com" "espresso@coadmunkee.github.com" - "gSnap@micahosborne" "gTile@vibou" - "keyman@dpoetzsch.github.com" "native-window-placement@gnome-shell-extensions.gcampax.github.com" "Vitals@CoreCoding.com" "windowsNavigator@gnome-shell-extensions.gcampax.github.com" ]; }; + "org/gnome/shell/extensions/custom-hot-corners-extended/misc" = { + show-osd-monitor-indexes = false; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-0-bottom-left-6" = { + ctrl = true; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-0-bottom-right-6" = { + ctrl = true; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-0-top-left-0" = { + action = "toggle-overview"; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-0-top-left-6" = { + ctrl = true; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-0-top-right-0" = { + action = "toggle-overview"; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-0-top-right-6" = { + ctrl = true; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-1-top-left-0" = { + action = "toggle-overview"; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-1-top-left-6" = { + ctrl = true; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-1-top-right-0" = { + action = "toggle-overview"; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-1-top-right-6" = { + ctrl = true; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-2-top-left-0" = { + action = "toggle-overview"; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-2-top-left-6" = { + ctrl = true; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-2-top-right-0" = { + action = "toggle-overview"; + }; + + "org/gnome/shell/extensions/custom-hot-corners-extended/monitor-2-top-right-6" = { + ctrl = true; + }; + + "org/gnome/shell/extensions/auto-move-windows" = { + application-list = [ + # "org.gnome.Console.desktop:1" + # "google-chrome.desktop:2" + # "Mailspring.desktop:3" + # "com.yktoo.ymuse.desktop:4" + # "discord.desktop:5" + # "element-desktop.desktop:5" + # "Mattermost.desktop:5" + # "rocketchat-desktop.desktop:5" + # "signal-desktop.desktop:5" + # "skypeforlinux.desktop:5" + # "slack.desktop:5" + # "teams.desktop:5" + # "telegramdesktop.desktop:5" + # "whatsapp-for-linux.desktop:5" + ]; + }; + + "org/gnome/shell/extensions/aztaskbar" = { + main-panel-height = (mkTuple [ true 40 ]); + show-apps-button = (mkTuple [ true 0 ]); + }; + "org/gnome/shell/extensions/espresso" = { has-battery = true; }; @@ -166,6 +243,10 @@ in show-voltage = true; }; + "org/gnome/shell/weather" = { + automatic-location = true; + }; + "org/gnome/tweaks" = { show-extensions-notice = false; }; @@ -175,6 +256,22 @@ in }; }; }; + + systemd = { + user = { + targets = { + "tray" = { + Unit = { + Description = "Tray target"; + BindsTo = ["gnome-session.target"]; + }; + Install = { + WantedBy = ["gnome-session.target"]; + }; + }; + }; + }; + }; }; }; } diff --git a/profiles/thomas/desktop/i3.nix b/profiles/thomas/desktop/i3.nix index b4dd9db..2f01f45 100644 --- a/profiles/thomas/desktop/i3.nix +++ b/profiles/thomas/desktop/i3.nix @@ -92,6 +92,17 @@ in }; config = mkIf cfg.enable { + profile = { + services = { + caffeine = { + enable = true; + }; + flameshot = { + enable = true; + }; + }; + }; + services = { xserver = { windowManager = { diff --git a/profiles/thomas/programs/default.nix b/profiles/thomas/programs/default.nix index 112d4db..aa29d2c 100644 --- a/profiles/thomas/programs/default.nix +++ b/profiles/thomas/programs/default.nix @@ -7,6 +7,8 @@ ./dircolors.nix ./git.nix ./hacking.nix + ./kustomize.nix + ./minio.nix ./ssh.nix ./starship.nix ./vscode.nix diff --git a/profiles/thomas/programs/kustomize.nix b/profiles/thomas/programs/kustomize.nix new file mode 100644 index 0000000..71d5f83 --- /dev/null +++ b/profiles/thomas/programs/kustomize.nix @@ -0,0 +1,30 @@ +{ pkgs, lib, config, options, ... }: +with lib; + +let + cfg = config.profile.programs.kustomize; + +in +{ + options = { + profile = { + programs = { + kustomize = { + enable = mkEnableOption "Kustomize"; + }; + }; + }; + }; + + config = mkIf cfg.enable { + home-manager.users."${config.profile.username}" = { config, ... }: { + xdg = { + configFile = { + "kustomize/plugin/viaduct.ai/v1/ksops/ksops" = { + source = "${pkgs.kustomize-sops}/lib/viaduct.ai/v1/ksops-exec/ksops-exec"; + }; + }; + }; + }; + }; +} diff --git a/profiles/thomas/programs/minio.nix b/profiles/thomas/programs/minio.nix new file mode 100644 index 0000000..0e8f6ef --- /dev/null +++ b/profiles/thomas/programs/minio.nix @@ -0,0 +1,44 @@ +{ pkgs, lib, config, options, ... }: +with lib; + +let + cfg = config.profile.programs.minio; + +in +{ + options = { + profile = { + programs = { + minio = { + enable = mkEnableOption "Minio"; + }; + }; + }; + }; + + config = mkIf cfg.enable { + environment = { + systemPackages = with pkgs; [ + minio-client + ]; + }; + + # home-manager.users."${config.profile.username}" = let + # minioPath = config.age.secrets."users/thomas/minio".path; + # in { config, ... }: { + # home = { + # file = { + # ".mc/config.json" = { + # source = minioPath; + # }; + # }; + # }; + # }; + + # age.secrets."users/thomas/minio" = { + # file = ../../../secrets/users/thomas/minio.age; + # owner = "thomas"; + # group = "users"; + # }; + }; +} diff --git a/profiles/thomas/services/default.nix b/profiles/thomas/services/default.nix index 6810a52..00d8b97 100644 --- a/profiles/thomas/services/default.nix +++ b/profiles/thomas/services/default.nix @@ -2,6 +2,6 @@ { imports = [ - + ./tailscale.nix ]; } diff --git a/profiles/thomas/services/tailscale.nix b/profiles/thomas/services/tailscale.nix new file mode 100644 index 0000000..98559b1 --- /dev/null +++ b/profiles/thomas/services/tailscale.nix @@ -0,0 +1,49 @@ +{ pkgs, lib, config, options, ... }: +with lib; + +let + cfg = config.profile.services.tailscale; + + mkTrayService = lib.recursiveUpdate { + Install.WantedBy = ["tray.target"]; + Unit.After = ["tray.target"]; + }; + +in +{ + options = { + profile = { + services = { + tailscale = { + enable = mkEnableOption "Tailscale"; + }; + }; + }; + }; + + config = mkIf cfg.enable { + environment = { + systemPackages = with pkgs; [ + tailscale-systray + ]; + }; + + home-manager.users."${config.profile.username}" = { config, ... }: { + systemd = { + user = { + services = { + "tailscale-tray" = mkTrayService { + Unit = { + Description = "Tailscale indicator for system tray"; + }; + Service = { + ExecStartPre = "${pkgs.coreutils-full}/bin/sleep 5"; + ExecStart = "${pkgs.tailscale-systray}/bin/tailscale-systray"; + }; + }; + }; + }; + }; + }; + }; +} diff --git a/secrets/secrets.nix b/secrets/secrets.nix index 48e60a0..a15f661 100644 --- a/secrets/secrets.nix +++ b/secrets/secrets.nix @@ -31,4 +31,5 @@ in "users/tabea/password.age".publicKeys = users ++ systems; "users/thomas/hackthebox.age".publicKeys = users ++ systems; + "users/thomas/minio.age".publicKeys = users ++ systems; } diff --git a/secrets/users/thomas/minio.age b/secrets/users/thomas/minio.age new file mode 100644 index 0000000000000000000000000000000000000000..cd544c165bb7e7e5077f94b6f4410ea1a14dc21c GIT binary patch literal 3495 zcmZ9|`9Bkk;{fo7NGTyw$*~Y}&CJY%Y?*C#85^@y#xCrhoq2MLqC^N!lA}ZEPI5ev z%H5-sE9EFfj!+U^pYQkA{(|@G^`^6#j!b@}SSgH+67Zb_Vm43)(suL)NF*FbCc^~+ z0l@&mSTcx60;t@j0U`+j&x;l!17L8BfJP5x3%GnVQQ;Tqj;Fw4L14TR6o^;JwJ8da z3ynd+E2VI#kjy1;;VKr%K2+iF0+fPW$b46O5LG6&Cm`VRKQ#tAfQ=>r5Udz5%a`IS z;D{6uX(-W+%tm5-X^JS48Z9Yv=LVI*e-1ncT162(#=Di#++ z4WLFr-Q3Y^l^o+DhzZ2dV<=?ypIRW78nF)!z;Ikq60ndL85k|XiUNghC0TO40fFloer=tV8G7y3)nAo1Q^NU zqVNzL9xCLMcr?75(%Dt+923bPkX(Yf5i(yODAq-p) z%1;&=rNqI-D4?8!Wcx)C6l`q?QpSacP=omlvIvcUhSCEt6q-vE(j@|napn*Mg=8WG zYcB+XP@#Wnm{7C~#0CU0G43)cny(<+(=je!k|HWd9ODASL-0 zx`YWJQ`r!KCBQyB%+5wz#n~4k6cLnUk_!`w$E#?>|C@Jo1c+QD3}qynAhnOOr_!Z< zG%5|jCq=mXGhv~w7#CmSK4~x?>?~A9hH5+fi0ReT;WQROz|*Jxi(j)Qr>H>75o~uB z=iztVcJ55)fOS=vvAO;ugNGGH$)@L~`3oB_Ngup~nY17qAaS}0+jUG&@Lxw$9m`Hq z|Eq-k@=ngu27xSHs}H|d9xutPR@vO&@q1Eo9JDBs$|8KEgU&`jhis(21{!TEiK&1( zw;$MLVMo88s;%u}|D6dRhq7&c^S^eI%K;gcx}D<^+=;yfONCXD8ApBv+$tU3bEx>r zuUq3rzGIKe&ey50)hhFbCS)djJ7yV^<`{tAC0pFy>sxNuwXhqJi1F@yY-L-UvU9w> zA6MJ%b$hnt`u07$M#^^Kz$)3tmOk>BvSkndS2x_X_+57E)umLQPH)p)ATJ0r$Y(gI zT|?b#*tm+T8E@HECl>v+RC9F0nXL@S%llGYTOH<;C`@vn$UD8;q|ElFqn;pHH*Gv` z)ZBBqrp8cDYm3G5er=*%`|sIl-e*IJ0q*>E=i%(EGyJkcy&ZRh7k176Jh7E?ddbfc zPD*17<2%_OEk-lp(za82j7H~wap`ULrq`O*{L3cJFuZb z(_mkgugBVDOMgO7I;rtLabEgj&>|RrJUrJBH8}X1o02CeDeyYpF}FWu#3|iOUmWIi z{q9b^vrzQllV=l^dY+rhHD2w!(N#Y6Wam4YW7Q0O44*bs?VNc5)A|UiY3JBgSfM^~ zw!h45&G-*t2yl@GI_)*SsVdehHsHxu*I)1Q5RMl&_73f6Y1oo^n|1ejOQUzN$uX}; zf*1VoTC0T#&1vxt%%%L8AQC>h906_${c;y^0c&n$=Zv1uM!y0#)>W2;g~wusSCbNB z8)xksXYLGIpDtZzpQHL-+bn1_v!-2`+-zW@sJFLi{d<%;Cnf%p!p?xw!An7vOu3J!oh_>`oD>N}iK@4x8_PB8%6h=QJ@h8#)Ge2n6*9 zkCK3e!RmcYEeE%HRDNiFS&$1bP=>_CZ^6DE8^yxT-FWmIJSk}nVSIlO(GPoB+1J_S z+LY#$+Np@0%{o6I9j*j^Bz@sSw>~s^Pe?ea5v~Dl%zir{JC-RA*gBx6W8tW6G})LL zcj^?kxm&wj6+u$lSST} z#m}EnORfk%%87%;Ba5XrGuM2MU~G$Bub&5q83!&F95_9bht%)AX`=S`)e1s7PN&$q z++=MF>o4WXhfRD#M^wi_6_j4&^W%EaE+Fprw?%PLy0&LWpJsN+n@i)U3>57^QkLFp zwoYZPa-W#0xZ9ZX0kt{3lbPRY*y(b(|8wib<&ehIHw#{-p#@z%_9a1Khc`&C%tJ5F z7hXz)Z>c@11yc*gdA7Xzs%YPRBLCZvX!34i4crsIN*=eK_*6J+_h?Hqz^cdGQ&b$s zD)rr?HF9#dno9`58r$w}FYt55=*b_+4#$}vi#e-d9M>KwpA@~s&-ab?2i zBixkw>)k-tSY5=^vTsSRbn;E!S8vGM@MPrnf^l4*!kNGDGrj-5ee6Y9_t4iL$OmQx zy&X?|`q=>v$BXvMIMv)nv-#A_n|IfwP*OA})`rISYFuEmwbs5!sQnUMcK1o`4p`o! zH0A{|k3R8Yu(j>YgSL{`$+GZv$r14Ap_rs$&x}Jy^fYefEri)XqrO|{Q^Lx|-kTVH zVyqPEn|UVRGEVlWzQQ>V{2c52^Zmfnx31>^W=(-JGSRwqBmOxvdl3ouv(1k$`+fLi z(663Jc$+UtD&rl?vP<~ZK~{qr*lin6EqMCx$Y1XCh{wO78R5Epl|KR4#+*}QQ%sNO zu3ql_H**2b`?ogF{I&Bp>;4Ehk$O$b@mkB(ZNCku(Bz5ko5OEIX8J4+s%yVadpkIv zB%#E!47|ku{ykSU7j|fP#^nR3ne&*srs}n#xgvBOt<20K=i^5;dT~#DWM1MzuOhV6 zKXu6N(#{AicZYhT9pUBuiFqEXFWyoIbh(zkP>8tgof`1!9`W=|G~%*TkDo<0boGAE zreDZDR_XBON9Ky-tJdo@iPrMZ-~&HWN;A}f#?Gs#)9&vsdtF;xmxM5}9O}lMnwq(T zD?d;dmkJ=#SP!x`tmoULrJlIuA82vrhJWWOOV&tJS>?7Gd)I4gSlK;JDi^-i-*yML zS$BD8wYg%5=pE3N@hpAOA*?B=H@+grzklmI`KL5@#%A%Ek+mvBXv9Ii;Lx8IKgh6s z$@3E5^Et5lYGM_CS=1)(OrRDE*d@AWuX%T!sYKtYc^TF=T`r|vFh7%cJaS`^s&Y`2={ zFIdax{_FjHq3BVp^Nx&7kvTRg5Fo4}ng*SCAu^xbwQ|k;PCT{VVuJDGCPAVYtHbmkeZ9%XhI=9Ed0LivTc(VCf%&5;(;L-}F3ujq+FDnKR|`m}hYH?=u*F<3 zwB~r~3iHd>ygg=Un|FH&#xJiv?;Ltfg}tzI|7jAlPX1OleNTNQYUFu%4Ww!jX-KdC z8esLsJxyFXZ>GFScr| zi%RmIO8>q)=CSvOdb14&!m>-94s8N7%x}Al_Ox#2G&{jNBq{u|@Ens5$@Yui0l4g? F{{ct3EzAG_ literal 0 HcmV?d00001 diff --git a/shared/modules/tools/default.nix b/shared/modules/tools/default.nix index 46be53f..0473426 100644 --- a/shared/modules/tools/default.nix +++ b/shared/modules/tools/default.nix @@ -16,7 +16,6 @@ with lib; hwinfo jq lsof - minio-client nix-index nmap p7zip diff --git a/shared/services/default.nix b/shared/services/default.nix index e3c7582..ef032bd 100644 --- a/shared/services/default.nix +++ b/shared/services/default.nix @@ -16,6 +16,7 @@ with lib; ./nextcloud ./nixbuild ./openssh + ./printing ./shares ./tailscale ./timesyncd diff --git a/shared/services/printing/default.nix b/shared/services/printing/default.nix new file mode 100644 index 0000000..dee0e5e --- /dev/null +++ b/shared/services/printing/default.nix @@ -0,0 +1,32 @@ +{ pkgs, lib, config, options, ... }: +with lib; + +let + cfg = config.personal.services.printing; + +in +{ + options = { + personal = { + services = { + printing = { + enable = mkEnableOption "Printing" // { + default = true; + }; + }; + }; + }; + }; + + config = mkIf cfg.enable { + services = { + printing = { + enable = true; + + drivers = [ + (pkgs.writeTextDir "share/cups/model/kmC35np.ppd" (builtins.readFile ./kmC35np.ppd)) + ]; + }; + }; + }; +} diff --git a/shared/services/printing/kmC35np.ppd b/shared/services/printing/kmC35np.ppd new file mode 100644 index 0000000..dce8c7a --- /dev/null +++ b/shared/services/printing/kmC35np.ppd @@ -0,0 +1,1275 @@ +*PPD-Adobe: "4.3" +*% Adobe Systems Printer Description File +*% For "KONICA MINOLTA bizhub C35 PPD" version 3010.042 +*% Copyright(c) 2009-2011 KONICA MINOLTA BUSINESS TECHNOLOGIES, INC. All rights reserved. +*% Created: 07.15.09 +*% Modified: 01.21.11 +*% Platform: Linux + +*FormatVersion: "4.3" +*PCFileName: "kmC35np.PPD" +*FileVersion: "1.2.2" +*LanguageEncoding: ISO-8859-1 +*LanguageVersion: German +*LanguageLevel: "3" +*Product: "(KONICA MINOLTA bizhub C35 PPD)" +*PSVersion: "(3010.042) 2" +*Manufacturer: "KONICA MINOLTA" +*ModelName: "KONICA MINOLTA bizhub C35 PPD" +*NickName: "KONICA MINOLTA bizhub C35 PPD" +*ShortNickName: "KONICA MINOLTA bizhub C35 PPD" +*AcceptsTrueType: True +*PrintPSErrors: True +*Protocols: TBCP +*ColorDevice: True +*DefaultColorSpace: CMYK +*SuggestedJobTimeOut: 0 +*SuggestedWaitTimeOut: 300 + +*%------- Available Printer Memory +*FreeVM: "7168000" + +*% Halftone Information +*ScreenFreq: "106.0" +*ScreenAngle: "45.0" +*DefaultScreenProc: Dot +*ScreenProc Dot: "{180 mul cos exch 180 mul cos add 2 div}" +*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 }" + +*TTRasterizer: Type42 +*?TTRasterizer: " + save + 42 /FontType resourcestatus + { pop pop (Type42)} {pop pop (None)} ifelse = flush + restore" +*End + +*FileSystem: True +*?FileSystem: " +save + statusdict /diskonline get exec {(True)}{(False)} ifelse = flush +restore +" +*End +*Throughput: "27" +*Password: "0" +*ExitServer: " + count 0 eq + { false } { true exch startjob } ifelse + not { + (WARNING : Cannot perform the exitserver command.) = + (Password supplied is not valid.) = + (Please contact the author of this software.) = flush quit + } if +" +*End +*Reset: " + count 0 eq + { false } { true exch startjob } ifelse + not { + (WARNING: Cannot reset printer.) = + (Missing or invalid password.) = + (Please contact the author of this software.) = flush quit + } if + systemdict /quit get exec + (WARNING : Printer Reset Failed.) = flush +" +*End + +*%----- Installable Options -------------------------------------------------- +*OpenGroup: InstallableOptions/Installierbare Optionen + +*% ----- Optional Tray +*OpenUI *OptionalBin/Papierbehälter: PickOne +*DefaultOptionalBin: None +*OptionalBin None/Ohne: "" +*OptionalBin Tray3/Einheit 3: "" +*OptionalBin Tray4/Einheit 3 + Einheit 4: "" +*CloseUI: *OptionalBin + +*% ----- Optional HardDisk and Memory Card +*OpenUI *OptionalDisk/Festplatte: PickOne +*DefaultOptionalDisk: StorageC +*OptionalDisk None/Ohne: "" +*OptionalDisk StorageC/Installiert: "" +*CloseUI: *OptionalDisk + +*CloseGroup: InstallableOptions + +*%----- Optional Bin Constraints +*UIConstraints: *OptionalBin None *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *OptionalBin None +*UIConstraints: *OptionalBin None *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *OptionalBin None +*UIConstraints: *OptionalBin Tray3 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *OptionalBin Tray3 + +*%----- MediaType - Tray2 Contraints +*UIConstraints: *InputSlot Tray2 *MediaType Envelope +*UIConstraints: *MediaType Envelope *InputSlot Tray2 + +*%----- MediaType - Tray3 Contraints +*UIConstraints: *InputSlot Tray3 *MediaType Glossy +*UIConstraints: *MediaType Glossy *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *MediaType Glossy2 +*UIConstraints: *MediaType Glossy2 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *MediaType LabelStock +*UIConstraints: *MediaType LabelStock *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *MediaType ThickStock1 +*UIConstraints: *MediaType ThickStock1 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *MediaType ThickStock2 +*UIConstraints: *MediaType ThickStock2 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *MediaType Letterhead +*UIConstraints: *MediaType Letterhead *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *MediaType Envelope +*UIConstraints: *MediaType Envelope *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *MediaType Postcard +*UIConstraints: *MediaType Postcard *InputSlot Tray3 + +*%----- MediaType - Tray4 Contraints +*UIConstraints: *InputSlot Tray4 *MediaType Glossy +*UIConstraints: *MediaType Glossy *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *MediaType Glossy2 +*UIConstraints: *MediaType Glossy2 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *MediaType LabelStock +*UIConstraints: *MediaType LabelStock *InputSlot Tray4 +*UIConstraints: *InputSlot Tray3 *MediaType ThickStock1 +*UIConstraints: *MediaType ThickStock1 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *MediaType ThickStock2 +*UIConstraints: *MediaType ThickStock2 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *MediaType Letterhead +*UIConstraints: *MediaType Letterhead *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *MediaType Envelope +*UIConstraints: *MediaType Envelope *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *MediaType Postcard +*UIConstraints: *MediaType Postcard *InputSlot Tray4 + + +*%----- MediaType - DUPLEX Contraints +*UIConstraints: *Duplex DuplexTumble *MediaType Glossy +*UIConstraints: *MediaType Glossy *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *MediaType Glossy +*UIConstraints: *MediaType Glossy *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *MediaType Glossy2 +*UIConstraints: *MediaType Glossy2 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *MediaType Glossy2 +*UIConstraints: *MediaType Glossy2 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *MediaType LabelStock +*UIConstraints: *MediaType LabelStock *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *MediaType LabelStock +*UIConstraints: *MediaType LabelStock *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *MediaType Letterhead +*UIConstraints: *MediaType Letterhead *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *MediaType Letterhead +*UIConstraints: *MediaType Letterhead *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *MediaType Envelope +*UIConstraints: *MediaType Envelope *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *MediaType Envelope +*UIConstraints: *MediaType Envelope *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *MediaType Postcard +*UIConstraints: *MediaType Postcard *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *MediaType Postcard +*UIConstraints: *MediaType Postcard *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *MediaType SingleSidedOnly +*UIConstraints: *MediaType SingleSidedOnly *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *MediaType SingleSidedOnly +*UIConstraints: *MediaType SingleSidedOnly *Duplex DuplexNoTumble + +*%----- PageSize - Tray2 Contraints +*UIConstraints: *InputSlot Tray2 *PageSize ISOB5 +*UIConstraints: *PageSize ISOB5 *InputSlot Tray2 +*UIConstraints: *InputSlot Tray2 *PageSize Com10 +*UIConstraints: *PageSize Com10 *InputSlot Tray2 +*UIConstraints: *InputSlot Tray2 *PageSize EnvDL +*UIConstraints: *PageSize EnvDL *InputSlot Tray2 +*UIConstraints: *InputSlot Tray2 *PageSize EnvC6 +*UIConstraints: *PageSize EnvC6 *InputSlot Tray2 +*UIConstraints: *InputSlot Tray2 *PageSize EnvMonarch +*UIConstraints: *PageSize EnvMonarch *InputSlot Tray2 +*UIConstraints: *InputSlot Tray2 *PageSize EnvChou3 +*UIConstraints: *PageSize EnvChou3 *InputSlot Tray2 +*UIConstraints: *InputSlot Tray2 *PageSize EnvChou4 +*UIConstraints: *PageSize EnvChou4 *InputSlot Tray2 +*%*UIConstraints: *InputSlot Tray2 *PageSize JPostcard +*%*UIConstraints: *PageSize JPostcard *InputSlot Tray2 +*%*UIConstraints: *InputSlot Tray2 *PageSize DoublePostcardRotated +*%*UIConstraints: *PageSize DoublePostcardRotated *InputSlot Tray2 + + +*%----- PageSize - Tray3 Contraints +*UIConstraints: *InputSlot Tray3 *PageSize Statement +*UIConstraints: *PageSize Statement *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize A4Plus +*UIConstraints: *PageSize A4Plus *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize LetterPlus +*UIConstraints: *PageSize LetterPlus *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize A5 +*UIConstraints: *PageSize A5 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize A6 +*UIConstraints: *PageSize A6 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize B6 +*UIConstraints: *PageSize B6 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize 4x6 +*UIConstraints: *PageSize 4x6 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize ISOB5 +*UIConstraints: *PageSize ISOB5 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize Foolscap +*UIConstraints: *PageSize Foolscap *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize UKQuarto +*UIConstraints: *PageSize UKQuarto *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize GLetter +*UIConstraints: *PageSize GLetter *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize Com10 +*UIConstraints: *PageSize Com10 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize EnvDL +*UIConstraints: *PageSize EnvDL *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize EnvC6 +*UIConstraints: *PageSize EnvC6 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize EnvMonarch +*UIConstraints: *PageSize EnvMonarch *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize EnvChou3 +*UIConstraints: *PageSize EnvChou3 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize EnvChou4 +*UIConstraints: *PageSize EnvChou4 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize JPostcard +*UIConstraints: *PageSize JPostcard *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize DoublePostcardRotated +*UIConstraints: *PageSize DoublePostcardRotated *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize 16K +*UIConstraints: *PageSize 16K *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize Kai16 +*UIConstraints: *PageSize Kai16 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize Kai32 +*UIConstraints: *PageSize Kai32 *InputSlot Tray3 +*NonUIConstraints: *InputSlot Tray3 *CustomPageSize True +*NonUIConstraints: *CustomPageSize True *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *CustomPageSize +*UIConstraints: *CustomPageSize *InputSlot Tray3 +*UIConstraints: *PageSize 8.5x13.5 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize 8.5x13.5 +*UIConstraints: *PageSize 8.125x13.25 *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PageSize 8.125x13.25 + + +*%----- PageSize - Tray4 Contraints +*UIConstraints: *InputSlot Tray4 *PageSize Statement +*UIConstraints: *PageSize Statement *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize A4Plus +*UIConstraints: *PageSize A4Plus *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize LetterPlus +*UIConstraints: *PageSize LetterPlus *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize A5 +*UIConstraints: *PageSize A5 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize A6 +*UIConstraints: *PageSize A6 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize B6 +*UIConstraints: *PageSize B6 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize 4x6 +*UIConstraints: *PageSize 4x6 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize ISOB5 +*UIConstraints: *PageSize ISOB5 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize Foolscap +*UIConstraints: *PageSize Foolscap *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize UKQuarto +*UIConstraints: *PageSize UKQuarto *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize GLetter +*UIConstraints: *PageSize GLetter *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize Com10 +*UIConstraints: *PageSize Com10 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize EnvDL +*UIConstraints: *PageSize EnvDL *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize EnvC6 +*UIConstraints: *PageSize EnvC6 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize EnvMonarch +*UIConstraints: *PageSize EnvMonarch *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize EnvChou3 +*UIConstraints: *PageSize EnvChou3 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize EnvChou4 +*UIConstraints: *PageSize EnvChou4 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize JPostcard +*UIConstraints: *PageSize JPostcard *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize DoublePostcardRotated +*UIConstraints: *PageSize DoublePostcardRotated *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize 16K +*UIConstraints: *PageSize 16K *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize Kai16 +*UIConstraints: *PageSize Kai16 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize Kai32 +*UIConstraints: *PageSize Kai32 *InputSlot Tray4 +*NonUIConstraints: *InputSlot Tray4 *CustomPageSize True +*NonUIConstraints: *CustomPageSize True *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *CustomPageSize +*UIConstraints: *CustomPageSize *InputSlot Tray4 +*UIConstraints: *PageSize 8.5x13.5 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize 8.5x13.5 +*UIConstraints: *PageSize 8.125x13.25 *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PageSize 8.125x13.25 + + + +*%----- PageSize - Duplex Contraints + + +*UIConstraints: *Duplex DuplexTumble *PageSize UKQuarto +*UIConstraints: *PageSize UKQuarto *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize UKQuarto +*UIConstraints: *PageSize UKQuarto *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize Statement +*UIConstraints: *PageSize Statement *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize Statement +*UIConstraints: *PageSize Statement *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize ISOB5 +*UIConstraints: *PageSize ISOB5 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize ISOB5 +*UIConstraints: *PageSize ISOB5 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize A5 +*UIConstraints: *PageSize A5 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize A5 +*UIConstraints: *PageSize A5 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize A6 +*UIConstraints: *PageSize A6 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize A6 +*UIConstraints: *PageSize A6 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize B6 +*UIConstraints: *PageSize B6 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize B6 +*UIConstraints: *PageSize B6 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize 4x6 +*UIConstraints: *PageSize 4x6 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize 4x6 +*UIConstraints: *PageSize 4x6 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize Com10 +*UIConstraints: *PageSize Com10 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize Com10 +*UIConstraints: *PageSize Com10 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize EnvDL +*UIConstraints: *PageSize EnvDL *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize EnvDL +*UIConstraints: *PageSize EnvDL *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize EnvC6 +*UIConstraints: *PageSize EnvC6 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize EnvC6 +*UIConstraints: *PageSize EnvC6 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize EnvMonarch +*UIConstraints: *PageSize EnvMonarch *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize EnvMonarch +*UIConstraints: *PageSize EnvMonarch *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize EnvChou3 +*UIConstraints: *PageSize EnvChou3 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize EnvChou3 +*UIConstraints: *PageSize EnvChou3 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize EnvChou4 +*UIConstraints: *PageSize EnvChou4 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize EnvChou4 +*UIConstraints: *PageSize EnvChou4 *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize JPostcard +*UIConstraints: *PageSize JPostcard *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize JPostcard +*UIConstraints: *PageSize JPostcard *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize DoublePostcardRotated +*UIConstraints: *PageSize DoublePostcardRotated *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize DoublePostcardRotated +*UIConstraints: *PageSize DoublePostcardRotated *Duplex DuplexNoTumble + +*UIConstraints: *Duplex DuplexTumble *PageSize Kai32 +*UIConstraints: *PageSize Kai32 *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexNoTumble *PageSize Kai32 +*UIConstraints: *PageSize Kai32 *Duplex DuplexNoTumble + + +*%----- EdgeType Contraints +*UIConstraints: *KMEdgeType OFF *KMImageEdge True +*UIConstraints: *KMImageEdge True *KMEdgeType OFF +*UIConstraints: *KMEdgeType OFF *KMTextEdge True +*UIConstraints: *KMTextEdge True *KMEdgeType OFF +*UIConstraints: *KMEdgeType OFF *KMGraphicsEdge True +*UIConstraints: *KMGraphicsEdge True *KMEdgeType OFF + +*UIConstraints: *KMEconoMode True *KMImageEdge True +*UIConstraints: *KMImageEdge True *KMEconoMode True +*UIConstraints: *KMEconoMode True *KMGraphicsEdge True +*UIConstraints: *KMGraphicsEdge True *KMEconoMode True + + +*%----- ColorSeparations Contraints +*UIConstraints: *Separations True *KMSelectColor False +*UIConstraints: *KMSelectColor False *Separations True + +*UIConstraints: *Separations True *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexTumble *Separations True +*UIConstraints: *Separations True *Duplex DuplexNoTumble +*UIConstraints: *Duplex DuplexNoTumble *Separations True + +*%----- PrintOnBackside Contraints +*UIConstraints: *PrintOnBackside True *InputSlot Tray3 +*UIConstraints: *InputSlot Tray3 *PrintOnBackside True +*UIConstraints: *PrintOnBackside True *InputSlot Tray4 +*UIConstraints: *InputSlot Tray4 *PrintOnBackside True + +*UIConstraints: *PrintOnBackside True *Duplex DuplexTumble +*UIConstraints: *Duplex DuplexTumble *PrintOnBackside True +*UIConstraints: *PrintOnBackside True *Duplex DuplexNoTumble +*UIConstraints: *Duplex DuplexNoTumble *PrintOnBackside True + + +*%----- Optional Disk - Collate Constraints +*UIConstraints: *OptionalDisk None *Collate True +*UIConstraints: *Collate True *OptionalDisk None + + +*%---------- Nearest Size and Scale +*OpenUI *KMNearestSize/Nächstes Format und skalieren: Boolean +*OrderDependency: 5 AnySetup *KMNearestSize +*DefaultKMNearestSize: False +*KMNearestSize True/Ein: "<> setpagedevice +<> +>> setpagedevice" +*End +*KMNearestSize False/Aus: "<> setpagedevice" +*CloseUI: *KMNearestSize + +*%====== Resolution + Print Quality +*OpenUI *Resolution/Auflösung: PickOne +*OrderDependency: 10 AnySetup *Resolution +*DefaultResolution: 600dpi +*Resolution 600dpi/Hohe Qualität: "<< /HWResolution [600 600] >> setpagedevice" +*?Resolution: " + save + currentpagedevice /HWResolution get + 0 get + ( ) cvs print + (dpi) + = flush + restore +" +*End +*CloseUI: *Resolution + +*%---------- Media Type Option +*OpenUI *MediaType/Papiertyp: PickOne +*OrderDependency: 20 AnySetup *MediaType +*DefaultMediaType: PrinterDefault +*MediaType PrinterDefault/Druckerstandard: "" +*MediaType PlainPaper/Normalpapier: "<> setpagedevice" +*MediaType Recycled/Recycling: "<> setpagedevice" +*MediaType Glossy/Glänzend1 (100-128g/m2): "<> setpagedevice" +*MediaType Glossy2/Glänzend2 (129-158g/m2): "<> setpagedevice" +*MediaType LabelStock/Etiketten: "<> setpagedevice" +*MediaType ThickStock1/Schwer 1 (91-150g/m2): "<> setpagedevice" +*MediaType ThickStock2/Schwer 2 (151-210g/m2): "<> setpagedevice" +*MediaType Letterhead/Briefbogen: "<> setpagedevice" +*MediaType Envelope/Kuvert: "<> setpagedevice" +*MediaType Postcard/Postkarte: "<> setpagedevice" +*MediaType SingleSidedOnly/Nur 1-seitig (60-90g/m2): "<> setpagedevice" +*MediaType Special/Spezialpapier (60-90g/m2): "<> setpagedevice" + + +*?MediaType: " + save + currentpagedevice /MediaType + {get} stopped + {pop pop (Plain)} {dup null eq {pop (Plain)} if} ifelse + = flush + restore" +*End +*CloseUI: *MediaType + +*%---------- InputSlot Option +*OpenUI *InputSlot/Papierquelle: PickOne +*OrderDependency: 30 AnySetup *InputSlot +*DefaultInputSlot: Auto +*InputSlot Tray1/Behälter 1: "currentpagedevice /InputAttributes get 3 known { +<< /ManualFeed false + currentpagedevice /orgTraySwitch 2 copy known { + get /TraySwitch exch + } { + pop pop + } ifelse + /MediaPosition 3 >> setpagedevice +} if" +*End +*InputSlot Tray2/Behälter 2: "currentpagedevice /InputAttributes get 0 known { +<< /ManualFeed false + currentpagedevice /orgTraySwitch 2 copy known { + get /TraySwitch exch + } { + pop pop + } ifelse + /MediaPosition 0 >> setpagedevice +} if" +*End +*InputSlot Tray3/Behälter 3: "currentpagedevice /InputAttributes get 1 known { +<< /ManualFeed false + currentpagedevice /orgTraySwitch 2 copy known { + get /TraySwitch exch + } { + pop pop + } ifelse + /MediaPosition 1 >> setpagedevice +} if" +*End +*InputSlot Tray4/Behälter 4: "currentpagedevice /InputAttributes get 4 known { +<< /ManualFeed false + currentpagedevice /orgTraySwitch 2 copy known { + get /TraySwitch exch + } { + pop pop + } ifelse + /MediaPosition 4 >> setpagedevice +} if" +*End +*InputSlot ManualFeed/Behälter 1 (manuelle Zufuhr): "<< /ManualFeed true /MediaPosition 3 >> setpagedevice" +*InputSlot Auto/Auto: "<< /ManualFeed false /TraySwitch true /MediaPosition null>> setpagedevice" +*CloseUI: *InputSlot + + +*%----------- Manually Print on 2nd side +*OpenUI *PrintOnBackside/Zweite Seite manuell bedrucken: PickOne +*OrderDependency: 35 AnySetup *PrintOnBackside +*DefaultPrintOnBackside: False +*PrintOnBackside True/Ein: "<< /PrintOnBackside True >> setpagedevice" +*PrintOnBackside False/Aus: "<< /PrintOnBackside False >> setpagedevice" +*CloseUI: *PrintOnBackside + +*% ================== Paper Handling +*OpenUI *PageSize/Papierformat: PickOne +*OrderDependency: 40 AnySetup *PageSize +*DefaultPageSize: Letter +*PageSize Letter/Letter: "<< /PageSize [612 792]>> setpagedevice" +*PageSize Legal/Legal: "<< /PageSize [612 1008]>> setpagedevice" +*PageSize Statement/Statement: "<< /PageSize [396 612]>> setpagedevice" +*PageSize Executive/Executive: "<< /PageSize [522 756]>> setpagedevice" +*PageSize 8.5x13.5/8 1/2 x 13 1/2: "<< /PageSize [612 972]>>setpagedevice" +*PageSize 8.125x13.25/8 1/8 x 13 1/4: "<< /PageSize [585 954]>>setpagedevice" +*PageSize A4/A4: "<< /PageSize [595 842]>> setpagedevice" +*PageSize A5/A5: "<< /PageSize [420 595]>> setpagedevice" +*PageSize A6/A6: "<< /PageSize [298 420]>> setpagedevice" +*PageSize B5/B5 (JIS): "<< /PageSize [516 729]>> setpagedevice" +*PageSize ISOB5/B5 (ISO): "<< /PageSize [499 709]>> setpagedevice" +*PageSize B6/B6: "<< /PageSize [362 512]>> setpagedevice" +*PageSize A4Plus/Folio: "<< /PageSize [595 935]>> setpagedevice" +*PageSize LetterPlus/SP Folio: "<< /PageSize [612 914]>> setpagedevice" +*PageSize Foolscap/Foolscap: "<< /PageSize [576 936]>> setpagedevice" +*PageSize UKQuarto/UK Quarto: "<< /PageSize [576 720]>> setpagedevice" +*PageSize GLetter/Government Letter: "<< /PageSize [576 756]>> setpagedevice" +*PageSize GLegal/Government Legal: "<< /PageSize [612 935]>> setpagedevice" +*PageSize 4x6/Fotoformat 4"x6"_10x15: "<< /PageSize [288 432]>> setpagedevice" +*PageSize Com10/Kuvert Com10: "<< /PageSize [297 684]>> setpagedevice" +*PageSize EnvDL/Kuvert DL: "<< /PageSize [312 624]>> setpagedevice" +*PageSize EnvC6/Kuvert C6: "<< /PageSize [323 459]>> setpagedevice" +*PageSize EnvMonarch/Kuvert Monarch: "<< /PageSize [279 540]>> setpagedevice" +*PageSize EnvChou3/Kuvert Chou Nr. 3: "<< /PageSize [340 666]>> setpagedevice" +*PageSize EnvChou4/Kuvert Chou Nr. 4: "<< /PageSize [255 581]>> setpagedevice" +*PageSize JPostcard/Japanische Postkarte: "<< /PageSize [284 419]>> setpagedevice" +*PageSize DoublePostcardRotated/Jap. Antwortkarte:"<< /PageSize [420 567]>> setpagedevice" +*PageSize 16K/16K: "<< /PageSize [553 765]>> setpagedevice" +*PageSize Kai16/Kai 16: "<< /PageSize [524 737]>> setpagedevice" +*PageSize Kai32/Kai 32: "<< /PageSize [369 524]>> setpagedevice" + +*?PageSize: " + save + currentpagedevice /PageSize get aload pop + 2 copy gt {exch} if + (Unknown) + (<<) cvx exec + [612 792] (Letter) + [612 1008] (Legal) + [396 612] (Statement) + [522 756] (Executive) + [612 972] (8.5x13.5) + [585 954] (8.125x13.25) + [595 842] (A4) + [420 595] (A5) + [298 420] (A6) + [516 729] (B5) + [499 709] (ISOB5) + [362 512] (B6) + [595 935] (A4Plus) + [612 914] (LetterPlus) + [576 936] (Foolscap) + [576 720] (UKQuarto) + [576 756] (GLetter) + [612 935] (GLegal) + [288 432] (4x6) + [297 684] (Com10) + [312 624] (EnvDL) + [323 459] (EnvC6) + [279 540] (EnvMonarch) + [340 666] (EnvChou3) + [255 581] (EnvChou4) + [284 419] (JPostcard) + [420 567] (DoublePostcardRotated) + [553 765] (16K) + [524 737] (Kai16) + [369 524] (Kai32) + (>>) cvx exec + { 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 + +*UseHWMargins True: "" +*DefaultUseHWMargins: True +*HWMargins: 12 12 12 12 +*LeadingEdge Short: "" +*DefaultLeadingEdge: Short + +*NonUIOrderDependency: 44 AnySetup *CustomPageSize +*CustomPageSize True: " +pop pop pop +exch +<< + /CustomPageSize [ 5 -2 roll ] + /ImagingBBox null +>> setpagedevice" +*End + +*ParamCustomPageSize Height: 1 points 419.6 1008 +*ParamCustomPageSize Width: 2 points 260.9 612.3 +*ParamCustomPageSize WidthOffset: 3 points 0 0 +*ParamCustomPageSize HeightOffset: 4 points 0 0 +*ParamCustomPageSize Orientation: 5 int 0 1 + +*OpenUI *PageRegion: PickOne +*OrderDependency: 45 AnySetup *PageRegion +*DefaultPageRegion: Letter +*PageRegion Letter/Letter: "<< /PageSize [612 792]>> setpagedevice" +*PageRegion Legal/Legal: "<< /PageSize [612 1008]>> setpagedevice" +*PageRegion Statement/Statement: "<< /PageSize [396 612]>> setpagedevice" +*PageRegion Executive/Executive: "<< /PageSize [522 756]>> setpagedevice" +*PageRegion 8.5x13.5/8 1/2 x 13 1/2: "<< /PageSize [612 972] >> setpagedevice" +*PageRegion 8.125x13.25/8 1/8 x 13 1/4: "<< /PageSize [585 954] >> setpagedevice" +*PageRegion A4/A4: "<< /PageSize [595 842]>> setpagedevice" +*PageRegion A5/A5: "<< /PageSize [420 595]>> setpagedevice" +*PageRegion A6/A6: "<< /PageSize [298 420]>> setpagedevice" +*PageRegion B5/B5 (JIS): "<< /PageSize [516 729]>> setpagedevice" +*PageRegion ISOB5/B5 (ISO): "<< /PageSize [499 709]>> setpagedevice" +*PageRegion B6/B6: "<< /PageSize [362 512]>> setpagedevice" +*PageRegion A4Plus/Folio: "<< /PageSize [595 935]>> setpagedevice" +*PageRegion LetterPlus/SP Folio: "<< /PageSize [612 914]>> setpagedevice" +*PageRegion Foolscap/Foolscap: "<< /PageSize [576 936]>> setpagedevice" +*PageRegion UKQuarto/UK Quarto: "<< /PageSize [576 720]>> setpagedevice" +*PageRegion GLetter/Government Letter: "<< /PageSize [576 756]>> setpagedevice" +*PageRegion GLegal/Government Legal: "<< /PageSize [612 935]>> setpagedevice" +*PageRegion 4x6/Fotoformat 4"x6"_10x15: "<< /PageSize [288 432]>> setpagedevice" +*PageRegion Com10/Kuvert Com10: "<< /PageSize [297 684]>> setpagedevice" +*PageRegion EnvDL/Kuvert DL: "<< /PageSize [312 624]>> setpagedevice" +*PageRegion EnvC6/Kuvert C6: "<< /PageSize [323 459]>> setpagedevice" +*PageRegion EnvMonarch/Kuvert Monarch: "<< /PageSize [279 540]>> setpagedevice" +*PageRegion EnvChou3/Kuvert Chou Nr. 3: "<< /PageSize [340 666]>> setpagedevice" +*PageRegion EnvChou4/Kuvert Chou Nr. 4: "<< /PageSize [255 581]>> setpagedevice" +*PageRegion JPostcard/Japanische Postkarte: "<< /PageSize [284 419]>> setpagedevice" +*PageRegion DoublePostcardRotated/Jap. Antwortkarte: "<< /PageSize [420 567]>> setpagedevice" +*PageRegion 16K/16K: "<< /PageSize [553 765]>> setpagedevice" +*PageRegion Kai16/Kai 16: "<< /PageSize [524 737]>> setpagedevice" +*PageRegion Kai32/Kai 32: "<< /PageSize [369 524]>> setpagedevice" + +*?PageRegion: " + save + currentpagedevice /PageSize get aload pop + 2 copy gt {exch} if + (Unknown) + 25 dict + [612 792] (Letter) + [612 1008] (Legal) + [396 612] (Statement) + [522 756] (Executive) + [612 972] (8.5x13.5) + [585 954] (8.125x13.25) + [595 842] (A4) + [420 595] (A5) + [298 420] (A6) + [516 729] (B5) + [499 709] (ISOB5) + [362 512] (B6) + [595 935] (A4Plus) + [612 914] (LetterPlus) + [576 936] (Foolscap) + [576 720] (UKQuarto) + [576 756] (GLetter) + [612 935] (GLegal) + [288 432] (4x6) + [297 684] (Com10) + [312 624] (EnvDL) + [323 459] (EnvC6) + [279 540] (EnvMonarch) + [340 666] (EnvChou3) + [255 581] (EnvChou4) + [284 419] (JPostcard) + [420 567] (DoublePostcardRotated) + [553 765] (16K) + [524 737] (Kai16) + [369 524] (Kai32) + { 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: *PageRegion +*RequiresPageRegion All: True + +*% The following entries provide information about specific paper keywords. +*DefaultImageableArea: Letter +*ImageableArea Letter/Letter: "12 12 600 780" +*ImageableArea Legal/Legal: "12 12 600 996" +*ImageableArea Statement/Statement: "12 12 384 600" +*ImageableArea Executive/Executive: "12 12 510 744" +*ImageableArea 8.5x13.5/8 1/2 x 13 1/2: "12 12 600 960" +*ImageableArea 8.125x13.25/8 1/8 x 13 1/4: "12 12 573 942" +*ImageableArea A4/A4: "12 12 583 830" +*ImageableArea A5/A5: "12 12 408 583" +*ImageableArea A6/A6: "12 12 286 408" +*ImageableArea B5/B5 (JIS): "12 12 504 717" +*ImageableArea ISOB5/B5 (ISO): "12 12 487 697" +*ImageableArea B6/B6: "12 12 350 500" +*ImageableArea A4Plus/Folio: "12 12 583 923" +*ImageableArea LetterPlus/SP Folio: "12 12 600 902" +*ImageableArea Foolscap/Foolscap: "12 12 564 924" +*ImageableArea UKQuarto/UK Quarto: "12 12 564 708" +*ImageableArea GLetter/Government Letter: "12 12 564 744" +*ImageableArea GLegal/Government Legal: "12 12 600 923" +*ImageableArea 4x6/Fotoformat 4"x6"_10x15: "12 12 276 420" +*ImageableArea Com10/Kuvert Com10: "12 12 285 672" +*ImageableArea EnvDL/Kuvert DL: "12 12 300 612" +*ImageableArea EnvC6/Kuvert C6: "12 12 311 447" +*ImageableArea EnvMonarch/Kuvert Monarch: "12 12 267 528" +*ImageableArea EnvChou3/Kuvert Chou Nr. 3: "12 12 328 654" +*ImageableArea EnvChou4/Kuvert Chou Nr. 4: "12 12 243 569" +*ImageableArea JPostcard/Japanische Postkarte: "12 12 272 407" +*ImageableArea DoublePostcardRotated/Jap. Antwortkarte: "12 12 408 555" +*ImageableArea 16K/16K: "12 12 541 753" +*ImageableArea Kai16/Kai 16: "12 12 512 725" +*ImageableArea Kai32/Kai 32: "12 12 357 512" + +*?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 + +*% These provide the physical dimensions of the paper (by keyword) +*DefaultPaperDimension: Letter +*PaperDimension Letter/Letter: "612 792" +*PaperDimension Legal/Legal: "612 1008" +*PaperDimension Statement/Statement: "396 612" +*PaperDimension Executive/Executive: "522 756" +*PaperDimension 8.5x13.5/8 1/2 x 13 1/2: "612 972" +*PaperDimension 8.125x13.25/8 1/8 x 13 1/4: "585 954" +*PaperDimension A4/A4: "595 842" +*PaperDimension A5/A5: "420 595" +*PaperDimension A6/A6: "298 420" +*PaperDimension B5/B5 (JIS): "516 729" +*PaperDimension ISOB5/B5 (ISO): "499 709" +*PaperDimension B6/B6: "362 512" +*PaperDimension A4Plus/Folio: "595 935" +*PaperDimension LetterPlus/SP Folio: "612 914" +*PaperDimension Foolscap/Foolscap: "576 936" +*PaperDimension UKQuarto/UK Quarto: "576 720" +*PaperDimension GLetter/Government Letter: "576 756" +*PaperDimension GLegal/Government Legal: "612 935" +*PaperDimension 4x6/Fotoformat 4"x6"_10x15: "288 432" +*PaperDimension Com10/Kuvert Com10: "297 684" +*PaperDimension EnvDL/Kuvert DL: "312 624" +*PaperDimension EnvC6/Kuvert C6: "323 459" +*PaperDimension EnvMonarch/Kuvert Monarch: "279 540" +*PaperDimension EnvChou3/Kuvert Chou Nr. 3: "340 666" +*PaperDimension EnvChou4/Kuvert Chou Nr. 4: "255 581" +*PaperDimension JPostcard/Japanische Postkarte: "284 419" +*PaperDimension DoublePostcardRotated/Jap. Antwortkarte: "420 567" +*PaperDimension 16K/16K: "553 765" +*PaperDimension Kai16/Kai 16: "524 737" +*PaperDimension Kai32/Kai 32: "369 524" + +*%-------------- Collate +*OpenUI *Collate/Sortieren: Boolean +*OrderDependency: 60 AnySetup *Collate +*DefaultCollate: False +*Collate True/Ein: "<< /Collate true >> setpagedevice" +*Collate False/Aus: "<< /Collate false >> setpagedevice" +*CloseUI: *Collate + +*%----------- Duplex Option +*OpenUI *Duplex/Duplexoptionen: PickOne +*OrderDependency: 62 AnySetup *Duplex +*DefaultDuplex: DuplexNoTumble +*Duplex None/Simplex: "<> setpagedevice" +*Duplex DuplexNoTumble/Lange Kante:"<> setpagedevice" +*Duplex DuplexTumble/Kurze Kante:"<> setpagedevice" +*?Duplex: "save + currentpagedevice /Duplex get + { currentpagedevice /Tumble get + {(DuplexTumble)}{(DuplexNoTumble)}ifelse + } + { (None)} + ifelse = flush +restore +" +*End +*CloseUI: *Duplex + +*%----------- Select Color +*OpenUI *KMSelectColor/Farbe wählen: PickOne +*OrderDependency: 64 AnySetup *KMSelectColor +*DefaultKMSelectColor: True +*KMSelectColor True/Farbe: "<>setpagedevice +<>setpagedevice" +*End +*KMSelectColor False/Graustufen: "<< /ProcessColorModel /DeviceGray>> setpagedevice +<< /BitsPerPixel 8 >> setpagedevice" +*End +*CloseUI: *KMSelectColor + +*%----------- Color Separations +*OpenUI *Separations/Farbtrennung: PickOne +*OrderDependency: 66 AnySetup *Separations +*DefaultSeparations: False +*Separations True/Ein: "<< /Separations true>> setpagedevice" +*Separations False/Aus: "<< /Separations false >> setpagedevice" +*CloseUI: *Separations + +*DefaultOutputBin: OnlyOne + +*%------------- Brightness +*OpenUI *KMBrightness/Helligkeit: PickOne +*OrderDependency: 68 AnySetup *KMBrightness +*DefaultKMBrightness: 0 +*KMBrightness -15/-15%: "statusdict /setbrightness known {statusdict begin -3 setbrightness end} if" +*KMBrightness -10/-10%: "statusdict /setbrightness known {statusdict begin -2 setbrightness end} if" +*KMBrightness -5/-5%: "statusdict /setbrightness known {statusdict begin -1 setbrightness end} if" +*KMBrightness 0/0%: "statusdict /setbrightness known {statusdict begin 0 setbrightness end} if" +*KMBrightness 5/5%: "statusdict /setbrightness known {statusdict begin 1 setbrightness end} if" +*KMBrightness 10/10%: "statusdict /setbrightness known {statusdict begin 2 setbrightness end} if" +*KMBrightness 15/15%: "statusdict /setbrightness known {statusdict begin 3 setbrightness end} if" +*CloseUI: *KMBrightness + +*%--------- Image Options Group +*OpenGroup: *KMImageOptions/Bildoptionen + +*OpenUI *KMImageRGBSource/Bild RGB-Quelle: PickOne +*OrderDependency: 70 AnySetup *KMImageRGBSource +*DefaultKMImageRGBSource: sRGB +*KMImageRGBSource None/Kein:"statusdict /setsourceprofileex known {statusdict begin 2 (DEVICE) setsourceprofileex end} if" +*KMImageRGBSource sRGB/sRGB:"statusdict /setsourceprofileex known {statusdict begin 2 (sRGB) setsourceprofileex end} if" +*KMImageRGBSource AdobeRGB/Adobe RGB (1998):"statusdict /setsourceprofileex known {statusdict begin 2 (AdobeRGB1998) setsourceprofileex end} if" +*KMImageRGBSource AppleRGB/Apple RGB:"statusdict /setsourceprofileex known {statusdict begin 2 (AppleRGB) setsourceprofileex end} if" +*KMImageRGBSource ColorMatch/ColorMatch RGB:"statusdict /setsourceprofileex known {statusdict begin 2 (ColorMatchRGB) setsourceprofileex end} if" +*KMImageRGBSource baRGB/Blau-Einstellung RGB:"statusdict /setsourceprofileex known {statusdict begin 2 (BlueAdjustRGB) setsourceprofileex end} if" +*CloseUI: *KMImageRGBSource + +*OpenUI *KMImageRGBIntent/Bild RGB Intent: PickOne +*OrderDependency: 72 AnySetup *KMImageRGBIntent +*DefaultKMImageRGBIntent: Picture +*KMImageRGBIntent Business/Lebhaft:"statusdict /setintent known {statusdict begin 2 2 setintent end} if" +*KMImageRGBIntent Picture/Fotografisch:"statusdict /setintent known {statusdict begin 2 0 setintent end} if" +*KMImageRGBIntent Proof/Relative Farbe:"statusdict /setintent known {statusdict begin 2 1 setintent end} if" +*KMImageRGBIntent Match/Absolute Farbe:"statusdict /setintent known {statusdict begin 2 3 setintent end} if" +*CloseUI: *KMImageRGBIntent + +*OpenUI *KMImageRGBGrayTreatment/Bild RGB Graustufenwandlung: PickOne +*OrderDependency: 74 AnySetup *KMImageRGBGrayTreatment +*DefaultKMImageRGBGrayTreatment: BlackGray +*KMImageRGBGrayTreatment CompBlack/Zusammensetzen Schwarz:"statusdict /setrgbblack known {statusdict begin 2 2 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 2 (Automatic) setdestinationprofileex end} if" +*End +*KMImageRGBGrayTreatment BlackGray/Schwarz und Grau:"statusdict /setrgbblack known {statusdict begin 2 1 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 2 (Automatic) setdestinationprofileex end} if" +*End +*KMImageRGBGrayTreatment BlackOnly/Nur Schwarz:"statusdict /setrgbblack known {statusdict begin 2 0 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 2 (Automatic) setdestinationprofileex end} if" +*End +*CloseUI: *KMImageRGBGrayTreatment + +*OpenUI *KMImageHalftones/Bild Halbton: PickOne +*OrderDependency: 76 AnySetup *KMImageHalftones +*DefaultKMImageHalftones: Detail +*KMImageHalftones UltraDetail/Strichzeichnung: "statusdict /sethalftoneex known {statusdict begin 2 2 sethalftoneex end} if" +*KMImageHalftones Detail/Details: "statusdict /sethalftoneex known {statusdict begin 2 1 sethalftoneex end} if" +*KMImageHalftones Smooth/Smooth: "statusdict /sethalftoneex known {statusdict begin 2 0 sethalftoneex end} if" +*CloseUI: *KMImageHalftones + +*OpenUI *KMImageEdge/Bild Kantenglättung: Boolean +*OrderDependency: 78 AnySetup *KMImageEdge +*DefaultKMImageEdge: False +*KMImageEdge True/Ein: "statusdict /setedgeenhance known {statusdict begin 2 1 setedgeenhance end} if" +*KMImageEdge False/Aus: "statusdict /setedgeenhance known {statusdict begin 2 0 setedgeenhance end} if" +*CloseUI: *KMImageEdge + + +*CloseGroup: *KMImageOptions + +*%--------- Text Options Group +*OpenGroup: *KMTextOptions/Textoptionen + +*OpenUI *KMTextRGBSource/Text RGB-Quelle: PickOne +*OrderDependency: 80 AnySetup *KMTextRGBSource +*DefaultKMTextRGBSource: sRGB +*KMTextRGBSource None/Kein:"statusdict /setsourceprofileex known {statusdict begin 1 (DEVICE) setsourceprofileex end} if" +*KMTextRGBSource sRGB/sRGB:"statusdict /setsourceprofileex known {statusdict begin 1 (sRGB) setsourceprofileex end} if" +*KMTextRGBSource AdobeRGB/Adobe RGB (1998):"statusdict /setsourceprofileex known {statusdict begin 1 (AdobeRGB1998) setsourceprofileex end} if" +*KMTextRGBSource AppleRGB/Apple RGB:"statusdict /setsourceprofileex known {statusdict begin 1 (AppleRGB) setsourceprofileex end} if" +*KMTextRGBSource ColorMatch/ColorMatch RGB:"statusdict /setsourceprofileex known {statusdict begin 1 (ColorMatchRGB) setsourceprofileex end} if" +*KMTextRGBSource baRGB/Blau-Einstellung RGB:"statusdict /setsourceprofileex known {statusdict begin 1 (BlueAdjustRGB) setsourceprofileex end} if" +*CloseUI: *KMTextRGBSource + +*OpenUI *KMTextRGBIntent/Text RGB Intent: PickOne +*OrderDependency: 82 AnySetup *KMTextRGBIntent +*DefaultKMTextRGBIntent: Business +*KMTextRGBIntent Business/Lebhaft:"statusdict /setintent known {statusdict begin 1 2 setintent end} if" +*KMTextRGBIntent Picture/Fotografisch:"statusdict /setintent known {statusdict begin 1 0 setintent end} if" +*KMTextRGBIntent Proof/Relative Farbe:"statusdict /setintent known {statusdict begin 1 1 setintent end} if" +*KMTextRGBIntent Match/Absolute Farbe:"statusdict /setintent known {statusdict begin 1 3 setintent end} if" +*CloseUI: *KMTextRGBIntent + +*OpenUI *KMTextRGBGrayTreatment/Text RGB-Graustufenbehandlung: PickOne +*OrderDependency: 84 AnySetup *KMTextRGBGrayTreatment +*DefaultKMTextRGBGrayTreatment: BlackGray +*KMTextRGBGrayTreatment CompBlack/Zusammensetzen Schwarz:"statusdict /setrgbblack known {statusdict begin 1 2 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 1 (Automatic) setdestinationprofileex end} if" +*End +*KMTextRGBGrayTreatment BlackGray/Schwarz und Grau:"statusdict /setrgbblack known {statusdict begin 1 1 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 1 (Automatic) setdestinationprofileex end} if" +*End +*KMTextRGBGrayTreatment BlackOnly/Nur Schwarz:"statusdict /setrgbblack known {statusdict begin 1 0 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 1 (Automatic) setdestinationprofileex end} if" +*End +*CloseUI: *KMTextRGBGrayTreatment + +*OpenUI *KMTextHalftones/Text Halbton: PickOne +*OrderDependency: 86 AnySetup *KMTextHalftones +*DefaultKMTextHalftones: UltraDetail +*KMTextHalftones UltraDetail/Strichzeichnung: "statusdict /sethalftoneex known {statusdict begin 1 2 sethalftoneex end} if" +*KMTextHalftones Detail/Details: "statusdict /sethalftoneex known {statusdict begin 1 1 sethalftoneex end} if" +*KMTextHalftones Smooth/Smooth: "statusdict /sethalftoneex known {statusdict begin 1 0 sethalftoneex end} if" +*CloseUI: *KMTextHalftones + +*OpenUI *KMTextEdge/Text Kantenglättung: Boolean +*OrderDependency: 88 AnySetup *KMTextEdge +*DefaultKMTextEdge: True +*KMTextEdge True/Ein: "statusdict /setedgeenhance known {statusdict begin 1 1 setedgeenhance end} if" +*KMTextEdge False/Aus: "statusdict /setedgeenhance known {statusdict begin 1 0 setedgeenhance end} if" +*CloseUI: *KMTextEdge + +*CloseGroup: *KMTextOptions + +*%--------- Graphics Options Group +*OpenGroup: *KMGraphicsOptions/Grafikoptionen + +*OpenUI *KMGraphicsRGBSource/Grafiken RGB-Quelle: PickOne +*OrderDependency: 90 AnySetup *KMGraphicsRGBSource +*DefaultKMGraphicsRGBSource: sRGB +*KMGraphicsRGBSource None/Kein:"statusdict /setsourceprofileex known {statusdict begin 3 (DEVICE) setsourceprofileex end} if" +*KMGraphicsRGBSource sRGB/sRGB:"statusdict /setsourceprofileex known {statusdict begin 3 (sRGB) setsourceprofileex end} if" +*KMGraphicsRGBSource AdobeRGB/Adobe RGB (1998):"statusdict /setsourceprofileex known {statusdict begin 3 (AdobeRGB1998) setsourceprofileex end} if" +*KMGraphicsRGBSource AppleRGB/Apple RGB:"statusdict /setsourceprofileex known {statusdict begin 3 (AppleRGB) setsourceprofileex end} if" +*KMGraphicsRGBSource ColorMatch/ColorMatch RGB:"statusdict /setsourceprofileex known {statusdict begin 3 (ColorMatchRGB) setsourceprofileex end} if" +*KMGraphicsRGBSource baRGB/Blau-Einstellung RGB:"statusdict /setsourceprofileex known {statusdict begin 3 (BlueAdjustRGB) setsourceprofileex end} if" +*CloseUI: *KMGraphicsRGBSource + +*OpenUI *KMGraphicsRGBIntent/Grafiken RGB Inten: PickOne +*OrderDependency: 91 AnySetup *KMGraphicsRGBIntent +*DefaultKMGraphicsRGBIntent: Business +*KMGraphicsRGBIntent Business/Lebhaft:"statusdict /setintent known {statusdict begin 3 2 setintent end} if" +*KMGraphicsRGBIntent Picture/Fotografisch:"statusdict /setintent known {statusdict begin 3 0 setintent end} if" +*KMGraphicsRGBIntent Proof/Relative Farbe:"statusdict /setintent known {statusdict begin 3 1 setintent end} if" +*KMGraphicsRGBIntent Match/Absolute Farbe:"statusdict /setintent known {statusdict begin 3 3 setintent end} if" +*CloseUI: *KMGraphicsRGBIntent + +*OpenUI *KMGraphicsRGBGrayTreatment/Grafiken RGB-Graustufenbehandlung: PickOne +*OrderDependency: 92 AnySetup *KMGraphicsRGBGrayTreatment +*DefaultKMGraphicsRGBGrayTreatment: BlackGray +*KMGraphicsRGBGrayTreatment CompBlack/Zusammensetzen Schwarz:"statusdict /setrgbblack known {statusdict begin 3 2 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 3 (Automatic) setdestinationprofileex end} if" +*End +*KMGraphicsRGBGrayTreatment BlackGray/Schwarz und Grau:"statusdict /setrgbblack known {statusdict begin 3 1 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 3 (Automatic) setdestinationprofileex end} if" +*End +*KMGraphicsRGBGrayTreatment BlackOnly/Nur Schwarz:"statusdict /setrgbblack known {statusdict begin 3 0 setrgbblack end} if +statusdict /setdestinationprofileex known {statusdict begin 3 (Automatic) setdestinationprofileex end} if" +*End +*CloseUI: *KMGraphicsRGBGrayTreatment + +*OpenUI *KMGraphicsHalftones/Grafiken Halbton: PickOne +*OrderDependency: 93 AnySetup *KMGraphicsHalftones +*DefaultKMGraphicsHalftones: Detail +*KMGraphicsHalftones UltraDetail/Strichzeichnung: "statusdict /sethalftoneex known {statusdict begin 3 2 sethalftoneex end} if" +*KMGraphicsHalftones Detail/Details: "statusdict /sethalftoneex known {statusdict begin 3 1 sethalftoneex end} if" +*KMGraphicsHalftones Smooth/Smooth: "statusdict /sethalftoneex known {statusdict begin 3 0 sethalftoneex end} if" +*CloseUI: *KMGraphicsHalftones + +*OpenUI *KMGraphicsEdge/Grafiken Kantenglättung: Boolean +*OrderDependency: 94 AnySetup *KMGraphicsEdge +*DefaultKMGraphicsEdge: True +*KMGraphicsEdge True/Ein: "statusdict /setedgeenhance known {statusdict begin 3 1 setedgeenhance end} if" +*KMGraphicsEdge False/Aus: "statusdict /setedgeenhance known {statusdict begin 3 0 setedgeenhance end} if" +*CloseUI: *KMGraphicsEdge + +*CloseGroup: *KMGraphicsOptions + + +*OpenUI *KMEdgeType/Kantenfestigkeit: PickOne +*OrderDependency: 100 AnySetup *KMEdgeType +*DefaultKMEdgeType: LEVEL2 +*KMEdgeType OFF/Aus: "statusdict /setedgeenhtype known {statusdict begin 0 setedgeenhtype end} if" +*KMEdgeType LEVEL1/Niedrig: "statusdict /setedgeenhtype known {statusdict begin 1 setedgeenhtype end} if" +*KMEdgeType LEVEL2/Mittel: "statusdict /setedgeenhtype known {statusdict begin 2 setedgeenhtype end} if" +*KMEdgeType LEVEL3/Hoch: "statusdict /setedgeenhtype known {statusdict begin 3 setedgeenhtype end} if" +*CloseUI: *KMEdgeType + +*OpenUI *KMEconoMode/Toner sparen: Boolean +*OrderDependency: 104 AnySetup *KMEconoMode +*DefaultKMEconoMode: False +*KMEconoMode True/Ein: "statusdict /seteconomode known {statusdict begin 1 seteconomode end} if" +*KMEconoMode False/Aus: "statusdict /seteconomode known {statusdict begin 0 seteconomode end} if" +*CloseUI: *KMEconoMode + +*% === AutoTrapping ======================== +*OpenUI *KMAutoTrapping/Automatisches Überfüllen: Boolean +*OrderDependency: 99 AnySetup *KMAutoTrapping +*DefaultKMAutoTrapping: False +*KMAutoTrapping True/Ein: "statusdict /setautotrapmode known {statusdict begin true setautotrapmode end} if" +*KMAutoTrapping False/Aus: "statusdict /setautotrapmode known {statusdict begin false setautotrapmode end} if" +*End +*CloseUI: *KMAutoTrapping + +*%=== BlackOverprint ======================== +*OpenUI *KMBlackOverprint/Schwarz überdrucken: PickOne +*OrderDependency: 100 AnySetup *KMBlackOverprint +*DefaultKMBlackOverprint: None +*KMBlackOverprint None/Aus: "statusdict /setbopmode known {statusdict begin 0 setbopmode end} if" +*KMBlackOverprint Text/Text: "statusdict /setbopmode known {statusdict begin 1 setbopmode end} if" +*KMBlackOverprint TextGraphic/Text/Abbildung: "statusdict /setbopmode known {statusdict begin 2 setbopmode end} if" +*CloseUI: *KMBlackOverprint + +*%--------- Simulation Options Group +*OpenGroup: *KMSimultaionGroup/Simulation + +*OpenUI *KMSimProfile/Simulationsprofil: PickOne +*OrderDependency: 110 AnySetup *KMSimProfile +*DefaultKMSimProfile: None +*KMSimProfile None/Kein:"statusdict /setsimulationprofile known {statusdict begin (None) setsimulationprofile end} if" +*KMSimProfile SWOP/SWOP:"statusdict /setsimulationprofile known {statusdict begin (SWOP) setsimulationprofile end} if" +*KMSimProfile Euroscale/Euroscale:"statusdict /setsimulationprofile known {statusdict begin (Euroscale) setsimulationprofile end} if" +*KMSimProfile Commercial/Commercial Press:"statusdict /setsimulationprofile known {statusdict begin (CommercialPress) setsimulationprofile end} if" +*KMSimProfile DIC/DIC:"statusdict /setsimulationprofile known {statusdict begin (DIC) setsimulationprofile end} if" +*KMSimProfile TOYO/TOYO:"statusdict /setsimulationprofile known {statusdict begin (TOYO) setsimulationprofile end} if" +*KMSimProfile JapanColor/Japan Color:"statusdict /setsimulationprofile known {statusdict begin (JapanColor) setsimulationprofile end} if" +*CloseUI: *KMSimProfile + +*OpenUI *KMMatchPaperColor/An Papierfarbe anpassen: PickOne +*OrderDependency: 112 AnySetup *KMMatchPaperColor +*DefaultKMMatchPaperColor: OFF +*KMMatchPaperColor OFF/Aus:"statusdict /setsimulationintent known {statusdict begin 1 setsimulationintent end} if" +*KMMatchPaperColor ON/Ein:"statusdict /setsimulationintent known {statusdict begin 3 setsimulationintent end} if" +*CloseUI: *KMMatchPaperColor + +*OpenUI *KMCMYKGrayTreatment/CMYK-Graubehandlung: PickOne +*OrderDependency: 114 AnySetup *KMCMYKGrayTreatment +*DefaultKMCMYKGrayTreatment: CompBlack +*KMCMYKGrayTreatment CompBlack/Zusammensetzen Schwarz:"statusdict /setsimblack known {statusdict begin 2 setsimblack end} if" +*KMCMYKGrayTreatment BlackGray/Schwarz und Grau:"statusdict /setsimblack known {statusdict begin 1 setsimblack end} if" +*KMCMYKGrayTreatment BlackOnly/Nur Schwarz:"statusdict /setsimblack known {statusdict begin 0 setsimblack end} if" +*CloseUI: *KMCMYKGrayTreatment + +*CloseGroup: *KMSimultaionGroup + +*%----- Font Information +*FCacheSize 256MB:2000000 +*FCacheSize 512MB:2000000 +*FCacheSize 768MB:2000000 +*FCacheSize 1024MB:2000000 + +*DefaultFont: Courier +*Font AlbertusMT-Italic: Standard "(001.000)" Standard Disk +*Font AlbertusMT-Light: Standard "(001.000)" Standard Disk +*Font AlbertusMT: Standard "(001.000)" Standard Disk +*Font AntiqueOlive-Bold: Standard "(501.009)" ExtendedRoman Disk +*Font AntiqueOlive-Compact: Standard "(501.008)" ExtendedRoman Disk +*Font AntiqueOlive-Italic: Standard "(501.010)" ExtendedRoman Disk +*Font AntiqueOlive-Roman: Standard "(501.008)" ExtendedRoman Disk +*Font Apple-Chancery: Standard "(001.001)" ExtendedRoman Disk +*Font Arial-BoldItalicMT: Standard "(501.009)" ExtendedRoman Disk +*Font Arial-BoldMT: Standard "(501.009)" ExtendedRoman Disk +*Font Arial-ItalicMT: Standard "(501.012)" ExtendedRoman Disk +*Font ArialMT: Standard "(501.009)" ExtendedRoman ROM +*Font AvantGarde-Book: Standard "(501.009)" ExtendedRoman Disk +*Font AvantGarde-BookOblique: Standard "(501.009)" ExtendedRoman Disk +*Font AvantGarde-Demi: Standard "(501.010)" ExtendedRoman Disk +*Font AvantGarde-DemiOblique: Standard "(501.010)" ExtendedRoman Disk +*Font Bodoni-Bold: Standard "(501.006)" ExtendedRoman Disk +*Font Bodoni-BoldItalic: Standard "(501.007)" ExtendedRoman Disk +*Font Bodoni-Italic: Standard "(501.007)" ExtendedRoman Disk +*Font Bodoni-Poster: Standard "(501.009)" ExtendedRoman Disk +*Font Bodoni-PosterCompressed: Standard "(501.007)" ExtendedRoman Disk +*Font Bodoni: Standard "(501.008)" ExtendedRoman Disk +*Font Bookman-Demi: Standard "(501.007)" ExtendedRoman Disk +*Font Bookman-DemiItalic: Standard "(501.008)" ExtendedRoman Disk +*Font Bookman-Light: Standard "(501.006)" ExtendedRoman Disk +*Font Bookman-LightItalic: Standard "(501.007)" ExtendedRoman Disk +*Font Chicago: Standard "(501.011)" ExtendedRoman Disk +*Font Clarendon-Bold: Standard "(501.008)" ExtendedRoman Disk +*Font Clarendon-Light: Standard "(501.009)" ExtendedRoman Disk +*Font Clarendon: Standard "(501.009)" ExtendedRoman Disk +*Font CooperBlack-Italic: Standard "(001.003)" Standard Disk +*Font CooperBlack: Standard "(001.003)" Standard Disk +*Font Copperplate-ThirtyThreeBC: Standard "(001.002)" Standard Disk +*Font Copperplate-ThirtyTwoBC: Standard "(001.002)" Standard Disk +*Font Coronet-Regular: Standard "(001.000)" ExtendedRoman Disk +*Font Courier-Bold: Standard "(501.010)" ExtendedRoman Disk +*Font Courier-BoldOblique: Standard "(501.010)" ExtendedRoman Disk +*Font Courier-Oblique: Standard "(501.010)" ExtendedRoman Disk +*Font Courier: Standard "(501.010)" ExtendedRoman Disk +*Font Eurostile-Bold: Standard "(501.008)" ExtendedRoman Disk +*Font Eurostile-BoldExtendedTwo: Standard "(501.008)" ExtendedRoman Disk +*Font Eurostile-ExtendedTwo: Standard "(501.010)" ExtendedRoman Disk +*Font Eurostile: Standard "(501.008)" ExtendedRoman Disk +*Font Geneva: Standard "(501.007)" ExtendedRoman Disk +*Font GillSans-Bold: Standard "(501.007)" ExtendedRoman Disk +*Font GillSans-BoldCondensed: Standard "(501.006)" ExtendedRoman Disk +*Font GillSans-BoldItalic: Standard "(501.008)" ExtendedRoman Disk +*Font GillSans-Condensed: Standard "(501.007)" ExtendedRoman Disk +*Font GillSans-ExtraBold: Standard "(501.008)" ExtendedRoman Disk +*Font GillSans-Italic: Standard "(501.008)" ExtendedRoman Disk +*Font GillSans-Light: Standard "(501.009)" ExtendedRoman Disk +*Font GillSans-LightItalic: Standard "(501.009)" ExtendedRoman Disk +*Font GillSans: Standard "(501.009)" ExtendedRoman Disk +*Font Goudy-Bold: Standard "(001.002)" Standard Disk +*Font Goudy-BoldItalic: Standard "(001.002)" Standard Disk +*Font Goudy-ExtraBold: Standard "(001.001)" Standard Disk +*Font Goudy-Italic: Standard "(001.002)" Standard Disk +*Font Goudy: Standard "(001.003)" Standard Disk +*Font Helvetica-Bold: Standard "(501.010)" ExtendedRoman Disk +*Font Helvetica-BoldOblique: Standard "(501.010)" ExtendedRoman Disk +*Font Helvetica-Condensed-Bold: Standard "(501.009)" ExtendedRoman Disk +*Font Helvetica-Condensed-BoldObl: Standard "(501.009)" ExtendedRoman Disk +*Font Helvetica-Condensed-Oblique: Standard "(501.010)" ExtendedRoman Disk +*Font Helvetica-Condensed: Standard "(501.010)" ExtendedRoman Disk +*Font Helvetica-Narrow-Bold: Standard "(501.010)" ExtendedRoman Disk +*Font Helvetica-Narrow-BoldOblique: Standard "(501.010)" ExtendedRoman Disk +*Font Helvetica-Narrow-Oblique: Standard "(501.008)" ExtendedRoman Disk +*Font Helvetica-Narrow: Standard "(501.008)" ExtendedRoman Disk +*Font Helvetica-Oblique: Standard "(501.008)" ExtendedRoman Disk +*Font Helvetica: Standard "(501.008)" ExtendedRoman Disk +*Font HoeflerText-Black: Standard "(501.008)" ExtendedRoman Disk +*Font HoeflerText-BlackItalic: Standard "(501.009)" ExtendedRoman Disk +*Font HoeflerText-Italic: Standard "(501.010)" ExtendedRoman Disk +*Font HoeflerText-Ornaments: Special "(001.001)" Special Disk +*Font HoeflerText-Regular: Standard "(501.009)" ExtendedRoman Disk +*Font JoannaMT-Bold: Standard "(501.008)" ExtendedRoman Disk +*Font JoannaMT-BoldItalic: Standard "(501.008)" ExtendedRoman Disk +*Font JoannaMT-Italic: Standard "(501.008)" ExtendedRoman Disk +*Font JoannaMT: Standard "(501.009)" ExtendedRoman Disk +*Font LetterGothic-Bold: Standard "(501.010)" ExtendedRoman Disk +*Font LetterGothic-BoldSlanted: Standard "(501.010)" ExtendedRoman Disk +*Font LetterGothic-Slanted: Standard "(501.010)" ExtendedRoman Disk +*Font LetterGothic: Standard "(501.009)" ExtendedRoman Disk +*Font LubalinGraph-Book: Standard "(501.009)" ExtendedRoman Disk +*Font LubalinGraph-BookOblique: Standard "(501.009)" ExtendedRoman Disk +*Font LubalinGraph-Demi: Standard "(501.009)" ExtendedRoman Disk +*Font LubalinGraph-DemiOblique: Standard "(501.009)" ExtendedRoman Disk +*Font Marigold: Standard "(001.000)" Standard Disk +*Font Monaco: Standard "(501.012)" ExtendedRoman Disk +*Font MonaLisa-Recut: Standard "(001.000)" Standard Disk +*Font NewCenturySchlbk-Bold: Standard "(501.008)" ExtendedRoman Disk +*Font NewCenturySchlbk-BoldItalic: Standard "(501.009)" ExtendedRoman Disk +*Font NewCenturySchlbk-Italic: Standard "(501.011)" ExtendedRoman Disk +*Font NewCenturySchlbk-Roman: Standard "(501.008)" ExtendedRoman Disk +*Font NewYork: Standard "(501.013)" ExtendedRoman Disk +*Font Optima-Bold: Standard "(501.008)" ExtendedRoman Disk +*Font Optima-BoldItalic: Standard "(501.009)" ExtendedRoman Disk +*Font Optima-Italic: Standard "(501.010)" ExtendedRoman Disk +*Font Optima: Standard "(501.010)" ExtendedRoman Disk +*Font Oxford: Standard "(001.000)" Standard Disk +*Font Palatino-Bold: Standard "(501.008)" ExtendedRoman Disk +*Font Palatino-BoldItalic: Standard "(501.007)" ExtendedRoman Disk +*Font Palatino-Italic: Standard "(501.008)" ExtendedRoman Disk +*Font Palatino-Roman: Standard "(501.006)" ExtendedRoman Disk +*Font StempelGaramond-Bold: Standard "(501.007)" ExtendedRoman Disk +*Font StempelGaramond-BoldItalic: Standard "(501.012)" ExtendedRoman Disk +*Font StempelGaramond-Italic: Standard "(501.009)" ExtendedRoman Disk +*Font StempelGaramond-Roman: Standard "(501.011)" ExtendedRoman Disk +*Font Symbol: Special "(001.008)" Special Disk +*Font Candid: Special "(001.008)" Special Disk +*Font Taffy: Standard "(001.001)" Standard Disk +*Font Times-Bold: Standard "(501.009)" ExtendedRoman Disk +*Font Times-BoldItalic: Standard "(501.009)" ExtendedRoman Disk +*Font Times-Italic: Standard "(501.010)" ExtendedRoman Disk +*Font Times-Roman: Standard "(501.010)" ExtendedRoman Disk +*Font TimesNewRomanPS-BoldItalicMT: Standard "(501.011)" ExtendedRoman Disk +*Font TimesNewRomanPS-BoldMT: Standard "(501.009)" ExtendedRoman Disk +*Font TimesNewRomanPS-ItalicMT: Standard "(501.011)" ExtendedRoman Disk +*Font TimesNewRomanPSMT: Standard "(501.010)" ExtendedRoman Disk +*Font Univers-Bold: Standard "(501.008)" ExtendedRoman Disk +*Font Univers-BoldExt: Standard "(501.010)" ExtendedRoman Disk +*Font Univers-BoldExtObl: Standard "(501.010)" ExtendedRoman Disk +*Font Univers-BoldOblique: Standard "(501.008)" ExtendedRoman Disk +*Font Univers-Condensed: Standard "(501.011)" ExtendedRoman Disk +*Font Univers-CondensedBold: Standard "(501.009)" ExtendedRoman Disk +*Font Univers-CondensedBoldOblique: Standard "(501.009)" ExtendedRoman Disk +*Font Univers-CondensedOblique: Standard "(501.011)" ExtendedRoman Disk +*Font Univers-Extended: Standard "(501.009)" ExtendedRoman Disk +*Font Univers-ExtendedObl: Standard "(501.009)" ExtendedRoman Disk +*Font Univers-Light: Standard "(501.009)" ExtendedRoman Disk +*Font Univers-LightOblique: Standard "(501.009)" ExtendedRoman Disk +*Font Univers-Oblique: Standard "(501.009)" ExtendedRoman Disk +*Font Univers: Standard "(501.009)" ExtendedRoman Disk +*Font Wingdings-Regular: Special "(001.001)" Special Disk +*Font ZapfChancery-MediumItalic: Standard "(002.000)" ExtendedRoman Disk +*Font ZapfChanceryCE-MediumItalic: Win1250 "(002.000)" ExtendedRoman Disk +*Font ZapfDingbats: Special "(001.005S)" Special Disk + + +*?FontQuery: " + save + { count 1 gt + { exch dup 127 string cvs (/) print print (:) print + /Font resourcestatus {pop pop (Yes)} {(No)} ifelse = + } { exit } ifelse + } bind loop + (*) = flush + restore +" +*End + +*?FontList: " +save + (*) {cvn ==} 128 string /Font resourceforall + (*) = flush +restore. +" +*End +*% end of PPD