Related
Hey guys! I have recently been seeing differrent roms with svn posted in the op. I was curious what this was and if it is important for me to have. If so could someone walk me through some guides as to how I get this up and running.
cvv1984 said:
Hey guys! I have recently been seeing differrent roms with svn posted in the op. I was curious what this was and if it is important for me to have. If so could someone walk me through some guides as to how I get this up and running.
Click to expand...
Click to collapse
SVN stands for Subversion.
Subversion is a free/open-source version control system. Subversion manages files and directories over time. A tree of files is placed into a central repository. The repository is much like an ordinary file server, except that it remembers every change ever made to your files and directories. This allows you to recover older versions of your code, or examine the history of how your code was changed.
SVN is used by devs to release nightly updates to their ROMs, it isn't important if you aren't a flashacoholic.
Every ROM has it's own setup, so you should see the OP of the ROM for instructions
*EDIT* This thread is now based upon the work by @fattire and @slayher, who got it up on the 910T. For that phone see this thread: http://forum.xda-developers.com/not...nt/unoffcial-cm-12-0-t-mobile-note-4-t2964887
This thread is for dev's interested to help out porting CM12 to our device. I've researched for info regarding CM ports and good information is actually quit scarce. A dev might post something like 'hmm stuck at boot anim' and then the next day 'got it, booting now !' without explaining what he did to solve it. I want to change that, so this thread can serve as a guide for other first time porters too (this is also my first porting project), documenting every step as in much detail as possible.
For ROMS: http://forum.xda-developers.com/not...official-cm-12-0-910f-note-4-trltexx-t2987412
Please use this thread for R&D/development ONLY !!!
Ok, I'm really starting from scratch and never done any phone ROM porting. I've just made a new virtual disk running ubuntu and am currently downloading the CM12 repo. I figured, how to get even started here. I figured that the goals we need to attain in this order:
1) compile the kernel samsung supplied
2) make sure we can boot into kernel
3) get ADB up and running
4) get CM12 starting up, even the bootanim alone would be a nice goal to reach
5) Booting into homescreen
6) Fixing all stuff like modem, wifi etc etc etc
Anyway, I'm currently downloading CM12 sources as we speak ...
This is by the way a link I found very useful: http://www.androidenea.com/2009/08/init-process-and-initrc.html It describes the Android init process, cause I was wondering, how to even start all this ? How to get from kernel to CM booting: that's where init.rc should come into play of course
Good luck this is a long project. I build carbonrom for another phone where everything for cm was allready fixed. I would start with a phone that allready has support to learn how the process goes. You can brick your phone and it's a process of trail and error... But I hope you manage good luck!
KaptKeefmenneke said:
Good luck this is a long project. I build carbonrom for another phone where everything for cm was allready fixed. I would start with a phone that allready has support to learn how the process goes. You can brick your phone and it's a process of trail and error... But I hope you manage good luck!
Click to expand...
Click to collapse
I'm not sure I understand what you mean ? If the phone already has support, then what's there to port ? Or do you mean building CM itself ? That I've done quite a few times already, did quite a bit of work on the i9500, fixing RILD issue's, kernel issue's and other stuff.
soo...maybe m wrong (has been a while snce ive ported) but im goin to drop a few lines anyhow......
porting is very different from source building.....the only reason you would need to dl the cm sources would be to compile the rom using sources...and right now the note 4 has none we would need device,kernel,common,vendor sources for that....so... we cant source build right now only port....sp what we need to do is research which device officially or unofficially that has cm with same specs as the note4 things like screen size, board, things of that nature....and would highly recommend using the same carrier as well.....but once we have that info....dl that phones cm rom zip....dl one of our phones rom zips.....now for the fun....ill lay out a way i did it maybe is the same still ...
place both cm zip and note 4 zip on desktop..
create a new folder call it new
drag all files from the cm zip into the new
open the new and open the note 4 zip have them side by side
now your going to drag pretty much all folders/files from the note 4 system folder into the new sytsem folder one folder at a time excluding:
app,priv-app,etc,fonts,media,framework,xbin (im probably forgetting one or two but has been a long time)
now the fun begins....time to edit some xmls and trial and error on pretty much everything until it is working right
you are also going to want to change out the kernel and have to edit the updater-script in the meta-inf....
im positive im forgetting a few things but this is pretty much what i can remember......from off the top of my head...some of the guides ill link in a bit will go into greater detail and explain things more in depth
a few links ive had bookmarked that will help ya
http://forum.xda-developers.com/showthread.php?t=1908008
http://forum.xda-developers.com/showthread.php?t=732957
http://forum.xda-developers.com/showthread.php?t=1957219
http://forum.xda-developers.com/showthread.php?t=1272270
http://forum.xda-developers.com/showthread.php?t=2113479
http://forum.xda-developers.com/showthread.php?t=1801690
http://forum.xda-developers.com/showthread.php?t=2251719
http://forum.xda-developers.com/showthread.php?t=1941239
http://forum.xda-developers.com/showthread.php?t=1805408
http://forum.xda-developers.com/showthread.php?t=2058850
all of these links in one way or another have helped me during my porting phase hope they do the same for you ...like ive said before im more of a source builder so thats what imgoing to be trying to do is getting a working tree... but if you need help just hit me up ill do what i can
Shouldn't this thread be in general?
jdidtht said:
Shouldn't this thread be in general?
Click to expand...
Click to collapse
yes it really should being as there is no development only discussion...but thats the moderators job not mine
spleef said:
yes it really should being as there is no development only discussion...but thats the moderators job not mine
Click to expand...
Click to collapse
Threads regarding R&D belong in development, so I guess it really belongs here. Even more so cause if it's moved to general, tons of n00bs will join in and destroy the thread. please keep this developers only.
Anyway thanks to see you join in Spleef, much appreciated !! Still setting up my environment myself ...
spleef said:
soo...maybe m wrong (has been a while snce ive ported) but im goin to drop a few lines anyhow......
porting is very different from source building.....the only reason you would need to dl the cm sources would be to compile the rom using sources...and right now the note 4 has none we would need device,kernel,common,vendor sources for that....so... we cant source build right now only port....sp what we need to do is research which device officially or unofficially that has cm with same specs as the note4 things like screen size, board, things of that nature....and would highly recommend using the same carrier as well.....but once we have that info....dl that phones cm rom zip....dl one of our phones rom zips.....now for the fun....ill lay out a way i did it maybe is the same still ...
place both cm zip and note 4 zip on desktop..
create a new folder call it new
drag all files from the cm zip into the new
open the new and open the note 4 zip have them side by side
now your going to drag pretty much all folders/files from the note 4 system folder into the new sytsem folder one folder at a time excluding:
app,priv-app,etc,fonts,media,framework,xbin (im probably forgetting one or two but has been a long time)
now the fun begins....time to edit some xmls and trial and error on pretty much everything until it is working right
you are also going to want to change out the kernel and have to edit the updater-script in the meta-inf....
im positive im forgetting a few things but this is pretty much what i can remember......from off the top of my head...some of the guides ill link in a bit will go into greater detail and explain things more in depth
a few links ive had bookmarked that will help ya
http://forum.xda-developers.com/showthread.php?t=1908008
http://forum.xda-developers.com/showthread.php?t=732957
http://forum.xda-developers.com/showthread.php?t=1957219
http://forum.xda-developers.com/showthread.php?t=1272270
http://forum.xda-developers.com/showthread.php?t=2113479
http://forum.xda-developers.com/showthread.php?t=1801690
http://forum.xda-developers.com/showthread.php?t=2251719
http://forum.xda-developers.com/showthread.php?t=1941239
http://forum.xda-developers.com/showthread.php?t=1805408
http://forum.xda-developers.com/showthread.php?t=2058850
all of these links in one way or another have helped me during my porting phase hope they do the same for you ...like ive said before im more of a source builder so thats what imgoing to be trying to do is getting a working tree... but if you need help just hit me up ill do what i can
Click to expand...
Click to collapse
Great addition to the thread ! Hmm I haven't done any porting myself. I figured once we have a kernel up (compiling it should be easy), then what's stopping us from booting CM ? I mean of course RILD won't work if we don't have a JNI (or what's it called on ART, ANI ? ) interface to the modem. Of course we won't have NFC, internet, telephony, all that. But merely booting a graphical interface that should be doable with Nexus 6 source code, right ? I mean all we need is SoC sources so we have cpu & graphics working, right ? So That was what I had in mind myself but your approach actually is quite the same now I think of it
Thread is moved to general AGAIN. Hehe. Starting a development thread ON XDA and have it in the developer section seems harder than porting CM12 Anyway I guess it doesn't matter in which section it is, as long as n00bs and trolls stay out and we can focus on development only.
Anyway, downloading kernel sources as we speak ...
BTW, here is Nexus 6 source code: http://www.xda-developers.com/android/google-nexus-6-factory-images/
Going to down that right now too ...
Ok, building kernel as we speak. I just installed the arm-eabi-4.7 toolchain, like this:
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.7/
And then edited the makefile and issued the 3 commands all as specified in README_Kernel.txt from the Samsung Kernel. So far so good
And yes, as expected, build breaks:
drivers/scsi/ufs/ufs_test.c:25:19: fatal error: ../sd.h: No such file or directory
compilation terminated.
make[3]: *** [drivers/scsi/ufs/ufs_test.o] Error 1
make[2]: *** [drivers/scsi/ufs] Error 2
make[1]: *** [drivers/scsi] Error 2
make: *** [drivers] Error 2
Hehe, Samsung wouldn't be Samsung if they would supply a kernel that actually builds from the start Going to investigate ...
Actually that seems like an easy fix, just linked the file correctly
And a new break:
In file included from drivers/gud/MobiCoreDriver/logging.c:21:0:
drivers/gud/MobiCoreDriver/main.h:24:22: fatal error: platform.h: No such file or directory
I'd say it's looking for the file in platforms/MSM8960_SURF_STD, going to link it correctly ...
And building again ...
n file included from drivers/video/msm/mdss/mdss_mdp_trace.h:255:0,
from drivers/video/msm/mdss/mdss_mdp.c:61:
include/trace/define_trace.h:79:43: fatal error: ./mdss_mdp_trace.h: No such file or directory
Include should point to kernel includes, fixing it again
And building again ...
Code:
OBJCOPY arch/arm/boot/Image
Kernel: arch/arm/boot/Image is ready
LZO arch/arm/boot/compressed/piggy.lzo
AS arch/arm/boot/compressed/piggy.lzo.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
Kernel ready Of course that was the easy part, hehe, but still, progress. Tomorrow going to start with the difficult part, getting CM up
I've ported before but only tw where it was mainly framework edits. Never worked with cm before but like the op I'm keen to learn. If i can help at all just let me know, I use linux mint myself rather than Ubuntu but they're very similar
So, just downloaded Nexus 6 sources. It seems that directory /device/moto/shamu contains the device hardware stuff we need ! Going to research some more today ...
*EDIT* also mind the propietary-blobs.txt in that directory. I'm still waiting for my Note 4 myself (hopefully friday), but this needs to be compared with the files on the device, cause if they exist, they will be blobs of course and we need them.
I have decided to rework the thread to ovoid any confusion as the intent of posting this thread was to ask questions about compiling custom Roms from AOSP source that someone like myself who gained their development experience on other devices that building from pure AOSP code was not an option and are not as familiar working with AOSP. In the past my own experience comes from using and modifying for example the Cyanogenmod source so after attempting to now base my Rom on AOSP this time around with Lollipop have run into a few unfamiliar differences. As each question or topic is addressed I will update the Op. The hope is not only will I find solutions or answers to my own questions but that others in the same position will also be able to find use of the discussions posted in this thread.
Compiling the AOSP source into a format that can be safely flashed using a custom recovery. This was a 3 part question the first was just simply how to compile AOSP in a format other then .img files that can be flashed using a custom recovery without the need of flashing through fastboot or needing to use the adb sideload option.
1, Compiling AOSP into the for of an update.zip.
This was answered in short by know.patience by suggesting to use the “make otapackage” command in place of "make" to start the build. Was also made aware that a few modifications would need to be made to avoid producing an update package that does not use the new block format but instead the old style zips we are most used to seeing.
2, Now can create an update.zip using the “make otapackage” command ran into an issue that by flashing the update.zip produced would in the process replace the custom recovery used to flash with the Nexus Stock recovery. This was answered by Lethargy who suggested and provided a Link for the following commit.
For getting rid of the AOSP recovery:
https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f
https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
3, Now can create an update.zip using the “make otapackage” and after applying the above commit are now able to flash the update.zip without replacing the recovery Lethargy also provided links for the following commits.
To get rid of the block-based zip format:
https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit):
https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well:
https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
Compiling using the AOSP Master branch vs release branches. In following the directions provided on the Google development site are given the command for downloading the source code using the Master branch. Using the Master branch as apposed to a release branch such as android-5.0.2_r1 or lower have found that the source compiles just fine but have run into one issue and just a general question that a little explanation would be helpful for general understanding of the AOSP Master branch.
The issue is that after flashing a Rom compiled using the Master branch everything in the Rom works as expected other than the radio. I have so far using the same exact vendor blobs as compiling a release branch have not had a signal and baseband version is listed under about phone as unknown.
The general question is that the android version listed compiling a Rom using the Master branch is version 5.0.50.50.50.50. In general I have yet to understand what this version number represents and very little to no information available via the Google Box.
Between the both I now wounder if the Master branch is intended for actual use or if so what changes are required so the baseband version is recognized and radio / Ril will work?
Quick Answer:
Google first commits new code into master and then is later tagged with an update for realease so in generall many things can be broken and the master branch is and not intended to be stable so if building from master expect that things will be broke or buggy.
Compiling Rom and Kernel together. For those of us again used to compiling using say the CM code are now used to compiling the Kernel along with the rest of the code. I know it is easy to just compile the Kernel and include in the device tree but for those of us who would still like the Kernel compiles with the rest of the code there is no information available on the Google Developers site for doing so and there seems to be a few differences as have tried just using the lines used in the CM Hammerhead device repository. I have come across these commits from Cl3Kener that should help. Hate posting other developers code but is on Github so is there for the public at large. So far have only tested as is so will update if finding not all changes are necessary or can be modified.
Inline Kernel Building
https://github.com/OptiPop/device_lge_hammerhead/commit/7de8fd95b6df16cb6311161d5048874d69cf1cb1
https://github.com/OptiPop/device_lge_hammerhead/commit/87768896f4eb8fcd989ce3b8492ca65305513851
https://github.com/OptiPop/device_lge_hammerhead/commit/5460eb3aa76ea5d813f64a3b3bab6ace1be6de68
Adding Pre-Built APK's
Seems Sprint users need a few apk's for updating prl and what not that are included into the Stock release but are not part of the AOSP code. For some reason through vendor or even device have tried adding these apk's into the build. First try I created a sprint vendor section and received a few errors untill learning would need to add sprint into a vendor white list found in build. Will post link to file later. After found the extra "Services.jar" I found in the stock image not found in the aosp compiled Rom did copy into the build but the apk's had not. Looking in the other vendor blobs noticed lge adds "qcrilmsgtunnel.apk" so followed the example and even tried just adding the other spk's into lge expanding the list used for adding in "qcrilmsgtunnel.apk" but still no luck. Also have tried adding through the device files for Hammerhead just to get them into the Rom for testing and still no luck. If this was CM or any other Rom not using pure aosp this would have been a 5 minut project so need to do some aditional homework.
Again think this thread could be a good resource for developers who are new to building their Roms around AOSP so wanted to include everything I run into during the process of moving away from using a heavily modified CM based code as the base of my Rom to using AOSP in its place so developers who are or in the same process or for those in the future can use as a resource to quickly adjusting. I have been building CM based Roms like Starship for years and after hours of working on other aspects to suddenly be stumped by these small differences between platforms can be very frustrating.
to the OP:
answer to your first question comes in two parts.
a) use 'make -j# otapackage' will generate a zip that is flashable in custom recovery.
b) if you plan on adding other files after the zip is made, you will need this info here:
https://github.com/android/platform_build/commit/26e6619c37e294fe2ee63aaa759e0ac861775ce8
There are some modifications needed to generate the OG zip files instead of the new "block" format.
Google hasn't released the 5.0.1 image for the N5 but that doesn't mean you can't build it and install it yourself. I'm running it and it seems okay to me so far although I'm hardly an expert.
simms22 said:
op.. this section is only for developers, to get work done. if you have questions, they belong in the q&a section. you arent new, you should know this. again, this section is only for developers, mot for the normal xda folk to post questions. you have a q&a section just for asking questions. please, ask a mod to move your thread there.
Click to expand...
Click to collapse
I am building a customized AOSP Rom I am interested in sharing so was looking for help or direction in creating an update zip that can be flashed in a custom recovery like TWRP. I am not used to compiling AOSP and with the help of know.patience in the first reply am now able to compile an update.zip I can flash in TWRP but in doing so it also replaces TWRP with the Stock recovery. I have still been using the .img files to flash personally but am still trying to figure out how to solve the recovery replacement issue. I still have other features I am adding and testing before I would like to post my work but before I get to that point I still need to figure out my recovery replacement issue. Maybe using the words personal use may have been confusing but at the moment until ready I have only been using my work personally but would like to at some point post and share. I also have work that is not AOSP based I am sharing in the Android Development section but I have been building CM and other source based Roms and sharing for years. This is the first device I have been able to build AOSP and still have a few things to figure out before sharing any of my AOSP based work. I am otherwise not sure why you think these are questions for general Q&A.
I started this thread in Android Development as there was only about 4 posts in this section and I see many AOSP based Roms in Android Development who's developers obviously know the answers to my questions so tried to get away posting there in hope one of these developers could help or like in the first response point me in the direction of a commit before the thread was moved by a mod into this section. Do you think someone in the general Q&A section is better equipped to help answer questions about compiling an AOSP based Rom in the form of an update.zip that can be flashed in TWRP without also replacing TWRP with the Stock recovery?? Would also be nice knowing what changes in the code need to be made in compiling an old style update.zip that does not use the new block format. This would be a bonus but overall not %100 needed as instead of moving files around after the code has been compiled have added init.d support and first have all the files I want moved into a staging directory and then form an init,d bash script to move the files during first boot and remove those that are not needed like this example I used in my CM based version of the Rom I am trying to update for AOSP for 5.0.
https://github.com/Starship-Android/android_device_starship-common/blob/cm-11.0/app-update
https://github.com/Starship-Android/android_device_starship-common/blob/cm-11.0/cleanup
I must seriously be underestimating the knowledge and in general the types of questions being asked and answered in the general Q&A section.
Honestly if not for the amount of times thanked I would think this comment was not so much about helping or community but more about someone trying to puff themselves up by trying to appear important by making decisions about what questions are worthy of being asked but judging by the number of times they have been helpful I am thinking its either a case of not reading or understanding the question being asked or my own inability to express my questions in the proper manor. Either way its definitely not about taking up resources in a section with less than 10 total posts. The frustrating part as a community as I like to believe we are all in is that why I worked on other parts in updating my Rom had expected that at least more than one developer out of all the AOSP based Roms posted in the development section would have helped me with this one part. Its not like I am asking how to be a developer just a resource to help with two simple things I am sure I could have figured out and will most likely still figure out without any help. Overall my thoughts behind posting this question was that why I am working to figure out something a bit more time consuming at least more than one person would be helpful enough to copy and past a commit.
XDA is weird in that with other devices all the developers would join a team and start a shared group of repository’s for one another to use in trying to make the best possible experience and options for everyone. For example in the op I posted an example of hours of work I did showing what libraries are needed by one another just so others could use it also in trying to port as much as possible for in that case the Galaxy Mini. Then with other devices like seems to be the case with the N5 its all about competition and what I am starting to call the smartest person in the room syndrome. Its just a shame there are only 5 maybe 6 threads posted in this section and I think that says allot about the community in general. So many good things could come about if we just tried to be helpful and pull as much knowledge together as we could. Anyhow think its time for ending this rant.
chairshot215 said:
compiling an AOSP based Rom in the form of an update.zip that can be flashed in TWRP without also replacing TWRP with the Stock recovery?? Would also be nice knowing what changes in the code need to be made in compiling an old style update.zip that does not use the new block format.
Click to expand...
Click to collapse
To get rid of the block-based zip format: https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit): https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well: https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
For getting rid of the AOSP recovery: https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f then https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
Lethargy said:
To get rid of the block-based zip format: https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit): https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well: https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
For getting rid of the AOSP recovery: https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f then https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
Click to expand...
Click to collapse
Thank you this is well beyond what I was looking for and don’t worry I make it a point not to send out PM's with questions that can be helpful for others as well. Otherwise would have blown up the AOSP Rom posters in development but thanks for the information.
chairshot215 said:
.. and don’t worry I make it a point not to send out PM's with questions that can be helpful for others as well..
Click to expand...
Click to collapse
If you mean "I'll probably ignore you if you try asking for support over PM.", that's part of my forum signature.
If you need anything else feel free to @mention me in a thread, though.
I reworked the Op to avoid confusion as Mods have been moving the thread around into different sections. I personalty believe these questions are more geared towered development than general Q&A but at least at the moment I appear to be wrong about that. Never know though as in the past one day one of the mods may decide to move the thread back into its intended location but until then I guess these topics will be of better use to general users than developers.
chairshot215 said:
I reworked the Op to avoid confusion as Mods have been moving the thread around into different sections. I personalty believe these questions are more geared towered development than general Q&A but at least at the moment I appear to be wrong about that. Never know though as in the past one day one of the mods may decide to move the thread back into its intended location but until then I guess these topics will be of better use to general users than developers.
Click to expand...
Click to collapse
You should include the other commit (https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558) which fixes building since the first one results in "IndentationError: unexpected indent".
Lethargy said:
You should include the other commit (https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558) which fixes building since the first one results in "IndentationError: unexpected indent".
Click to expand...
Click to collapse
Thanks for the heads up, when testing these I also cherry picked a few other things that looked related. Have to double check but may have forked the repository’s from you so would receive credit if anyone decided to look over my repository’s. Well overall my personal Github has been pretty bare as in the past most work was done on more obscure Virgin Mobile devices with only a few developers so we would pretty much create an organization for all the developers to use.
https://github.com/MTDEV-CM7
https://github.com/MTDEV-CM10
https://github.com/vmobi-triumph
https://github.com/MTDEV-KERNEL
https://github.com/MTDEV-MIUIv4
https://github.com/MTCM9
https://github.com/MTCM10
https://github.com/HTCCM9
https://github.com/HTCCM10
https://github.com/HTCStarShip
https://github.com/HTCUbuntu
https://github.com/vmobi-shooter
https://github.com/vmobi-gogh
These days have been keeping everything under Starship-Android.
https://github.com/Starship-Android
Have 2 other members listed who I had worked with in the past but has otherwise been a solo organization with one of the other members who decided on going with the Moto X and Verizon over the N5 and showed little interest in his 2012 version of the N7 as it was intended for being a Nexus only device line up and the second being my Kernel Guru from a few devices back who mainly joined to help me out with a few things but ultimately what I am getting around to is this is the first time working %100 solo. Have to say without having anyone to bounce off ideas and share findings with things definitely move much slower and take a bit of getting used to. Is also the reason for starting threads like this. Most of this stuff looking in the developer section appeared to be pretty common knowledge but having never worked from pure AOSP before was slowing down other development for about a week just to figure out what seemed like half the community had already known and with what probably took at the most 5 or 10 minutes of copying and pasting commits probably saved me a weekend of sifting through github and testing. I hope by creating a thread like this will be able to do the same for others.
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
malcho said:
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
Click to expand...
Click to collapse
Never tried.
ODEXED
i am successfully build cm12 with fully odexed. now i like to odex some prebuilt apk also but LOCAL_DEX_PREOPT=true not odexing prebuilt apk. can somebody help me? already DEX_PREOPT=true working fine.
soorajj said:
i am successfully build cm12 with fully odexed. now i like to odex some prebuilt apk also but LOCAL_DEX_PREOPT=true not odexing prebuilt apk. can somebody help me? already DEX_PREOPT=true working fine.
Click to expand...
Click to collapse
Why do you need to odex a prebuilt apk?
Not sure if what you want is even possible.
But if odexing your prebuilt apk is necessary then why not odex it then include the .odex with the prebuilt?
Lethargy said:
Why do you need to odex a prebuilt apk?
Not sure if what you want is even possible.
But if odexing your prebuilt apk is necessary then why not odex it then include the .odex with the prebuilt?
Click to expand...
Click to collapse
suppose i want to odex gapps. how to?
malcho said:
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
Click to expand...
Click to collapse
Nothing so far, I downloaded the master and 5.0.2_r1 branches and have loaded both in meld for looking over differences but have not yet identified from the dif between the 2 branches that is responsible for ril working in release branch but not master. Still have allot to look over though still. Still have not found a decent explanation of the master branch to know if its recommended to build from but still just for Knowledge sake am interested in knowing. At first thought maybe apn's but not so sure with baseband also listed as unknown from my Master branch builds.
chairshot215 said:
Nothing so far, I downloaded the master and 5.0.2_r1 branches and have loaded both in meld for looking over differences but have not yet identified from the dif between the 2 branches that is responsible for ril working in release branch but not master. Still have allot to look over though still. Still have not found a decent explanation of the master branch to know if its recommended to build from but still just for Knowledge sake am interested in knowing. At first thought maybe apn's but not so sure with baseband also listed as unknown from my Master branch builds.
Click to expand...
Click to collapse
As far as i know all the patches goes to master branch then from this branch ,if they are ok,is distributed to lower branches.I also didn't find info why is named as 5.0.50.50.I will try to investigate this ril problem
malcho said:
As far as i know all the patches goes to master branch then from this branch ,if they are ok,is distributed to lower branches.I also didn't find info why is named as 5.0.50.50.I will try to investigate this ril problem
Click to expand...
Click to collapse
Thanks will definitely update the Op with any findings. Was very surprised to find the thread again as it has now been moved 4 times by 4 different Mods, some bounce it to general Q&A and then is bounced back here by another. I understand its not comprised of the most advanced development topics but with that said is still way more advanced than the topics being discussed by general users over in the general Q&A section. I had just thought it would be a nice one stop place for learning the basics of AOSP development. With the constant moving and scolding messages being received one would think the threads very existence is up there with crossing the streams and threatens the existence of Android development.
@chairshot215 Thank you for starting this thread. Thank you @Lethargy for all of your insight. I like to do my own perosnal builds every once in a while for my nexus devices. What I have observed over the years is that the Master Branch will sometimes have funky version numbers like you have described. One thing to consider is what @malcho mentioned. If all commits indeed go there first before the respective branches(although this may not entirely be the case), then it is likely that some things may be broken in the master branch from time to time, hence the ril problem. I think with the galaxy nexus I ended up running into issues from time to time with the master branch, and from there learned to build for specific branches/tags. For instance, there are times when items within a specific branch will be ahead of master in some areas and behind it in others, as in this link to platform_build for lollipop release https://github.com/android/platform_build/tree/lollipop-release. So with that, it is probably in our best interests to just use specific branches.
Milly7 said:
@chairshot215 Thank you for starting this thread. Thank you @Lethargy for all of your insight. I like to do my own perosnal builds every once in a while for my nexus devices. What I have observed over the years is that the Master Branch will sometimes have funky version numbers like you have described. One thing to consider is what @malcho mentioned. If all commits indeed go there first before the respective branches(although this may not entirely be the case), then it is likely that some things may be broken in the master branch from time to time, hence the ril problem. I think with the galaxy nexus I ended up running into issues from time to time with the master branch, and from there learned to build for specific branches/tags. For instance, there are times when items within a specific branch will be ahead of master in some areas and behind it in others, as in this link to platform_build for lollipop release https://github.com/android/platform_build/tree/lollipop-release. So with that, it is probably in our best interests to just use specific branches.
Click to expand...
Click to collapse
Thanks for the response and have definitely learned its better building from branches with a release tag. Still very curious why and how the branches are structured so thanks for the explanations.
Way totally off topic for the thread but landed a brand new SSD and decided to install everything fresh. After everything was set back up and wanted to start building I ran my usual,
-j'grep 'processor' /proc/cpuinfo | wc -l'
a very old habit before fully understanding what number to use after -j so used grep to figure it out based on Googles recommendation. The command did not work so removed the grep and just made it -j4 but also with 0 success. At first just figued I missed somthing setting everything back up and "make" is just not working but wrong again as running "make" command without -j of any number works just fine.
Also tried this with CM12 as I am doing 2 versions of my Starship Rom. One from AOSP and one using CM. Figured AOSP would be special for Nexus users why also having a version for CM I can make most changes by adding a Starship Device Tree could easily port the Rom to any device running CM supported or not.
https://github.com/Starship-Android/android_device_starship-common/tree/cm-12.0
Also found why compiling CM that -j also results in an error
Invalid lunch combo: cm_hammerhead--j4
No such item in brunch menu. Try 'breakfast'
So far have not found anything using the Google Box so figured may as well ask. If have not figured out by now I have no shame in asking questions. Oddly enough that is for things that are probably relatively simple. Took a better part of a week figuring out how to start CM using the Now Launcher and setting up init.d bash scripts for moving around and replacing libs after learning the Gapps package includes libs that will not work so the solution needed to be that the CM Gapps package libs needed to be replaced with either stock or libs pulled after installing the Now Launcher from the Play Store after flashing Gapps and the Rom staring. Also then what if user updates and wipes the system partition after the new and updated llibs have been moved into place. Anyhow point of story is things like this I will just figure out without bothering anyone but for the cant believe I need to stop what I am working on to figure out something most likely very simple and can be answered with very little time spent I have no shame in just asking. Not that someone else’s time is less important but like I have mentioned before is frustrating just after spending hours or days figuring out something asked in dozens of threads is just frustrating getting caught up or loosing momentum and thought processes over something so simple there are little resources available. Also I assume most devs have the same experience when you have an idea or thought behind resolving an issue that once you stop and change direction it just sometimes never comes back and that short time you had I guess can be called an epiphany is gone once going back. Otherwise thats how I justify asking dumb ars questions.
Good day lads,
Disclaimer:
Code:
I don't know if you noticed a thread in the Q&A section that was closed by Matt. While I respect Matt's decision to close it, I find it a very relevant topic... The future of LineageOS for the P9 Lite. Please note that I do respect meticulous' wishes to charge for his work because I know how time consuming it is I wish to firmly express that I do not condone this mentality when it comes to Linux based operating systems.
I decided to make this thread with my little Dev knowledge in order to attract more devs who's willing to put in work on a stable device tree for free in spirit of community and for all to enjoy.
I do not have the Lineage source code at the moment but I will start downloading soon, I do know that I will need help and I encourage more devs/beginners to lend a hand for the benefit of us all.
Please, to begin, post links to relevant tarballs/links/downloads for development purposes, device tree and kernels, anything you've worked on so perhaps we can all work together.
Cheers
Sent from my HUAWEI VNS-L31 using Tapatalk
Hmmm... The fact that building android ROMs is time consuming is not a good enough reason to request money for OPEN SOURCE SOFTWARE. Yes, LineageOS and android in general are open source, so that's an infraction.
About the collective effort, that's a good idea, but there are no sources from Huawei right now. You need to wait for the Nougat sources if Huawei really gives a dime about releasing them. From that point, it is easier to develop and get stuff working. Until then, good luck working without sources and experimenting stuff. Not to mention that there's no official TWRP as well, and TWRPs posted here on XDA for our devices have specific requirements to get them flashed on your device.
Asphyxiate666 said:
Hmmm... The fact that building android ROMs is time consuming is not a good enough reason to request money for OPEN SOURCE SOFTWARE. Yes, LineageOS and android in general are open source, so that's an infraction.
About the collective effort, that's a good idea, but there are no sources from Huawei right now. You need to wait for the Nougat sources if Huawei really gives a dime about releasing them. From that point, it is easier to develop and get stuff working. Until then, good luck working without sources and experimenting stuff. Not to mention that there's no official TWRP as well, and TWRPs posted here on XDA for our devices have specific requirements to get them flashed on your device.
Click to expand...
Click to collapse
Why do you need to come here with negativity? I don't support meticulous but he can do what he wants with the device sources he took the time to build, heck, he doesn't need to release those sources so I don't know what you're talking about, firstly. Secondly, a device tree can be built, Q.E.D we as a community can work on it together, if they release it we'll just have it much easier.
Note also; I've asked for relevant input and help from the community.
Thanks for your time though.
EDIT: P.S Professional Flasher, have you ever built a ROM before? Because that's my target here, finding people who knows how to fix error and put the tree together
Sent from my HUAWEI VNS-L31 using Tapatalk
Carlyle_f said:
Why do you need to come here with negativity? I don't support meticulous but he can do what he wants with the device sources he took the time to build, heck, he doesn't need to release those sources so I don't know what you're talking about, firstly. Secondly, a device tree can be built, Q.E.D we as a community can work on it together, if they release it we'll just have it much easier.
Note also; I've asked for relevant input and help from the community.
Thanks for your time though.
EDIT: P.S Professional Flasher, have you ever built a ROM before? Because that's my target here, finding people who knows how to fix error and put the tree together
Sent from my HUAWEI VNS-L31 using Tapatalk
Click to expand...
Click to collapse
Ignore it's just a critic custom rom user....[emoji12]
Hipom said:
Ignore it's just a critic custom rom user....[emoji12]
Click to expand...
Click to collapse
My words are razor sharp but honest and realistic.
Sent from my VNS-L21 using Tapatalk
Asphyxiate666 said:
Hmmm... The fact that building android ROMs is time consuming is not a good enough reason to request money for OPEN SOURCE SOFTWARE. Yes, LineageOS and android in general are open source, so that's an infraction.
About the collective effort, that's a good idea, but there are no sources from Huawei right now. You need to wait for the Nougat sources if Huawei really gives a dime about releasing them. From that point, it is easier to develop and get stuff working. Until then, good luck working without sources and experimenting stuff. Not to mention that there's no official TWRP as well, and TWRPs posted here on XDA for our devices have specific requirements to get them flashed on your device.
Click to expand...
Click to collapse
Open source does not mean free, period.
pilgrim011 said:
On xda, it does mean free, period. People that think that they should be paid for contributing here are not welcome on XDA.
Click to expand...
Click to collapse
you are totally right
Just finish already. If you want to discuss all that situation just create some g+ group or telegram for this.
XDA dev thread is not for that king of discussion.
Also it should be in QA SECTION.
You start xda dev thread when you have something made already. Not just with idea.
lsander said:
If you want to discuss all that situation just create some g+ group or telegram for this.
XDA dev thread is not for that king of discussion.
Click to expand...
Click to collapse
This disussions are undesired here. I know a board where you can discuss that. If you want, feel free to have a look at it. This little Board is very pleased about every enlivenment. Opened a thread over there.
Well, developers do not grow on trees. I guess there are not enough devs here who have the P9 Lite device.
However I like the intention of the thread author. For that reason please try to discuss in a human way.
In the end: I am vers interested in learning how to build custom roms but I can't find a way how to learn it. Does anyone have some good advice?
Updated kernel
Hello everyone, I've recently been working on updating the Honor 5c kernel to 3.10.105 and so far it seems to be working fine on my P9lite, LineageOS 14.1. It's based purely on stock, with one or two commits borrowed from Meticulus' kernel repo, so it compiles without errors.
Since this is a new account, I can't link my repo directly, you can find it on my github profile, Avsky.
I'll be making my own additions to master branch, while stocklike branch will contain only fixes and kernel updates.
If somebody would like to test them, you can get the boot image from releases tab on github. Stock kernel hasn't been tested, mind you, always keep a backup!
Also depending on how much time I have, I might get started on bringing OmniROM to our device (I'm really missing it). I'm just a college student though, so it might never see the light of day, any help is much appreciated.
Avsky0 said:
Hello everyone, I've recently been working on updating the Honor 5c kernel to 3.10.105 and so far it seems to be working fine on my P9lite, LineageOS 14.1. It's based purely on stock, with one or two commits borrowed from Meticulus' kernel repo, so it compiles without errors.
Since this is a new account, I can't link my repo directly, you can find it on my github profile, Avsky.
I'll be making my own additions to master branch, while stocklike branch will contain only fixes and kernel updates.
If somebody would like to test them, you can get the boot image from releases tab on github. Stock kernel hasn't been tested, mind you, always keep a backup!
Also depending on how much time I have, I might get started on bringing OmniROM to our device (I'm really missing it). I'm just a college student though, so it might never see the light of day, any help is much appreciated.
Click to expand...
Click to collapse
Hello, I tried your kernel on AOSPA MM but I couldn't get the proper unpacked zImage. I got only 9.7 MB gzip which contains the 22 MB Image but I couldn't extract it.
Could you provide the zImage?
dady000 said:
Hello, I tried your kernel on AOSPA MM but I couldn't get the proper unpacked zImage. I got only 9.7 MB gzip which contains the 22 MB Image but I couldn't extract it.
Could you provide the zImage?
Click to expand...
Click to collapse
Strange, I can extract it without problem using abootimg. Anyway, zImage now included on releases page.
Avsky0 said:
Strange, I can extract it without problem using abootimg. Anyway, zImage now included on releases page.
Click to expand...
Click to collapse
That zImage looks like the same I got from unpack. For some reason it won't boot when I repack it with my ramdisk.
dady000 said:
That zImage looks like the same I got from unpack. For some reason it won't boot when I repack it with my ramdisk.
Click to expand...
Click to collapse
I repacked and uploaded my image with ramdisk from your latest AOSPA, could you try it? Sizes varied a bit, I've used my abootimg config with SELinux changed to permissive, as that is the case in your image.
EDIT: I'm uploading extracted zImage as well.
Avsky0 said:
I repacked and uploaded my image with ramdisk from your latest AOSPA, could you try it? Sizes varied a bit, I've used my abootimg config with SELinux changed to permissive, as that is the case in your image.
EDIT: I'm uploading extracted zImage as well.
Click to expand...
Click to collapse
Yeah of course it works :silly:. Looks like my boot-packing skills are pretty low. Good job :fingers-crossed:
dady000 said:
Yeah of course it works :silly:. Looks like my boot-packing skills are pretty low. Good job :fingers-crossed:
Click to expand...
Click to collapse
Glad to hear it! Your images seem to be using uncompressed zImages, while in stock ROMs they're gzipped, seems like unintentional change somewhere in your build process.
Avsky0 said:
Glad to hear it! Your images seem to be using uncompressed zImages, while in stock ROMs they're gzipped, seems like unintentional change somewhere in your build process.
Click to expand...
Click to collapse
Yeah you're right. I just checked it and I am copying Image instead of Image.gz. Seems like it's only a 'cosmetic' issue because it runs anyways.
Great news guys, my sources now compile with latest Linaro toolchain. The kernel actually barely needed any fixes, but I'm not releasing anything prebuilt yet, since I have no idea what impact on stability my hacks might have.
Screenshot
ndroid1562 said:
Well, developers do not grow on trees. I guess there are not enough devs here who have the P9 Lite device.
However I like the intention of the thread author. For that reason please try to discuss in a human way.
In the end: I am vers interested in learning how to build custom roms but I can't find a way how to learn it. Does anyone have some good advice?
Click to expand...
Click to collapse
Perhaps reading through GitHub commits, checking the code and see whether or not you're really interested. If you're using a Linux distribution which I strongly advise, learn bash scripts first - it's easy and self explanatory and from there you will get basics of directories and calling up files.
Goodluck
Sent from my HUAWEI VNS-L31 using Tapatalk
Greetings to all. I am new to this forum and I have a question for you experts.
There is a very old and abandoned app that I used to like a lot. It is very simple (the size was just 99KB). It is simply creating a floating icon above other apps that initiates screenshots.
When I tried to install and use it on my OnePlus 5, I got the message that this application needs to be updated.
The thing is that there is no update available for this app because the developer for his own reasons abandoned the project.
Could this be because of the modified Android version my device is running? Or is it because the app is no longer compatible for the latest Android versions in general? (My old device was under 4.4 KitKat)
Is there a way to resolve this manually perhaps by decompiling , editing and recompiling the apk?
Is there a way to recreate the same apk to be compatible with the latest bunch of Android versions?
Is there perhaps a way to avoid all the hassle and "trick" the app thinking that everything is O.K.?
Since I am a complete and utter n00b, please explain to me.
I wish to thank you all in advance for your time and effort to answer to me.
The apps' source code needs to be updated.
Do you have a link to the apps' source code?
Would also help to know what app you're talking about.
GameTheory. said:
The apps' source code needs to be updated.
Do you have a link to the apps' source code?
Would also help to know what app you're talking about.
Click to expand...
Click to collapse
I have the apk file if that helps. I tried to private message you but I was not able.
How can I provide the source to you?
The link to the actual apk file is here: https://drive.google.com/open?id=1zImcIf1lret_9XsCRawrj4FLPtbMGe7j
The app is creating a floating button/icon that allows to take screenshots of a specific (designated by the app and fixed) area of your screen. You can take multiple screenshots and evry single screenshot appears in tiny thumbnails on your screen, each one next to the other. All screenshots are getting erased automatically after a few seconds (don't recall how many, maybe 30 secs).
Yeah I have private messaging disabled. I prefer to do any communication on the forums.
As I mentioned, the source code needs to be updated. So if you post the source code I'd be willing to take a look.
No guarantees of course. Lots has changed in android over time. A lot of code has been deprecated. Don't know if it can be updated or if it's just better to start from scratch.
GameTheory. said:
As I mentioned, the source code needs to be updated. So if you post the source code I'd be willing to take a look.
Click to expand...
Click to collapse
I really appreciate your willingness to assist.
As I mentioned I am not very android developing savvy, I have the classes-dex2jar.jar.src.zip here: ------------
Is this what you are looking for???
Let me know if I am mistaken.
I have also extracted all the contents of the apk using apk studio. Let me know if you need anything else.
D4MN4T10N said:
I really appreciate your willingness to assist.
As I mentioned I am not very android developing savvy, I have the classes-dex2jar.jar.src.zip here: https://drive.google.com/open?id=1wYB9STPq70LTc04YL1Yvpf2dY7-T1bZ2
Is this what you are looking for???
Let me know if I am mistaken.
I have also extracted all the contents of the apk using apk studio. Let me know if you need anything else.
Click to expand...
Click to collapse
I did a little digging by decompiling the app so that I can look at the strings.xml to get the official app name. With the app name I did some research and concluded that the developer did not make it open source. This means its original java code is not public and therefore the app cannot be updated.
You'll have to find another app in the play store similar to this one for your use.
GameTheory. said:
I did a little digging by decompiling the app so that I can look at the strings.xml to get the official app name. With the app name I did some research and concluded that the developer did not make it open source. This means its original java code is not public and therefore the app cannot be updated.
You'll have to find another app in the play store similar to this one for your use.
Click to expand...
Click to collapse
OK thank you for your time.