Move required permissions to the respective apps.
This allows people to use a lot of our apps outside lineage
without extra changes.
Change-Id: I840a9edeae38e94ff6592c4817fcea6f5e4a7e8f
There are a lot of apps installed by default that are unusable with
a controller. This splits the mobile related settings out of common
into a common_mobile config and adds common_tv.
Note: The EXCLUDE_AUDIOFX flag was removed from the tv configs
because the new config path no longer builds it.
Change-Id: I67db32750fca91725d703243f2bcee8bcd9b82cd
* zip stores timestamp for all included files. The timestamps of dex
files are different across different runs, result in inconsistent
checksum of output apk/jar.
* Workaround the issue by using fixed timestamp for dex files.
Change-Id: I21f3a7e32cdfdb07c5f5c140df2e797efd4a8005
* With the techpack integration implementation of Google's msm-4.14
kernel https://bit.ly/2WqiMFx (CAF didn't port this to their kernel
thus suppose Google's port is the standard one), these headers are
installed to include/audio/include/uapi.
* This fixes building audio HAL with 4.14 kernel
Change-Id: I8283699470a7bcb31c771c9aa770a825b4e82519
[installrecovery]
* Don't try to mount system
[installboot]
* Kill kernel module pushing
* Now we don't need to mount system anymore ^.^
[eat]
* No need to use /cache/recovery/command when we have
adb reboot sideload-auto-reboot
* Make use of our custom adb wait-for-online
[_adb_connected]
* Could be removed entirely, but for now make it use
adb wait-for-online
Change-Id: Ife25e63c63c784670c7d330f8a69de01326de1a0
* APEX is useless to average Lineage user, as we aren't
licensed to ship the GMS APEX's, nor would we want to,
as we want to keep compatibility with non-GMS use-cases.
* Additionally, APEX's should each be signed with their
own unique key, and number of them can vary per-device,
which makes signing them in a standard way on infrastructure
quite complex.
* Though this flag is default, we need to disable it
explicitly to make sure any maintainers who set up the
configurations for APEX images won't change needs of
infrastructure. This will allow people who want to build
locally to use full APEX(s).
Change-Id: I7f2eb52593eeca1b3761a7a163ce9079995870c6
Backup/restore functionality was broken in the
Ia1f4ae95c9e4dae4df844853e81c264bc838f177 change
because of incorrect check of the function's result.
check_prereq() function refactored to return 0 if
backuping/restoration is possible. Any work should be
performed only if check_prereq() succeeds.
Change-Id: Ic977dba675df58a228ef4b882b25beb66cc9d2c6
For non AB devices system partition should be unmounted
if check_prereq function fails.
This patch also refactors backuptool a bit for AB devices
in order to look same as backuptool for non AB devices.
Change-Id: Ia1f4ae95c9e4dae4df844853e81c264bc838f177
.repo/manifest.xml is no longer a symlink becuase apparently windows
developers need to use repo and windows needs admin for symlinks.
https: //gerrit.googlesource.com/git-repo/+/a269b1cb9dc21dfd598bfea3766206b606ad4589
Change-Id: I88ea0295133959136d7214f13a76b66d89dc88d4
* This check was supposed to check whether the script
addon.d version was lower than backuptool's
* Given that the backuptool addon.d version is 1, this
isn't going to happen ever making this check completely
unuseful
Change-Id: I2464749b52bf4e8825e0b4ef42500ee7d3bbfa61
* For some odd reasons executing `cd /system/addon.d` makes the system
hang and unmount error:
umount: /system_root: Device or resource busy
* Don't change directory to not allow the system partition hang
Change-Id: I3d30bdc59c2f05d16823e99046c1dce2e1e6eb73
* If any of these two function gets run on a recovery mounting system
to /system, /system/addon.d won't exist while /system/system/addon.d will.
* Run the functions with $S as argument to make this work correctly
Change-Id: I02e7b91429a9e74d28bdb77e56955dad97ca75ac
* The path /postinstall exists only for A/B, causing:
grep: /postinstall/tmp/addon.d/*sh: No such file or directory
Change-Id: Ia07b3029e949c3e08302457cd08798a4dde00ef6
* We can survive without granting this permission
out of box, also fixes Exchange-less boot up
exception.
D AndroidRuntime: Shutting down VM
E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: main
E AndroidRuntime: java.lang.IllegalArgumentException: Unknown permission: com.android.email.permission.READ_ATTACHMENT
E AndroidRuntime: at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermission(PermissionManagerService.java:2103)
E AndroidRuntime: at com.android.server.pm.permission.PermissionManagerService.access$900(PermissionManagerService.java:121)
E AndroidRuntime: at com.android.server.pm.permission.PermissionManagerService$PermissionManagerServiceInternalImpl.grantRuntimePermission(PermissionManagerService.java:3032)
E AndroidRuntime: at com.android.server.pm.PackageManagerService.grantRuntimePermission(PackageManagerService.java:5800)
E AndroidRuntime: at android.app.ApplicationPackageManager.grantRuntimePermission(ApplicationPackageManager.java:684)
E AndroidRuntime: at com.android.server.pm.permission.DefaultPermissionGrantPolicy.grantRuntimePermissions(DefaultPermissionGrantPolicy.java:1217)
E AndroidRuntime: at com.android.server.pm.permission.DefaultPermissionGrantPolicy.grantDefaultPermissionExceptions(DefaultPermissionGrantPolicy.java:1381)
E AndroidRuntime: at com.android.server.pm.permission.DefaultPermissionGrantPolicy.grantDefaultPermissions(DefaultPermissionGrantPolicy.java:297)
E AndroidRuntime: at com.android.server.pm.PackageManagerService.systemReady(PackageManagerService.java:21731)
E AndroidRuntime: at com.android.server.SystemServer.startOtherServices(SystemServer.java:2037)
E AndroidRuntime: at com.android.server.SystemServer.run(SystemServer.java:529)
E AndroidRuntime: at com.android.server.SystemServer.main(SystemServer.java:356)
E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:491)
E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:908)
Change-Id: If2caad2b004820b10b7095a4bb4307d0f065c723
* Dynamically mount system to the path chosen by the recovery through backuptool
* This can be helpful because of the fragmentation that will happen with system mount in recovery after Q
Change-Id: I2d1e775efcf87e33319bc7790d1e54bca72116d3
This fixes parsing when arguments contain colons, a typical usecase
would be:
-vendor/app/TimeService/TimeService.apk;:timeservice_app_cert
Change-Id: I7500ae09632632ddc10734d9b1df267e28286b67
* We are no longer providing our own root access solution
as of 17.0, as PermissionHub has largely replaced the
functionallity of Privacy Guard, which this feature
was housed in.
* We do still have a baked in ADB root solution that can
be enabled in developer settings (see topic:ten-adbroot
on Gerrit).
* This DOES NOT mean we will be providing support for other
root solutions.
Change-Id: Iecf92e3c8f91304ed998e0260d09a8048dc44d82