<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../../general.ent">
  %general-entities;

  <!ENTITY LPRng-download-http "http://sourceforge.net/projects/lprng/files/lprng/LPRng-&LPRng-version;/LPRng-&LPRng-version;.tar.gz" >
  <!ENTITY LPRng-download-ftp  " ">
  <!ENTITY LPRng-md5sum        "74c384b262c490dee31d7e2fa28ecf1d">
  <!ENTITY LPRng-size          "848 KB">
  <!ENTITY LPRng-buildsize     "12 MB">
  <!ENTITY LPRng-time          "0.1 SBU">
]>

<sect1 id="LPRng" xreflabel="LPRng-&LPRng-version;">
  <?dbhtml filename="LPRng.html"?>

  <sect1info>
    <othername>$LastChangedBy: randy $</othername>
    <date>$Date: 2013-02-11 13:51:17 -0500 (Mon, 11 Feb 2013) $</date>
  </sect1info>

  <title>LPRng-&LPRng-version;</title>

  <indexterm zone="LPRng">
    <primary sortas="a-LPRng">LPRng</primary>
  </indexterm>

  <sect2 role="package">
    <title>Introduction to LPRng</title>

    <para>The <application>LPRng</application> package contains an enhanced,
    extended and portable implementation of the Berkeley Line PRinter (LPR)
    print spooler. This is useful for queuing print jobs.</para>

    <para>There may be a more recent release available from the
    <application>LPRng</application> home page. You can check
    <ulink url="http://sourceforge.net/projects/lprng"/> and probably use the
    existing BLFS instructions. Note that versions other than the one shown
    in the download URLs have not been tested in a BLFS environment.</para>

    &lfs70_checked;

    <bridgehead renderas="sect3">Package Information</bridgehead>
    <itemizedlist spacing="compact">
      <listitem>
        <para>Download (HTTP): <ulink url="&LPRng-download-http;"/></para>
      </listitem>
      <listitem>
        <para>Download (FTP): <ulink url="&LPRng-download-ftp;"/></para>
      </listitem>
      <listitem>
        <para>Download MD5 sum: &LPRng-md5sum;</para>
      </listitem>
      <listitem>
        <para>Download size: &LPRng-size;</para>
      </listitem>
      <listitem>
        <para>Estimated disk space required: &LPRng-buildsize;</para>
      </listitem>
      <listitem>
        <para>Estimated build time: &LPRng-time;</para>
      </listitem>
    </itemizedlist>

    <bridgehead renderas="sect3">LPRng Dependencies</bridgehead>

    <bridgehead renderas="sect4">Optional</bridgehead>
    <para role="optional"><xref linkend="openssl"/>,
    <xref linkend="mitkrb"/> and
    <ulink url="http://www.pdc.kth.se/kth-krb/">krb4</ulink></para>

    <para condition="html" role="usernotes">User Notes:
    <ulink url="&blfs-wiki;/lprng"/></para>

  </sect2>

  <sect2 role="installation">
    <title>Installation of LPRng</title>

    <para>Install <application>LPRng</application> by running
    the following commands:</para>

<screen><userinput>./configure --prefix=/usr               \
            --libexecdir=/usr/lib/lprng \
            --sysconfdir=/etc           \
            --enable-shared &amp;&amp;
make</userinput></screen>

    <para>This package does not come with a test suite.</para>

    <para>Now, as the <systemitem class="username">root</systemitem> user:</para>

<screen role="root"><userinput>make install</userinput></screen>

  </sect2>
<!--
  <sect2 role="commands">
    <title>Command Explanations</title>

    <para><command>sed -i 's@CLEAR ...'</command>:  This fixes a
    <application>GCC</application>-4 warning, treated as an error.</para>

  </sect2>
