JobService: fix initial theme dir creation

This ensures that /data/system/theme is created with proper
permissions before any jobs are run. This fixes cases where
jobs authorized under a different context are forced to create
the theme dir under lesser privileges. This removes the need of
core commits for theme dir entirely, but depends on up-to-date
interfacer sepolicy commits.

Change-Id: Id97643897dc906104429853efa6cf518ec4f3f6b
1 file changed
tree: b59f59e050fc05662788ae77426a977534ce24b0
  1. app/
  2. gradle/
  3. .gitignore
  4. Android.mk
  5. build.gradle
  6. gradle.properties
  7. gradlew
  8. gradlew.bat
  9. LICENSE.txt
  10. projekt.substratum.theme.xml
  11. README.md
  12. settings.gradle
README.md

ThemeInterfacer

ThemeInterfacer is the background service of the theme system developed by the Projekt team. It allows theme apps (including Substratum) to run system wide operations, otherwise unobtainable without root access. This also alleviates the performance stress on the theme app.

How to add to ROM builds

If you are a ROM developer, by now you should know how to track new packages while building your ROM. However, if you don't - please follow these steps:

Add "ThemeInterfacer" in your PRODUCT_PACKAGES

PRODUCT_PACKAGES += \
...\
...\
...\
ThemeInterfacer

Don't forget to add the project path in your AOSP manifest:

<project path="packages/apps/ThemeInterfacer" name="substratum/interfacer" remote="github" revision="n-rootless" />