Moritz Martinius 2d54e583b7
Some checks failed
Build ptprnt / build (push) Failing after 1m1s
commands restructured to be const vectors
2024-04-20 12:03:20 +02:00
2023-10-22 19:42:59 +00:00
2023-12-03 11:13:52 +01:00
2023-09-24 18:41:33 +02:00
2023-12-03 22:08:59 +01:00
2023-09-23 16:10:12 +02:00

ptprnt

This is a rewrite of ptouch-print as a toy project for my personal amusement. The currently available solutions are good enough for generating labels, but i wanted to explore libusb and maybe improve the functionality of my label printer. All credits for reverse engineering the USB commands to Dominic Rademacher.

Dependencies

This project requires:

  • spdlog
  • libusb
  • pango
  • cairo
  • meson
  • gtest (optional, for testing, will be installed by meson)
  • gcov (optional, for coverage reports)

Install dependencies on Arch Linux

pacman -S libusb spdlog pango cairo meson gcovr

Install dependencies on Debian/Ubuntu

apt-get install libusb-1.0-0-dev libspdlog-dev libfmt-dev libpango1.0-dev libcairo2-dev meson gcovr

Build

Clone the repository and simply let meson do the heavy lifting.

meson setup builddir 

If you want to generate coverage reports, enable them via the command line switch

meson setup builddir -Db_coverage=true

Rebuild by simply invoking ninja

ninja -C builddir

Run

Run the binary from your builddir

builddir/ptprnt

Test

Testing is done via gtest. To run your test simply invoke ninja with the "test" target.

ninja -C builddir test   

Coverage reports can be generated via gcov if you enabled them (see Build section) by building the coverage-text target.

License

GPLv3, see LICENSE

Author

Moritz Martinius moritz@admiralackbar.de

Description
No description provided
Readme 544 KiB
Languages
C++ 94.8%
Meson 4.3%
Shell 0.9%