[MOD][CM11][4.4.4][GPL] OpenPDroid patches for CyanogenMod 11

Search This thread

Lanchon

Senior Member
Jun 19, 2011
2,755
4,488
OpenPDroid patches for CyanogenMod 11

i am maintaining the OpenPDroid patches for CyanogenMod 11. find them here. discussion of changes here.

i made scripts you can use to easily patch and unpatch your source tree (and to make new patches from your tree):

  • repo-patch apply: apply patch files
  • repo-patch reset: reset source tree (unpatch)
  • repo-patch make: create patch files
  • repo-patch help: show help for repo-patch
  • repo-patch-diff-apply: apply patch files, diff the output against a reference to only show anomalies
  • remove-intermediates: delete intermediate build files of the affected components

PLEASE NOTE: device-specific builds are being phased out in favor of the generic overlays. please see below for details.

UPDATE: OpenPDroid is now compatible with ART!

WARNING: OpenPDroid is not compatible with ART for now. disable ART before flashing. enabling ART will cause the device to fail to boot. if you enabled ART and are unable to boot, flash official CyanogenMod temporarily to be able to fix (will cause privacy leaks). or if you have ADB access in android or recovery, you can disable ART by using setprop or editing a file.


My Ready-Made ROMs


Contributed ROMs


XDA:DevDB Information
CM11-OpenPDroid, Tool/Utility for all devices (see above for details)

Contributors
Lanchon

Version Information
Status: Beta

Created 2014-08-06
Last Updated 2014-10-10
 

Lanchon

Senior Member
Jun 19, 2011
2,755
4,488
Generic CyanogenMod 11 M-Snapshot Overlays For All Devices

these are overlays to flash over CyanogenMod 11 M-SNAPSHOTS for all devices. find them here.
these releases are built against the Nexus 5 sources and are guaranteed to work on that device.
they should also work on other devices; please report on your experience below.

Instructions

  1. make sure you are using a compatible CyanogenMod 11 M-snapshot.
  2. make sure you are using the Dalvik VM and not ART. OpenPDroid is not compatible with ART for now.
    UPDATE: OpenPDroid is now compatible with ART! just be patient on first boot, it takes a while...
  3. choose your desired overlay:
    • with stock messaging app: for phones, if you want to install and use the OpenPDroid-patched stock messaging app. (this is required for managing messaging access via OpenPDroid,)
    • without stock messaging app: for phones if you do not want the stock messaging app installed, and for tablets.
  4. download the overlay that matches your snapshot.
  5. MAKE A NANDROID BACKUP! you can choose to only backup the /system partition.
  6. flash the overlay.
  7. profit!

you can revert the changes by restoring your nandroid backup. it is enough to restore the /system partition (use advanced nandroid restore for that).
 
Last edited:

mrrocketdog

Senior Member
Oct 27, 2013
5,066
2,365
any chance for 'ready made' CM11 for d2lte?
thank you for your work/time/knowledge.:thumbup:

err on the side of kindness
 

mrrocketdog

Senior Member
Oct 27, 2013
5,066
2,365
at work. will try this a.m. when i get home.:thumbup:

err on the side of kindness

---------- Post added at 11:44 AM ---------- Previous post was at 11:15 AM ----------

just flashed. :victory:

err on the side of kindness
 

Discostrings

Member
Nov 24, 2008
30
21
Appears to work for d2lte

Generic CyanogenMod 11 M-Snapshot Overlays For All Devices

I've tried the generic overlay with the Samsung Galaxy S3 (d2lte) and it seems to work! I haven't run into any problems, and it blocks access in the cases where I've tested it (which is, admittedly, only a few). So while I can't verify it's successfully blocking everything, I can say that it appears to be functional. Which leads me to wonder if anyone's made an OpenPDroid test app that could easily verify whether things are actually being blocked/spoofed...

Thanks, Lanchon!
 
Last edited:
  • Like
Reactions: Lanchon

Lanchon

Senior Member
Jun 19, 2011
2,755
4,488
I've tried the generic overlay with the Samsung Galaxy S3 (d2lte) and it seems to work! I haven't run into any problems, and it blocks access in the cases where I've tested it (which is, admittedly, only a few). So while I'm can't verify it's successfully blocking everything, I can say that it appears to be functional. Which leads me to wonder if anyone's made an OpenPDroid test app that could easily verify whether things are actually being blocked/spoofed...

