The Random Books, Software, and Thoughts
of Michael R Sweet

Announcing PAPPL, A Printer Application Framework March 23, 2020

PAPPL is a C-based Printer Application framework/library. I am developing it to support future features in LPrint as well as making a Printer Application for Gutenprint. My hope is that it will accelerate the adoption of IPP Everywhere™ and make it easier for people to support other IPP-based licensing programs like AirPrint™ and Mopria®.

PAPPL is licensed under the Apache License Version 2.0 with an exception to allow linking against GPL2/LGPL2 software (like older versions of CUPS), so it can be used freely in any project you’d like. If you want to support the development of this framework financially, please consider sponsoring me through Github. I am also available to do consulting and/or development through my company Lakeside Robotics.

Home Page Github Project


EPM v4.5 March 13, 2020

EPM v4.5 is a bug fix release and also removes support for some old platforms that I can no longer support. Changes include:

  • Dropped support for AIX, AT&T (Solaris), Tru64, HP-UX, IRIX, LSB, and Slackware packages.
  • “make install” failed due to the README filename changing (Issue #59)
  • The mkepmlist utility did not correctly handle filenames containing the $ character (Issue #62)
  • The configure script incorrectly substituted “NONE” for the installation prefix (Issue #67)
  • Fixed some over-zealous permissions on temporary build directories (Issue #71)
  • Fixed the mantohtml helper program - was depending on private CUPS headers for some reason (Issue #72)
  • Fixed some build system issues (Issue #75, Issue #76)
  • Documentation updates (Issue #74, Issue #77)
  • Cleaned up old sprintf and strcpy usage in many places.


Download EPM 4.5 Home Page


Some Parody Logos for Your Entertainment March 07, 2020

I’m no graphic designer, but I’ve spent enough time fiddling with icons and other graphical elements to at least know how to use the software to produce passable images. I’ve recently made a few parody logos for use in some PWG documentation, which I thought I’d share for your amusement…


Sponsoring Me Through Github February 29, 2020

Over the years, many people have asked whether they can financially support the development of LPrint, HTMLDOC, and other projects I make available freely on Github. Until recently there hasn’t been a simple way for me to do this, but Github now has a “sponsors” program that allows you to provide monthly donations to developers and projects, and will even match your donations for the first year!

I’ve created a Github sponsor profile to allow you to contribute financially to any of my open source projects and help set the direction and priority of future bug fixes, features, and supported hardware. Thank you for any assistance you choose to provide, whether it is financial or in the form of a bug report, pull request, or other feedback that helps make my software better!

Become a Sponsor


LPrint v1.0 February 17, 2020

LPrint version 1.0 is now available. LPrint is a Label Printer Application for macOS® and Linux®.


Download LPrint 1.0 Install lprint Snap Home Page


HTMLDOC 1.9.8 February 15, 2020

HTMLDOC 1.9.8 adds a CGI file naming feature, adds support for letterhead images, and fixes some formatting bugs. Changes include:

  • Added support for a HTMLDOC.filename META keyword that controls the filename reported in CGI mode; the default remains “htmldoc.pdf” (Issue #367)
  • Fixed a paragraph formatting issue with large inline images (Issue #369)
  • Fixed a buffer underflow issue (Issue #370)
  • Fixed PDF page numbers (Issue #371)
  • Added support for a new L header/footer format ($LETTERHEAD), which inserts a letterhead image at its full size (Issue #372, Issue #373, Issue #375)
  • Updated the build documentation (Issue #374)


Download HTMLDOC 1.9.8 Install HTMLDOC 1.9.8 Snap Home Page


LPrint v1.0rc1 February 10, 2020

This is the first candidate release of LPrint 1.0, a Label Printer Application for macOS® and Linux®. Changes include:

  • Updated media documentation (Issue #13)
  • The lprint options command now reports both English and metric dimensions for all supported sizes (Issue #14)
  • Now support setting the default media source, top offset, tracking, and type values.
  • Now save and load next job-id value for each printer, along with the printer-config-change-[date-]time and printer-impressions-completed values.
  • Fixed some small memory leaks.


Download LPrint 1.0rc1 Install lprint Snap Home Page


LPrint v1.0b2 January 26, 2020

This is the second beta release of LPrint, a Label Printer Application for macOS® and Linux®. Changes include:

  • Added support for authentication of remote administrative requests (Issue #1)
  • Added support for managing printers via web browser (Issue #1)
  • The add, default, delete, and modify sub-commands now support the “-u” option (Issue #1)
  • Fixed an ASLR issue with some Linux compilers (Issue #5)
  • Added code to detach the Linux usblp kernel driver since apparently there are still Linux distributions shipping the old (and broken) usblp kernel driver (Issue #7)
  • Device errors are now logged to stderr (for lprint devices) or the server log (for lprint server) so that it is possible to see permission and other access errors (Issue #8)
  • Job attributes are now validated properly against the driver attributes (Issue #9)
  • Fixed an issue in server mode - a failed IPv6 listener would prevent the server from starting (Issue #12)
  • Added a “spool-directory” option for the server sub-command.
  • Added a spec file for building RPMs.


Download LPrint 1.0b2 Install lprint Snap Home Page


View All Posts