[Closing message]
Hi,
I am discontinuing the work on the Android Permission Spoofing Framework as I am not using Android anymore.
If anybody is interested in taking over the development I would be very happy to help her or him getting started as much as possible.
Feel free to contact me if you would like to work on it.
Sorry and have fun - Guhl
[End closing message]
This ROM is based on Cyanogenmod CM10.1.
In addition to the original CM10.1 rom it includes the permission spoofing framework enhancement that was originally developed by Plamen K. Kosseff for Android 2.3. The functionality has been ported to Android 4.x and enhanced by me and is now available.
My work was/is originally done for the HTC vision (G2/DZ) for which i provide ROMs based on ASOP and CM10.1 (see posting in the vision forum) but since i do have a N4 now too i will provide ROMs for it also.
If you as a developer want to add the permission spoofing framework to your ROM please go ahead it should be portable easily. I will keep the commit list updated. If you need help don't hesitate to ask!
The source of the enhancement can be found on github in the repositories:
cm-android_frameworks_base
cm-android_frameworks_opt_telephony
android_packages_apps_Settings
The current work is done in the CM-10.1 branch and the relevant commits are:
framework initial commit
framework bug fix 1
framework bug fix 2
frameworks telephony initial commit
app settings initial commit
framework permission spoofing - location
framework pff: infrastructure code cleanup
framework pff: permission spoofing - contacts and phone log
framework pff: permission spoofing - calendar (Instances)
framework pff: permission revoking - initial commit
framework pff: add PFFInfoDatabase to make spoofed informations persistant and changeable
framework pff: bug fix for permission revoking
What is permission spoofing
Permission spoofing means that the framework will return spoofed informations to Apps instead of the original information based on permissions that the App requested during installation. The main motivation for the development of this functionality is the protection of the privacy of the phones owner.
Examples for spoofed information are:
Empty contact list instead of real contacts - READ_CONTACTS
False location instead of real location - ACCESS_COARSE_LOCATION / ACCESS_FINE_LOCATION
False Information for phone id and phone number - READ_PHONE_STATE
Empty log instead of real phone call log - READ_CALL_LOG
Empty calendar list instead of real calendar entries - READ_CALENDAR
....
Current implementation
Currently the following permissions are available:
READ_PHONE_STATE
While this permission allows the App to read the state of the phone (in call, ...) it also allows the App to read information like the phone number or the IMEI of the phone. Instead of revoking the permission that has to be granted to an App, permission spoofing provides spoofed information for this sensitive data.
ACCESS_COARSE_LOCATION and ACCESS_FINE_LOCATION
Instead of the real location the top of Mount Everest will be reported. The implementation is not perfect yet (Google maps and Latitude still seem to know the location - working on that)
READ_CONTACTS and READ_CALL_LOG
Instead of the contacts and the call log an empty list will be reported. The implementation sets the limit parameter of the query to 0 if the permission is spoofed.
READ_CALENDAR
The implementation changes the date for which the items will returned to the first week of 1970.
More permissions will be added in the near future.
Usage
Spoofing can be enabled on a per App basis. To enable spoofing go to Settings - Apps, choose the App for which you want to spoof the permission. Below the spoofable permission will be a switch that can be set to On to enable spoofing or Off to disable spoofing for this App.
Optional Apps
The source of these apps is also available at https://github.com/guhl
PFF-GPSPath
The PFF-GPSPath App can be used to set the spoofed location and in addition it can also be used to define a path the can then be simulated in the App (by effectively moveing the spoofed location)!
HowTo for PFF-GPSPath HowTo
PFF-Settings
The PFF-Settings app provides the same functionality as App - Settings but in a more comprehensive way.
It provides a list of all Apps (including system Apps) that have a spoofable permission and allows you to set spoofing On/Off for them
PFF-Test
If you spoof a spoofable permission for the app PFF-Test you can check the info that the framework provides to PFF-Test
Downloads
ROM cm-10.1-20130929-UNOFFICIAL-mako-pff.zip
Gapps are not included in the rom - they can be found at gapps-jb-20130301-signed.zip
PFF-GPSPath_1_2.apk (needs a ROM >= 20130513)
PFF-AppSettings_1_1.apk
PFF-Test
Communication
I do not want to start a flame war on spoofing on XDA. Whiile spoofing is important for me I do understand people opposing it.
If you want to talk to me, the best way to do this is to look for me (Guhl) at #G2ROOT or #andromadus on freenode IRC.
Changelog
2013-10-21
Fix permission unspoofing bug in PFF-AppSettings -> Version 1.1 - see downloads
2013-09-29
Update from CM sources
2013-06-30
Update from CM sources
2013-06-15
Update from CM sources
Bug fix for permission revoking (PackageManager crashed when installing apk from file system)
PFF-GPSPath_1_2.apk added Altitude detection and routing!
2013-06-02
Update from CM sources - no new spoofing
2013-05-25
Update from CM sources
Fixed keymaster problem (Settings -> Security crash)
2013-05-13
Framework change to make the spoofed information persistent and changeable
App PFF-GPSPath to set and simulate the spoofed location
Update from CM sources
permission revoking moved to Main-ROM and removed the Test-ROM
2013-04-17
Enabled permission revoking (in Test-ROM)
2013-04-17
Update from CM sources - no new spoofing
2013-04-09
Update from CM sources - no new spoofing
Added buttons to PFF-AppSettings to spoof/unspoof all apps with one click
2013-03-24
Update from CM sources - no new spoofing
2013-03-17
Update from CM sources - no new spoofing
2013-03-09
Update from CM sources - no new spoofing
2013-03-03
Added spoofing for READ_CALENDAR
2013-02-21
Added spoofing for READ_CONTACTS and READ_CALL_LOG
Updated PFF-AppSettings to reflect the new permissions
2013-01-14]
Added location spoofing
Added location testing to PFF-Test
Credits
Plamen K. Kosseff for the original framework changes
Flinny for his huge work on the Andromadus roms and supporting me with my original development for the vision
pierre_ja, Nipqer, Hymie and all the others at #G2ROOT for their endless help and entertainment
and of course cyanogenmod!
Read_calendar
Hi,
I added spoofing for READ_CALENDAR.
Have fun - Guhl
Re: [ROM][03-03-13][Guhl] Permission Spoofing Framework CM10.1
Thank you for your work.
Sent from my Nexus 4 using xda premium
Hi,
Updated the ROM from the CM-sources.
No new spoofing yet.
Have fun - Guhl
Re: [ROM][09-03-13][Guhl] Permission Spoofing Framework CM10.1
Thanks for your work
Sent from my Nexus 4 using xda app-developers app
Re: [ROM][09-03-13][Guhl] Permission Spoofing Framework CM10.1
Absolutely a fan, and plan on seeing to merging this code into our repos asap! So very grateful for your work, guhl. Thanks! And btw - you rock!
Sent from my Nexus 4 using xda premium
Re: [ROM][09-03-13][Guhl] Permission Spoofing Framework CM10.1
Amplified said:
Absolutely a fan, and plan on seeing to merging this code into our repos asap! So very grateful for your work, guhl. Thanks! And btw - you rock!
Sent from my Nexus 4 using xda premium
Click to expand...
Click to collapse
Hi,
Thanks for the feedback.
Looking forward to seeing what you make of it in your builds.
Have fun - Guhl
Sent from my HTC Vision using xda app-developers app
Re: [ROM][09-03-13][Guhl] Permission Spoofing Framework CM10.1
guhl99 said:
Hi,
Thanks for the feedback.
Looking forward to seeing what you make of it in your builds.
Have fun - Guhl
Sent from my HTC Vision using xda app-developers app
Click to expand...
Click to collapse
Anything in specific things I should keep in mind when merging? Feel free to talk me: [email protected] . I would love to implement this and get experimental builds out asap.
Preparing to work on it now.
Sent from my Nexus 4 using xda premium
Hi,
Updated the ROM from the CM-sources. No new spoofing.
Working on a new version of the settings app that will allow to spoof/unspoof all apps with one click.
Have fun - Guhl
Hi,
Updated the ROM from the CM-sources. No new spoofing.
Have fun - Guhl
Hi,
I added buttons to the Apps-View of the PFF-AppSettings App.
This allows to spoof or unspoof all (non system) Apps with one button.
The current implementation has problems refreshing the list after one pressed the button.
If you move the list a bit or go back out and in you'll see the changes.
I will try to fix that in the next days but these fragments drive me crazy.
Have fun - Guhl
Hi,
Updated the ROM from the CM-sources. No new spoofing.
Have fun - Guhl
Hi,
I improved the buttons in PFF-AppSettings to spoof/unspoof all apps (system and non-system) with one click.
Have fun - Guhl
Hi,
Updated the ROM from the CM-sources. No new spoofing.
Have fun - Guhl
guhl99,
Very interesting work. I'm considering updating the stock rom I'm on to yours....is your rom 4.2.2? I ask because CM 10.1 could be 4.2.1 or 4.2.2 and it's not specified...also can you clarify the change date of 03-04-17?
What has to be done to run this on other rom's? I ask because I'd like to run this also on my hd2, desire hd and off brand tablet. How does it differ from pdroid/openpdroid?
*note* I'm not making lite of your work at all...merely wanting to know of any differences.
famewolf said:
guhl99,
Very interesting work. I'm considering updating the stock rom I'm on to yours....is your rom 4.2.2? I ask because CM 10.1 could be 4.2.1 or 4.2.2 and it's not specified...also can you clarify the change date of 03-04-17?
What has to be done to run this on other rom's? I ask because I'd like to run this also on my hd2, desire hd and off brand tablet. How does it differ from pdroid/openpdroid?
*note* I'm not making lite of your work at all...merely wanting to know of any differences.
Click to expand...
Click to collapse
Hi,
The ROM is 4.2.2 based
To run this on other roms one has to apply the commits I link in the OP to the (CM) source tree and then use the usual build procedure for the ROM. The changes are changes deep in framework and I don't think that binary patching would work reliable.
I am currently providing builds for the G2/Desire Z and the N4 and will probably also provide one for the GNex soon.
The difference to pdroid is that pdroid mainly blocks access to certain info on the phone while this here fakes the information that is returned. So i.e. if the App tries to read your device ID it will receive a syntactical valid device ID but not yours.
Or i.e. it will receive a valid location (the top of the mount everest) but not yours.
Currently I am working on changing the systematic behind the scenes with the following goals:
- Make the faked info transparent and customizable for the user
- Allow the usage of customizable fake accounts that can be used to fake to contacts, calendar ... entries
(then i will also add permissions like WRITE_CONTACT so the app that has a spoofed WRITE_CONTACT will basically add the contact to your fake account and not your reall)
...
I hope this clarifies things - Have fun Guhl
Have
Have you looked at the xposed framework as a possible method to simplify things? It already has an app settings module that allows turning permissions on and off....looks like spoofing could be done as an option....and would make the changes available to a larger group. Possible collaberation?
Xposed Framework
http://forum.xda-developers.com/showthread.php?t=1574401
App settings module
http://www.villainrom.co.uk/forum/threads/app-settings.5486/
The project and modules are open source so modifications wouldn't be an issue.
famewolf said:
Have you looked at the xposed framework as a possible method to simplify things? It already has an app settings module that allows turning permissions on and off....looks like spoofing could be done as an option....and would make the changes available to a larger group. Possible collaberation?
Xposed Framework
http://forum.xda-developers.com/showthread.php?t=1574401
App settings module
http://www.villainrom.co.uk/forum/threads/app-settings.5486/
The project and modules are open source so modifications wouldn't be an issue.
Click to expand...
Click to collapse
Hi,
Thanks for the link, did not know it yet - I looked at it now.
Well turning permissions on an off is the easy part.
It is actually included in my patches but commented as it is not my primary interest.
Have fun - Guhl
Rom is working great. Are you going to support any of the OTA update apps like goo.im's goomanager? They would also give you a 2nd mirror on the rom's.
https://play.google.com/store/apps/...251bGwsMSwxLDMsImNvbS5zMHVwLmdvb21hbmFnZXIiXQ..
famewolf said:
Rom is working great. Are you going to support any of the OTA update apps like goo.im's goomanager? They would also give you a 2nd mirror on the rom's.
https://play.google.com/store/apps/...251bGwsMSwxLDMsImNvbS5zMHVwLmdvb21hbmFnZXIiXQ..
Click to expand...
Click to collapse
Hi,
great idea. Did not think about it myself.
Currently I am (cause there are already several requests) re-enabling the permission revoke functionality.
Hope that I will be done withing the next 2 days.
Have fun - Guhl
Related
As featured on the XDA portal Here
Note: I understand that the source is for 2.3.4 right now, but svyat is currently working on an ICS version. Hopefully a talented Dev can figure this first. If not, I will post svyat's ICS source patches when he makes them available.
This thread is really a request/research & development topic. I take absolutely no credit for any of the work done by svyat or any potential/willing ROM dev or chef.
The purpose is to bring to attention a new app created by svyat by the name of PDroid. You can find that thread Here.
PDroid is an app with a capability a lot of you are probably already familiar with; permission control. Permission control is the ability to block which permissions apps have access to on your device. PDroid takes this a step further by allowing you to block or change the information that a requesting app receives.
For example: many of you may be aware of LBE security app or permission control in Cyanogen. A lot of times when you block permissions to an app it will cause the app to break (force close) which requires you to change back your settings allowing the app access to information you would rather deny. What is the purpose of blocking data if it just breaks an app? Well that's why svyat has written Pdroid.
PDroid allows you to block permissions AND if that breaks the app, instead you may provide the app with false information. For example: When an app requests your location, you can have PDroid provide a false location. Or when an app requests your IMEI, you can have PDroid provide a false IMEI that you made up. You are able to do this will many of the permissions.
What I am requesting from a ROM dev or chef:
I am not experienced with programming at all so I will do my best to describe what I understand.
PDroid requires that Roms be patched so that the app can work. Currently svyat is doing the patches at a request basis. This is a slow process (he has many people requesting and is working alone). So I am hoping we can get a willing chef to patch one of his ROMs with this.
You can find the patch source Here
Instructions for patching:
Download: PDroid 2.3.4 source (v1.22) (yes it is based on 2.3.4 but also works with 2.3.3 and 2.3.5 flawlessly)
Get the 2.3.4 source from AOSP (branch: android-2.3.4_r1)
Extract the patches from the above archive to the 2.3.4 tree root
Run:
Code:
patch -p1 -i build.patch
patch -p1 -i frameworks.patch
patch -p1 -i libcore.patch
Building from source:
Make a clean build
Apply the patches (see above)
Run:
Code:
source build/envsetup.sh
make update-api
mmm frameworks/base
mmm frameworks/base/services/java
mmm libcore
make snod
However, for experienced developers the following basic steps for creating a PDroid patch should be enough to get you started:
Make a clean AOSP build (2.3.4, assuming that your ROM is based on 2.3.x)
Make another build with PDroid sources added
Decompile the framework.jar, services.jar and core.jar files inside the system/framework directory (of both above builds) using apktool
Diff the output so that you know, which parts were changed by PDroid
Decompile the above three files from your ROM, you want to patch
Add the missing code to your ROM files based on the above diff
Recompile your patched ROM files using apktool
I really seeing this type of control being the new standard for custom ROMs. To me, this is another BIG reason to be rooted!
disregard 10chars
disregard 10chars
Sent from my Nexus S using xda premium
disregard 10chars.
Sent from my Nexus S using xda premium
Note: This thread is here mostly for historical purposes. While Xposed is supported in various forms [EdXposed and LSPosed], developent on the Xposed primary app has completed. Xposed framework compatible modules are still in active development and supported by their respective developers..
Click to expand...
Click to collapse
Let me introduce the Xposed framework, which gives you the possibility to modify your ROM - without modifying any APK (developers) or flashing (users)!
For a quick start, have a look at XDA's "Android Basics 101" on Xposed:
Some technical details:
I extended the /system/bin/app_process executable to load a JAR file on startup. The classes of this file will sit in every process (including the one for system services) and can act with their powers. And even more: I have implemented something that allows developers to replace any method in any class (may it be in the framework, systemui or a custom app). This makes Xposed very powerful. You can change parameters for the method call, modify the return value or skip the call to the method completely - it's all up to you! Also replacing or adding resources is easy, thanks to many helpers in Xposed's API that developers can use.
Advantages:
No need to modify any APKs. This means:
No need to decompile, change things in smali, compile, sign, ...
It will work for odexed and deodexed ROMs.
Your mod is not bound to a specific version of the ROM. Unless there is a major change in the methods called for a certain functionality, your mod will continue to work even when you upgrade your ROM. Many modules work for a wide range of ROMs from different vendors.
Multiple mods can be installed at the same time, even if they modify the same app. So you can use these battery icons and those quick toggles. Even hooking the same method twice is possible. Of course, this only works properly if the mods are not trying to do incompatible things.
It does its magic at runtime. That means that developers can implement settings and do changes based on them (instead of statically forcing a certain behavior). Or you can have some extra logic for certain ROMs, without building different mod versions.
It can be disabled easily without having to reflash.
It's open source and free (as in beer and in speech).
There is a repository with many popular modules.
Download:
You can download the installer from http://dl.xposed.info/latest.apk. The attached disabler zip is only needed if you are in a boot loop.
An experimental version for Gingerbread made by liudongmiao can be found here: http://forum.xda-developers.com/showthread.php?p=44034334#post44034334 (no support from my side though)
How to install:
First step for everything you do: Create a nandroid backup and make sure you know how to restore it!
I'm not responsible for anything you do with your phone/tablet/rice cooker.
There is also the risk to soft-brick your device. In such a case, see below for ways to recover from it.
Installation of the framework:
Download the Xposed Installer APK and install it
Launch the Xposed Installer, go to the "Framework" section and click on "Install/Update"
Reboot
Done!
You can verify this by starting the Xposed Installer again and making sure that the numbers in the "Framework" section are green.
If app_process jumped back to an older version (or none at all), you probably have a ROM with S-On or similar, which reverts any changes to /system after a reboot. Use installation via recovery in such cases.
Installation of any modules:
Download <module>.apk (e.g. via the builtin repository browser) and install it
Launch the Xposed Installer and go to the "Modules" section (you will also get there if you click on the notification warning you that the module is not enabled yet)
Enable the module by checking the checkbox
Reboot
Done!
(note that you can install the framework and enable/disable multiple modules at once and reboot afterwards)
In case you get into a boot loop:
First, try using the safemode by pressing any hardware key repeatedly. You can find a short explanation how it works here.
If that doesn't work, you can flash the attached Xposed-Disabler-Recovery.zip by Tungstwenty. It will be copied to your (external) SD card when you install Xposed as well. The only thing it does is copying /system/bin/app_process.orig back to /system/bin/app_process, which you can also do yourself (e.g. with adb shell in recovery mode).
Modules:
The official repository for Xposed modules, which can also be access from within the app itself (with download/update support), can be found at http://repo.xposed.info
There is also a whole XDA subforum for modules and an index/request thread.
Please don't use the "Xposed General" forum for requests or problems with modules! Use the thread of the module instead.
How to write a module:
If you are an interested developer, give it a try. The development tutorial will help you get started. Further documentation (e.g. how to replace resources) is here. And of course, you can ask your development questions in the "Xposed General" forum.
If you have suggestions for new functions the framework could provide (which means they should be useful for more than your module), you can do this there as well. However, requests that I or somewhen else should write a module for xyz are NOT allowed. Again, this subforum is only about the framework.
Source code:
https://github.com/rovo89/Xposed (the C++ part)
https://github.com/rovo89/XposedBridge (the Java part)
https://github.com/rovo89/XposedInstaller (Installer app)
Where to get help:
First, read the FAQ and search the "Xposed General" forum. If you don't find your answer there, please check this explanation to find out where you should post your question (e.g. module requests/questions don't belong into the "Xposed General" forum).
Thanks to:
Tungstwenty for his many contributions, both in code and thoughts
XDA admins, news writers and supporters for making Xposed known to so many people
All those volunteers who help answering questions about Xposed
The people who donated to get me a Nexus 5 for earlier KitKat support
All the translators: http://translate.xposed.info/ (if you want to contribute more translations, please follow the instructions mentioned on that page)
Xposed Installer versions & changelog
In this thread, I will post announcements about new Xposed Installer versions (including test versions). If you want to be notified about new versions, subscribe to this thread.
Older versions:
1.0: Initial version
1.1: ???
1.2: Installer
1.5: Resource replacing
1.6: Some fixes and improvements [629 downloads]
2.0 rc2: Lots of thing redone. Supports (temporarily) replacing native libraries, lots of additions and changes for developers. [3,234 downloads]
2.0: Removed the native library replacement again, support for 4.1 and 4.2, Instagram crash fixed, ... [631 downloads]
2.0.1: Fixed a crash when a module tries to hook a function with "long" or "double" parameters [930 downloads]
2.0.2: Fixed a problem which resulted in a boot loop [4,310 downloads]
2.1: Various improvements, e.g. earlier callbacks for module loading. For details, see this post. [345 downloads]
2.1.1: Fixed a bug in drawable replacements [5,421 downloads]
2.1.2: Small fixes, added Chinese and Russian translations [11,415 downloads]
2.1.3: Reverted a change in 2.1.2 that caused bootloops; new translations and some more fixes [46,803 downloads]
2.1.4: Support for Galaxy S4 and HTC One plus a few minor fixes/enhancements (details) [208,176 downloads]
2.2: Builtin updater/module downloader, extended UI, support for Android 4.3 and more (details) [241,267 downloads]
2.3: x86, Knox, MIUI support (experimental), context menu in modules list and more (details) [18,219 downloads]
2.3.1: "Segmentation fault" during installation fixed [679,333 downloads]
2.4: Support for Android 4.4, performance improvements, log viewer, active check (details) [101,613 downloads]
2.4.1: Fixed bootloop on some x86 ROMs [2,537,642 downloads]
This is Xposed version 2.5 (final). The main new features and fixes in this version are:
Rewritten framework installation/uninstallation
Uses interactive su (via libsuperuser) to provide improved compatibility with different Superuser apps
Better feedback when root access fails (doesn't freeze the app anymore)
Offers installation via custom recovery (CWM/TWRP), either flashing the file automatically or manually
Safemode to disable Xposed with hardware keys to get out of (most) bootloops
Compatibility with Sony/LG ROMs (4.3 and 4.4), Meizu ROMs (4.4)
Debug setting to disable resource hooking as a temporary workaround for incompatibilities with some theming engines (not all modules can be used in this mode)
There are also other improvements and fixes, especially many translations updates.
In case you get a message "Segmentation fault" during installation, you can now download an additional app which provides statically compiled versions of BusyBox (a lot bigger, but should work with every ROM). It's not needed otherwise.
Quick explanation of the safemode: It was developed by @Tungstwenty and makes it possible to disable Xposed by repeatedly pressing one of the hardware buttons during early startup. The phone will vibrate twice when the first key press has been detected. Then you have five seconds to press the same button four more times. Each key press will be confirmed with a short vibration; the final one with a long vibration. It creates /data/data/de.robv.android.xposed.installer/conf/disabled, which prevents most of Xposed's actions (e.g. no hooks are made and no modules are loaded). There's no 100% guarantee that this will get you out of a bootloop, but in most cases it should.
As always, you can download it via the in-app updater or from http://dl.xposed.info/latest.apk.
This is Xposed version 2.5.1. The changes in this version are:
Added compatibility with CM11's new theming engine
Avoid conflict with LG G2's icon theming engine
Translation updates
I would like to express my disappointment again that too many people don't even spend two minutes to read at least the last few pages of a thread before posting problems. I have invested hundreds of hours - probably even more - into developing and supporting Xposed, so it feels disrespectful for me. Users like this are the minority and many others are very supportive, but it's really annoying.
As always, you can download it via the in-app updater or from http://dl.xposed.info/latest.apk.
This is Xposed version 2.6 beta1. The main changes in this version are:
UI refresh using the Cards UI pattern, mainly contributed by @GermainZ
New logo, created by @DD-Ripper
Detection of several known issues, a warning with link to the FAQ item will be shown
Release type selection in the downloader (only stable version are shown by default)
Many internal improvements in the framework, e.g. better resources compatibility and performance
In case you're looking for the Xposed-*-Recovery.zip files, they are stored in a subdirectory (Android/data/de.robv.android.xposed.installer/files) of the SD card now. This is the official Android API and will hopefully fix installation on some ROMs.
Also a big "thank you" to the translators, many translations have already been updated. You can see the status on the brand new translation overview page, with completion status and templates containing the strings yet to be translated: http://translate.xposed.info/
Note that I have already informed the primary translators about the upcoming version.
The full change log is on GitHub:
https://github.com/rovo89/XposedInstaller/commits/master
https://github.com/rovo89/XposedBridge/commits/master
https://github.com/rovo89/Xposed/commits/master
You can download the beta version from this post. Keep in mind that beta versions come with a bigger risk because they aren't tested on a big variety of devices/ROMs yet.
This is Xposed version 2.6 (final). The main changes in this version are:
UI refresh using the Cards UI pattern, mainly contributed by @GermainZ
New logo, created by @DD-Ripper (and no, there won't be an option to change it)
Detection of several known issues, a warning with link to the FAQ item will be shown
Release type selection in the downloader (only stable version are shown by default)
Many internal improvements in the framework, e.g. better resources compatibility and performance
Developers, please check this and following posts for information about API changes.
In case you're looking for the Xposed-*-Recovery.zip files, they are stored in a subdirectory (Android/data/de.robv.android.xposed.installer/files) of the SD card now. This is the official Android API and will hopefully fix installation on some ROMs.
Also a big "thank you" to the translators, many translations have already been updated. You can see the status on the brand new translation overview page, with completion status and templates containing the strings yet to be translated: http://translate.xposed.info/
The full change log is on GitHub:
https://github.com/rovo89/XposedInstaller/commits/master
https://github.com/rovo89/XposedBridge/commits/master
https://github.com/rovo89/Xposed/commits/master
As always, you can download it via the in-app updater or from http://dl.xposed.info/latest.apk.
This is Xposed version 2.6.1. The main changes in this version (compared to 2.6) are:
Fixed a crash with some apps (Disa, Rdio)
Some minor UI improvements
A few translation updates
Commits: https://github.com/rovo89/XposedInstaller/compare/2.6...2.6.1
As always, you can download it via the in-app updater or from http://dl.xposed.info/latest.apk.
I updated the main thread to indicate that the primary Xposed app is no longer in active development, and that EdXposed and LSPosed are the spiritual successors to Xposed and support the Xposed framework modules.
** This guide is depreciated, there is a new updated guide here**
If you are planning on using LineageOS 14 for this guide, you can bypass all of this except configuring location backends and battery optimization by heading to https://lineage.microg.org and downloading their ROM.
All download links as well as a link to a list of Open-Source applications to replace commonly used Play Store apps are in the third post.
*This will NOT work with MIUI Global, as the Play Store is already included in the ROM by default.*
I will be continuously updating this guide for everyone as I stumble upon more supported ROMs, more MicroG flashable zips, and other misc. edits. This is made with Android Marshmallow and Nougat in mind as it is all I have tested on, however this may work on older releases of Android with Xposed support or ROMs with Signature Spoofing. This has also only been personally tested on the XT1607 variant.
In order to sync calendars and contacts from your Google account, you must flash the Google Sync Addon by ale5000. If you want swipe gesture typing on the AOSP keyboard, you must flash Shadow53's swipelib.zip. Shadow53 also has a No-Gapps zip package that includes F-Droid, Firefox, and several other apps.
One final thing: This is not for everyone. There was a point in time I didn’t ever think I could go without the Play Store, but ever since I have I don't want to go back. There are numerous pros to switching to a Google-free android setup such as much better battery life, more privacy on your device, a world of open-source alternatives to popular applications, and more. If you have any questions, or if any of this seems daunting if you are newer to things of this nature, please do not hesitate to ask for help. I will try the best I can in my free time to help. Thank you for taking the time to read this, let’s go ahead and start.
*Disclaimer* Your warranty is now void if you modify your phone. I'm not responsible for bricked devices, dead SD cards, thermonuclear war, or you getting fired because the alarm app failed.
Click to expand...
Click to collapse
*This first post is for ROMs without native Signature Spoofing support. A list of those with native spoofing can be found in the second post as well as the guide for ROMs that include native signature spoofing.*
What You'll Need:
1. Your Phone with at least 80% battery, preferably 100%.
2. A computer to transfer files to phone
3. You must have Root Access. This can be native root or Magisk root.
4. Your ROM of choice
5. Download the correct Xposed SDK and Xposed APK for your version of Android. The Xposed SDK version may differ for your device.
6. MicroG Unofficial Installer ZIP and Google Sync Addon (optional) by ale5000 or any of Shadow53's MicroG flashable files (download links in third post)
7. Your favorite backup method if you wish to back up such as Titanium Backup, MyBackup Root/Pro, etc.
8. Third Party App Store/APK downloader such as Yalp Store if not wishing to use all open source apps
9. A working Google account
Click to expand...
Click to collapse
Alrighty, let’s finally get into the steps.
1. Make sure you have downloaded the requirements.
2. If you wish, backup the data you want. This should not erase any files stored on an SD card, but I cannot guarantee.
3. Boot into a custom recovery, I am using TWRP
4. Use the standard wipe data options
5. Flash the files in the following order:
Your ROM of choice
MicroG Unofficial installer
Xposed SDK
Custom kernel if using one
6. Just to be safe and to avoid any potential complications, now reboot the device and set up the basics. Afterwards, boot back into recovery.
7. In recovery, wipe Dalvik/ART cache only (Not really required, I always recommend it though just to be safe)
8. Go into Settings —> Security —> Turn Unknown Sources on to allow for APK installs.
9. Install the Xposed Installer APK
10. Open Xposed, grant any permissions/root permissions if it asks for any. Go to download, and search for FakeGApps. Download and install. Next go into the Modules tab of Xposed, and check the box next to the module. Reboot to activate (A soft reboot may work, but I recommend a full reboot.) Installing this allows MicroG to bind to the system and spoof the required signatures.
11. Open MicroG in the app drawer, and allow all permissions it asks for. While in here, turn on Google Device Registration
12. After allowing all permissions, go into Settings. Go to Accounts —> Add Account —> Google Account. Sign into your Google Account. This is necessary to allow certain applications that require Google Play Services to work properly.
13. After signing in, head back into MicroG, go under Google Cloud Messaging and enable.
14. In MicroG settings, head to the UnifiedNLP settings. Under the Configure location backends section, open WiFi Location Service and select Mozilla Location Service and grant any permissions asked. Under Configure address lookup backends, select Nominatim.
15. Finally, in Settings, go to Location and change the mode to High accuracy.
16. Check MicroG's Self-Check to see if everything has been set up properly, and if so, you are good to go!
Click to expand...
Click to collapse
*This post is the steps for ROMs that natively support Signature Spoofing. There is a list at the bottom of this post of those that currently support it
What you will need:
Your Phone
The ROM that supports Signature Spoofing and the kernel of your choice
MicroG unofficial installer and (optional) Google Sync Addon by ale5000 or one of Shadow53's MicroG installers
Magisk Root Manager (Optional)
About 20-30 minutes of your time
Click to expand...
Click to collapse
Steps:
1. Backup anything you want to have backed up. I recommend backup up your Contacts and Calendar events if you have those synced to Google
2. Boot into Recovery on your phone
3. Perform a standard wipe in TWRP
4. Flash the ROM
5. Flash the chosen microG zip file(s)
6. (Optional) Flash Magisk and your favorite kernel
7. (For crDroid Only)If you are flashing crDroid, you need to head over to Settings --> Miscellaneous and turn on the Signature Spoofing toggle
8. Go into Self-Check in microG, and tap the text that says "System grants signature spoofing permission", and allow microG that permission.
9. Still in MicroG, head back to the main part of the app. Open UnifiedNLP.
10. Select the pre-installed location backends.
11. Sign in to your Google account if you wish
12. You're done!
Click to expand...
Click to collapse
Moto G4 Play ROMs with Native Signature Spoofing
crDroid v3.8.1 - Android 7.1.2
ViperOS Coral - Android 7.1.2
TipsyOS - Android 7.1.2
AEX - Android 7.1.2
AICP (@ki's build) - Android 7.1.2
Glassrom Official - Android 7.1.2
MicroG Project has released an unofficial fork of LineageOS 14 that now includes signature spoofing and MicroG components. You will not need to follow anything in this guide except configuring location backends if you download their LineageOS build. There is no Play Store functionality added, although F-Droid (an open source app store) is included by default. You can add the Play Store with a zip that Shadow53 provided on their website (link in post below) More info can be found on their website
Flashable Packages and App Replacements
There are several different MicroG flashable zip files to choose from. ale5000 has one that includes MicroG, several location backends, and the Play Store. Shadow53 has MicroG and several other zip files such as an F-Droid package, the Swipe Libs for gesture typing on the AOSP keyboard, and several more.
Downloads:
MicroG Unofficial Installer - ale5000
Shadow53's Downloads for MicroG, F-Droid, and more
Now alternatives to apps you might commonly use such as Twitter, Facebook, Gmail, etc. can be a bit difficult to find at first. I stumbled upon a list that a user by the name of Datenschutz has compiled on GitHub that has a good collection of alternative open-source applications. Also, you can alternatively download APK files of certain apps such as Netflix, Messenger Lite, etc. if you don't find a suitable replacement.
Some open-source apps that are found on F-Droid I use daily are:
Flym - RSS Reader
QK SMS - SMS App
Twidere - Twitter Client
Toffeed - Facebook web-client
Newpipe - YouTube player
K9 Material - Mail app
ApkTrack - Checks for updates on APKs installed
Hi,
a Google account isn't required for Google Cloud Messaging (but it is required for many other things).
Also the official Play Store and contact / calendar sync apk work with microG (if needed).
I have created some tools to help setup microG (they are in my signature).
ale5000 said:
Hi,
a Google account isn't required for Google Cloud Messaging (but it is required for many other things).
Also the official Play Store and contact / calendar sync apk work with microG (if needed).
I have created some tools to help setup microG (they are in my signature).
Click to expand...
Click to collapse
I will definitely take a look into this, thank you! Any success on Nougat at all?
fireball0093 said:
I will definitely take a look into this, thank you! Any success on Nougat at all?
Click to expand...
Click to collapse
I'm using microG on Nougat and KitKat, and I can say that it works perfectly (but I patch the framework for signature spoofing instead of using Xposed).
Moto G4 Play (Harpia XT1607) specific so I guess I am not too far off topic: Is there a Nougat ROM available that has signature spoofing built it?
Given my bad experience with Xposed on my old Galaxy Nexus, I really only want to use a ROM with signature spoofing built it. If I have to compile it myself that would be okay but it would be nicer to have a ROM with built-in support. And since I don't think Xposed runs on Nougat yet, that is not an option anyway.
For my old Galaxy Nexus I've been using the Unlegacy project, compiling my own ROM with the signature patches built it. But although I've see "official" Nougat ROMs announced for the G4 Play (LineageOS, AOKP, AOSxP, etc.) either I can't find a link to the correct source code/manifest files or, as in the case of LineageOS I can't get it to compile (complains of missing component(s) even though I've used the provided scripts to pull what should be all the needed items from my phone).
I really want to get back to the non-Google experience I have on my Galaxy Nexus using microG. Thanks for any help!
n76 said:
Moto G4 Play (Harpia XT1607) specific so I guess I am not too far off topic: Is there a Nougat ROM available that has signature spoofing built it?
Given my bad experience with Xposed on my old Galaxy Nexus, I really only want to use a ROM with signature spoofing built it. If I have to compile it myself that would be okay but it would be nicer to have a ROM with built-in support. And since I don't think Xposed runs on Nougat yet, that is not an option anyway.
For my old Galaxy Nexus I've been using the Unlegacy project, compiling my own ROM with the signature patches built it. But although I've see "official" Nougat ROMs announced for the G4 Play (LineageOS, AOKP, AOSxP, etc.) either I can't find a link to the correct source code/manifest files or, as in the case of LineageOS I can't get it to compile (complains of missing component(s) even though I've used the provided scripts to pull what should be all the needed items from my phone).
I really want to get back to the non-Google experience I have on my Galaxy Nexus using microG. Thanks for any help!
Click to expand...
Click to collapse
I am currently looking into hopefully a method for Nougat, give me about a day to see if it works for me.
@fireball0093: If you compile from sources there the patches here instead to patch the compiled code there are the tools linked here.
ale5000 said:
@fireball0093: If you compile from sources there the patches here instead to patch the compiled code there are the tools linked here.
Click to expand...
Click to collapse
@ale5000: What ROM are you compiling from source for a Harpia (I hope that will work on a xt1607 flavor)? Got a URI I can use for repo init?
Thanks!
@n76: I just given the link of the generic signature spoofing patch that should theoretically work on all ROMs, I haven't compiled any ROM.
ale5000 said:
@n76: I just given the link of the generic signature spoofing patch that should theoretically work on all ROMs, I haven't compiled any ROM.
Click to expand...
Click to collapse
Thanks, I have been able to successfully use that patch on my personal builds of the Unlegacy ROM (Marshmallow and Nougat) for my Galaxy Nexus.
I just haven't been able to successfully build a ROM, even without the patch, for my Moto G4 Play.
n76 said:
I just haven't been able to successfully build a ROM, even without the patch, for my Moto G4 Play.
Click to expand...
Click to collapse
Sorry, I can't help with this.
Hallo,
i found a list of Roms supporting signature spoofing in the MicroG Threat. CRdroid is availible for Harpia and it is listen in the ROMS-List. Have anybody testet crDroid 2.1 for Harpia with MircoG?
Links:
https://forum.xda-developers.com/android/general/index-list-custom-roms-offering-t3557047
https://forum.xda-developers.com/g4-play/development/rom-crdroid-v1-6-t3525141
gueschmid said:
Hallo,
i found a list of Roms supporting signature spoofing in the MicroG Threat. CRdroid is availible for Harpia and it is listen in the ROMS-List. Have anybody testet crDroid 2.1 for Harpia with MircoG?
Links:
https://forum.xda-developers.com/android/general/index-list-custom-roms-offering-t3557047
https://forum.xda-developers.com/g4-play/development/rom-crdroid-v1-6-t3525141
Click to expand...
Click to collapse
Nice find, thank you!
Looking at the crDroid source code repository at https://github.com/crdroidandroid it does look like the patch for signature faking is in there. (We should probably have the page at https://github.com/microg/android_packages_apps_GmsCore/wiki/Signature-Spoofing updated to include crDroid).
But I am a bit leary about trying the ROM linked to at https://forum.xda-developers.com/g4-play/development/rom-crdroid-v1-6-t3525141 as, despite the title of the XDA thread, it does not seem to be an official build. It looks like the official builds for the project are at https://androidfilehost.com/?w=devices&uid=23991606952610065 and are all built by "crdroidandroid" and there is no Moto G4 Play build there. The "[ROM][OFFICIAL][7.1.1] crDroid v2.1" links to a ROM built by SubhrajyotiSen on a different page so I am a bit hesitant to install it.
But this is interesting enough that I will try to build the ROM myself using the official sources from the crDroid project and see what happens.
it may be an inofficial Build, but it is mentioned on the G+ - Page of crDroid!
https://plus.google.com/communities...6/stream/d3e3f57f-b974-41f2-8740-97dbdd38056c
I went and installed crDroid here on the forums and also flashed the MicroG installer after flashing crDroid. I can confirm that signature spoofing is available and works. Under Settings, you just have to go to crDroid Settings, scroll down to Miscellaneous, and toggle Allow signature spoofing. Then go into the Self Check section in MicroG and tap "System grants signature spoofing permission" and allow MicroG to have that permission, and then the only thing you have to do to is configure the pre-installed location backends and you're good to go. I'll edit the second post and this thread to include this find, thank you @gueschmid
*Edit*
Actually, would people prefer me to edit this guide and leave it up as a Marshmallow-only guide and then create a second one for Nougat with our device? Just to keep it a bit clean
fireball0093 said:
I went and installed crDroid here on the forums and also flashed the MicroG installer after flashing crDroid. I can confirm that signature spoofing is available and works. Under Settings, you just have to go to crDroid Settings, scroll down to Miscellaneous, and toggle Allow signature spoofing. Then go into the Self Check section in MicroG and tap "System grants signature spoofing permission" and allow MicroG to have that permission, and then the only thing you have to do to is configure the pre-installed location backends and you're good to go. I'll edit the second post and this thread to include this find, thank you @gueschmid
*Edit*
Actually, would people prefer me to edit this guide and leave it up as a Marshmallow-only guide and then create a second one for Nougat with our device? Just to keep it a bit clean
Click to expand...
Click to collapse
Thanks for trying this out. I think I will have the time to follow your lead next week. It will be good to excise GApps from this phone.
VoLTE is important for me, is it working on this crDroid build?
n76 said:
Thanks for trying this out. I think I will have the time to follow your lead next week. It will be good to excise GApps from this phone.
VoLTE is important for me, is it working on this crDroid build?
Click to expand...
Click to collapse
I don't have a carrier that uses VoLTE, but I took a look in the Changelog on some posts and it seems to have support for it on crDroid
Updated the guide to include crDroid in the second post. I have been messing around with Tingle in my spare time but I cannot fully grasp the concept as I don't have much experience using tools like that. If I do succeed in the future, I'll edit that in as well.
THIS PROJECT IS NO LONGER SUPPORTED.
# Sysconfig Patcher
---
## LEGAL
Copyright (C) 2017-2019, VR25 @ xda-developers
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
---
## DISCLAIMER
Always read/reread this reference prior to installing/upgrading this software.
While no cats have been harmed, the author assumes no responsibility for anything that might break due to the use/misuse of it.
To prevent fraud, do NOT mirror any link associated with this project; do NOT share builds (zips)! Share official links instead.
---
## DESCRIPTION
This module patches all relevant XML files from `/system/etc/sysconfig/` for data and battery savings, and auto-repatches these after ROM/GApps updates.
Targeted packages (i.e., `Google Play Services (GMS)`) are deprived of unrestricted access to data and power intensive resources without the user's explicit consent.
`Doze` and `data saver` will act upon these. Core packages such as `Qualcomm's`, `Download Manager`, `Shell`, etc., are excluded by default.
`MagicGApps` module 2019 is supported.
For verbose, refer to `/dev/sysconfig-patcher/post-fs-data.sh.log`.
---
## PREREQUISITES
- Magisk 17-19
---
## SETUP
Install
0. [Optional] Set up /sdcard/.sp_whitelist.txt.
- Use zipFile/common/whitelist.txt as reference.
- Do not remove/blacklist default packages, unless you know exactly what you are doing.
- Reinstall the module to apply new changes.
1. Remove or disable redundant modules (e.g., `Enable Doze for GMS`, `Universal GMS Doze`).
2. Flash live (e.g., from Magisk Manager) or from custom recovery (e.g., TWRP).
Uninstall
- Use Magisk Manager (app) or Magisk Manager for Recovery Mode (utility).
---
## USAGE
Generally, once the module is installed, you don't have to do anything else.
If `Google Play Services` package is not optimized, go to settings > security and try one or all of the following workarounds (a reboot is implied):
- Disable all Google `Trust Agents`. This may break Google `Smart Lock` features.
- Disable all Google `Device Administrators`.
- Disable `Find My Device`.
---
## LINKS
- [Donate](https://paypal.me/vr25xda/)
- [Facebook page](https://facebook.com/VR25-at-xda-developers-258150974794782/)
- [Git repository](https://github.com/Magisk-Modules-Repo/sysconfig-patcher/)
- [Telegram channel](https://t.me/vr25_xda/)
- [Telegram profile](https://t.me/vr25xda/)
- [XDA thread](https://forum.xda-developers.com/apps/magisk/module-sysconfig-patcher-t3668435/)
---
## LATEST CHANGES
**2019.4.6 (201904060)**
- Complete redesign
- Custom whitelist (refer to README.md for details)
- Magisk 17-19 and MagicGApps 2019 support
- Updated documentation
**2018.10.22 (201810220)**
- Major optimizations
- Magisk `15.0-17.2` support
- Module ID reverted to `sysconfig-patcher`
- Module template `17000`, with extras
- Rebooting twice to apply changes after disabling/re-enabling the module is no longer necessary.
- Support for MagicGApps versions greater than `2018.9.23`
- Updated building and debugging tools
- Updated documentation
* Release notes: if you have `/data/adb/magisk_simple/system/etc/sysconfig/`, remove it with TWRP file manager (preferably before upgrading). Oreo and Pie users (or even users in general) may need to disable Google device administrators for things to work as expected. This rather inconvenient requirement has nothing to do with Sysconfig Patcher. It's a Google thing.
**2018.8.29 (201808290)**
- Improved compatibility
- Magisk Module Template 1500
- Updated documentation
Archive
I'm currently use your enable doze GMS+, so must I uninstall enable doze module before flash this module?
Sent from my Redmi 3X using Tapatalk
jmmigo said:
I'm currently use your enable doze GMS+, so must I uninstall enable doze module before flash this module?
Click to expand...
Click to collapse
You can install without removing that one. You'll no longer need DozeGMS+, though.
So...
will try this modules
Will the recent version work with magisk14?
jsecruzvalencia said:
Will the recent version work with magisk14?
Click to expand...
Click to collapse
i think so
Sweet.. Is this available in repo
I hd doze battery saver, so i Uninstalled n installed this module. But sonehow I'm getting more wake locks compared to the earlier module. Even though battery optimization shows gplay services to be optimized, i hv the gplay wakelocks.
Cannot see google in battery optimization
Hi,
Unfortunatly I cannot see Google Services in Greenify or in Battery optimization, module installation was made directly with Magisk. There is Enable_Doze_for_GMS_Magisk_Module-v5 also installed
Thanks for you reply.
Mobile : One Plus 5 (ROOT)
ROM : Oos 4.5.8
Magisk 14 - Magisk manager 5.3.0
musprog said:
Hi,
Unfortunatly I cannot see Google Services in Greenify or in Battery optimization, module installation was made directly with Magisk. There is Enable_Doze_for_GMS_Magisk_Module-v5 also installed
Thanks for you reply.
Mobile : One Plus 5 (ROOT)
ROM : Oos 4.5.8
Magisk 14 - Magisk manager 5.3.0
Click to expand...
Click to collapse
Try remove the "Enable_Doze.....v5" module than reboot
Thanks for your reply
Cheer's
kwanthenewbie said:
Try remove the "Enable_Doze.....v5" module than reboot
Click to expand...
Click to collapse
Hi,
Exactly the same issue without this module.
Didn't work for me.
Asus zenfone 2 - stock 6.0.1, Magisk 14.0 / magisk manager 5.3.0 installed .
Someone try it on a Pixel with Oreo?
What do this module? Just remove play service from whitelist?
v2017.9.24 worked for my phone zenfone 2 z00a.
Thanks :good:
Should I flash this even though I have Greenify?
Sh0X31 said:
What do this module? Just remove play service from whitelist?
Click to expand...
Click to collapse
Play Services and everything else that "shouldn't" be there.
Phititan said:
Should I flash this even though I have Greenify?
Click to expand...
Click to collapse
Yes, this module may improve your battery life even further.
Hello, what does this exactly do? I see there is any resource or google.xml file inside? So wondering if it works
Also works flawlessly on my 2nd phone zenfone 3 / stock 7.0 / magisk 14.0. :highfive:
Big thanks OP. :good:
CottonmouthOS
A security and privacy focused mobile operating system based on CopperheadOS that is MicroG friendly.
Code:
DISCLAIMER: NOT RESPONSIBLE FOR BROKEN PHONES OR LIVES
This ROM is based on the great CopperheadOS ROM with signature spoofing enabled to allow MicroG framework. There will be changes to make the signature spoofing spoof ONLY the Google service signatures and ONLY usable/allowable by MicroG services ONLY. The new name CottonmouthOS is a way to distinguish from CopperheadOS builds, because of the signature spoofing patches.
Prerequisites coming from other ROMs :-
Have latest March factory image installed.
Instructions :-
Download the CottonmouthOS ROM
Follow the install guide
Have a more private and secure phone
Features :-
Features of CopperheadOS ROM
Note :-
CottonmouthOS is meant to be used with the bootloader locked with NO custom recovery installed and no GAPPS.
Credits :-
CopperheadOS team
Mar-V-in for MicroG
razorloves for inspiration
References :-
Copperhead homepage
Documentation
Instructions used to build
Sources
MicroG patch
If anyone wants to reupload to a better file hosting site please do.
OLD OP
CopperheadOS
A security and privacy focused mobile operating system compatible with Android apps
Code:
DISCLAIMER: NOT RESPONSIBLE FOR BROKEN PHONES OR LIVES
CopperheadOS - a hardened FOSS operating system based on the Android mobile platform. Its based on Android Open Source Project with added privacy and security features.
Prerequisites :-
Have latest factory image installed
Instructions :-
Download the UNOFFICIAL CopperheadOS ROM
- Mirror 1
- Mirror 2
- Mirror 3
Follow the install guide
Have a more private and secure phone
Features :-
Protection from zero-days
Prevents many vulnerabilities and makes exploits harder
Hardened C standard library and compiler toolchain
Catches memory corruption and integer overflows
Hardened kernel
Kernel self-protection and high quality ASLR
Stronger sandboxing and isolation for apps & services
Stricter SELinux policies, seccomp-bpf and more
Backported security features and quicker patching
Benefiting from upstream changes long before stock
Firewall & network hardening
Along with improvements like MAC randomization
Open-source and free of proprietary services
Uses alternatives to Google apps/services like F-Droid
Security-centric user experience changes
Better defaults, finer-grained permission control
Note :-
Copperhead is meant to be used with the bootloader locked with NO custom recovery installed and no GAPPS.
Credits :-
CopperheadOS team and razorloves for inspiration.
References :-
Copperhead homepage
Documentation
Instructions used to build
Last Updated 2018-02-28
Does copperhead have the pixel navbar animation?
File not yet uploaded
ChongoDroid said:
File not yet uploaded
Click to expand...
Click to collapse
+1
ChongoDroid said:
File not yet uploaded
Click to expand...
Click to collapse
That is strange. Will reupload.
EDIT: Done see OP
I've always wondered something, since COS charges money for phone flashing and the only way to get it yourself is to compile it yourself and flash. Once you flash your self compiled build, do you have to build the updates or does the built in updater work?
ChongoDroid said:
I've always wondered something, since COS charges money for phone flashing and the only way to get it yourself is to compile it yourself and flash. Once you flash your self compiled build, do you have to build the updates or does the built in updater work?
Click to expand...
Click to collapse
I didn't see the updater, and even if it was there the keys would not match so you would not be able to update.
Ideally, we would put this on a build server and release the full install and OTA every time there was an update so we would get the updates within a few hours of official. A few changes could be made to either change the updater (if it is there, which I did not see it) or use lineageOS one and modify it to point to the release server.
jahrule said:
I didn't see the updater, and even if it was there the keys would not match so you would not be able to update.
Ideally, we would put this on a build server and release the full install and OTA every time there was an update so we would get the updates within a few hours of official. A few changes could be made to either change the updater (if it is there, which I did not see it) or use lineageOS one and modify it to point to the release server.
Click to expand...
Click to collapse
Yeah CopperheadOS uses the stock recovery iirc. They do it like this to use verified boot iirc. I personally loved COS on my Nexus 5 and missed it on my pixel.
how likely are weekly builds for this rom? also did you find a workaround for the F-Droid extension? I tried manually removing it and disabling it via twrp, but it seems to restore itself or simply refuse to delete, showing as deleted from within twrp
Thank you for building this, I tried and failed miserably. Will flash it today :good:
Fdroid Keys and BuildSystem
Thanks for building.
Please add your keys to the fdroid whitelist.
Could you write/post about your build system?(Like a Howto)?
KShion619 said:
how likely are weekly builds for this rom? also did you find a workaround for the F-Droid extension? I tried manually removing it and disabling it via twrp, but it seems to restore itself or simply refuse to delete, showing as deleted from within twrp
Click to expand...
Click to collapse
The fdroid extension needs the keys as I pointed out in the 2nd or 3rd post notes. Regular builds would require a build server but a build server costs money. So, will try to update when I can.
smilingtux said:
Thanks for building.
Please add your keys to the fdroid whitelist.
Could you write/post about your build system?(Like a Howto)?
Click to expand...
Click to collapse
Please see the build instructions in the op that I posted.
Ideally, I would like to make another rom that has the restricted sigspoof added so we could have an option for microg
jahrule said:
The fdroid extension needs the keys as I pointed out in the 2nd or 3rd post notes. Regular builds would require a build server but a build server costs money. So, will try to update when I can.
Click to expand...
Click to collapse
Meant like a user-doable way until the keys updated, I'm fine with the full screen dialog for now
KShion619 said:
Meant like a user-doable way until the keys updated, I'm fine with the full screen dialog for now
Click to expand...
Click to collapse
The keys are compiled in so, no.
jahrule said:
Please see the build instructions in the op that I posted.
Click to expand...
Click to collapse
I have seen and read it before
I setup an build host based on copperheads documentation, I read about the java whitelisting of my keys for fdroid, but the build process itself fails from time to time.
So my question was more about, how did you manage to setup a reliable environment for building. What OS did you use, installed dependencies etc.
smilingtux said:
I have seen and read it before
I setup an build host based on copperheads documentation, I read about the java whitelisting of my keys for fdroid, but the build process itself fails from time to time.
So my question was more about, how did you manage to setup a reliable environment for building. What OS did you use, installed dependencies etc.
Click to expand...
Click to collapse
You seem to ask for a docker.