xref: /dflybsd-src/share/examples/printing/psdfX (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
186d7f5d3SJohn Marino#!/bin/sh
286d7f5d3SJohn Marino#
386d7f5d3SJohn Marino#  psdf - DVI to PostScript printer filter
486d7f5d3SJohn Marino#  Installed in /usr/local/libexec/psdf
586d7f5d3SJohn Marino#
686d7f5d3SJohn Marino#  Invoked by lpd when user runs lpr -d
786d7f5d3SJohn Marino#
886d7f5d3SJohn Marino
986d7f5d3SJohn Marinoorig_args="$@"
1086d7f5d3SJohn Marino
1186d7f5d3SJohn Marinofail() {
1286d7f5d3SJohn Marino    echo "$@" 1>&2
1386d7f5d3SJohn Marino    exit 2
1486d7f5d3SJohn Marino}
1586d7f5d3SJohn Marino
1686d7f5d3SJohn Marinowhile getopts "x:y:n:h:" option; do
1786d7f5d3SJohn Marino    case $option in
1886d7f5d3SJohn Marino        x|y)  ;; # Ignore
1986d7f5d3SJohn Marino	n)    login=$OPTARG ;;
2086d7f5d3SJohn Marino	h)    host=$OPTARG ;;
2186d7f5d3SJohn Marino	*)    echo "LPD started `basename $0` wrong." 1>&2
2286d7f5d3SJohn Marino              exit 2
2386d7f5d3SJohn Marino              ;;
2486d7f5d3SJohn Marino    esac
2586d7f5d3SJohn Marinodone
2686d7f5d3SJohn Marino
2786d7f5d3SJohn Marino[ "$login" ] || fail "No login name"
2886d7f5d3SJohn Marino[ "$host" ] || fail "No host name"
2986d7f5d3SJohn Marino
3086d7f5d3SJohn Marino( /u/kelly/freebsd/printing/filters/make-ps-header $login $host "DVI File"
3186d7f5d3SJohn Marino  /usr/local/bin/dvips -f ) | eval /usr/local/libexec/lprps $orig_args
32