Skip to content
A Label Printer Application
C M4 Shell Other
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
man Add support for -u in add/default/delete/modify commands (Issue #1) Jan 24, 2020
snap Update location of icon. Jan 26, 2020
static-resources Rename "resources" directory to "static-resources" to avoid having th… Jan 23, 2020
xcode Add support for admin-group and auth-service server options, which co… Jan 23, 2020
.gitattributes Add script to make a release tarball. Jan 15, 2020
.gitignore Add Xcode project. Dec 3, 2019
CHANGES.md Prep for 1.0b2 release. Jan 26, 2020
CONTRIBUTING.md Add contributing file. Jan 13, 2020
DESIGN.md Add options sub-command. Jan 5, 2020
DOCUMENTATION.md Prep for 1.0b2 release. Jan 26, 2020
LICENSE Initial checkin Nov 21, 2019
Makefile.in Rename "resources" directory to "static-resources" to avoid having th… Jan 23, 2020
NOTICE Update copyright. Jan 2, 2020
README.md Prep for 1.0b2 release. Jan 26, 2020
common.h Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
config.guess Add placeholder man pages/templates. Nov 21, 2019
config.h.in Add support for admin-group and auth-service server options, which co… Jan 23, 2020
config.sub Add placeholder man pages/templates. Nov 21, 2019
configure Add support for admin-group and auth-service server options, which co… Jan 23, 2020
configure.ac Add support for admin-group and auth-service server options, which co… Jan 23, 2020
device.c Add error logging for device accesses (Issue #8) Jan 21, 2020
device.h Add error logging for device accesses (Issue #8) Jan 21, 2020
dither.h Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
driver-common.c Fix some ZPL driver issues. Jan 14, 2020
driver-cpcl.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
driver-dymo.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
driver-epl1.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
driver-epl2.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
driver-fgl.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
driver-pcl.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
driver-pwg.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
driver-zpl.c Fix some ZPL driver issues. Jan 14, 2020
driver.h Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
install-sh Get all of the pieces in place for the build system - autoconf tests and Nov 21, 2019
lprint-add.c Add support for -u in add/default/delete/modify commands (Issue #1) Jan 24, 2020
lprint-cancel.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
lprint-default.c Add support for -u in add/default/delete/modify commands (Issue #1) Jan 24, 2020
lprint-delete.c Add support for -u in add/default/delete/modify commands (Issue #1) Jan 24, 2020
lprint-devices.c Add error logging for device accesses (Issue #8) Jan 21, 2020
lprint-drivers.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
lprint-jobs.c Show all jobs. Jan 15, 2020
lprint-modify.c Add support for -u in add/default/delete/modify commands (Issue #1) Jan 24, 2020
lprint-options.c Clean up a bug - returning media-col instead of media-col-default for Jan 14, 2020
lprint-printers.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
lprint-server.c Add spool-directory option to control where spool files are placed. Jan 24, 2020
lprint-shutdown.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
lprint-status.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
lprint-submit.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
lprint.c Add support for -u in add/default/delete/modify commands (Issue #1) Jan 24, 2020
lprint.h Implement add and modify printer (first pass). Jan 24, 2020
lprint.spec Update spec file. Jan 26, 2020
makesrcdist Add RPM spec file for lprint. Jan 26, 2020
server-auth.c Fix Linux compile error. Jan 26, 2020
server-client.c Finalize new web interface (Issue #1) Jan 26, 2020
server-dnssd.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
server-ipp.c Implement static resources (Issue #2) Jan 24, 2020
server-job.c Add spool-directory option to control where spool files are placed. Jan 24, 2020
server-log.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020
server-print.c Add error logging for device accesses (Issue #8) Jan 21, 2020
server-printer.c Implement add and modify printer (first pass). Jan 24, 2020
server-system.c Implement add and modify printer (first pass). Jan 24, 2020
template.c Reword - LPrint is a Label Printer Application (since "printer applic… Jan 13, 2020

README.md

LPrint - A Label Printer Application

LPrint implements printing for a variety of common label and receipt printers connected via network or USB. Features include:

  • A single executable handles spooling, status, and server functionality.
  • Multiple printer support.
  • Each printer implements an IPP Everywhere™ print service and is compatible with the driverless printing support in iOS, macOS, and Linux clients.
  • Each printer can support options such as label modes, tear-off offsets, media tracking, media top offset, print darkness, resolution, roll selection, and speed.
  • Each printer can print "raw", Apple/PWG Raster, and/or PNG files.
  • Each printer automatically recovers from out-of-media, power loss, and disconnected/bad cable issues.

For more information, see the file "DOCUMENTATION.md", the man pages in the "man" directory, and/or the LPrint project page at https://www.msweet.org/lprint.

Note: Please use the Github issue tracker to report issues or request features/improvements in LPrint:

https://github.com/michaelrsweet/lprint/issues

Requirements

LPrint depends on:

  • A "make" program (both GNU and BSD make are known to work),
  • A C99 compiler (both Clang and GCC are known to work),
  • Avahi 0.7 or later or mDNSResponder to provide DNS-SD support,
  • CUPS 2.2.0 or later to provide HTTP, IPP, and Apple/PWG Raster support,
  • libpng 1.6.0 or later to provide PNG printing support, and
  • libusb 1.0 or later to provide USB printing support.

Supported Printers

The following printers are currently supported:

  • Dymo LabelWriter printers
  • Zebra ZPL printers

Others will be added as time and access to printers permits.

Standards

LPrint implements PWG 5100.14-2013: IPP Everywhere™ for each printer, and has a partial implementation of PWG 5100.22-2019: IPP System Service v1.0 for managing the print queues and default printer.

IPP extensions for label printers have been proposed in the Printer Working Group in the IPP Label Printing Extensions v1.0 document; LPrint will be updated to conform to the final names and values that are approved by the IPP workgroup.

Legal Stuff

LPrint is Copyright © 2019-2020 by Michael R Sweet.

LPrint is licensed under the Apache License Version 2.0 with an exception to allow linking against GPL2/LGPL2 software (like older versions of CUPS). See the files "LICENSE" and "NOTICE" for more information.

LPrint is based loosely on the "ippeveprinter.c" and "rastertolabel.c" code from CUPS.

You can’t perform that action at this time.