Moritz Martinius e0e158ca90
All checks were successful
Build ptprnt / build (push) Successful in 1m49s
Improve gitignore for less noise in commits
2024-03-23 12:28:18 +01:00
2023-10-22 19:42:59 +00:00
2023-09-24 18:41:33 +02: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%