[ROM][CM12.0] UNOFFICIAL CM12.0 for Tilapia - Nexus 7 3G Android Development

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
This is a preview of CM-12.0 built almost entirely from CM sources. The only thing I have done is merged the aosp device tree for lollipop into the cm-11.0 device tree because there isn't a branch in CM sources yet and a few modifications listed below in features.
Features
- Settings->About Phone->CyanogenMod updates uses wfhome.net servers (my builds)
Latest Build
-Nightly's are being built now.
Downloads
http://goo.gl/yb6G5N
Old Builds
http://goo.gl/3nST2x - Android File Host
Google Apps
http://forum.xda-developers.com/android/software/gapps-google-apps-flashable-package-t2930266
TWRP 2.8.3.0
http://teamw.in/project/twrp2/150
Known Issues
- Ensure the default APN is properly selected or it take longer for it to connect.
All changes can be viewed on the CyanogenMod gerrit except the device tree. Changes can be viewed on my github account until a cm-12.0 branch is created for our device.
Thanks to all who have developed CyanogenMod and TWRP as well as the device and kernel trees for the Nexus 7.
I'm using a modified version of @JulianXhokaxhiu CyanogenModOTA tools on my web server.
https://github.com/julianxhokaxhiu/CyanogenModOTA
Source
http://github.com/CyanogenMod
http://github.com/rjwil1086

many thanks . now downloading ,and i will feedback again.

rjwil1086 said:
- Mobile data is kinda slow and not working 100% of the time. I will investigate further tonight. Likely a RIL issue like the one I patched for AOSP.
Click to expand...
Click to collapse
I have another file rild-A5. Your file A9

getting stuck at boot image after google apps installed
Using Nexus 7 2012 mobile. installed rom but stops booting at boot animation. after i install google apps via twrp. any suggestions.
Thank You

mp3junkie said:
Using Nexus 7 2012 mobile. installed rom but stops booting at boot animation. after i install google apps via twrp. any suggestions.
Thank You
Click to expand...
Click to collapse
Mine did that once. I would try flashing CM12 without gapps first. If it boots then reboot into recovery and flash gapps. If that doesn't work, You may have to erase everything and reflash.
** DONT DO THIS UNLESS YOU CAN CONNECT TO YOUR PC AND ADB push or MTD mount in recovery **
I did the following when coming from CM11:
Code:
fastboot flash -w
fastboot format system
fastboot erase boot
then booted into recovery and copy the cm-12 zip and gapps zip back to the sdcard and flash.

pavik62 said:
I have another file rild-A5. Your file A9
Click to expand...
Click to collapse
Does your A5 rild work any better than the A9 compiled with CM-12? I just checked the rild fix I created for AOSP using Android 4.4.4 rild source and it says A9 just like the Android 5.0.1 rild source. I haven't tried flashing it over cm-12 yet. Not sure if it will improve it.

It didn't install through adb sideload. I had to push packages to tablet and to install through TWRP. Booted quite a long time for the first time but after that it works well. Works everything (or I didn't notice any not working things). A bit laggy though. But not too much.

infomenas said:
It didn't install through adb sideload. I had to push packages to tablet and to install through TWRP. Booted quite a long time for the first time but after that it works well. Works everything (or I didn't notice any not working things). A bit laggy though. But not too much.
Click to expand...
Click to collapse
I've noticed lollipop lags for a while then it eventually speeds up. I believe it has to do with the way the art compiler works.

great! I've been looking forward to this
Is it compatible with ann All-F2FS formated device though?

punshkin said:
great! I've been looking forward to this
Is it compatible with ann All-F2FS formated device though?
Click to expand...
Click to collapse
I don't think it is. I tried formatting data to f2fs and the tablet sat at the boot screen.

@rjwil1086 wow, I finally got myself to undertake a twelve-hour build time on my slowputer and start messing with cm device tree for tilapia and right after a first build I did find your thread good work, man, all thumbs up

@rjwil1086 thank you very much for share. Playing with the update script of your rom + using M-Kernel i was able to boot in a AllF2FS formated device. From a clean install it works like a charm at first boot!

@rjwil1086 thanks for make Lollipop version for tilapia. A question, size of system partition system is only 640MB is possible tu rise it? Actually I only have free 6,79MB with only Gapps installed. In i9300 version have no problem. Size of partition system is 1,20Gb
Enviado desde mi GT-I9300 mediante Tapatalk

thanks, the rom is fine

aneto said:
@rjwil1086 thank you very much for share. Playing with the update script of your rom + using M-Kernel i was able to boot in a AllF2FS formated device. From a clean install it works like a charm at first boot!
Click to expand...
Click to collapse
Nice, can you tell me what modifications you made to the ROM?

@rjwil1086 Thank you very much for make Lollipop version for tilapia. Could you support the operation on multirom?

taketans said:
Could you support the operation on multirom?
Click to expand...
Click to collapse
You can do it yourself by editing the update-script. Like this:
PHP:
assert(getprop("ro.product.device") == "tilapia" || getprop("ro.build.product") == "tilapia" || abort("This package is for device: tilapia; this device is " + getprop("ro.product.device") + "."););
#ifelse(is_mounted("/system"), unmount("/system"));
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/APP", "/system", "");
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
set_metadata("/tmp/backuptool.functions", "uid", 0, "gid", 0, "mode", 0644);
run_program("/tmp/backuptool.sh", "backup");
unmount("/system");
#if is_mounted("/data") then
#package_extract_file("system/bin/otasigcheck.sh", "/tmp/otasigcheck.sh");
#package_extract_file("META-INF/org/cyanogenmod/releasekey", "/tmp/releasekey");
#set_metadata("/tmp/otasigcheck.sh", "uid", 0, "gid", 0, "mode", 0755);
#run_program("/tmp/otasigcheck.sh") != "31744" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
#else
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/UDA", "/data", "");
package_extract_file("system/bin/otasigcheck.sh", "/tmp/otasigcheck.sh");
package_extract_file("META-INF/org/cyanogenmod/releasekey", "/tmp/releasekey");
set_metadata("/tmp/otasigcheck.sh", "uid", 0, "gid", 0, "mode", 0755);
run_program("/tmp/otasigcheck.sh") != "31744" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
unmount("/data");
#endif;
Other lines should be left unchanged.

