Files
ptouch-prnt/README.md
Moritz Martinius d8b70e5d56
All checks were successful
Build ptprnt / build (push) Successful in 1m45s
Add file logger and fix log level output (#9)
Improve logging output

Reviewed-on: #9
2023-11-19 13:27:20 +00:00

62 lines
1.5 KiB
Markdown

# ptprnt
This is a rewrite of [ptouch-print](https://git.familie-radermacher.ch/linux/ptouch-print.git) 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
``` bash
pacman -S libusb spdlog pango cairo meson gcovr
```
Install dependencies on Debian/Ubuntu
``` bash
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.
```bash
meson setup builddir
```
If you want to generate coverage reports, enable them via the command line switch
```bash
meson setup builddir -Db_coverage=true
```
Rebuild by simply invoking ninja
```bash
ninja -C builddir
```
## Run
Run the binary from your builddir
```bash
builddir/ptprnt
```
## Test
Testing is done via gtest. To run your test simply invoke ninja with the "test" target.
```bash
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](./LICENSE)
## Author
Moritz Martinius <moritz@admiralackbar.de>