Thanks, Lanchon!

OPD has bugs and leaks. and XPrivacy. droidwall too, as afwall. it works to control most apps. if someone wanted, they could attack it in many ways. but nobody bothers so kinda works :)
 
Last edited:

smartymcfly

Senior Member
There isn't an actual app made just for opd but there is various apps that provide lots of info about your phone.

Location/Phone Number can be with a lot of apps. Log out of Facebook and uninstall/reinstall or clear data/cache from it or any apps that you want to check if it is working .... Some apps might use cached data and give you a false positive.
And then there are apps that get certain info for things from other apps so the only way to make it work is to change it on the other app like Google services/framework or Google something that lots of apps get generate their info from.


There is a new app on xposed called donkeyguard that is also similar to this and xprivacy.
 

Lanchon

Senior Member
Jun 19, 2011
2,755
4,488
There is a new app on xposed called donkeyguard that is also similar to this and xprivacy.

donkeyguard is not free software. for all i know, it's not even open source. i have to urge users to disregard that option completely.

on the other hand, xprivacy *IS* free software. the premium version may sell for a price in the market, but its full unobfuscated source is in github under the GPL; as free as it gets. you can clone it and roll your own "premium" app if you want.

years ago donkeyguard's developer made a proprietary app to manage the PDroid patches, which are free software. he refused to release his software under a free license, even after being told that others would develop a free replacement for his app sooner or later and all his coding effort will go to waste. he didn't, they did, and so it happened. even after his app completely died, he chose not to release it as free software.

with free xprivacy in existence, and even being much more mature, there is no justification for using proprietary secret software to secure your data.
 

Lanchon

Senior Member
Jun 19, 2011
2,755
4,488
UPDATE: OpenPDroid support for CM11 M10 for all devices has been released!

PLEASE NOTE: device-specific builds are being phased out in favor of the generic overlays. please refer to this post.

enjoy!
 
Last edited:
  • Like
Reactions: Discostrings

Lanchon

Senior Member
Jun 19, 2011
2,755
4,488
UPDATE: new scripts to apply patches.
(used to be specialized for OPD, now are a generic tool to patch repos)
 