-->
  <sect2 role="configuration">
    <title>Configuring LPRng</title>

    <sect3 id="lprng-config">
      <title>Config Files</title>

      <para><filename>/etc/printcap</filename> and
      <filename>/etc/lpd/*</filename></para>

      <indexterm zone="LPRng lprng-config">
        <primary sortas="e-etc-printcap">/etc/printcap</primary>
      </indexterm>

      <indexterm zone="LPRng lprng-config">
        <primary sortas="e-etc-lpd-star">/etc/lpd/*</primary>
      </indexterm>

    </sect3>

    <sect3>
      <title>Configuration Information</title>

      <para>There is no generic <filename>printcap</filename> for all printers.
      A sample printcap is loaded into the <filename
      class="directory">/etc</filename> directory which can be of some help.
      Information is also available at <ulink url="http://www.lprng.org"/>
      and <ulink url="http://www.linuxprinting.org"/>.</para>

    </sect3>

    <sect3  id="lprng-init">
      <title>Boot Script</title>

      <para>Install the
      <filename>/etc/rc.d/init.d/lprng</filename> init script included in
      the <xref linkend="bootscripts"/> package (as the
      <systemitem class="username">root</systemitem> user):</para>

      <indexterm zone="LPRng lprng-init">
        <primary sortas="f-lprng">lprng</primary>
      </indexterm>

<screen role="root"><userinput>make install-lprng</userinput></screen>

    </sect3>

  </sect2>

  <sect2 role="content">
    <title>Contents</title>

    <segmentedlist>
      <segtitle>Installed Programs</segtitle>
      <segtitle>Installed Library</segtitle>
      <segtitle>Installed Directories</segtitle>

        <seglistitem>
        <seg>cancel, checkpc, lp, lpc, lpd, lpq, lpr, lprm, lprng_certs,
        lprng_index_certs, and lpstat</seg>
        <seg>liblpr.{so,a}</seg>
        <seg>/etc/lpd, /usr/lib/lprng, /usr/share/doc/&LPRng-version;,
        /var/run/lpd, and /var/spool/lpd</seg>
      </seglistitem>
    </segmentedlist>

    <variablelist>
      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
      <?dbfo list-presentation="list"?>
      <?dbhtml list-presentation="table"?>

      <varlistentry id="cancel">
        <term><command>cancel</command></term>
        <listitem>
          <para>is a symlink to <command>lprm</command> used to send cancel
          requests to an <application>LPRng</application> print service.</para>
          <indexterm zone="LPRng cancel">
            <primary sortas="b-cancel">cancel</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="checkpc">
        <term><command>checkpc</command></term>
        <listitem>
          <para>checks out the printcap database.</para>
          <indexterm zone="LPRng checkpc">
            <primary sortas="b-checkpc">checkpc</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lp">
        <term><command>lp</command></term>
        <listitem>
          <para>is a symlink to <command>lpr</command> used to send requests
          to an <application>LPRng</application> print service.</para>
          <indexterm zone="LPRng lp">
            <primary sortas="b-lp">lp</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lpc">
        <term><command>lpc</command></term>
        <listitem>
          <para>is a control program for the <command>lpd</command>
          daemon.</para>
          <indexterm zone="LPRng lpc">
            <primary sortas="b-lpc">lpc</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lpd">
        <term><command>lpd</command></term>
        <listitem>
          <para>is the print queuing daemon.</para>
          <indexterm zone="LPRng lpd">
            <primary sortas="b-lpd">lpd</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lpq">
        <term><command>lpq</command></term>
        <listitem>
          <para>is a status monitoring program.</para>
          <indexterm zone="LPRng lpq">
            <primary sortas="b-lpq">lpq</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lpr">
        <term><command>lpr</command></term>
        <listitem>
          <para>is a print job spooler program.</para>
          <indexterm zone="LPRng lpr">
            <primary sortas="b-lpr">lpr</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lprm">
        <term><command>lprm</command></term>
        <listitem>
          <para>is a print job removal program.</para>
          <indexterm zone="LPRng lprm">
            <primary sortas="b-lprm">lprm</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lprng_certs">
        <term><command>lprng_certs</command></term>
        <listitem>
          <para>is a program used to manage SSL certificates for the
          <application>LPRng</application> software.</para>
          <indexterm zone="LPRng lprng_certs">
            <primary sortas="b-lprng_certs">lprng_certs</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lprng_index_certs">
        <term><command>lprng_index_certs</command></term>
        <listitem>
          <para>creates a set of index files in the
          <application>LPRng</application> signing certificate directory.</para>
          <indexterm zone="LPRng lprng_index_certs">
            <primary sortas="b-lprng_index_certs">lprng_index_certs</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lpstat">
        <term><command>lpstat</command></term>
        <listitem>
          <para>is a print job status reporting program.</para>
          <indexterm zone="LPRng lpstat">
            <primary sortas="b-lpstat">lpstat</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="liblpr">
        <term><filename class='libraryfile'>liblpr.{so,a}</filename></term>
        <listitem>
          <para>contains the API functions used by the
          <application>LPRng</application> programs.</para>
          <indexterm zone="LPRng liblpr">
            <primary sortas="c-liblpr">liblpr.{so,a}</primary>
          </indexterm>
        </listitem>
      </varlistentry>

    </variablelist>

  </sect2>

</sect1>
