{"id":17132966,"url":"https://github.com/cutwell/e-paper-pyos","last_synced_at":"2025-03-24T05:42:07.434Z","repository":{"id":217507523,"uuid":"744045200","full_name":"Cutwell/e-paper-pyos","owner":"Cutwell","description":"Python-based operating system for touchscreen e-paper devices.","archived":false,"fork":false,"pushed_at":"2024-01-18T23:59:45.000Z","size":99,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-29T11:28:18.709Z","etag":null,"topics":["e-paper","os","python-os","raspberry-pi-zero-2-w","spotify","spotify-control","waveshare-epaper"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Cutwell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","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}},"created_at":"2024-01-16T14:23:27.000Z","updated_at":"2024-02-06T15:42:35.000Z","dependencies_parsed_at":"2024-01-19T00:56:12.543Z","dependency_job_id":null,"html_url":"https://github.com/Cutwell/e-paper-pyos","commit_stats":null,"previous_names":["cutwell/spotify-e-paper-control","cutwell/e-paper-pyos"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cutwell%2Fe-paper-pyos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cutwell%2Fe-paper-pyos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cutwell%2Fe-paper-pyos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cutwell%2Fe-paper-pyos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cutwell","download_url":"https://codeload.github.com/Cutwell/e-paper-pyos/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245217791,"owners_count":20579297,"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","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":["e-paper","os","python-os","raspberry-pi-zero-2-w","spotify","spotify-control","waveshare-epaper"],"created_at":"2024-10-14T19:29:01.368Z","updated_at":"2025-03-24T05:42:07.406Z","avatar_url":"https://github.com/Cutwell.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- Update this link with your own project logo --\u003e\n# \u003cimg src=\"https://raw.githubusercontent.com/Cutwell/e-paper-pyos/main/logo.png\" style=\"width:64px;padding-right:20px;margin-bottom:-8px;\"\u003e E-Paper PyOS\n Python-based operating system for touchscreen e-paper devices.\n\n\u003c!-- Find new badges at https://shields.io/badges --\u003e\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n- A Python-based OS for e-paper applications.\n\t- e.g.: Spotify playback control\n- Plug-and-play compatability with the [Waveshare 2.13\" Touch E-paper Hat](https://www.waveshare.com/2.13inch-touch-e-paper-hat.htm) and [Raspberry Pi Zero 2W](https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/).\n\n\n## Setup\n\nFollow this guide to setup your Raspberry Pi Zero 2W and Waveshare 2.13\" Touch E-paper Hat:\n\n1. Follow [this](https://developer.spotify.com/documentation/web-api/tutorials/getting-started#create-an-app) Spotify guide to create an app.\n2. Create `.envrc`, using `.envrc.example.sh` as a template, and add your client ID/secret, etc.\n3. Install [direnv](https://direnv.net/) with `make install-direnv`.\n3. Access variables in your terminal environment with `direnv allow`.\n\n_❗ Developer note: Try using `make ssh` as a shortcut to connect to your RPi._\n\n### Installation\n\n1. Setup your RPi using the [WaveShare documentation](https://www.waveshare.com/wiki/2.13inch_Touch_e-Paper_HAT_Manual#Raspberry_Pi). Follow the guide until `Libraries Installation`, then follow the steps below:\n\n2. Install dependencies and libraries..\n\nOn a fresh Raspberry Pi:\n\n```sh\nmake install-all\n```\n\nInstall dependencies selectively:\n\n|Dependency||\n|:---:|:---:|\n|[BCM2835](https://www.airspayce.com/mikem/bcm2835/) (RPi Broadcom chip) C library|`make install-bcm2835`|\n|[WiringPi](https://github.com/WiringPi/WiringPi) C library|`make install-wiringpi`|\n|[Rust](https://www.rust-lang.org/tools/install) (to install [PyOpenSSL](https://pypi.org/project/pyOpenSSL/))|`make install-rust`|\n|[PyEnv](https://github.com/pyenv/pyenv) \u0026 [Python 3.9.18](https://www.python.org/downloads/release/python-3918/)|`make install-pyenv`|\n|[Poetry](https://python-poetry.org/docs/#installing-with-the-official-installer)|`make install-poetry`|\n|Poetry-managed Python dependencies|`make install-poetry-deps`|\n\n_❗ Note: If you're having issues installing PyEnv, [make sure your build environment is set up correctly](https://github.com/pyenv/pyenv/wiki#suggested-build-environment)._\n\n_❗ Note: Certain e-paper apps require you to login to services on your phone by scanning QR codes. Login tokens are then shared with the e-paper via callback to the devices `.local` presence on your local network. If your device defaults to HTTPS, you will need to generate an OpenSSL certificate for app servers, using `make generate-ssl-cert`._\n\n3. Test your installation was successful by running:\n\n```sh\nmake test-install\n```\n\n### Troubleshooting\n\nThe following dependencies might be missing from your system:\n\n```sh\nsudo apt-get install liblcms1-dev -y\n```\n\n## Contributing\n\n\u003c!-- Remember to update the links in the `.github/CONTRIBUTING.md` file from `Cutwell/e-paper-pyos` to your own username and repository. --\u003e\n\nFor information on how to set up your dev environment and contribute, see [here](.github/CONTRIBUTING.md).\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcutwell%2Fe-paper-pyos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcutwell%2Fe-paper-pyos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcutwell%2Fe-paper-pyos/lists"}