Top Liked Posts

  • There are no posts matching your filters.
  • 15
    OpenPDroid patches for CyanogenMod 11

    i am maintaining the OpenPDroid patches for CyanogenMod 11. find them here. discussion of changes here.

    i made scripts you can use to easily patch and unpatch your source tree (and to make new patches from your tree):

    • repo-patch apply: apply patch files
    • repo-patch reset: reset source tree (unpatch)
    • repo-patch make: create patch files
    • repo-patch help: show help for repo-patch
    • repo-patch-diff-apply: apply patch files, diff the output against a reference to only show anomalies
    • remove-intermediates: delete intermediate build files of the affected components

    PLEASE NOTE: device-specific builds are being phased out in favor of the generic overlays. please see below for details.

    UPDATE: OpenPDroid is now compatible with ART!

    WARNING: OpenPDroid is not compatible with ART for now. disable ART before flashing. enabling ART will cause the device to fail to boot. if you enabled ART and are unable to boot, flash official CyanogenMod temporarily to be able to fix (will cause privacy leaks). or if you have ADB access in android or recovery, you can disable ART by using setprop or editing a file.


    My Ready-Made ROMs


    Contributed ROMs


    XDA:DevDB Information
    CM11-OpenPDroid, Tool/Utility for all devices (see above for details)

    Contributors
    Lanchon

    Version Information
    Status: Beta

    Created 2014-08-06
    Last Updated 2014-10-10
    7
    Generic CyanogenMod 11 M-Snapshot Overlays For All Devices

    these are overlays to flash over CyanogenMod 11 M-SNAPSHOTS for all devices. find them here.
    these releases are built against the Nexus 5 sources and are guaranteed to work on that device.
    they should also work on other devices; please report on your experience below.

    Instructions

    1. make sure you are using a compatible CyanogenMod 11 M-snapshot.
    2. make sure you are using the Dalvik VM and not ART. OpenPDroid is not compatible with ART for now.
      UPDATE: OpenPDroid is now compatible with ART! just be patient on first boot, it takes a while...
    3. choose your desired overlay:
      • with stock messaging app: for phones, if you want to install and use the OpenPDroid-patched stock messaging app. (this is required for managing messaging access via OpenPDroid,)
      • without stock messaging app: for phones if you do not want the stock messaging app installed, and for tablets.
    4. download the overlay that matches your snapshot.
    5. MAKE A NANDROID BACKUP! you can choose to only backup the /system partition.
    6. flash the overlay.
    7. profit!

    you can revert the changes by restoring your nandroid backup. it is enough to restore the /system partition (use advanced nandroid restore for that).
    5
    Yeah, sorry for the bad news... hopefully we can figure out another way.

    For the moment, I'm going to build my own patches. I think I've got my build environment all set up, and I'm trying my first CM11 build. I've taken a look at your patch scripts for OpenPDroid, and I think I understand how they work, but I thought I'd ask, just to make sure, before I accidentally mess up the CM repository that took so long to download : )

    My CM repo is in the default $android_dir directory indicated by the script (~/android/system/). Do I just put the scripts somewhere like ~/android/openpdroid/openpdroid-scripts and put the patches in ~/android/openpdroid/openpdroid-patches , and then run "repo-patch apply", then "repo-patch make" from the scripts directory, and a patch zip file will be created? Or are there some other steps or configuration I'm missing? Apologies for the basic questions, but I'm a bit new to this.

    Thanks again--I really appreciate all your help.

    You can put the patches and scripts in the directories you indicate or use directories with shorter names such as
    Code:
    ~/android/pdroid/scripts
    
    ~/android/pdroid/patches
    Once you have configured the paths in the file ~/android/pdroid/scripts/repo-patch.config, you can then run the commands from the ~/android/pdroid/scripts/ directory like this:
    Code:
    $ ./remove-intermediates
    $ ./repo-patch apply
    
    ...
    
    $ ./repo-patch reset

    More generally, you should probably follow the CM11 build guide for your device step by step to ensure that you can build a working rom first before attempting to build an OpenPDroid-patched rom. Here's a guide you can read in step with the official one and adapt to your device.

    The "Extract Proprietary Blobs" section in the official guide is probably best replaced with an entry in a local_manifest file as described in the supplementary guide I linked to (you need to change the entry to match your device).
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <manifest>
       <project name="TheMuppets/proprietary_vendor_samsung" path="vendor/samsung" remote="github" revision="cm-11.0" />
    </manifest>

    When you are ready, the "Rebuidling with newest sources" section of the guide becomes:
    Code:
    $ cd ~/android/system
    $ repo sync
    [COLOR="Red"]$ repo status
    [/COLOR]$ . build/envsetup.sh
    [COLOR="Red"]$ breakfast d2lte
    $ make clean[/COLOR]
    
    [COLOR="Red"]$ cd ~/android/pdroid/scripts
    $ ./repo-patch apply
    $ cd ~/android/system
    
    [/COLOR]$ brunch d2lte
    
    [COLOR="Red"]$ cd ~/android/pdroid/scripts
    $ ./repo-patch reset
    $ cd ~/android/system[/COLOR]

    You mustn't proceed with the build if the repo status is not clean. Don't forget to unpatch the sources after the build. And, if you prefer to time the build replace brunch d2lte with
    Code:
    $ time brunch d2lte
    or, to use a custom build name
    Code:
    $ time TARGET_UNOFFICIAL_BUILD_ID="OpenPDroid" brunch d2lte
    3
    instead of building all of android, you can build just the files needed to make an overlay with these commands:
    mka framework
    mmma libcore frameworks/base/services/java frameworks/opt/telephony
    mmma packages/apps/Mms <-- only for devices that need the messaging app

    note that the overlay only works over the exact matching rom. see this:
    http://wiki.cyanogenmod.org/w/Doc:_Using_manifests#Recreating_CyanogenMod_releases_using_manifests
    3
    UPDATE: CM11 M12 OpenPDroid overlays for all devices released!

    enjoy!