punshkin said:
Nice, can you tell me what modifications you made to the ROM?
Click to expand...
Click to collapse
Yes I can.
These are the 4 lines to find and replace in updater-script:
Code:
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/APP", "/system", "");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/UDA", "/data", "");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/APP", "/system", "");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/APP", "/system", "");
And has to be replaced by:
Code:
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "/data");
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "/system");
In addition to modify updater-script is also necessary to flash a compatible All F2FS kernel like M-Kernel

All worked good, 3G no need RilFix, 3Mbits\sec. But not installed Minecraft, error! 0.10.4 version, and a few other..
Other exellent!

miracast
will be working miracast on CM12 in future?

Related

[MOD] [APP] [HOW-TO] [ROM-CONFIGURATOR] Project Derp

*** Everything below this is User Information *** For Devs that want to know how to make their Rom ready for this read the second post ***
Download:
What it is?
You know the problem: You wanna flash a Custom Rom through CWM but you don´t like to do a Wipe, install this or install that feature. The solution for you is this application. It´s your decision what you want on your phone.
To be concrete: Make a hook on the things you want in your Rom, click on the generate button and flash your Rom through CWM. That´s it.
For now you can choose if you need:
... to Wipe your Device
... which kernel
... Swipe
... Samsung Apps
... Live Wallpapers
... Custom Sounds
HowTo:
1. Download & install "Galaxy SLC Rom Configurator"
2. Launch it and set your Values for your next Rom flash
3. Click on the Generate-File Button and ...
4. ... flash your favorite Rom through CWM
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Supported Roms:
Sorry, for now there is no one. But it will change soon when the Devs read this post
Simply search for this image in your Fav Rom Thread
*** The Dev guide - HowTo include this feature to your Rom ***
The first thing you have to do is to create some new Folders in your flashable Rom.zip.
/romconfig/kernel/
/romconfig/samsung/
/romconfig/livewallpaper/
/romconfig/sounds/
/romconfig/fonts/
/romconfig/swype/
Click to expand...
Click to collapse
The updater-script (we will edit it later) will install the files within these folders when the user chose it in the Configurator App. This means for you: Place ALL Samsung apps in /romconfig/samsung/, all your extra fonts in /romconfig/fonts/ ... Delete all Samsung Apps in your normal /system/app or - like in our example - all Samsung apps will be installed, not depending on the user´s choice!
Especially the Samsung apps and the swype app must be readded after every upgrade of your Rom. For Example, your Rom was based on KPE and no on KPQ, you can´t use the Samsung Apps from KPE on KPQ. Ok?
A example folder structure is attached to this post, it´s usable for KPQ. You can place additional fonts you want in /romconfig/fonts/ the sounds you love in /romconfig/sounds/, your fav wallpaper in /romconfig/livewallpaper/. But DONT EDIT THE KERNELS!! OF COURSE YOU CAN CHANGE A STOCK KERNEL VERSION TO A NEWER ONE, CUSTOM KERNEL TO A NEWER ONE, BUT YOU CAN´T ADD MORE KERNELS THE USERS CAN NOT CHOOSE THEM WITHIN THE APP.
I had not the time to place kernels in the folders. So please:
/romconfig/kernel/stockkernel/ place the Stock Kernel
/romconfig/kernel/bamcustomkernel/ place Bam Custom kernel
/romconfig/kernel/teamutterchaos/ place Utterchaos Kernel
Keep the folders in mind, you have to place the paths in your updater-script later
If you want other stuff to be choosen (other Apps, other kernels...) in the App feal free to contact me
Next thing we have to modify is your Updater script. It´s very easy don´t panic. Just add the following lines in your code:
ifelse(
file_getprop("/sdcard/download/configfile.prop", "samsung.apps") == "true",
(
package_extract_dir("/romconfig/samsung", "/system/app");
),
( )
ifelse(
file_getprop("/sdcard/download/configfile.prop", "custom.sounds") == "true",
(
package_extract_dir("/romconfig/sounds", "/system/media/audio");
),
( )
ifelse(
file_getprop("/sdcard/download/configfile.prop", "extra.fonts") == "true",
(
package_extract_dir("/romconfig/fonts", "/system/fonts);
),
( )
ifelse(
file_getprop("/sdcard/download/configfile.prop", "live.wallpaper") == "true",
(
package_extract_dir("/romconfig/livewallpaper", "/system/app");
),
( )
ifelse(
file_getprop("/sdcard/download/configfile.prop", "app.swype") == "true",
(
package_extract_dir("/romconfig/swype", "/system/app");
),
( )
Click to expand...
Click to collapse
At the point where your kernel will be flashed
ifelse(
file_getprop("/sdcard/download/configfile.prop", "kernel.value1") == "true",
(
Place the code for flashing a Kernel here (Stock Kernel)
),
( )
ifelse(
file_getprop("/sdcard/download/configfile.prop", "kernel.value2") == "true",
(
Place the code for flashing a Kernel here (Team Utterchaos Kernel)
),
( )
ifelse(
file_getprop("/sdcard/download/configfile.prop", "kernel.value3") == "true",
(
Place the code for flashing a Kernel here (Bam Custom Kernel)
),
( )
Click to expand...
Click to collapse
And last but not least this where you want to wipe
ifelse(
file_getprop("/sdcard/download/configfile.prop", "wipe") == "true",
(
unmount("/system");
unmount("/datadata");
unmount("/cache");
unmount("/data");
run_program("/tmp/busybox", "mount", "-t", "auto", "/dev/block/stl9", "/system");
run_program("/tmp/busybox", "mount", "-t", "auto", "/dev/block/stl10", "/datadata");
run_program("/tmp/busybox", "mount", "-t", "auto", "/dev/block/stl11", "/cache");
run_program("/tmp/busybox", "mount", "-t", "auto", "/dev/block/mmcblk0p3", "/data");
),
(
unmount("/cache")
run_program("/tmp/busybox", "mount", "-t", "auto", "/dev/block/stl11", "/cache")
;
)
Click to expand...
Click to collapse
And the very last thing. To show your users that your Rom is moddable by this app place this picture somewhere in your Thread (Feel free to resize it):
If you have any problem (maybe my HowTo is bad at some times ) contact me via PM or post here. Any suggestions, contact me!
Reserved for future use
Awesome work brother
it's a good idea
thx fuss
another Nice work bro.....count Poseidon in...
Sent from my GT-I9003 using XDA App
I think for wiping we should format the partitions. But in your code there is only unmounting and mounting the partitions
As always, very good job, I think soon this will be a great app for more than our device
good job fuss
Nice work dude!! I knew we had to buy a phone to this guy!!
Thanks for the good effort, I would suggest that instead of "all samsung apps" it should list the samsung apps in sub menu so user can choose the apps selectively. Some samsung apps are indeed useful.
sgsI9003 said:
Thanks for the good effort, I would suggest that instead of "all samsung apps" it should list the samsung apps in sub menu so user can choose the apps selectively. Some samsung apps are indeed useful.
Click to expand...
Click to collapse
I allready PM fuss about that,and you are right maybe someone could make a new thread on the general section on what are the usefull samsung apps they want..Cause if all samsung apps+pre installed apps+custom sounds it will eat all the space on the phone...

[DEODEXED][P6210][WiFi][KK3][Flashable Zip]System Files (Update 12/30/2011)

Finally got these all loaded up, this will de-odex all of your /system/app and /system/framework folders.
MAKE SURE YOU PERFORM A NANDROID BACKUP BEFORE ATTEMPTING THIS, IF ANYTHING GOES WRONG, JUST RESTORE THE SYSTEM.IMG PART OF THE BACKUP AND TRY AGAIN. IF THIS SCREWS UP YOUR DEVICE I AM NOT RESPONSIBLE, NEITHER IS CHRISROTOLO. YOU TAKE ALL THE RISKS OF MODDING YOUR OWN DEVICE.
Ok, now that we have covered that, instructions.
DOWNLOAD
MD5 :: 32793691755CA374AD728FA3D385A3A0
thanks to M1m3R
The initial reboot will take a minute of two, do not worry, let it do its thing. If SHOULD stay on the SAMSUNG logo, if the boot animation keeps playing over and over something went wrong, and you will need to flash it again.
The files in the zip are 100% stock. If you wish to apply my theme then see the second post.
Please feel free to ask any questions, or hit me up on GTalk - [email protected].
If you wish to apply my theme for the WIFI only version, once loading up these files, go here
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Some of the images were borrowed from different themes around xda. The unlock circle was kanged from the 10.1 forums. I will get around to changing the soft key buttons as soon as I can get the battery mod working. Working on that now, will probably be a few days before I will be able to get it up and going however.
nice job, thanks for testing. Let the themes/tweaks begin!
I hope.
Oh yes. Sorry it took so long man! Fedex is a ***** this time of year. First day I haven't work 12+ hours in a month!
looks good, is that an official ICS lock ring mod or another custom one?
not bad, mine will be a few more days at least, but its coming.
question: any idea how to remove touchwiz page indicators? I removed them in app drawer by zeroing an .xml line, tried everything, think it may be more than an .xml
let me know if you need help with anything.
Mine will not have accurate battery mod in status bar. just tap on the systemui quickpanel pop up and theres how I check actual percentage. you putting in all the actual numbers over the .pngs, Ive dont that before, and having to add .xml is not easy.
Wow a rom and its themed perfectly! I have a question before I try to flash it using ADB. I installed sdk and kies and when I installed sdk I moved everything from my platform tools directory into my tools directory. I needed fastboot mode to root my nexus s. Do I have everything I need to use adb when installing this rom using adb? Any help would be greatly appreciated
Sent from my GT-P6210 using xda premium
And are the # signs mean hit enter? Thanks
Sent from my GT-P6210 using xda premium
mike216 said:
Wow a rom and its themed perfectly! I have a question before I try to flash it using ADB. I installed sdk and kies and when I installed sdk I moved everything from my platform tools directory into my tools directory. I needed fastboot mode to root my nexus s. Do I have everything I need to use adb when installing this rom using adb? Any help would be greatly appreciated
Sent from my GT-P6210 using xda premium
Click to expand...
Click to collapse
Yes as long as adb sees the device your fine. And the # signs are just symbols meaning you have SU access. After each command you press enter. Everytine you press enter it will repeat each step then follow it up a # sign, once you see the # sign type the next step.
Sent from my Insanity powered SGS2
Good point now that I think about it,it was a dumb question, thanks
BEST DAMN PHONE BECAUSE WE HAVE THE BEST DAMN DEVELOPERS!
I've changed the theme up some. Changed a few images, and fixed a few images that were white and you couldnt see, as well as volume sliders. The SystemUI is now a lilght black/grey same as chrisrotolo. As well as the unlock circle is now blue. Also added back the stock wifi indicator because the ICS would shift to the left. Once I figure out why ill add it back.
I will post up new screenshots today when I get home.
Thanks again to chrisrotolo for all the assistance with xml's, images and everything else!
It looks amazingly perfect! Going to try and install it this weekend, thanks
BEST DAMN PHONE BECAUSE WE HAVE THE BEST DAMN DEVELOPERS!
Has anyone actually gotten this to work. No matter what I do, I can't get this to work.
I also put together a flashable zip to install the system files and remove the .odex flies. The flash works but nothing actually happened.
I'm not sure how to proceed at this point.
Anyone have any luck with a working updater script for this device?
ptfdmedic said:
Anyone have any luck with a working updater script for this device?
Click to expand...
Click to collapse
Yes. My CWM Recoveries all use updater scripts (edify) to install. I've sent a message to the OP and will help him wrap this in a simple update.zip over the long weekend.
take care
Gary
yeah, I had similar issue with the P6200 deodex, had what I beleived to be all the right commands, flashed ok everytime, but didnt vhange everything.
Thank goodness we have people like garyd to help.
(i'll probably borrrow his .zip and use it for 3g version... IF he doesnt mind.)
chrisrotolo said:
yeah, I had similar issue with the P6200 deodex, had what I beleived to be all the right commands, flashed ok everytime, but didnt vhange everything.
Thank goodness we have people like garyd to help.
(i'll probably borrrow his .zip and use it for 3g version... IF he doesnt mind.)
Click to expand...
Click to collapse
This was my last attempt at creating the zip. I had a few versions that flashed all the way through without error but upon reboot nothing had actually changed.
This code errors out. I borrowed some from the 3G version. Wouldn't this be very similar to the Epic Touch 4G?
ui_print(Deodexed System);
show_progress(0.500000, 0);
ui_print("Mounting System");
mount("ext4", "EMMC", "/dev/block/mmcblk0p8", "/system");
ui_print("Cleaning up...");
delete("/system/app);
delete("/system/framework);
package_extract_dir("system", "/system");
unmount("/system");
ui_print("Done.");
show_progress(0.100000, 0);
Click to expand...
Click to collapse
ptfdmedic said:
This code errors out.
Click to expand...
Click to collapse
At which point does it error out?
You should add lines to fix permissions:
Code:
set_perm_recursive(0, 0, 0755, 0644, "/system/app");
set_perm_recursive(0, 0, 0755, 0644, "/system/framework");
(don't run this on all of /system, as stuff in /system/etc and /system/bin need different perms.) Are you having issues when running under the stock (3e) recovery or with my CWM Recovery port? (If you have issues with one, have you tried it with the other?)
Not sure which device you are working with, but the /system partition is different for different versions of the 7+. (The P6210 uses mmcblk0p8)
Finally, you might consider forcing the dalvik cache to rebuild when doing that:
Code:
#only for GTP6210
unmount("/data");
mount("ext4", "EMMC", "/dev/block/mmcblk0p9", "/data");
delete_recursive("/data/dalvik-cache");
unmount("/data");
Take care
Gary
(warning: all the above code was written purely from memory, so it might contain typos... )
garyd9 said:
At which point does it error out?
You should add lines to fix permissions:
Code:
set_perm_recursive(0, 0, 0755, 0644, "/system/app");
set_perm_recursive(0, 0, 0755, 0644, "/system/framework");
(don't run this on all of /system, as stuff in /system/etc and /system/bin need different perms.) Are you having issues when running under the stock (3e) recovery or with my CWM Recovery port? (If you have issues with one, have you tried it with the other?)
Not sure which device you are working with, but the /system partition is different for different versions of the 7+. (The P6210 uses mmcblk0p8)
Finally, you might consider forcing the dalvik cache to rebuild when doing that:
Code:
#only for GTP6210
unmount("/data");
mount("ext4", "EMMC", "/dev/block/mmcblk0p9", "/data");
delete_recursive("/data/dalvik-cache");
unmount("/data");
Take care
Gary
(warning: all the above code was written purely from memory, so it might contain typos... )
Click to expand...
Click to collapse
Thanks Gary. I'll look into this again this weekend. I appreciate your help
It would be nice for a flashable zip file. I've tried and come up empty. And just for proof that I do have it on my tab let me upload a pic
Sent from my ICS'd themed Galaxy Tab 7+
Sent from my ICS'd themed Galaxy Tab 7+
antiochasylum said:
It would be nice for a flashable zip file. I've tried and come up empty. And just for proof that I do have it on my tab let me upload a pic
Click to expand...
Click to collapse
what are you replying to?

Concept "X"[For Rom Porters Only][$$Save Money$$]

CONCEPT "X"​
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Introducing You My Concept For Rom Porting And Uploading."Easier to Upload with Slow and Low Data Pack For Rom Porter Devs."​
Concept:-​What Earlier Rom Devs or Porters Were Doing:-They download a rom to port from other device and then port it and upload it for their device.
With Concept X Now Rom Porters can Do:-​Now they need to download the rom they want to port but they will need only to upload 10-25MB file.How?See below...
*Instead of uploading full Rom,you should only upload your changed files flash-able zip via CWM.
For Example:-
If i ported a rom by modifying boot.img,apps,libs,firmwares etc....then insted of uploading full rom i will upload only a patch with all files which are to be replaced while porting.Then i will give the users the link of PORT rom from which i ported my rom and also the patch which i created.
Click to expand...
Click to collapse
Before You begin check that PORT Rom contains no uboot.bin,recovery and assert device line at the top of updater script.This will brick your device.
Try only if your Rom have only folders and files from list below:-
#data(folder)
#META-INF(folder)
#System(folder)
#Boot.img(file)
#Logo.bin(file)
Do not try if Rom have these files or folder structure in the Port Rom zip:-
#uboot.bin
#IK.bin
#recovery.img
#assert device line at the top of updater script.
#Different Mount Points under Updater script.
I ported 6 Roms From A116 to A110Q successfully:laugh: and applied this method i saved lots of DATA and Money.You can Find my Concept "X" based Roms in my signature Jelly bean section.This method will work perfectly if your PORT Rom meet above criteria.
How To Do:-
1) Download you PORT rom which you wanna port.
2) Port your Rom and Keep in mind the files you changed for porting.
3)Now Download my patch zips from below and open with 7zip.You can do it yourself if you have knowledge about updater scripts.
4)Now make directories according to your files changed during porting and add those files by dragging into my patch zip.
5)Flash the Untouched PORT Rom(in which no changes made) and then after flashing it flash patch zip which you created by above method.
6)Now your Rom should boot if you ported successfully.
How to use My Concept "X" Patch zip:-
1)open my zip with 7zip and you will see following files/folder structure:-
#data
#META-INF
#system
#boot.img
#logo.bin
#uboot.bin
2)Remove the folders/files which you don't need to change in PORT rom.Means if you are not changing uboot.bin,logo.bin,data etc then delete these files/folders from zip without extracting with 7zip.
3)For example if you ports a rom by replacing
boot.img
system/etc/firmware
system/lib/modules
system/lib/hw
system/vendor
system/build.prop
then you will delete uboot.bin,logo.bin.data from my patch zip.Now you only need to modify updater script according to your file/folder changes in patch zip.
4)Drag drop updater script from my zip to anywhere in pc,then edit with notepad++.
5)Above we deleated uboot,data,logo from zip so we will Put "#" in front of the line which executes that folder/file.See below:-
Updater script provided in my zip:-
Code:
ui_print("===================================");
ui_print(" PATCH ");
ui_print(" BASED ON CONCEPT X ");
ui_print(" by: [email protected] ");
ui_print("===================================");
ui_print("");
ui_print("Starting installation....");
show_progress(0.500000, 0);
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p7", "/data");
package_extract_dir("data", "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
package_extract_dir("system", "/system");
show_progress(0.200000, 0);
show_progress(0.100000, 0);
ui_print("[*] Flashing partition: BOOT");
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "bootimg"),
delete("/tmp/boot.img"));
assert(package_extract_file("logo.bin", "/tmp/logo.bin"),
write_raw_image("/tmp/logo.bin", "logo"),
delete("/tmp/logo.bin"));
package_extract_file("uboot.bin", "/dev/uboot");
show_progress(0.100000, 0);
unmount("/system");
unmount("/data");
ui_print("[*] Installation complete.");
ui_print("");
You need to add "#" like below:-
Code:
ui_print("===================================");
ui_print(" PATCH ");
ui_print(" BASED ON CONCEPT X ");
ui_print(" by: [email protected] ");
ui_print("===================================");
ui_print("");
ui_print("Starting installation....");
show_progress(0.500000, 0);
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
#mount("ext4", "EMMC", "/dev/block/mmcblk0p7", "/data");
#package_extract_dir("data", "/data");
#set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
package_extract_dir("system", "/system");
show_progress(0.200000, 0);
show_progress(0.100000, 0);
ui_print("[*] Flashing partition: BOOT");
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "bootimg"),
delete("/tmp/boot.img"));
#assert(package_extract_file("logo.bin", "/tmp/logo.bin"),
# write_raw_image("/tmp/logo.bin", "logo"),
# delete("/tmp/logo.bin"));
#package_extract_file("uboot.bin", "/dev/uboot");
show_progress(0.100000, 0);
unmount("/system");
unmount("/data");
ui_print("[*] Installation complete.");
ui_print("");
6)So you can see above that "#" is put after the lines which are not be processed.
7)After finishing editing updater script according to your need,you will drag back updater script to my patch(7zip).
8)Now check by flashing Untouched PORT Rom then my patch zip.
My sample patch zip-DOWNLOAD
If you Want to Learn How To Port Then See Here
If you Use My Concept then PlZ add a link to here,its only a request,if you don't add then also NO Issue....
IF YOU ARE GETTING ERRORS IN FLASHING PATCH ZIP AFTER PORT ZIP THEN USE NOTEPAD++ ONLY.And check updater script Carefully.
Or you can comment any questions below or PM me.I am Happy to help.
let see
is work on armv6?
Minions_Army said:
let see
is work on armv6?
Click to expand...
Click to collapse
Yes,it will work
digyvijaykumar123 said:
Yes,it will work
Click to expand...
Click to collapse
i tried porting color os but havind status 7 error in original zip....
Avenger4droid said:
i tried porting color os but havind status 7 error in original zip....
Click to expand...
Click to collapse
Check your Updater Script.....or post here
digyvijaykumar123 said:
Check your Updater Script.....or post here
Click to expand...
Click to collapse
ok giving.....:good:
here is the updater script...http://d-h.st/b5U
i am porting from cross a7s mt6577 device
and i myself have mmx a110 canvas 2 .....
For aosp base or manufactur rom? Like touchwiz, sense.
Sorry
i definitely try this method i like your hard work bro u r tooo goood man wow how Awesome Ever I will try bro
---------- Post added at 04:43 PM ---------- Previous post was at 04:41 PM ----------
Avenger4droid said:
i tried porting color os but havind status 7 error in original zip....
Click to expand...
Click to collapse
i thing thats kernel error include Boot.img and try
Lal Ayer said:
i definitely try this method i like your hard work bro u r tooo goood man wow how Awesome Ever I will try bro
---------- Post added at 04:43 PM ---------- Previous post was at 04:41 PM ----------
i thing thats kernel error include Boot.img and try
Click to expand...
Click to collapse
No, thats due to the recovery, use the latest CWM or TWRP for the device.

