{"id":25998530,"url":"https://github.com/rhee876527/pushbullet-notifier","last_synced_at":"2026-04-19T11:35:29.749Z","repository":{"id":280613324,"uuid":"942558306","full_name":"rhee876527/pushbullet-notifier","owner":"rhee876527","description":"Simple pushbullet-notifier for Linux desktop.","archived":false,"fork":false,"pushed_at":"2025-05-26T11:20:19.000Z","size":36,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-08T17:50:13.927Z","etag":null,"topics":["api","libnotify","linux-desktop","notifications","pushbullet","pushbullet-api","python","systemd-service","websocket"],"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/rhee876527.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}},"created_at":"2025-03-04T09:45:14.000Z","updated_at":"2025-07-12T21:45:09.000Z","dependencies_parsed_at":"2025-03-04T11:32:07.987Z","dependency_job_id":"b93e6c35-c35a-474f-9c00-898faea56c0f","html_url":"https://github.com/rhee876527/pushbullet-notifier","commit_stats":null,"previous_names":["rhee876527/pushbullet-notifier"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rhee876527/pushbullet-notifier","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhee876527%2Fpushbullet-notifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhee876527%2Fpushbullet-notifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhee876527%2Fpushbullet-notifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhee876527%2Fpushbullet-notifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rhee876527","download_url":"https://codeload.github.com/rhee876527/pushbullet-notifier/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhee876527%2Fpushbullet-notifier/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32005821,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"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":["api","libnotify","linux-desktop","notifications","pushbullet","pushbullet-api","python","systemd-service","websocket"],"created_at":"2025-03-05T17:25:07.287Z","updated_at":"2026-04-19T11:35:29.728Z","avatar_url":"https://github.com/rhee876527.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pushbullet-notifier\nSimple pushbullet-notifier for Linux desktop.\n\n\n\n![Example](https://github.com/rhee876527/pushbullet-notifier/blob/main/example.png?raw=true)\n\n\n\n### Why:\n\nThe Chrome extension store has ended support for MV2 extensions and the author has no plans to port the Pushbullet extension to MV3 as far as am aware.\n\nSo we make our own replacement listener client using the API. And queue incoming notifications to desktop using `notify-send`.\n\n\n\n### Requirements: \n`python` and `libnotify`. \n\nWorks on:\n\n![Python 3.13](https://img.shields.io/badge/Python-3.13-brightgreen.svg)\n\n\n### Benefits:\n\n\n- Extremely simple - Uses std python libraries for websocket connections to Pushbullet's API.\n- Local cache of client pushes.\n- Resilient auto-resume from last message. HTTP polling keeps pushes always fresh.\n\n\n### Use: Easy as 1,2,3\n\n1. Get API Access Token from https://www.pushbullet.com/#settings/account\n\n\n\n2. Create pushbullet client aka $DEVICE_ID.\n\n   ```\n   curl -u $PUSHBULLET_API_KEY: -X POST https://api.pushbullet.com/v2/devices \\\n       -H \"Content-Type: application/json\" \\\n       -d '{\"nickname\": \"LinuxPC\", \"icon\": \"laptop\"}'\n   \n   ```\n \n     from the response `iden` is your `$PUSHBULLET_DEVICE_ID`\n\n3. Run the python app as a daemon service to listen for new pushes\n\n\n   Configure the environment variables in the service\n\n   ``nano ~/.config/systemd/user/pushbullet-notify.service``\n   \n   ```\n    [Unit]\n    Description=Pushbullet Notification Service\n    After=graphical-session.target network-online.target\n    Requires=graphical-session.target\n    \n    [Service]\n    ExecStartPre=/bin/sleep 15\n    ExecStart=%h/.stuff/push.py\n    Restart=always\n    WatchdogSec=900\n    Type=notify\n    RestartSec=10\n    WorkingDirectory=%h/.stuff\n    \n    # Pushbullet API\n    Environment=\"PUSHBULLET_API_KEY=o.8ZxSAMPLEpKo8uRp\"\n    Environment=\"PUSHBULLET_DEVICE_ID=ujxSAMPLEZ32i\"\n    \n    [Install]\n    WantedBy=graphical-session.target\n\n   ```\n\n   then run:\n\n\n   `systemctl --user enable --now pushbullet-notify.service `\n\n\n\n\nLearn more about the pushbullet API here: https://docs.pushbullet.com/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frhee876527%2Fpushbullet-notifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frhee876527%2Fpushbullet-notifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frhee876527%2Fpushbullet-notifier/lists"}