{"id":20711208,"url":"https://github.com/kdrag0n/android_packages_apps_repainterservicepriv","last_synced_at":"2025-04-23T06:22:11.297Z","repository":{"id":55057633,"uuid":"452122378","full_name":"kdrag0n/android_packages_apps_RepainterServicePriv","owner":"kdrag0n","description":"First-class custom ROM integration service for my Repainter app","archived":false,"fork":false,"pushed_at":"2022-02-09T01:30:44.000Z","size":16,"stargazers_count":62,"open_issues_count":0,"forks_count":21,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-29T22:31:32.000Z","etag":null,"topics":["android"],"latest_commit_sha":null,"homepage":"https://repainter.app","language":"Kotlin","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/kdrag0n.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}},"created_at":"2022-01-26T03:02:18.000Z","updated_at":"2025-02-02T16:40:38.000Z","dependencies_parsed_at":"2022-08-14T10:30:39.168Z","dependency_job_id":null,"html_url":"https://github.com/kdrag0n/android_packages_apps_RepainterServicePriv","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kdrag0n%2Fandroid_packages_apps_RepainterServicePriv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kdrag0n%2Fandroid_packages_apps_RepainterServicePriv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kdrag0n%2Fandroid_packages_apps_RepainterServicePriv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kdrag0n%2Fandroid_packages_apps_RepainterServicePriv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kdrag0n","download_url":"https://codeload.github.com/kdrag0n/android_packages_apps_RepainterServicePriv/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250380566,"owners_count":21420974,"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":["android"],"created_at":"2024-11-17T02:14:28.310Z","updated_at":"2025-04-23T06:22:11.280Z","avatar_url":"https://github.com/kdrag0n.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Repainter ROM integration\n\nThis service provides first-class custom ROM integration for my [Repainter](https://repainter.kdrag0n.dev) app, which offers customizable dynamic theming for Android 12.\n\n## Benefits\n\n- Convenient for users (no prompts necessary)\n- Faster and more reliable than root and Shizuku backends\n- Full functionality with all customization (no limitations), even on the January security patch\n- ROM-specific configuration: dynamic boot animation colors, etc.\n\n## Features\n\n- Versioned API\n- Security: permission guarded by client signature\n- Supports Direct Boot\n- Automatically clean up themes on uninstall\n- Link to app website in Settings -\u003e App details -\u003e Repainter Integration Service for users to see what the service is for (no launcher icon)\n\n## Adding to a ROM\n\n### 1. Add this repository\n\nClone this repository to `packages/apps/RepainterServicePriv`.\n\n### 2. Configure the service\n\nThis step is optional, but **highly encouraged** for better integration.\n\nThe easiest way to configure the Repainter service is by forking the repository and editing [res/values/config.xml](res/values/config.xml). The config is documented with examples and comments, so configuration should be trivial.\n\nYou can also make a copy of config.xml and add it to an overlay package in `PRODUCT_PACKAGE_OVERLAYS`, such as `vendor/proton/overlay/packages/apps/RepainterServicePriv/res/values/config.xml`, and edit the overlay copy instead.\n\n[Example commit](https://github.com/ProtonAOSP/android_vendor_proton/commit/1cd312d3e57d4273199d1ed3fc0f6b29af04e577)\n\n### 3. Build the service\n\nAdd `RepainterServicePriv` to `PRODUCT_PACKAGES` somewhere in order to build the service:\n\n```makefile\n# Repainter integration\nPRODUCT_PACKAGES += \\\n    RepainterServicePriv \\\n```\n\n[Example commit](https://github.com/ProtonAOSP/android_vendor_proton/commit/c195b5b76e85b4860e990a5549079d6ac91dc696)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkdrag0n%2Fandroid_packages_apps_repainterservicepriv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkdrag0n%2Fandroid_packages_apps_repainterservicepriv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkdrag0n%2Fandroid_packages_apps_repainterservicepriv/lists"}