home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / misc / volume27 / psf3 / part06 / Install.unix < prev    next >
Encoding:
Text File  |  1992-01-20  |  10.4 KB  |  324 lines

  1.                    P S F     I N S T A L L A T I O N
  2.                    =================================
  3.  
  4.      The following installation process should work with various forms
  5.      of unix using lpr/lpd and with System V r3 unix lp/lpsched
  6.      spoolers. The documented spooler installation process is not
  7.      compatible for System V r4: the printer spool scripts must be
  8.      manually installed (and possibly modified).
  9.  
  10.      If spooler support is installed, any file sent to the spooler
  11.      is examined: if the file is already in postscript form, then
  12.      the file is simply copied to the printer without any re-processing.
  13.      Only unprocessed text files will be filtered into postscript form.
  14.      As a result, 'any' file may be passed to the spooler for correct
  15.      processing.  (If postscript sources is to be printed, the "-z"
  16.      option must be used for force the printing.)
  17.  
  18.      INSTALLATION
  19.      ^^^^^^^^^^^^
  20.      1.    Edit the Makefile, changing the various configuration parameters.
  21.     The general install steps are:
  22.  
  23.         make all
  24.         make printer
  25.         make scripts
  26.         make install
  27.         make installman   (or installcat or installdoc)
  28.  
  29.     If nroff is not available, pre-formatted man pages are in
  30.     /man/*.doc.
  31.  
  32.      2.    Build the binaries with:
  33.  
  34.         make all
  35.  
  36.      3.    Select a printer:
  37.  
  38.         make printer
  39.    
  40.     If your printer is not specified, select the nearest
  41.     approximation and/or read the "Install.def" file.
  42.  
  43.     "make printer" can be run any number of times.  It simply copies
  44.     your selected printer definition from the ./defs directory
  45.     to file "psfprint.def" in the current directory and generates 
  46.     an associated "psizes.ps".
  47.     
  48.     If you are using a serial printer and using lp/lpsched, examine
  49.     the "stty" command to set port characteristics in psfunix.LP
  50.     (which is the prototype for the printer model "psf" when used
  51.     with lp/lpsched).
  52.  
  53.      4.    Make shell scripts:
  54.      
  55.     Some man systems may require additional options before the shell
  56.     script "psfman" can successfully process man pages through the
  57.     psf filters system. Examine and modify the file "psfman.SH" for
  58.     additional man options needed.  On some systems, you man
  59.     need to specify the full path to the "man" programme and/or
  60.     force the option "-Tlp".
  61.     
  62.     Now build the shell scripts.
  63.  
  64.         make scripts
  65.  
  66.     (NOTE: script psfdouble is created as an example of setting
  67.            up a double sided print script, however is not
  68.            installed by any install process.)
  69.  
  70.      5. Iff nroff is available, make nroff'd man pages. The resulting 
  71.         *.doc files are written to the man/ directory.
  72.      
  73.              make doc
  74.     
  75.     If nroff is not available, pre-formatted documentation is
  76.     provided in various *.doc files.  These may be moved to
  77.     the catman or man directories with "make installdoc".  The
  78.     target directory for the preformatted pages is set in the
  79.     makefile (MANDIR).
  80.     
  81.      6. A "user" installation copies only those modules that are 
  82.     necessary for command line use. It does not copy spooler support
  83.     binaries and scripts.
  84.  
  85.     A "user" installation is complete after (as root):
  86.  
  87.         make installuser
  88.      
  89.      7. A "full" installation copies all necessary spooler support
  90.     as well as user binaries and scripts to the target directories.
  91.          As root:
  92.          
  93.              make install
  94.  
  95.      8. Install man pages if desired. Depending upon the type of system
  96.     being used, select from the following:
  97.     
  98.        make installman    Install unformatted pages into the man
  99.                 directory. This assumes that a complete 
  100.                 man system is available with nroff.
  101.  
  102.        make installcat    Install formatted man pages into the 
  103.                    catman directory. Nroff must be available 
  104.                    to format the text.
  105.  
  106.        make installdoc    Install pre-formatted man pages into 
  107.                    the catman (or selected man) directory. 
  108.                    This copies various *.doc files into 
  109.                    the catman directory: nroff is not needed.
  110.  
  111.        make doc        Build .doc formatted files from .1
  112.                 unformatted man page with nroff.
  113.     
  114.      9.    Three versions of psf are compiled by "make all":
  115.  
  116.        psf           is normally used at the command line.
  117.             If the input is already in postscript, then it is
  118.             re-processed. I.e. you can print a postscript
  119.             programme. Input is accepted from stdin or from
  120.             file names.
  121.  
  122.        psffilter    is used by the lp/lpsched spooling system.
  123.             It accepts input only on stdin and arguments
  124.             passed with the "-o" option. If the input is
  125.             already in postscript, the input is simply copied
  126.             to stdout (the printer).  If the -v option
  127.             is used, postscript sources may be printed.
  128.  
  129.        psflpd    is used by the lpr/lpd spooling system. It
  130.             accepts input only on stdin and cannot accept any
  131.             run-time arguments, not even those passed by lpd.
  132.             If the input is already in postscript, it is
  133.             simply copied to stdout (the printer).  If
  134.             the -v option is used, postscript sources
  135.             may be printed.
  136.  
  137.             Printcap entries should use this binary or links
  138.             to this binary. If psflpd is executed with
  139.             different names, then different default page
  140.             conditions apply (see Install.lpd).
  141.     
  142.     Only the appropriate binary versions are copied with "make install".
  143.  
  144.  
  145.      CONFIGURE PRINTER (for lp/lpsched on SysV R3)
  146.      ^^^^^^^^^^^^^^^^^
  147.     The printer model defined for psf is copied during the install
  148.     process to:
  149.  
  150.         /usr/spool/lp/model/psf
  151.    
  152.     Printer installation is usually be done with lpadmin. If you
  153.     install the printer with lpadmin, be sure to specify the 
  154.     "-m psf" option to select the psf printer model. E.g.:
  155.  
  156.         /usr/lib/lpadmin -p printer -v /dev/lp -m psf -o nobanner
  157.  
  158.     If you are using Interactive Unix 2.2, the you might wish
  159.     to use "sysadm lpmgmt".  This can be done if you first
  160.     inform sysadm that psf exists:
  161.  
  162.  
  163.         edit /usr/admin/menu/packagemgmt/lpmgmt/lpsetup
  164.                         - to have psf as a 
  165.                           valid printer choice.
  166.  
  167.         sysadm lpmgmt            - add psf printer
  168.  
  169.         /usr/lib/lpadmin -d printer     - set default printer
  170.  
  171.         enable printer.
  172.    
  173.  
  174.      CONFIGURE PRINTER (for lpr/lpd)
  175.      ^^^^^^^^^^^^^^^^^
  176.     After "make install" is completed, the printcap must be
  177.     configured. See "Install.lpd" for suggestions.
  178.  
  179.  
  180.      CONFIGURE PRINTER (for use with lp/lpsched over UUCP)
  181.      ^^^^^^^^^^^^^^^^^
  182.     A sample printer model "nlsdumb" is provided if you wish to use
  183.     remote printing over uucp (either by serial line or over the
  184.     tcp/ip+TLI interface). It must be manually installed if it is
  185.     needed.
  186.  
  187.  
  188.      MAN PAGES
  189.      ^^^^^^^^^
  190.     The man pages are all the man/*.1 files. These may be formatted
  191.     with nroff or cawf.  Pre-formatted man pages are man/*.doc.
  192.     
  193.  
  194.      AFTER INSTALLATION
  195.      ^^^^^^^^^^^^^^^^^^
  196.      0. Print the man pages:
  197.      
  198.              psfnroff -man *.1
  199.  
  200.      1. Verify that the imageable area of your printer actually
  201.     corresponds to the printer definition that you selected during
  202.     the install process. Send the postscript file "psizes.ps" (or
  203.     getsizes.ps) to the line printer by some method:
  204.  
  205.         lp psizes.ps
  206.         -or-
  207.         cat getsizes.ps > /dev/lp
  208.  
  209.     This programme prints the actual imageable area for each page
  210.     size known to your printer.
  211.  
  212.     The printed imageable area (the last 4 numbers of each page
  213.     type) should match the corresponding numbers in psfprint.def. If
  214.     they do not, edit psfprint.def to use the printed numbers. (Even
  215.     Adobe information does not necessarily reflect the real nature
  216.     of your printer. My own Nec LC890 had a different letter
  217.     imageable area than indicated by the original .ppd file from
  218.     Adobe...).
  219.  
  220.     Read "Install.def" if the editing process in not transparent!
  221.  
  222.     Copy the new psfprint.def file to it's target location as
  223.     set with "DEFFILE" in the Makefile.
  224.  
  225.      2.    Edit the file "Testfile" with sed (as below). This file is an
  226.     example of how escape seqeuences can be imbedded in a text file
  227.     to allow direct font control within a text editor (See psf.1 for
  228.     details).
  229.  
  230.     The "Testfile" should contain many ^E characters (octal \005).
  231.     Since mail system may change the ^E character into the text
  232.     string "005" You will have to edit the testfile and replace all
  233.     "005" strings with true ctrl-E character.
  234.  
  235.     One easy way to correct this is with sed (Bourne shell only??)
  236.  
  237.         sed 's@005@<CTRL-E>@g' Testfile > example
  238.                +------+
  239.                 actually type the CTRL-E character
  240.                 to generate the octal charcter \005
  241.  
  242.     After editing, do the following:
  243.  
  244.         psf example | lp
  245.     
  246.     to see how font control can work in a text file.
  247.  
  248.  
  249.      LP OPTIONS    (for lp/lpsched)
  250.      ^^^^^^^^^^
  251.     The provided printer model (/usr/spool/lp/model/psf and it's
  252.     associated prototype file psfunix.LP) allows the use of the "-o"
  253.     to pass options to psf. Two additional non-standard banner page
  254.     options may be passed to the printer script:
  255.  
  256.         banner        = print banner page
  257.         nobanner    = do not print banner page
  258.  
  259.     For example:
  260.  
  261.         lp -o"nobanner -4xh" my.text.file
  262.         lp -o"banner" another.file
  263.  
  264.     The psf printer model examines the printer configuration file
  265.     in:
  266.  
  267.         /usr/spool/lp/admins/lp/printers
  268.             /<printer name>/configuration
  269.  
  270.     to determine if banners are required. The first line of this
  271.     script normally contains one of the following (and can be set by
  272.     lpadmin):
  273.  
  274.         Banner: on:Always
  275.         Banner: on
  276.  
  277.     An additional option is recognized (and cannot be set by
  278.     lpadmin: it must be manually edited into the configuration
  279.     file):
  280.  
  281.         Banner: off
  282.  
  283.     "Banner: on:Always" forces banners to be printed, even if the
  284.     user specified "nobanner".
  285.  
  286.     "Banner: on" prints a banner page unless the user specifies
  287.     "nobanner". If "nobanner" is provided, then the banner is not
  288.     printed.
  289.  
  290.     "Banner: off" will not print the banner page unless the user
  291.     provides "banner", in which case the banner page is printed.
  292.  
  293.  
  294.      MULTIPLE PRINTERS
  295.      ^^^^^^^^^^^^^^^^^
  296.     If multiple different postscript printers are used with psf,
  297.     then either separate versions of psf and friends must be
  298.     constructed or the "-u alt.def" option of psf and psffilter
  299.     should be used. In any case, each back end printer script used
  300.     by lpsched, psnroff or psmbox must reference the appropriate
  301.     version of psf or have the -u option set.
  302.  
  303.     See Install.lpd for considerations when using lpr/lpd.
  304.  
  305.     Some provisions are in the Makefile to allow changes to the
  306.     target directories or the use of different binary programme
  307.     names.
  308.  
  309.      PSF notes.
  310.      ^^^^^^^^^^ 
  311.     The printer definitions in defs/* are derived from the Adobe
  312.     ".ppd" files. These are available from the Adobe file server via
  313.     email. The .ppd files describe each know printer characteristics
  314.     - but are not always perfectly accurate.
  315.     
  316.     The programme "table" is used to translate the ".ppd" files into
  317.     ".def" printer definition files used by psf. Documentation for
  318.     "table" is not provided - other than the comments in "table.c"
  319.     and a brief comment in Install.def.
  320.  
  321.     -------------------
  322.     Tony Field
  323.         (tony@ajfcal.cuc.ab.ca)
  324.