A while back I wrote a tool to print directly from CUPS to the remarkable cloud. This is a little bit of description around that. I like the way I can skim the news in the morning and print directly to my remarkable and then read while riding the train or during lunch. This workflow really works for me and avoids senseless meandering and surfing as much as possible. I dial in my news consumption in the morning and then just read what is interesting during the day.
So this is a custom backend for CUPS. It consists of a
drv file that is used to emit the
ppd for CUPS. This
ppd tells CUPS that it will only accept PDF for forwarding to the backend. And it also tells CUPS about the specific dimensions of the remarkable device.
The other part is a small shell script I mostly adapted from some sample code. This backend uses the rmapi client to connect to remarkable cloud. It then places the PDF generated by CUPS into the folder specified at creation time of the printer. You won't get prompted on where to place the file, it's predefined at printer creation time. If you really need multiple places to put your stuff, you can do this by creating multiple printers in CUPS.
So this is the way my morning paper moves from screen to screen. Everything ends up in my remarkable
/Print/Home folder. If I think the article won't be useful anymore, I just delete them, otherwise I move them to a different folder.
And if I have some time on the weekend, I'll explain how to use thread this into the CUPS provided by Guix.
The code is in my scratch repo on GitHub.
Cover Image: By VGrigas (WMF) [CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0)], from Wikimedia Commons