{"id":29774555,"url":"https://github.com/pkgw/remarkable-printer-app","last_synced_at":"2025-07-27T08:08:38.647Z","repository":{"id":300474132,"uuid":"1006271207","full_name":"pkgw/remarkable-printer-app","owner":"pkgw","description":"A \"Printer Application\" (PAPPL) to \"print\" documents to a reMarkable device from your computer","archived":false,"fork":false,"pushed_at":"2025-06-21T22:25:49.000Z","size":31,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-21T23:18:02.925Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pkgw.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-21T21:58:52.000Z","updated_at":"2025-06-21T22:25:52.000Z","dependencies_parsed_at":"2025-06-21T23:18:04.598Z","dependency_job_id":"9442f79c-c09d-4159-8c10-b6b4a7ed3f9e","html_url":"https://github.com/pkgw/remarkable-printer-app","commit_stats":null,"previous_names":["pkgw/remarkable-printer-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pkgw/remarkable-printer-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkgw%2Fremarkable-printer-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkgw%2Fremarkable-printer-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkgw%2Fremarkable-printer-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkgw%2Fremarkable-printer-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pkgw","download_url":"https://codeload.github.com/pkgw/remarkable-printer-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkgw%2Fremarkable-printer-app/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267327534,"owners_count":24069442,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-27T02:00:11.917Z","response_time":82,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-07-27T08:08:38.160Z","updated_at":"2025-07-27T08:08:38.641Z","avatar_url":"https://github.com/pkgw.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# reMarkable Printer Application\n\nThis is a [“Printer Application”][pappl] that allows “printing” documents\ndirectly to a [reMarkable] device, via the [reMarkable Connect][rmc]\n([my.remarkable.com](https://my.remarkable.com/)) service. On a\nproperly-configured computer, after you install the app you will see a new\nprinter called “reMarkable Connect”, and printing to it will cause documents to\nappear on your tablet.\n\n[pappl]: https://www.msweet.org/pappl\n[reMarkable]: https://remarkable.com/\n[rmc]: https://remarkable.com/shop/connect\n\nUnder the hood this app is powered by the program [rmapi]. The printer app\nimplementation is derived from a combination of [OpenPrinting/ps-printer-app]\nand [remarkable-cups], although in the end it shares very little code with\neither.\n\n[rmapi]: https://github.com/ddvk/rmapi\n[OpenPrinting/ps-printer-app]: https://github.com/OpenPrinting/ps-printer-app\n[remarkable-cups]: https://github.com/ofosos/scratch/tree/master/remarkable-cups\n\n\n## Development/polish status\n\nThis package ought to work reliably, but it was built for personal use, so it\nhasn’t (yet?) been published in formal channels like [the Snap\nStore][snapstore]. Installation instructions and documentation are bare-bones\n(this README is it).\n\n[snapstore]: https://snapcraft.io/store\n\n\n## Basic Installation and Usage\n\nThe recommended way to install Printer Applications is, apparently, the [snap]\napp packaging system. As mentioned above, this app is not yet formally published\nto the Snap Store, so you’ll have to build and install it yourself:\n\n[snap]: https://snapcraft.io/\n\n1. Install [snap] and [snapcraft], the snap build tool\n1. Check out this repo\n1. Run `snapcraft pack` to build the app’s snap\n1. Run `sudo snap install --dangerous remarkable-printer-app_*.snap` to install it\n\nAfter the snap is installed, set it up as follows:\n\n1. Run `sudo remarkable-printer-app login`\n   - This will prompt you to go to the\n     [my.remarkable.com](https://my.remarkable.com/) site and get a device\n     connection code\n1. Run `sudo snap enable remarkable-printer-app`\n1. Run `sudo snap restart remarkable-printer-app` just to be safe\n\n[snapcraft]: https://documentation.ubuntu.com/snapcraft/stable/\n\nAt this point, if your system can auto-discover printers, it will hopefully\nstart showing you a new printer called “reMarkable Connect” or\n“reMarkable_Connect”. And you can hopefully start “printing” files to it!\n\nYou can also run `remarkable-printer-app path/to/a/pdf-file` to print a PDF at\nthe command line.\n\nLike other Printer Apps, this app also provides a web management UI, served at\n\u003chttp://localhost:8773/\u003e. However, since this particular app has very little\nflexibility, you should rarely if ever need to use the UI.\n\n\n## Details\n\n### Customizing the Print Destination\n\nYou can provide a `destdir` option to the `remarkable-printer-app login` command\nto specify where your printouts will “land” on your reMarkable. The destination\nshould be specified in the style of a Unix-like absolute path. For instance:\n\n```sh\nsudo remarkable-printer-app login -o destdir=/Printouts\n```\n\nThis will cause printed files to appear in the “Printouts” folder on your\ndevice.\n\n### Snap Networking and Docker\n\nIt appears that the default networking setup used by the [snap] system can be\nincompatible with that used by [Docker CE][dce] on Linux (and maybe other\nOS's?). In some cases you may need to reset your forwarding rules:\n\n[dce]: https://docs.docker.com/engine/\n\n```sh\nsudo iptables -F FORWARD\nsudo iptables -P FORWARD ACCEPT\n```\n\nOn Fedora Linux I also needed to run some one-time commands to mark the LXD\nbridge interface as trusted:\n\n```sh\nsudo firewall-cmd --zone=trusted --change-interface=lxdbr0 --permanent\nsudo firewall-cmd --reload\n```\n\n### Paper Sizes\n\nA reMarkable device can display PDFs that use any paper size. Unfortunately, in\norder to pretend that the reMarkable is a printer, we have to provide a list of\nspecific paper sizes that it “supports”. If you try to print a document whose\nactual size does not appear on the list, the attempt will fail.\n\nThe app claims that the reMarkable supports three paper sizes:\n\n- US Letter\n- A4\n- A custom size matching the reMarkable screen: 445×594 pts\n\nEven when you select a specific paper size in a printer dialog, some apps seem\nto struggle to deliver it in practice. For instance, when I try to print a\nwebpage at the custom reMarkable size in Firefox, the delivered content actually\nhas A4 size.\n\n### Printing Things That Aren’t PDFs\n\nAt the lowest level, this app can only accept PDF file inputs. Hopefully, your\ncomputer will understand this and be able to pre-render other kinds of documents\nto PDF before sending them to the reMarkable Printer App … but if there are\ntimes when it can’t, printing will fail. Any on-the-fly PDF-ification process\nmay also struggle regarding the paper size issues mentioned above.\n\n### The `remarkable-printer-app` CLI\n\nInstalling the snap makes a `remarkable-printer-app` command-line tool\navailable. It provides a number of subcommands besides the `login` command\nmentioned above. But, you will rarely need to use anything besides `login` and\nthe default `submit` mode.\n\n\n## Credits\n\nThe first version of the reMarkable Printer App was created by Peter K. G.\nWilliams. The initial code structure was derived from\n[OpenPrinting/ps-printer-app], by Till Kamppeter, which in turn was derived from\n[hp-printer-app](https://github.com/michaelrsweet/hp-printer-app) by Michael R.\nSweet, who is also the author of the [PAPPL][pappl] library used by this app.\n\n\n## Legalities\n\nThis software is provided under the terms of the [Apache License\n2.0](https://www.apache.org/licenses/LICENSE-2.0).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpkgw%2Fremarkable-printer-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpkgw%2Fremarkable-printer-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpkgw%2Fremarkable-printer-app/lists"}