OnePlus One Lineage OS 15.1 - Update Error: This package is for device: beacon,A0001

Hi all,
I installed the official OnePlus One Official Lineage OS 15.1 update on my OnePlus One Beacon.
However, when I installed it, I removed that check string from the updater-script to pass the validation there, because I was getting an error: "This package is for device: beacon,A0001; this device is ."
Now, the same error occurs every time when I try to update it via the Lineage OS Update
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Any ideas how I can resolve this issue?
My TWRP version: 3.1.1-0
edit - I thought it was during the first time flash
superKalo said:
Hi all,
I installed the official OnePlus One Official Lineage OS 15.1 update on my OnePlus One Beacon.
However, when I installed it, I removed that check string from the updater-script to pass the validation there, because I was getting an error: "This package is for device: beacon,A0001; this device is ."
Now, the same error occurs every time when I try to update it via the Lineage OS Update
Any ideas how I can resolve this issue?
My TWRP version: 3.1.1-0
Click to expand...
Click to collapse
you can go into the zip file,
in META-INF/com/google/android/android-script
you will see a in here something like
Code:
assert(getprop("ro.product.device") == "bacon" || getprop("ro.build.product") == "bacon" ||
getprop("ro.product.device") == "A0001" || getprop("ro.build.product") == "A0001" || abort("E3004: This package is for device: bacon,A0001; this device is " + getprop("ro.product.device") + "."););
assert(oppo.verify_trustzone("TZ.BF.2.0-2.0.0109","TZ.BF.2.0-2.0.0123","TZ.BF.2.0-2.0.0134") == "1");
ui_print("Target: oneplus/bacon/A0001:6.0.1/MHC19Q/ZNH2KAS1KN:user/release-keys");
ifelse(is_
remove
Code:
assert(getprop("ro.product.device") == "bacon" || getprop("ro.build.product") == "bacon" ||
getprop("ro.product.device") == "A0001" || getprop("ro.build.product") == "A0001" || abort("E3004: This package is for device: bacon,A0001; this device is " + getprop("ro.product.device") + "."););
this will remove all checks so be careful, make sure its the correct file for correct phone
Fixed for me
https://forum.xda-developers.com/showpost.php?p=78168481&postcount=13
stevieag said:
you can go into the zip file,
in META-INF/com/google/android/android-script
you will see a in here something like
Code:
assert(getprop("ro.product.device") == "bacon" || getprop("ro.build.product") == "bacon" ||
getprop("ro.product.device") == "A0001" || getprop("ro.build.product") == "A0001" || abort("E3004: This package is for device: bacon,A0001; this device is " + getprop("ro.product.device") + "."););
assert(oppo.verify_trustzone("TZ.BF.2.0-2.0.0109","TZ.BF.2.0-2.0.0123","TZ.BF.2.0-2.0.0134") == "1");
ui_print("Target: oneplus/bacon/A0001:6.0.1/MHC19Q/ZNH2KAS1KN:user/release-keys");
ifelse(is_
remove
Code:
assert(getprop("ro.product.device") == "bacon" || getprop("ro.build.product") == "bacon" ||
getprop("ro.product.device") == "A0001" || getprop("ro.build.product") == "A0001" || abort("E3004: This package is for device: bacon,A0001; this device is " + getprop("ro.product.device") + "."););
this will remove all checks so be careful, make sure its the correct file for correct phone
Click to expand...
Click to collapse
Just to be clear - I am encountering this error when I try to update via the LineageOS OTA Updater. You suggest I download the latest .zip and manually install it (via TWRP I guess), right? Does this mean it will wipe out all the data I have on my device?
TWRP identifies your device as null (ie. blank, no name, etc). Have you tried updating TWRP to a newer version?
I had the same issue, but didn't have to do anything listed above as it seems the issue may have been with TWRP as things went so far sideways after updating TWRP eventually the phone wouldn't even boot beyond the OnePlus "splash" screen.
Solution? Reflash the latest version of TWRP via Fastboot, reboot, then the official OTA updates work again and my wonderful OPO is now on today's Lineage 15.1 update with AdAway and Magisk happily churning away in the background.
Edit: Today's update went in smoothly as well, so it looks like the issue may have been with TWRP. It seems it was for me anyway.
technochronic said:
I had the same issue, but didn't have to do anything listed above as it seems the issue may have been with TWRP as things went so far sideways after updating TWRP eventually the phone wouldn't even boot beyond the OnePlus "splash" screen.
Solution? Reflash the latest version of TWRP via Fastboot, reboot, then the official OTA updates work again and my wonderful OPO is now on today's Lineage 15.1 update with AdAway and Magisk happily churning away in the background.
Edit: Today's update went in smoothly as well, so it looks like the issue may have been with TWRP. It seems it was for me anyway.
Click to expand...
Click to collapse
Perfect! Thank you so much!!! That fixed it!
I just reflashed the latest TWRP (v3.2.3-0-bacon) and the issue is resolved!
superKalo said:
Perfect! Thank you so much!!! That fixed it!
I just reflashed the latest TWRP (v3.2.3-0-bacon) and the issue is resolved!
Click to expand...
Click to collapse
You're welcome
Congrats... BTW, you would not have lost your data etc with my solution.
superKalo said:
Perfect! Thank you so much!!! That fixed it!
I just reflashed the latest TWRP (v3.2.3-0-bacon) and the issue is resolved!
Click to expand...
Click to collapse
The same here. After upgraded TWRP to 3.2.1-K2 I get solved the problem.
Thank you.

Installing OpenGAPPs inside Lineage OS android emulator 17.1

Hi, I am trying to install opengapps on lineage os android emulator 17.1
I followed the instruction at https://wiki.lineageos.org/emulator.html and built lineage_x86-64-eng and lineage_x86-eng.
I started the emulator with -writable-system and have root adb shell, but when I downloaded the 17.1 OpenGAPPs version and try to run the install.sh script provided, it fails with errors.
Any guide on how to do this? All the guides I have found requires a real phone where you login into TWRP recovery mode, which I read the android emulator does not have.
Look inside here:
Install GApps Manually
groups.google.com
The folder is completely different in that link than what I get with the opengapps zip file. For instance I extract the opengapps I get the following below: There is no folder structure like so only apks. I tried to install the apk with adb install and some of them give errors like:
[INSTALL_PARSE_FAILED_NO_CERTIFICATES: Failed to collect certificates from /data/app/vmdl1550377932.tmp/base.apk: META-INF/CERT.SF indicates /data/app/vmdl1550377932.tmp/base.apk is signed using APK Signature Scheme v2, but no such signature was found. Signature stripped?]
Am I supposed to unzip the apks manually and do adb push the folders I get doing so?
Code:
.
./zip-x86
./GApps
./GApps/dialerframework-common
./GApps/dialerframework-common/common
./GApps/dialerframework-common/common/etc
./GApps/dialerframework-common/common/etc/sysconfig
./GApps/dialerframework-common/common/etc/sysconfig/dialer_experience.xml
./GApps/dialerframework-common/common/etc/permissions
./GApps/dialerframework-common/common/etc/permissions/com.google.android.dialer.support.xml
./GApps/dialerframework-common/common/framework
./GApps/dialerframework-common/common/framework/com.google.android.dialer.support.jar
./GApps/packageinstallergoogle-all.tar.lz
./GApps/calsync-all.tar.lz
./GApps/dialerframework-common.tar.lz
./GApps/googletts-x86
./GApps/googletts-x86/nodpi
./GApps/googletts-x86/nodpi/app
./GApps/googletts-x86/nodpi/app/GoogleTTS
./GApps/googletts-x86/nodpi/app/GoogleTTS/GoogleTTS.apk
./GApps/calsync-all
./GApps/calsync-all/nodpi
./GApps/calsync-all/nodpi/app
./GApps/calsync-all/nodpi/app/GoogleCalendarSyncAdapter
./GApps/calsync-all/nodpi/app/GoogleCalendarSyncAdapter/GoogleCalendarSyncAdapter.apk
./GApps/googletts-x86.tar.lz
./GApps/packageinstallergoogle-all
./GApps/packageinstallergoogle-all/nodpi
./GApps/packageinstallergoogle-all/nodpi/priv-app
./GApps/packageinstallergoogle-all/nodpi/priv-app/GooglePackageInstaller
./GApps/packageinstallergoogle-all/nodpi/priv-app/GooglePackageInstaller/GooglePackageInstaller.apk
./open_gapps-x86-10.0-pico-20210515.zip
./gapps-remove.txt
./g.prop
./app_sizes.txt
./app_densities.txt
./LICENSE
./busybox-x86
./tar-x86
./Optional
./Optional/swypelibs-lib-x86.tar.lz
./Core
./Core/googlebackuptransport-all
./Core/googlebackuptransport-all/nodpi
./Core/googlebackuptransport-all/nodpi/priv-app
./Core/googlebackuptransport-all/nodpi/priv-app/GoogleBackupTransport
./Core/googlebackuptransport-all/nodpi/priv-app/GoogleBackupTransport/GoogleBackupTransport.apk
./Core/googlefeedback-all
./Core/googlefeedback-all/nodpi
./Core/googlefeedback-all/nodpi/priv-app
./Core/googlefeedback-all/nodpi/priv-app/GoogleFeedback
./Core/googlefeedback-all/nodpi/priv-app/GoogleFeedback/GoogleFeedback.apk
./Core/setupwizarddefault-x86.tar.lz
./Core/configupdater-all.tar.lz
./Core/backuprestore-all.tar.lz
./Core/googlecontactssync-all
./Core/googlecontactssync-all/nodpi
./Core/googlecontactssync-all/nodpi/app
./Core/googlecontactssync-all/nodpi/app/GoogleContactsSyncAdapter
./Core/googlecontactssync-all/nodpi/app/GoogleContactsSyncAdapter/GoogleContactsSyncAdapter.apk
./Core/defaultframework-common
./Core/defaultframework-common/common
./Core/defaultframework-common/common/etc
./Core/defaultframework-common/common/etc/permissions
./Core/defaultframework-common/common/etc/permissions/com.google.android.media.effects.xml
./Core/defaultframework-common/common/etc/permissions/com.google.android.maps.xml
./Core/defaultframework-common/common/framework
./Core/defaultframework-common/common/framework/com.google.android.maps.jar
./Core/defaultframework-common/common/framework/com.google.android.media.effects.jar
./Core/googlepixelconfig-common.tar.lz
./Core/setupwizarddefault-x86
./Core/setupwizarddefault-x86/nodpi
./Core/setupwizarddefault-x86/nodpi/priv-app
./Core/setupwizarddefault-x86/nodpi/priv-app/SetupWizard
./Core/setupwizarddefault-x86/nodpi/priv-app/SetupWizard/SetupWizard.apk
./Core/googlefeedback-all.tar.lz
./Core/setupwizardtablet-x86.tar.lz
./Core/carriersetup-all
./Core/carriersetup-all/nodpi
./Core/carriersetup-all/nodpi/priv-app
./Core/carriersetup-all/nodpi/priv-app/CarrierSetup
./Core/carriersetup-all/nodpi/priv-app/CarrierSetup/CarrierSetup.apk
./Core/gsfcore-all
./Core/gsfcore-all/nodpi
./Core/gsfcore-all/nodpi/priv-app
./Core/gsfcore-all/nodpi/priv-app/GoogleServicesFramework
./Core/gsfcore-all/nodpi/priv-app/GoogleServicesFramework/GoogleServicesFramework.apk
./Core/carriersetup-all.tar.lz
./Core/googlepartnersetup-all.tar.lz
./Core/gmscore-x86
./Core/gmscore-x86/nodpi
./Core/gmscore-x86/nodpi/priv-app
./Core/gmscore-x86/nodpi/priv-app/PrebuiltGmsCore
./Core/gmscore-x86/nodpi/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk
./Core/vending-x86
./Core/vending-x86/nodpi
./Core/vending-x86/nodpi/priv-app
./Core/vending-x86/nodpi/priv-app/Phonesky
./Core/vending-x86/nodpi/priv-app/Phonesky/Phonesky.apk
./Core/setupwizardtablet-x86
./Core/setupwizardtablet-x86/nodpi
./Core/setupwizardtablet-x86/nodpi/priv-app
./Core/setupwizardtablet-x86/nodpi/priv-app/SetupWizard
./Core/setupwizardtablet-x86/nodpi/priv-app/SetupWizard/SetupWizard.apk
./Core/googlepixelconfig-common
./Core/googlepixelconfig-common/common
./Core/googlepixelconfig-common/common/etc
./Core/googlepixelconfig-common/common/etc/sysconfig
./Core/googlepixelconfig-common/common/etc/sysconfig/nexus.xml
./Core/googlepixelconfig-common/common/etc/sysconfig/pixel_experience_2017.xml
./Core/googlepixelconfig-common/common/etc/sysconfig/pixel_experience_2018.xml
./Core/googlepixelconfig-common/common/etc/sysconfig/pixel_2018_exclusive.xml
./Core/googlecontactssync-all.tar.lz
./Core/googleonetimeinitializer-all
./Core/googleonetimeinitializer-all/nodpi
./Core/googleonetimeinitializer-all/nodpi/priv-app
./Core/googleonetimeinitializer-all/nodpi/priv-app/GoogleOneTimeInitializer
./Core/googleonetimeinitializer-all/nodpi/priv-app/GoogleOneTimeInitializer/GoogleOneTimeInitializer.apk
./Core/extsharedgoogle-all.tar.lz
./Core/configupdater-all
./Core/configupdater-all/nodpi
./Core/configupdater-all/nodpi/priv-app
./Core/configupdater-all/nodpi/priv-app/ConfigUpdater
./Core/configupdater-all/nodpi/priv-app/ConfigUpdater/ConfigUpdater.apk
./Core/extservicesgoogle-all
./Core/extservicesgoogle-all/nodpi
./Core/extservicesgoogle-all/nodpi/priv-app
./Core/extservicesgoogle-all/nodpi/priv-app/GoogleExtServices
./Core/extservicesgoogle-all/nodpi/priv-app/GoogleExtServices/GoogleExtServices.apk
./Core/defaultetc-common.tar.lz
./Core/defaultetc-common
./Core/defaultetc-common/common
./Core/defaultetc-common/common/etc
./Core/defaultetc-common/common/etc/default-permissions
./Core/defaultetc-common/common/etc/default-permissions/opengapps-permissions-q.xml
./Core/defaultetc-common/common/etc/default-permissions/default-permissions.xml
./Core/defaultetc-common/common/etc/sysconfig
./Core/defaultetc-common/common/etc/sysconfig/google_build.xml
./Core/defaultetc-common/common/etc/sysconfig/google-hiddenapi-package-whitelist.xml
./Core/defaultetc-common/common/etc/sysconfig/google_exclusives_enable.xml
./Core/defaultetc-common/common/etc/sysconfig/google.xml
./Core/defaultetc-common/common/etc/permissions
./Core/defaultetc-common/common/etc/permissions/split-permissions-google.xml
./Core/defaultetc-common/common/etc/permissions/privapp-permissions-google.xml
./Core/defaultetc-common/common/etc/preferred-apps
./Core/defaultetc-common/common/etc/preferred-apps/google.xml
./Core/gmscore-x86.tar.lz
./Core/googleonetimeinitializer-all.tar.lz
./Core/extsharedgoogle-all
./Core/extsharedgoogle-all/nodpi
./Core/extsharedgoogle-all/nodpi/app
./Core/extsharedgoogle-all/nodpi/app/GoogleExtShared
./Core/extsharedgoogle-all/nodpi/app/GoogleExtShared/GoogleExtShared.apk
./Core/vending-x86.tar.lz
./Core/googlebackuptransport-all.tar.lz
./Core/backuprestore-all
./Core/backuprestore-all/nodpi
./Core/backuprestore-all/nodpi/priv-app
./Core/backuprestore-all/nodpi/priv-app/GoogleRestore
./Core/backuprestore-all/nodpi/priv-app/GoogleRestore/GoogleRestore.apk
./Core/gsfcore-all.tar.lz
./Core/googlepartnersetup-all
./Core/googlepartnersetup-all/nodpi
./Core/googlepartnersetup-all/nodpi/priv-app
./Core/googlepartnersetup-all/nodpi/priv-app/GooglePartnerSetup
./Core/googlepartnersetup-all/nodpi/priv-app/GooglePartnerSetup/GooglePartnerSetup.apk
./Core/defaultframework-common.tar.lz
./Core/datatransfertool-all
./Core/datatransfertool-all/nodpi
./Core/datatransfertool-all/nodpi/priv-app
./Core/datatransfertool-all/nodpi/priv-app/AndroidMigratePrebuilt
./Core/datatransfertool-all/nodpi/priv-app/AndroidMigratePrebuilt/AndroidMigratePrebuilt.apk
./Core/extservicesgoogle-all.tar.lz
./Core/datatransfertool-all.tar.lz
./bkup_tail.sh
./META-INF
./META-INF/MANIFEST.MF
./META-INF/com
./META-INF/com/google
./META-INF/com/google/android
./META-INF/com/google/android/updater-script
./META-INF/com/google/android/update-binary
./META-INF/CERT.RSA
./META-INF/CERT.SF
./unzip-x86
./installer.sh
Lineage OS 17.1 is based on Android 10.
Folder structure of OpenGApps for Android 10 is
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
How to install OpenGApps on Lineage OS is described in file updater-script located in folder /META-INF/com/google/android
Code:
ui_print(" ");
ui_print(" Gapps for Android 10");
ui_print(" By SagarMakhar");
ui_print(" ");
ui_print("- Mounting partitions.. ");
ifelse(is_mounted("/system_root"), unmount("/system_root"));
ifelse(is_mounted("/vendor"), unmount("/vendor"));
mount("ext4", "EMMC", "/dev/block/bootdevice/by-name/system", "/system_root", "");
mount("ext4", "EMMC", "/dev/block/bootdevice/by-name/vendor", "/vendor", "");
ui_print("- Extracting files.. ");
package_extract_dir("system_root", "/system_root");
ui_print("- Setting up permissions.. ");
package_extract_file("permissions.sh", "/tmp/permissions.sh");
set_metadata_recursive("/tmp", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644);
run_program("/tmp/permissions.sh");
ui_print("- Unmounting partitions.. ");
run_program("/sbin/busybox", "umount", "/system_root");
run_program("/sbin/busybox", "umount", "/vendor");
ui_print("- Done ");
Simply transform these instructions into related ADB commands and run them.
Where did you get GAPPS-for-android-10 folder structure shown in that picture from?
The opengapps i downloaded from https://opengapps.org/ (pico edition x86) is nothing like that, there is a update-binary script basically just extract the busybox binaries to /tmp which runs the installer.sh which fails to initially run for me. The folder listing of what pico package has is shown in my above post.
There seems to be some sort of folder/permission difference with stock android and lineage I think because the script tries to write to folders that a stock emulator build of lineage_x86-eng does not have, /tmp being one, so I cannot run the script nor can I execute the commands manually because I still have permission denied issues even as root.
Is opengapps meant to really only work on some different android 10 distribution that is not lineage? I asked in #lineageos-dev and no answer.
Is there a way to remount / as writable? I can only seem to make /system writable, I think if I can get / to be writable, I can get the script to work.
Took the time to download OpenGApps - Android 10 ( Pico ) - for x86. Noticed that the package indeed has a completely different structure than shown above:
Anyway, assumed your emulator's Android is rooted, it should be possible to install this package without an Android recovery because the scripts provided aren't EDIFY coded.
Actually don't have the time to deal with it more closely. May be i can do it in the foreseeable future ...
I just cheated and used bluestacks emulator, this has google apps preinstalled with root access. Thanks for the help though.
On the URL below you will find a script that will install open gapps in a emulator AVD using opengapps' install script.
The script wraps the opengapps script and mounts the various images on your system and you modify it from a chroot. No need to use adb.
Tested from API28 to API31 (ie Android 9 to Android 12)
Requires linux & superuser priveleges. The script may be adapted to work also on MacOS if someone adapts some of the commands.
All information here:
Install OpenGApps In Android Emulator (up to API31 / android 12 / S)
Install OpenGApps In Android Emulator (up to API31 / android 12 / S) - Readme.md
gist.github.com

Categories

Resources