[Ubuntu touch] [linux] [alpha] for kenzo - Xiaomi Redmi Note 3 [Snapdragon] ROMs, Kernels, Re

Disclaimer
This is an alpha build, a lot of things don't work and cant be used as a primary device..also i am not responsible if your device blows up...
Having said that this is working well with good battery life.
Back up your current boot image if you would like to multiboot.
For easy installation use the flashable zip
How to install (the long way)
The ubuntu touch rootfs
xenial-hybris-edge-rootfs-arm64 [Jenkins]
ci.ubports.com
Halum boot for kenzo
halium-boot.img
Halium system image
system.img
How to install...
Download the 3 files above to your linux pc .
download install scripts from here unzip it and move all 3 files in to the folder
in terminal ./halium-install -p ut uubuntu-touch-hybris-edge-xenial-arm64-rootfs.tar.gz system.img
More info here..
How to install ( the short way)
Reboot your redmi note 3 to recovery and make sure there is at least 5 gb of free space
On your Linux pc uncompress the zip below and run flash.sh ( install dependencies if asked )
halium-install-kenzo.zip
drive.google.com
What doesn't work
Camera
Sound
Data
Fingerprint
Bluetooth
android app support partially working
Please Help me justify the time I spent for this here --> [email protected]
Flashable zip
Flash the latest version from here.
ubuntu_touch_installer_Kenzo_v1.zip
ubuntu_touch_installer_Kenzo_v2.zip
ubuntu_touch_installer_Kenzo_v3.zip
How to install
flash the halium-boot.img
flash the zip directly on kenzo
the default password is 123
Please Help me justify the time I spent for this here --> [email protected]
halium version : 7
Kernal version : 3.10
ubuntu version : 16.04
The sources
mathew-dennis - Overview
mathew-dennis has 31 repositories available. Follow their code on GitHub.
github.com
LineageOS
A free and open-source operating system for various devices, based on the Android mobile platform. This is a mirror of https://review.lineageos.org/ - LineageOS
github.com
Halium
Gnu/Linux for Android devices. Halium has 113 repositories available. Follow their code on GitHub.
github.com
UBports
Ubuntu Touch - Linux on your phone! We are moving to gitlab! https://gitlab.com/ubports - UBports
github.com
To check out other phones or to thank them for their efforts please visit Ubports webpage -- https://ubports.com/
The porting process is a bit different and extremely well documented, credit to the halium and ubports team , have give it a try -- https://docs.ubports.com/en/latest/porting/
Thanking ubports community for the help
Flohack Nokid Korko123 DivinGeorge
Change logs
Flashable zip version 1 changelog (19/06/21)
fixed wifi script (should work as normal without any commands to enable it)
changed notification panel to full screen ( if u like the old mode please change the variable back to 18)
Flashable zip version 2 changelog (27/06/21)
Fixed audio
headphones also work now
Flashable zip version 3 changelog (03/07/21)
added anbox patches ( see more details below)
apparmor fix ( some apps like music player should now work properly )
note : for this zip to work properly u need to flash the updated halium-boot
ToDo :
need to figure out why firmware is not getting loaded on the android side .if u guys have any idea please ping me.
look into the possibility of multiboot with ui.
Android Apps
anbox is now added to the flashable zip. but it is not perfect and a lot of apps i tested had compatibility issues . it should only be used if you really need to run android apps. it is disabled by default
enable anbox by typing the folloing line in terminal
sudo anbox-tool enable
installing apps in terminal
check if anbox is online adb devices
go to Downloads cd Downloads
install the apk you downloaded adb install name_of.apk
Multi booting
This build will not overwrite your system image so you can multiboot both ubuntu touch and any other rom.To do this backup both the boot images and flash them as needed.

Screenshots
{
"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"
}

Wifi isn't working on my device.
Is there any thing i can do?

n4rcus said:
Wifi isn't working on my device.
Is there any thing i can do?
Click to expand...
Click to collapse
i did add a script for this but it does not seem to work.
could you connect the device to a Linux pc and run the following in pc 's terminal
ssh [email protected]
sudo -i
cp /system/etc/wifi/WCNSS_qcom_cfg.ini /data/misc/wifi/WCNSS_qcom_cfg.ini
sudo echo 1 > /dev/wcnss_wlan
sudo echo sta > /sys/module/wlan/parameters/fwpath

mathew..denniss said:
i did add a script for this but it does not seem to work.
could you connect the device to a Linux pc and run the following in pc 's terminal
ssh [email protected]
sudo -i
cp /system/etc/wifi/WCNSS_qcom_cfg.ini /data/misc/wifi/WCNSS_qcom_cfg.ini
sudo echo 1 > /dev/wcnss_wlan
sudo echo sta > /sys/module/wlan/parameters/fwpath
Click to expand...
Click to collapse
Worked like a charm!
Also it was good to know I could ssh using that address.

What are Ubuntu installations? Do you need to install LOS first, and then the Ubuntu build itself or direct build installation?

QantivirusP said:
What are Ubuntu installations? Do you need to install LOS first, and then the Ubuntu build itself or direct build installation?
Click to expand...
Click to collapse
no point in flashing LOS ..can't properly load the firmware anyway.....i might be able share a flashable zip tomorrow...

Wowoowow thank you for this marvelous gifts
Please take your time.
Hoping to see more.

@mathew..denniss
Take your time will wait patiently
that you fix the following error in your spare time
Camera
Data
Fingerprint
Bluetooth

Hi, related to the firmware not loading issue, maybe this could help. https://help.ubuntu.com/lts/installation-guide/armhf/ch06s04.html
...and just wanna say that you're doing a great job this far.

mathew..denniss said:
Disclaimer
This is an alpha build, a lot of things don't work and cant be used as a primary device..also i am not responsible if your device blows up...
Having said that this is working well with good battery life.
Back up your current boot image if you would like to multiboot.
For easy installation use the flashable zip
How to install (the long way)
The ubuntu touch rootfs
xenial-hybris-edge-rootfs-arm64 [Jenkins]
ci.ubports.com
Halum boot for kenzo
halium-boot.img
drive.google.com
Halium system image
system.img
drive.google.com
How to install...(plz download the 3 files above and follow documentation given below )
Installing - UBports documentation
How to install ( the short way)
Reboot your redmi note 3 to recovery and make sure there is at least 5 gb of free space
On your Linux pc uncompress the zip below and run flash.sh
( install dependencies if asked )
halium-install-kenzo.zip
drive.google.com
What doesn't work
Camera
Sound
Data
Fingerprint
Bluetooth
android app support partially working
Please Help me justify the time I spent for this here --> [email protected]
Flashable zip
please download the ubuntu touch flashable zip for Kenzo from the link below.
ubuntu_touch_installer_Kenzo_v2.zip
ubuntu_touch_installer_Kenzo_v1.zip
drive.google.com
How to install
flash the halium-boot.img
flash the zip directly on kenzo
the default password is 123
Please Help me justify the time I spent for this here --> [email protected]
Thanks
halium version : 7
Kernal version : 3.10
ubuntu version : 16.04
The sources
mathew-dennis - Overview
mathew-dennis has 31 repositories available. Follow their code on GitHub.
github.com
LineageOS
A free and open-source operating system for various devices, based on the Android mobile platform. This is a mirror of https://review.lineageos.org/ - LineageOS
github.com
To check out other phones or to thank them for their efforts please visit Ubports webpage -- https://ubports.com/
The porting process is a bit different and extremely well documented, credit to the halium and ubports team , have give it a try -- https://docs.ubports.com/en/latest/porting/
Thanking ubports community for the help
Flohack Nokid Korko123 DivinGeorge
Change logs
Flashable zip version 1 changelog (19/06/21)
fixed wifi script (should work as normal without any commands to enable it)
changed notification panel to full screen ( if u like the old mode please change the variable back to 18)
Flashable zip version 2 changelog (27/06/21)
Fixed audio
headphones also work now
ToDo :
need to figure out why firmware is not getting loaded on the android side .if u gays have any idea please ping me.
look into the possibility of multiboot with ui.
Multi booting
This build will not overwrite your system image so you can multiboot both ubuntu touch and any other rom.
to do this backup both the boot images and flash them as needed.
Click to expand...
Click to collapse
i want to flash ubuntu touch on my kenzo device can you tell me the major bugs like Bluetooth , wifi , calling does they work all fine ?

already state that
doesn't work
Camera
Data
Fingerprint
Bluetooth

benarji7 said:
Hi, related to the firmware not loading issue, maybe this could help. https://help.ubuntu.com/lts/installation-guide/armhf/ch06s04.html
...and just wanna say that you're doing a great job this far.
Click to expand...
Click to collapse
tried it ,didnt work ..thanks for the help

That kenzo has rom sailfishos that also based on linux that have no bugs above.Maybe you can get some ideas fixing bugs from that?

Ign:1 http://repo.ubports.com xenial InRelease
Err:2 http://repo.ubports.com xenial Release
Could not open file /var/lib/apt/lists/partial/repo.ubports.com_dists_xenial_Release - open (13: Permission denied) [IP: 104.21.0.97 80]
Ign:3 http://ports.ubuntu.com/ubuntu-ports xenial InRelease
Ign:4 http://ports.ubuntu.com/ubuntu-ports xenial-updates InRelease
Ign:5 http://ports.ubuntu.com/ubuntu-ports xenial-security InRelease
Err:6 http://ports.ubuntu.com/ubuntu-ports xenial Release
Could not open file /var/lib/apt/lists/partial/ports.ubuntu.com_ubuntu-ports_dists_xenial_Release - open (13: Permission denied) [IP: 91.189.91.39 80]
Err:7 http://ports.ubuntu.com/ubuntu-ports xenial-updates Release
Could not open file /var/lib/apt/lists/partial/ports.ubuntu.com_ubuntu-ports_dists_xenial-updates_Release - open (13: Permission denied) [IP: 91.189.91.38 80]
Err:8 http://ports.ubuntu.com/ubuntu-ports xenial-security Release
Could not open file /var/lib/apt/lists/partial/ports.ubuntu.com_ubuntu-ports_dists_xenial-security_Release - open (13: Permission denied) [IP: 91.189.91.39 80]
Reading package lists...

[email protected]:~$ sudo apt clean
W: chmod 0700 of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: Not using locking for read only lock file /var/cache/apt/archives/lock
W: chmod 0700 of directory /var/lib/apt/lists/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: Not using locking for read only lock file /var/lib/apt/lists/lock

fixed
sudo mount / -o remount,rw

Gavao said:
fixed
sudo mount / -o remount,rw
Click to expand...
Click to collapse
hi... ubports recommends downloading updates as full packages instead of going apt update...(may break things )

htchennuo1 said:
That kenzo has rom sailfishos that also based on linux that have no bugs above.Maybe you can get some ideas fixing bugs from that?
Click to expand...
Click to collapse
seilfish os and ubuntu seem to work differently regarding the problem at hand .. postmarket os wiki was helpful though...

hoping soon
data
or Bluetooth or whatever it is
patience is virtue

Related

[HOW-TO] Dev basic´s: Source, Compiling, Github & co ~ Day 4

Welcome to fuss132 dev basic´s​
So you want to become a developer for android? You dont know where to start? Well, I will try to give you some point you can start with.
"There are many tutorials on compiling source code?", you may ask "So no need of this?". No, youre not right. Of course there are many how tos that explain you how to compile something... but to do the magic there is more needed than just "Execude this commands and ready". You need to know the things behind, you need to get the flair of android.
What I want:
First of all, I know that there are many people that see how devs are failing; or some that need help and those people cant help them. They have the time to learn something, but they dont know how. You can expect a point to start with, some welcome drink of android development. Expect the falir of android! Join the android open source project! I posted this in the I9100G section, because I use my kernel (called horsepower) as an example, but it can be used for every device! And please if I helped you thank me in whatever post I helped you I´m doing this in my spare free time to help you!
What I dont want:
I cant give you everything! You will need some time, it took me one and a half years to get to know a big part of how android works and stuff. You will not be a "full" developer after this! Furthermore, I dont teach you for 10 variants of my kernel coming up at the forum or of cm roms what ever! Android is an opensource project. This means creating something new - but together. If you did something you think its worth to publish make a git push request and your work will be included to my kernel f.e. Every dev that notice your work will let you post in his thread and your work will be thanked!
Also required for this howto:
A computer running ubuntu 12
Some basic ubuntu terminal knowledge
Time and more time
Also a good internet connection could be usefull
How it will work:
So you think you can manage this? Good luck, I will help you whereever I can. But please understand, that my work on kernels and roms will come first I will try to post every day a new tutorial. We will start with setting up your computer and will end up in some weeks with compiling your own aosp rom. Ready? So lets go to the second post here and start with Day 1: Introduction
PS: Well we only have one forum so, besides this fact that this is about learning developing, I posted it here...
Day one: Introduction and downloading source code
This is all for jellybean!
So no longer talking about developement, let´s do some of itselfe.
We first need the source code. For completeness we will download both - kernel source and main rom source. If you dont know what kernel is for please stop reading here... you will fail 99,9999%. (Maybe you just forgot which files this is for: Kernel is the boot.img in your update.zip´s and the rest located in /system is the compiled main rom.)
1. Creating your working directory and stuff
You should know the commands, just use the same folder names and structure for a better chance that I can help you if something goes wrong.
cd
mkdir cyanogenmod
cd cyanogenmod
Click to expand...
Click to collapse
2. Downloading the source and required software
At this part we use a very useful build script made by teamhacksung, thanks to them!
Staying at your /cyanogenmod folder do the following (What this git command mean ~ well dont think about it we will learn it afterwards):
git clone git://github.com/teamhacksung/buildscripts.git -b cm-10.1 buildscripts
ln -s buildscripts/samsung/build.sh
./build.sh prepare
Click to expand...
Click to collapse
This script will now do some very useful things for you Select the specifics of your system and wait for finishing till the point "Download sources?" Tipe a "y" and select "cm-10.1". (When it asks for your folder you want the source in only tipe "sources" and hit enter). This will download the main uncompiled canogenmod sources for you (including some kernel and device specific stuff). It will take looong Depeding on your net connection. Some hours usually
3. Downlading kernel sources and recovery stuff
Everything went well? So this means we need to go further. In /cyanogenmod/sources should now be some folders and files... And now we should download a kernel source for our device (choose one for your device, I will use I9100G ones).
Navigate to your source and execute
cd
cd cyanogenmod
cd sources
mkdir kernel/samsung/
cd kernel/samsung/
git clone https://github.com/fuss132/android_kernel_samsung_t1.git -b greenblob-4.2.2 t1
Click to expand...
Click to collapse
Hah, you now have latest greenblobkernel source on your computer.
But to finally build the kernel and rom we will also need some device specific files for our I9100G. For other devices you will find these files when you search on gitbub. Or google device xy ics device tree.
cd
cd cyanogenmod
cd sources
git clone git://github.com/CyanogenMod/android_device_samsung_i9100g.git -b cm-10.1 device/samsung/i9100g
Click to expand...
Click to collapse
As it finished you have all the sources you need
Thats enough for day one, I think. See you soon
Day 2: Github basics part 1
So we successfully downloaded all sources. Brilliant, now let´s go on. In future time you may work on kernels of even the main rom, and of course you should upload the changes you made to contribute to the community. You will need github for this. For some basic info go here I will only focus on how to use it.
The script from above post should already installed git, if not do the following:
sudo apt-get install git
Click to expand...
Click to collapse
And you should also register an account for free at github.com -> here
As you did this we will also need to set up your github account on your computer, so use the following commands and replace it with the email adress and username you chose before:
First we should be in our kernel example local repository so use cd /cyanogenmod/sources/kernel/samsung/t1 to switch to it
git config --global user.name "Your Name Here"
git config --global user.email "[email protected]"
Click to expand...
Click to collapse
If you now upload some changes you have to enter your password every time. To make the things easier we will use an ssh key and will add it to our github account. Its not important to know what all these commands are doing just do them
ssh-keygen -t rsa -C "[email protected]"
//Now you need to enter a passphrase.
sudo apt-get install xclip
xclip -sel clip < ~/.ssh/id_rsa.pub <- this is the path to your stored key
Click to expand...
Click to collapse
Now go to https://github.com/settings/ssh, login and click "add ssh key". Choose a name (doesnt matter which one) and paste your key from your clipboard into the field below. Thats it github is now set up
1. Some basics commmands
There are some basic commands you should know. Firstly, some explanations for you. The source you downloaded is stored on www.github.com.
With git clone [email protected]/pathtsource you can download new files and sources from existing repositorys.
When you change some files in your local repository (all files from one source path f.e. cd /cyanogenmod/sources/kernel/samsung/t1 and then execute and then) use git status to display the changes you made.
You made some changes? Then pack these changes into a commit by typing git add -A and also add a commit message that will appear later like git commit -m "Camera freeze fix" and finally upload it: git push. We will make some practical examples tomorrow, so dont worry about this now. Just keep that in mind.
Thanks for reading and see you tomorrow!
As usuall, if you like this thread and stuff please submit it as news tip!
Day 3: Github basics part 2 and preparing for compiling
Welcome to Day 3: Github basics part 2 and preparing for compiling! Lets beginn our "session" with a short test. Remember which command you have to use for cloing a repository (downloading the files to your computer)? Well we need this one here.
1. Again Github basics
Imagine the following situation; You want to help another person to fix a bug. You should create your own repository first to dont mix files up. In short we copy all files from a repository to our own new one. We have a point to start then and will use his code, but his code wont change when we change ours.
Go to www.github.com/ and login
I create a short repository for you all, nothing special but you can practise with it.
Open the following page (its the repositiory shown in your webbrowser: https://github.com/fuss132/lerninggit_practical_repository. Click on fork at the right:
{
"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"
}
If github is asking you to which user it should fork the files click the only availabe button ^^
You have now your own repository with the same files. We will download the files now. Open your terminal and navigate to the folder (it should be an empty one). So you have to do the following:
cd whereeveryyouwantit
git clone [email protected]:[B]yourusernamehere[/B]/lerninggit_practical_repository.git
Click to expand...
Click to collapse
Now we "fix the bug" and do some changes to your local files.
cd tutorialmembers
sudo gedit memberlist
// add your name to the list, save and exit //
cd ..
Click to expand...
Click to collapse
So we made the changes, now we will upload them, you should know the commands already. If you have any questions please post in this thread
git status
git add -A
git commit -m "add my name to the list"
git push
Click to expand...
Click to collapse
Brilliant, if you know visit https://github.com/yournamehere/lerninggit_practical_repository you will see that your changes have been uploaded. So you fixed my problem, you should now share the solution with me.
Open your repository in a webbrowser https://github.com/yournamehere/lerninggit_practical_repository and click on Pull Requests on the right side. Now select on the right side as head repo mine fuss132 one and as base repo in the left the default, your one. Describe what you did in the filed below and finally click on "Send pull request.
Thats it you now shared it with me and I will include your changes to my repo
2. Back to the roots: Prepare for compiling
Now cd to the folders you downloaded all the sources in. You should see folders like bionic, fendor, main... I will call this main source directory now
If you would compile the sources now you would stuck after some seconds Android needs a special java version for building. And this one cant be downloaded anymore. Well, bad situation... We will give up here we will never compile android :'(
Ok, **** you java we will rule you
There is an error only because the build system does not recognize the java version when it is an openSDK
$ java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.1) (6b24-1.11.1-4ubuntu2)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
To work around it, you can just comment out the following lines in build/core/main.mk:
cd build/core/
gedit main.mk
instead of
ifneq ($(shell java -version 2>&1 | grep -i openjdk),)
java_version :=
endif
there should be
# ifneq ($(shell java -version 2>&1 | grep -i openjdk),)
# java_version :=
# endif
Click to expand...
Click to collapse
Java is now no longer checking its version and everything is working. Stupid solution, but working
The second part is that the linker would complain that it cannot find -lGL .
The workaround for it would be:
just execute this line:
sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/libGL.so
Click to expand...
Click to collapse
The last thing what we need is again the buildscript file, just do the following (you dont have to remember this):
// be in the main directory of your sources //
gedit build.sh
copy all lines from https://github.com/teamhacksung/buildscripts/blob/ics/samsung/build.sh and paste them into your file
save and close
in terminal: chmod 777 build.sh
Click to expand...
Click to collapse
Thats it for today, thanks for reading! Please press thanks if you like it and maybe click on "newsworthy thread". Questions, as usuall in this thread please
Day 4: Compiling your first things and looking into the source code
It´s been a long time since we met the last time, I hope you didnt forgot everything. If you did - you know - just go to through the first posts and learn again. Sorry that it took so long for you to wait, but I´m writing this in my spare free time and I´m involved into many many projects at this time that are more important that this one. But I didnt forget you! So lets go in again and start coding!
1. Going through the source code
I know, I turned things around in the title of this thread, but compiling will take a very long time so lets go through the source code first.
Open a file explorer and navigate to your root forlders. You will see there many folders. As you all know, Cyanogenmod is a Custom Rom and adds much features to your devices, thats why they are using custom product configs. One for each phone and one for all phones.
Let´s go into the folder vendor/cm. You will see a file called "vendorsetup.sh" in which all available devices are written in.
Ok, you will wonder why theres only something like this in your folder if you downloaded the sourcecode for Cyanogenmod 10:
for combo in $(cat vendor/cm/jenkins-build-targets)
do
add_lunch_combo $combo
done
Click to expand...
Click to collapse
Because since cm10 they´re doing things a bit different. In the next few days we will download the aokp source code and start porting aokp to a new device, because aokp is using the old building system like in cm9 and previous version - and I want that you know all of them. So back to our cm10 thing: All product specific files are now directly in the source code of the device, the device tree. Its the one we downloaded and stored in /device/samsung/i9100g.
But to build a fully working Cyanogenmod Rom we need more that only te device tree, we need some proprietary files from your device. In short, they are files that are very device specific like camera.t1.so (a camera module only for our device) that is pre generated and could not be build by our system. (Thats also the reason why developers cant edit it. We are not able to edit it, too). To pull all those files from your device, please connect it and be sure that you are already running a cyanogenmod 10 rom, otherwise some files might be different and not be copyed - your rom will not be successfully build.
Open our terminal and execute:
Code:
sudo bash
cd cyanogenmod/sources/device/samsung/i9100g
chmod 777 proprietary-files.sh
./proprietary-files.sh
Using adb all the files are now being pulled from your device and stored in the right directory of your system. If you successfully did this (and I didnt forget something) we should be now able to compile our own cyanogenmod rom.
2. Compiling your rom
So let´s go! (We will update the sourcecode before again, maybe some cool things changed). We will not use the build script for this, we´re doing things "oldschool". If you want to make things as easy as possible do ./build.sh i9100g and everything will be done for you.
sudo bash
cd cyanogenmod/sources
repo sync
/* start building*/
. build/envsetup.sh
lunch
/* pick the device you are building for */
make bacon or make fullota or make -jx (where x is the number of your cpu cores)
Click to expand...
Click to collapse
And now we have to wait some hours depending on your computer. I´ll catch you guys in the next tutorial!
Please press thanks and submit this thread as newsworthy one! Thank you and have a good time
First page of the thread!
This post also...
3 left if my math education not failed
Oh no, it was just one... hmm thats why I want to became a computer scientist not a mathematician ^^
newsworthy thread
@fuss
Submitted as newsworthy thread . Guys pls do the same if its useful to u guys . First to comment n ur thread
+1 will wait time after time..
Good one Fuss Should be recommended to make this sticky once you complete the tutorial.
This happens when fuss is in playful mood...lol.. hoping to see more of it..... I have already built a rom...its a modified stock rom...but I am failing to compile and decompile systemui Apk...using apktool..I tried installing framework-res apk...but eventually found out that apktool won't work for ics...so any help from your side is appreciated...
Sent from my GT-I9100G using xda premium
Wow very useful ty fuss
Sent from my GT-I9100G using xda app-developers app
seriously long thread..
pergh....
Will wait for this guide! Very usefull!!!
Kingspp said:
This happens when fuss is in playful mood...lol.. hoping to see more of it..... I have already built a rom...its a modified stock rom...but I am failing to compile and decompile systemui Apk...using apktool..I tried installing framework-res apk...but eventually found out that apktool won't work for ics...so any help from your side is appreciated...
Sent from my GT-I9100G using xda premium
Click to expand...
Click to collapse
Use apk-manager or the latest smali and baksmali binaries.
Added Day 2: Github basics part 1 to todays agenda
superatmos said:
Use apk-manager or the latest smali and baksmali binaries.
Click to expand...
Click to collapse
Thanks for the reply.... I will try and use smali and baksmali...since apk manager did not work...
Sent from my GT-I9100G using xda premium
Awesome guide you are doing here! Cannot wait to see how it continues today. Big thumbs up for this mate!

[DEV] How to build CM10.1 (Android 4.2.1) for the LG-P990 O2x

Build your 'own' CM10.1 ROM (Android 4.2.1) today!
Revision V1.3 2013.01.09 Updates: No more patching needed. local_manifest.xml updated to new branch revision. Text updates.
Revision V1.2 2012.12.13 Updates: Repo sync branch finally changed from mr1-staging to cm-10.1. Thanks HerrKuk.
Revision V1.1 2012.12.11 Updates: New Patch: WiFi shows networks, BT works, audio.h reworked, notification lights are back, USB mass-storage support included. Compatible to V30A Kernel.
Revision V1.0 2012.12.01 Initial release
Thank you note: Thanks to Ricardo Cerqueira for his work on this device.Thanks to marsgod for BT and WiFi patches/tips.
General note: Please keep in mind that CM10.1 is still experimental. This guide is for those who cannot wait...
{
"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"
}
Preparation
What you need:
You need a fully working build environment. If you don't have one running already, you can follow my guide in the other thread to get a fully working environment under Ubuntu 12.10 64bit. Follow the easy steps in the guide. Make a test build with CM10 to see if it is working. Then you will be ready for the next step.
Your build environment is now set? Good, let's start!
Use the terminal to make the steps. A terminal window can be opened by pressing Ctrl+Alt+T. Every single command for the terminal is marked with a $ sign. Just paste every command (without the $ sign) to your terminal window and there shouldn't be any problem.
Get the sources
Start with creating a new working directory for CM10.1:
Code:
$ mkdir ~/cm10.1
$ cd ~/cm10.1
Initialize Repo for Android CM10.1 (Android 4.2.1):
Code:
$ repo init -u git://github.com/CyanogenMod/android.git -b cm-10.1
and enter your credentials if needed.
Download the sources:
Code:
$ repo sync
Wait until it's finished (takes a lot of time!).
If the process hangs use Ctrl+C to break out of it and resume the download with another
Code:
$ repo sync
Initialize the environment
Code:
$ . build/envsetup.sh
Obtain the proprietary files:
Create a file with the name local_manifest.xml in the .repo directory to add additional sources. To see the hidden .repo directory, you have to press Ctrl-H in your file manager.
Create the xml-file with
Code:
$ gedit ~/cm10.1/.repo/local_manifest.xml
20130109: Update! New branch revisions!
Paste the following lines to the editor
Code:
<manifest>
<project name="TheMuppets/proprietary_vendor_lge.git" path="vendor/lge" remote="github" revision="cm-10.1"/>
<project name="CyanogenMod/android_device_lge_p990" path="device/lge/p990" remote="github" revision="cm-10.1"/>
<project name="CyanogenMod/android_device_lge_star-common" path="device/lge/star-common" remote="github" revision="cm-10.1"/>
<project name="CyanogenMod/lge-kernel-star" path="kernel/lge/star" remote="github" revision="cm-10.1"/>
</manifest>
Save the file.
Run another
Code:
$ repo sync
Download the necessary prebuilts from cyanogenmod by running
Code:
$ ~/cm10.1/vendor/cm/get-prebuilts
Ok. That's done!
Patching
20130109: Thanks to Ricardo Cerqueira's Update to the CyanogenMod repos there is no more patching needed!
Only for those who have patched the sources before and want to build with the new sources. If you are new to this skip the 'Patching' part and go to 'Build the ROM' directly.
If you have patched/changed the sources and want to get up-to-date, here is what you can do:
change the local.manifest.xml file that it looks like the one you see above
delete all the directories inside your ~/cm10.1/ directory but keep the hidden .repo directory
repo sync now and the missing files will be downloaded and the whole structure will be recreated without redownloading the repos you already have
get the prebuilts with ~/cm10.1/vendor/cm/get-prebuilts
and this is it, just brunch p990 again
Build the ROM
Code:
$ repo sync
$ brunch p990
and flash it via CWM. Make a clean start (if necessary) with format /system, wipe data/factory reset, etc..
Have fun!
FAQ
Revision V1.5 20130110 New GAPPS, now without the nasty force closing AOSP keyboard 'bug'
Revision V1.4 20130109 Sections updated: bootloader section, Baseband section, partition size, mass storage mode. Sections removed: building smaller ROMs, mobile data connection, Flight mode, WIFI & BT
Revision V1.3 20121214 Updates: New GAPPS from 20121212
Revision V1.2 20121211 Updates: Bluetooth working, WiFi Networks showing and more. Plus typo fixes.
Revision V1.1 20121206 Updates: Partition size, swapping internal/external memory, USB mass-storage mode.
Revision V1.0 20121201 Initial release
Thanks to key.ita, XXMrHyde, tonyp, Custom40 and marsgod for their contributions to this FAQ.
Where are the Google Applications - GAPPS?
Get the fixed GAPPS here. Fix: The 'bugged' gesture typing is disabled. That's due to Tegra2 which isn't supporting NEON instructions. With the fix you can use the keyboard as usual without force closes.
Or you can get the 'original' GAPPS from 20121212 for 4.2.1 here. Download and flash them via CWM.
The keyboard is force closing all the time. Is there a solution?
Yes. Just flash the fixed GAPPS over your installation via CWM. The gesture typing will be disabled but you can use the AOSP keyboard then as you used it in the previous versions. It's up to you but now you can disable the useless gesture trail, dynamic floating preview etc. under 'Settings>>>Language & input>>>Android keyboard AOSP>>>Enable gesture typing'. Then remove the tick from 'Enable gesture typing' and you are ready to use the AOSP keyboard without any problems.
What bootloader should be used?
You have to use the old bootloader.
Any Baseband recommendations?
I am using the 30B Baseband. You can find it in tonyp's Baseband thread under 'ICS Basebands'. But it is working with other BBs like V20L as well.
[/I]
What about the partition size? Will this ROM (including the GAPPS) fit in the old partition layout?
Yes, it does. Some files get copied to /data so the ROM plus GAPPS fit the old partition size completely.
The 'Developer options' from 'settings' are gone. Where are they?
Touch the 'Build number' seven times in 'about phone'. Then they will appear.
How do I use the external SD-Card as the internal memory (swap SD-Cards)?
Edit the 'vold.fstab' file on your phone under 'system/etc/' and change the lines to:
Code:
dev_mount sdcard /storage/sdcard0 auto /devices/platform/sdhci-tegra.2/mmc_host/mmc1
dev_mount emmc /storage/sdcard1 9 /devices/platform/sdhci-tegra.3/mmc_host/mmc0
If you want to use it permanently on your building system and in every ROM you make then edit '~/CM10.1/device/lge/p990/vold.fstab' and use the both lines above accordingly.
I want to transfer files from/to the phone via USB. How do I turn on the mass-storage mode?
Use the terminal on the phone or use adb shell:
Code:
su
setprop persist.sys.usb.config mass_storage
And reboot. When you use your Computer's USB connection the next time, Android will ask you whether you like to switch on the mass-storage mode.
I want to use the mass-storage mode in my builds. What can I do?
I included it in the ROM building process by editing "~/CM10.1/device/lge/star-common/star.mk'. At the very end of the file you find the line 'persist.sys.usb.config=mtp'. Change it to 'persist.sys.usb.config=mass_storage'. Next time you build a new ROM the mass-storage mode is included. Tip: if you are updating your ROM then sometimes you have to make the switch manually (one time only!) as described above to initiate the change.
Are there any other problems?
I think it is awesome!!! Very fast, nice camera, same energy usage as CM10. I am using it as my daily driver. (well, since Nov 28 now... :fingers-crossed
Please build CM10.1 yourself and test it thoroughly. Maybe we can remove some of the remaining problems together.
Reserved for future use
nice guide :silly:
mivv a lazy one....
Are the sources downloading fast? I didn't try Paranoid... You said few coffees... I think I drank a bucket of coffee and it still wasn't there = went to sleep
I'll try, Although I am busy with my pi... that sdcard corruption bug with OC driwes me crazy, I guess I'll ssh my kitchen PC too do something in parallel...
Does this build has the call bug or it's like Benee's hackfest free of it?
and Raum1807 does HW acceleration work?
Will do this guide next week. Just finished REMICS TOUCHWIZ UX now released for everyone. Then Motorola UI... So next week I'll have time
Sent from my Xoom using XDA Premium HD app
Might give this a go myself, but as you said, it's still in pretty early stages of development.
Thanks for the useful guide though
Shouldn't the file's name be local_manifest.xml?
I.e.
Code:
$ gedit ~/cm10.1/.repo/local.manifest
needs to be changed into
Code:
$ gedit ~/cm10.1/.repo/local_manifest.xml
in order for it to work. Right?
svante38 said:
Shouldn't the file's name be local_manifest.xml?
I.e.
Code:
$ gedit ~/cm10.1/.repo/local.manifest
needs to be changed into
Code:
$ gedit ~/cm10.1/.repo/local_manifest.xml
in order for it to work. Right?
Click to expand...
Click to collapse
Of course. Corrected it. Thanks!
puma99dk| said:
Does this build has the call bug or it's like Benee's hackfest free of it?
and Raum1807 does HW acceleration work?
Click to expand...
Click to collapse
HWA is working. It is basically running like CM10.
The call bug hasn't occurred to me (yet). But I think it is the wrong name anyway: in my opinion it is an microphone/audio bug.
In this ROM the RIL and audio are a bit different. So maybe this bug isn't there. But this is a good reason why I would like to see more people building and testing CM10.1.
Raum1807 said:
Of course. Corrected it. Thanks!
Click to expand...
Click to collapse
Also, looking at your patch, it seems to point to directories on your local machine:
Code:
/home/ac64/cm10.1/...
Shouldn't this be changed to:
Code:
~/cm10.1/...
In order for it to work on all computers?
Can someone upload a build of this?
Sent from my LG-P990 using xda app-developers app
svante38 said:
Also, looking at your patch, it seems to point to directories on your local machine:
Code:
/home/ac64/cm10.1/...
Shouldn't this be changed to:
Code:
~/cm10.1/...
In order for it to work on all computers?
Click to expand...
Click to collapse
By applying the patch with the "-p 4" argument, the first 4 "parts" of the path will be ignored,
by typing:
Code:
cd ~/cm10.1
patch -p4 < CM10.1_building.patch
the path will be "set" correct.
It`s a better to do it this way, so the patch is working also if your path to your repo is different,
e.g. your repo path is CM10.1/android/system/
you have to type:
Code:
cd ~/cm10.1/android/system/
patch -p4 < CM10.1_building.patch
But you can change the path in the CM10.1_building.patch to ~/CM10.1...
but in this case, you have to change the -p4 argument to -p0, or just apply the patch without -p argument
XXMrHyde said:
By applying the patch with the "-p 4" argument, the first 4 "parts" of the path will be ignored,
by typing:
Code:
cd ~/cm10.1
patch -p4 < CM10.1_building.patch
the path will be "set" correct.
It`s a better to do it this way, so the patch is working also if your path to your repo is different,
e.g. your repo path is CM10.1/android/system/
you have to type:
Code:
cd ~/cm10.1/android/system/
patch -p4 < CM10.1_building.patch
But you can change the path in the CM10.1_building.patch to ~/CM10.1...
but in this case, you have to change the -p4 argument to -p0, or just apply the patch without -p argument
Click to expand...
Click to collapse
Oh I see. Thanks for clearing that up.
Thanks OP for the building instructions too, teaching people to fish instead of just providing them one!
Raum1807 said:
HWA is working. It is basically running like CM10.
The call bug hasn't occurred to me (yet). But I think it is the wrong name anyway: in my opinion it is an microphone/audio bug.
In this ROM the RIL and audio are a bit different. So maybe this bug isn't there. But this is a good reason why I would like to see more people building and testing CM10.1.
Click to expand...
Click to collapse
I highly doubt a magic fix
Sent from my Optimus 2X using xda app-developers app
Custom40 said:
Might give this a go myself, but as you said, it's still in pretty early stages of development.
Thanks for the useful guide though
Click to expand...
Click to collapse
if you get it done, please share
last i have test a CM10.1 from EaglesBlood and there work no camera and BB28g has no Signal... would in this CM10.1 all fixed??
See the Screenshots in post #1, signal is working,
just building CM10.1, will report if camera is working
MetaIIica said:
last i have test a CM10.1 from EaglesBlood and there work no camera and BB28g has no Signal... would in this CM10.1 all fixed??
Click to expand...
Click to collapse
EaglesBlood is not CM, its based on AOSP.

LazyFlasher - make and install your own custom kernels!

INTRODUCTION
Hello Pixel C users and developers! I saw your device forum is a little lonely, so I offer you this in the hopes it may become slightly more eventful and 2017 becomes the year of the Pixel C development!
I expect that before you start, you have a Linux installation in either a virtual machine or on a physical PC.
Debian Jessie, Kali Linux, Mint, or Ubuntu are excellent choices and what I'm familiar with, so if you get stuck it'll be easier for me to help you if you use these.
NEED LINUX? I'VE GOT YOU COVERED
If you don't have a Linux installation, consider installing the latest version of Oracle VM VirtualBox.
You can download a minimal Debian VM from my site: https://build.nethunter.com/possibly-the-coolest-things/Debian.ova (SHA1SUM)
It should be fairly simple to "Import Appliance..." from VirtualBox and set up the Shared Folders properly, everything else is set up for you!
Username: root
Password: xda
Once logged in, create your own user account from LXTerminal:
Code:
adduser [b]yourname[/b]
# answer the questions, you can leave it all blank except the password if you want>
echo "[b]yourname[/b] ALL=(root) NOPASSWD: /bin/su" > /etc/sudoers.d/me
The second command will allow you to type "su" to become root whenever you need.
You should then log out and log in to your new account instead.
PREREQUISITES
First off, you'll want to download some tools necessary for building and downloading kernel sources:
bc - a tool needed by the kernel build system
git-core - you'll want git for downloading and maintaining your sources
build-essential - native gcc & tools for building (needed for build commands)
libncurses5-dev - needed to build menuconfig
diffutils - used to compare config changes
colordiff - used by diff to provide colorful human readable diff output
Code:
apt-get install bc git-core build-essential libncurses5-dev diffutils colordiff
PREPARING YOUR ENVIRONMENT
Once you've got that out of the way, you should create an organized environment for working. I like to use ~/build.
Code:
mkdir -p ~/build/toolchain ~/build/kernel
DOWNLOADING & INSTALLING A TOOLCHAIN
You'll want to download a toolchain for kernel building. I recommend using Linaro's optimized ARM64 (aarch64) toolchains.
GCC 4.9: https://releases.linaro.org/components/toolchain/binaries/4.9-2016.02/aarch64-linux-gnu/
GCC 5.X: https://releases.linaro.org/components/toolchain/binaries/latest-5/aarch64-linux-gnu/
The actual file that you want ends in -x86_64_aarch64-linux-gnu.tar.xz (assuming you have a 64-bit Linux install, seriously, 32-bit needs to go! )
We'll use the GCC 5.3.1 2016.5 toolchain in this example.
Let's download and extract it now:
Code:
cd ~/build/toolchain
wget "https://releases.linaro.org/components/toolchain/binaries/latest-5/aarch64-linux-gnu/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu.tar.xz"
tar xf ./*linux-gnu.tar.xz
rm ./*linux-gnu.tar.xz
That's it for installing the toolchain, easy right?
DOWNLOADING THE KERNEL
First, you'll want to create a GitHub account if you don't have one already.
This will allow you to upload your changes and share your kernel with other interested users and developers.
Once you've got your account, and you're logged in, browse to:
https://github.com/jcadduono/android_kernel_google_chromeos
You want to fork the sources to your own account, to do this simply click the [Fork | ] button near the top right of the page:
{
"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"
}
Now you've got your own copy of the Google ChromeOS (dragon / ryu) 3.18 kernel sources on your GitHub!
The next step is to use git to download it to your PC.
Replace "your_username" with your actual GitHub username. Using [email protected] you can avoid being asked for your username each time you push new changes.
Code:
cd ~/build/kernel
git clone https://yo[email protected]/your_username/android_kernel_google_chromeos
cd android_kernel_google_chromeos
The default branch is android-7.1. This is what most users will want. I've added build and menuconfig scripts to assist in building for you.
There may be some additional branches available to choose from.
You can use git log <branch> to view commits, and git cherry-pick <commit id> to copy commits from those branches into yours if you like.
CONFIGURING GIT
Before you start working on your kernel, you will need to set up your git profile.
The user values show up in commit messages to tell people who authored them.
Code:
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
git config --global push.default simple
YOUR FIRST COMMIT
We'll want to check out a new branch, and give it your own cool name. I suggest adding a -7.1 suffix to it because you'll probably want to start a new branch for each time a new version of Android releases.
We're going to use "coolname" as our example, so be sure to replace that with what you really want it to be called in the next steps.
Code:
git checkout -B coolname-7.1
Next we'll need to modify the build scripts to fit our setup.
Open build.sh and menuconfig.sh.
You'll want to set the TOOLCHAIN= path in both scripts. If you're following this guide, then it's already correct!
You will also want to set your default target config name.
See the line:
Code:
[ "$TARGET" ] || TARGET=google
You'll want it to look like this:
Code:
[ "$TARGET" ] || TARGET=coolname
Now you want to copy the default Google kernel configuration so you have your own to work with:
Code:
cp arch/arm64/configs/google_dragon_defconfig arch/arm64/configs/coolname_dragon_defconfig
Now you'll have prepared your kernel source for starting work on your own custom kernel!
Let's turn that into a commit, but first look at the changes you've made using:
Code:
git diff
Does that look good? If not, fix what's broken before proceeding.
Next you'll want to add files that will be part of your commit.
For simplicity's sake, let's just add all of the changed files into the commit.
Code:
git add .
Now to make your commit:
Code:
git commit -m "My first commit, setting up my coolname kernel!"
You've done it!
CONFIGURING YOUR KERNEL
We'll use the menuconfig.sh script to launch the kernel menuconfig.
Code:
./menuconfig.sh
Change whatever options you're interested in, but don't change a lot all at once, otherwise when or if you run into issues, you won't know which option caused it.
Once you're done playing in the menuconfig, exit and save.
You'll be shown a colorful difference between your old configuration and your new one.
It will ask you if you want to save it, and you just have to type "y" and press enter for it to be saved.
At this point it's a good idea to make another commit to save your configuration changes.
If you need to edit the commit, you can easily use git commit --amend to fix it up.
BUILDING YOUR NEW KERNEL
Let's take your new config for a test drive.
To build your kernel, simply run:
Code:
./build.sh dragon
Once your kernel is finished building, the resulting files will be located at:
Code:
build/arch/arm64/boot/Image.fit
build/lib/modules/ (if modules are enabled)
INSTALLING YOUR NEW KERNEL
The LazyFlasher project comes to the rescue here. It's the swiss army knife of kernel flashing in TWRP.
To download it (feel free to fork it so you can have a copy on your GitHub to modify instead!):
Code:
cd ~/build
git clone -b kernel-flasher https://github.com/jcadduono/lazyflasher.git
cd lazyflasher
To use LazyFlasher, you'll probably want to take a look at the Makefile, config.sh, and META-INF/com/google/android/update-binary (a shell script).
There's a few things you can change there to personalize it to your needs.
(make another git commit to save your setup!)
Once the installer is set up to your liking, all you have to do to build it is copy the Image.fit from your build output into the lazyflasher folder.
If you have built with kernel modules, copy build/lib/modules -> lazyflasher/modules.
Now simply run:
Code:
make
A TWRP flashable zip and sha1sum is created!
Transfer it to TWRP and flash away, you've just lost your custom kernel development virginity.
Go have a few beers to celebrate, or to drown your sorrows in the case of a boot loop.
UPDATING THE KERNEL SOURCES
Of course my repository will become out of date after a while. In this situation, you want to add a remote that is more updated.
We'll use Google's official Pixel C kernel repository here.
Inside your kernel source directory, run the command:
Code:
git remote add google -t chromeos-3.18 https://chromium.googlesource.com/chromiumos/third_party/kernel
Every time you want to fetch updates from Google's branch, run the command:
Code:
git fetch google --tags
After fetching updates, you have to apply them. You can choose between a rebase strategy or a merge strategy.
In most cases you'll want to use the merge strategy.
The merge strategy will merge Google's updates into your branch.
The rebase strategy will move your work on top of Google's latest instead.
Code:
# the merge strategy (pick one, recommended)
git merge google/chromeos-3.18
# the rebase strategy (will require a force push and rewrite history, not recommended)
git rebase google/chromeos-3.18
JUST WANT TO DISABLE VERITY/ENCRYPTION?
You can build lazyflasher by itself, empty, without a kernel Image.fit or modules and flash it!
It's already set up to automatically disable verity and make encryption optional.
Alternatively, there's a branch already set up called no-verity-opt-encrypt. You can find prebuilt official zips at: https://build.nethunter.com/android-tools/no-verity-opt-encrypt/
It should work on any and all kernels!
PROBLEMS?
Post a reply here and I'll try to find a solution and add it to this post.
RESOURCES
Need a text editor for coding? I use gedit. It's pretty, light, and you can get some decent plugins for it.
It's a minimal editor, so don't expect anything really fancy. Configure it and enable plugins before you decide to trash it.
Code:
apt-get install gedit gedit-plugins
Here's an awesome git starter guide: http://rogerdudler.github.io/git-guide/
Lazy flasher worked great for me, on Linux.
OMFG this is a wonderfu TUT maybe it requires more knowledge than I have but I take a look this weekend (I use and love Ubuntu a lot).
Also I know you from OP 3T forums and your development is amazing, is nice to see good developers and development here.
Thanks!!!
I've followed your instructions, but I'm not finding a dtbgen.sh in the kernel/android_kernel_google_chromeos/ folder. Am I missing something? I have the build.sh and the menuconfig.sh...
michaave said:
I've followed your instructions, but I'm not finding a dtbgen.sh in the kernel/android_kernel_google_chromeos/ folder. Am I missing something? I have the build.sh and the menuconfig.sh...
Click to expand...
Click to collapse
Fixed the guide, I combined it into build.sh for simplicity at some point. It has been some time since the repository was updated, but you should be able to simply add google as a remote and fetch & rebase to be up-to-date. (I think I mentioned this already)
this looks pretty cool! :good:
Q: are the pre-built no-verity zips Pixel-C specific, or can they be used on any device?
... doesnt work for me - the compiled kernel always ends up in a boot loop
hagbardceline23 said:
... doesnt work for me - the compiled kernel always ends up in a boot loop
Click to expand...
Click to collapse
Pls try to use the sources from here ..
https://android.googlesource.com/kernel/tegra/
If you use chromeos 3.18 you need to know what to exclude
https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-3.18
Its the full 3.18 with changes for all relevant devices.
Have a try with tegra sources and start with dragon_defconfig.
It will boot
Cheers
thanks !!! works like a charm with the tegra sources
I expect that before you start, you have a Linux installation in either a virtual machine or on a physical PC.
Debian Jessie, Kali Linux, Mint, or Ubuntu are excellent choices and what I'm familiar with, so if you get stuck it'll be easier for me to help you if you use these.
Click to expand...
Click to collapse
For what it's worth, I've successfully rebuild the kernel on the Ubuntu Userspace on Windows: https://insights.ubuntu.com/2016/03...-the-ubuntu-userspace-for-windows-developers/
And then flashed it with LazyFlasher.
Thanks for your work!
I have an idea to customize the kernel, but at the moment I can't open the kernel, these are farther away for me, but I want to make it my first device developed.
Panokiaran said:
I have an idea to customize the kernel, but at the moment I can't open the kernel, these are farther away for me, but I want to make it my first device developed.
Click to expand...
Click to collapse
thank you

[ROM][A510F][OMS] ResurrectionRemix 7.1.2 Unofficial

{
"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"
}
ResurrectionRemix 7.1.2
For Exynos7580 SoC | A510F/M/Y/FD​
Disclaimer
Code:
Warning, this ROM is unofficial and not developed by Samsung.
Note also this is actually in development and not fully stable for a daily usage (look bug list)
And finally, i'm not responsive of eventual problems on your phones by installing this ROM.
Follow installation instruction to avoid bugs.
Join us on Telegram : https://t.me/netintent
Bugs
- Audio speakers
- NFC
- Video recording
- Other small bugs
Click to expand...
Click to collapse
GitHub Sources
- Exynos7580 organization
Download Link
Download it on ZeroSide : [url]https://get.zeroside.co/[/URL]
Last build : https://get.zeroside.co/a5xeltexx/ResurrectionRemix/RR-N-v5.8.4-20170901-a5xeltexx-Unofficial.zip (build 5)
Changelog
Build 1 (14/08/2017)
- Initial build, not booting
Build 2 (15/08/2017)
- Test to make boot rom, not booting too.
Build 3 (22/08/2017)
- Fixed ROM boot issue
Build 4 (26/08/2017)
- Fixed Wi-Fi for F/M/Y users
Build 5 (01/09/2017)
- Fixed Wi-Fi for FD users
- Fixed bluetooth
- Testing add Fingerprint support (not working actually)
Click to expand...
Click to collapse
Installation
- Download last build (download Magisk, SuperSU or/and gapps if you want)
- Make a backup
- Make a clean wipe (dalvik/art + cache + data + system)
- Flash .zip
- Reboot
Warning: you need to have last TWRP (3.1.1-0), else you'll have a blackscreen /!\
Click to expand...
Click to collapse
Credits
GitHub Organization
- @alexax66
- @aapav01
- @Stricted
- @KMXSLR (me)
Helping
- @McFy49
- @EmpireIsHere
Contributors
- @tys0n
- @sakat49
- @lolpop16
- Yoan B.
About KMX
- Victor Lourme
A big thanks to all Telegram group and testers
Click to expand...
Click to collapse
:good: Consider a small donation for the number of hours i passed to work on this
Hope you'll enjoy this rom !
KMXSLR said:
ResurrectionRemix 7.1.2
Disclaimer
Description
I just started porting ResurrectionRemix 7.1.2 for the A5 2016 (A510F, should work for M and Y variants too).
Please note this is a work in progress, it should have same bugs as A310F.
Please note also that i don't have the Galaxy A5, so i'll need your help for :
- Logcat (normal logs and dmesg)
- Screenshot
- Bug reporting
Bugs and Working Things
GitHub Sources
- Exynos7580 organization
Download Link
Working in progress, hopefully in few hours or few days
Changelog
Credits
- @alexax66 and @aapav01 for their awesome work on the Galaxy A3 and Exynos7580 !
- ResurrectionRemix team for their rom
- @KMXSLR (me) for porting the ROM !
Contributors / Donators
- @lolpop16 (VPS)
:good: Please leave a thanks! if you like this rom :good:
Hope you'll enjoy this rom !
Click to expand...
Click to collapse
You are the best please a5 users thanks him a lot good luck
Good job
Hey, I can help you for testing ?
Flavien125 said:
Hey, I can help you for testing ?
Click to expand...
Click to collapse
Sure, i need testers that knows how to make logs and dmesg, so yes
Build should be ready in one or two hours but it's the first build and i don't have the A5 so it may have a lot of bugs.
Like bootloop, or not booting, etc...
Just a simple logcat record of 10 seconds can be suffisant
It's a first try
KMXSLR said:
Sure, i need testers that knows how to make logs and dmesg, so yes
Build should be ready in one or two hours but it's the first build and i don't have the A5 so it may have a lot of bugs.
Like bootloop, or not booting, etc...
Just a simple logcat record of 10 seconds can be suffisant
It's a first try
Click to expand...
Click to collapse
Hope it support dual sim
BUILD 1 OUT !!!
I need testers, please note this is the first build, it can don't boot, bootloop, etc...
Make a TWRP backup before flashing it !
ENJOY IT :good:
Apparently it don't boot, i need a dmesg to continue
SO COOL ! great job man can you port newer RR build ?
KMXSLR said:
Apparently it don't boot, i need a dmesg to continue
Click to expand...
Click to collapse
Here you go...
mcurotto said:
Here you go...
Click to expand...
Click to collapse
Thank you !
Hi, i'll need someone that can type there's command (on a local terminal, TWRP terminal, anything), also no need of RR installed, you can do this on TW roms :
1. ls -al /dev/block/platform/13540000.dwmmc0/by-name/ > partitions.txt
2. cat /proc/c > proc.txt
3. df -k > block.txt
Then send my there's three files (partitions.txt, proc.txt, block.txt). It seems that the boot error is maybe due to bad partition type
Thanks !
Help
mcurotto said:
Here you go...
Click to expand...
Click to collapse
Mine doesn't boot aswell, where to put this dmesg.log file?!
diamanthaxhimusa said:
Mine doesn't boot aswell, where to put this dmesg.log file?!
Click to expand...
Click to collapse
--' dmesg is a LOG.
NOT A FILE TO MAKE RR WORK.
Please use google before posting stupid things.
KMXSLR said:
Hi, i'll need someone that can type there's command (on a local terminal, TWRP terminal, anything), also no need of RR installed, you can do this on TW roms :
1. ls -al /dev/block/platform/13540000.dwmmc0/by-name/ > partitions.txt
2. cat /proc/c > proc.txt
3. df -k > block.txt
Then send my there's three files (partitions.txt, proc.txt, block.txt). It seems that the boot error is maybe due to bad partition type
Thanks !
Click to expand...
Click to collapse
Hello here they are.
The file /proc/c does not exist on my phone. It is an A510-M model by the way.
mcurotto said:
Hello here they are.
The file /proc/c does not exist on my phone. It is an A510-M model by the way.
Click to expand...
Click to collapse
Thanks a lot!
Partition table was not the good i think, let's hope it will fix something in next build
Also a last command that can maybe be useful for futute :
1. cd /sys
2. find | sed 's|[^/]*/|- |g' > /sdcard/tree.txt
That's a long command, this cmd will make a tree view of all /sys/ folder (/sys/ folder contains file for components)
(tree.txt will be at /sdcard/tree.txt)
Also if possible but i have chances to not work, a logcat (not a dmesg) when the rom is stuck at bootlogo
Hi.
Unfortunately I needed to flash stock again. Does the /sys tree is still useful? If yes I can easily get it for you
Here you go (btw I have A510F variant, with Revolution Rom)
Good luck dude
KMXSLR said:
Thanks a lot!
Partition table was not the good i think, let's hope it will fix something in next build
Also a last command that can maybe be useful for futute :
1. cd /sys
2. find | sed 's|[^/]*/|- |g' > /sdcard/tree.txt
That's a long command, this cmd will make a tree view of all /sys/ folder (/sys/ folder contains file for components)
(tree.txt will be at /sdcard/tree.txt)
Also if possible but i have chances to not work, a logcat (not a dmesg) when the rom is stuck at bootlogo
Click to expand...
Click to collapse
I can give u a logcat , but in like 2 hrs (im not home)
Mihai.INdreias said:
I can give u a logcat , but in like 2 hrs (im not home)
Click to expand...
Click to collapse
Thank in advance for the logcat, apparently the kernel is working well, so the problem is in the system!
A logcat should be useful

[EOL][KERNEL] [G93xx][2019-05-25] WirusMOD [Nethunter for Oreo]

End of Life WirusMOD Nethunter Kernel for Oreo ROMs
Samsung Galaxy S7 / Edge ​
Code:
I am not responsible for bricked devices.
If you going to flash it, you accepted it.
Of course your warranty is void.
This thread is for hero2lte. If you have S7 Flat go here
FEATURES:
BadUSB
HID gadget keyboard/mouse (with possibility to temporarily disable)
DriveDroid
USB WiFi, mac80211 (Monitor mode, packet capture, packet injection) [Compatibility List]
Ethernet
F2FS
Bluetooth HCI USB support
RTL-SDR DVB support
Most features of TGPKernel
Supported ROMs:
S7 Stock O ROMs - G930F / G930FD / G930W8 / G935F / G935FD / G935W8
S7 Hybrid O ROMs (G930F/G935F) - The Galaxy Project (TGP), Ambasadii S7, SilverRom, etc
S9 Port ROMs
N8 Oreo Port ROMs
Download:
Latest version Herolte here.
Installation:
1. Flash latest TWRP twrp-3.3.0-1+ ( to see data partition with enabled disk quota)
1. TWRP Backup your ROM
3. Flash Nethunter WirusMOD
4. Magisk and busybox is needed you can choose in aroma or install it later.
5. Install Magisk Nethunter module from Magisk Manager -> Downloads (Or another version of Nethunter)
If you get crashes in Magisk Nethunter app than install from here.
6. Install kalifs-armhf-*.tar.xz by Nethunter manager
7. Extract Nethunter_Binaries.7z and binaries to folders:
Firmwares: system/etc/firmware and give permissions to every file rw-r--r--
hid-keyboard binary: system/xbin/ and give permissions to it rwxr-xr-x
Now you have Nethunter on your herolte/hero2lte.
EXTRA:
1.In Utilities.7z are wifi testing tools binaries like aircrack-ng compiled from source of nexmon (Not needed for Nethunter only for test tools direct from android without Nethunter)
If you want use binaries you need to copy it to /system/bin or /system/xbin and give permissions to it rwxr-xr-x
2. DriveDroid without bugs made by disabling HID Patch:
To disable HID Patch: use this command in terminal: "echo Y > /sys/module/g_android/parameters/hid_disable"
Changing mode isn't instant after changing module status. Use DriveDroid (mount iso -> dismount) to active hid_disable.
To enable HID Patch: "echo N > /sys/module/g_android/parameters/hid_disable" and use DriveDroid like with disabling HID Patch.
HIDPatchSwitch this is simple script which can switch between HID enabled and disabled and show changed status.
Old Installation steps:
1. TWRP Backup your ROM
2. Flash Nethunter.WirusMOD.G93xx.vx.x.XXXXXXXX.zip
2.1.Look at EXTRA.
3. Busybox is needed you can choose in aroma or install another version.
6. Install Magisk Nethunter module from Magisk Manager -> Downloads (Or another version of Nethunter)
If you get crashes in Magisk Nethunter app than install this version.
7. Install kalifs-armhf-*.tar.xz by Nethunter manager
8. Extract Nethunter_Binaries.7z and binaries to folders:
Firmwares: system/etc/firmware and give permissions to every file rw-r--r--
hid-keyboard binary: system/xbin/ and give permissions to it rwxr-xr-x
9. Download Modules for your version of smartphone and copy it anywhere in your phone.
By using modules you can add features to kernel for which i hadn't memory in kernel and aren't most important like rarely used wifi card modules or file systems modules. Load only those which you need.
You can use modules by those commands insmod, rmmod, lsmod or use Module Loader this app is outdated but works fine.
Now you have Nethunter on your herolte/hero2lte.
EXTRA:
If you want to have unencrypted data partition:
1. Format data partition(you lose your data).
2 Flash Kernel with option NO ROOT
2. After flashing kernel flash "remove encryption.zip".
3. Reboot to system (First start configuration wizard).
4. Reboot to twrp and flash Magisk.
Screens:
{
"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"
}
Credits:
djb77 for his TGPkernel source
Nethunter creators for the best portable penetration testing tool.
XDA:DevDB Information
[KERNEL][G93xx][2019-05-25] WirusMOD [Nethunter for Oreo], Kernel for the Samsung Galaxy S7 Edge
Contributors
Svirusx
Source Code: https://github.com/Svirusx/Nethunter-s7-kernel-WirusMOD-Oreo
Kernel Special Features: Powered by TGPKernel
Version Information
Status: Testing
Created 2019-02-09
Last Updated 2019-06-22
CHANGELOG
2019.09.27- v1.4
Upstream to tgpkernel source Version 6.15.2[EOL]
2019.06.22- v1.3
Update source to TGPKernel Version 6.15.0
2019.05.25 - v1.2
Updated TGPkernel source to v6.14.0 (release from 2019-05-23)
Rebased source, removed loadable modules
Ramdisk compressed with xz to get more free space for drivers.
Little fixes in defconfig
2019-04-20 - v1.1
Added monitor mode patches to some wifi usb drivers.
Added possibility to disable HIDPatch (this fixes DriveDroid)
Added HIDPatchSwitch: Simple sh script to switch status of HIDPatch (Info in comments in script)
Updated TGP source to Version 6.12.8
2019-02-09 - v1.0
Initial release.
Reserved
Thanks dev. I'm gonna give it a try. Downloading now.
Works fine for now, Nethunter it self crashes when i start command part.
Eugenic said:
Works fine for now, Nethunter it self crashes when i start command part.
Click to expand...
Click to collapse
If you mean NetHunter app -> Custom Commands it self crashes but this is problem with app not with kernel.
Install this version of app
The kernel good working. Ty dev.
Kali Linux works fine, Update is possible when the key correct is....open terminal and write:
wget-q -O - https:/archive.kali.org/archive-key.asc | apt-key add
one problem i have Random reboots ??
A question, when it indicates to change the permissions, refers to the files with .bin format or also with fotmato .fw / wmfw ?.
Kali Works fine too, but when I ask a little bit too much or an unusual thing, it crashes, it's completely random, but it work really well, my external device is recognized, monitor mode works but sometimes it's really sensitive then it crashes. Like it anyway.
rtifferb1987 said:
A question, when it indicates to change the permissions, refers to the files with .bin format or also with fotmato .fw / wmfw ?.
Click to expand...
Click to collapse
For all files which you have copied to system/etc/firmware
loic2665 said:
Kali Works fine too, but when I ask a little bit too much or an unusual thing, it crashes, it's completely random, but it work really well, my external device is recognized, monitor mode works but sometimes it's really sensitive then it crashes. Like it anyway.
Click to expand...
Click to collapse
Could you share your last_kmsg? (cat /proc/last_kmsg > /sdcard/last_kmsg.txt)
Svirusx said:
For all files which you have copied to system/etc/firmware
Could you share your last_kmsg? (cat /proc/last_kmsg > /sdcard/last_kmsg.txt)
Click to expand...
Click to collapse
I will do that, I had reflashed the moronernel for now. Thanks for your time.
Does this enable packet injection for the internal wifi radio as well? The reason I ask is because I saw you mention something about it on one of the Nexmon git issues (#270).
zedfour said:
Does this enable packet injection for the internal wifi radio as well? The reason I ask is because I saw you mention something about it on one of the Nexmon git issues (#270).
Click to expand...
Click to collapse
Yes but only for LineageOS 14.1 version of my kernel. Packet injection works fine but problem is with packet capture every captured packet is cuted.
Where hid-keyboard?
AbayefD said:
Where hid-keyboard?
Click to expand...
Click to collapse
In NetHunter_Binaries.7z in folder \system\xbin\
You need to copy it to this folder in android too in \system\xbin\.
Svirusx said:
In NetHunter_Binaries.7z in folder \system\xbin\
You need to copy it to this folder in android too in \system\xbin\.
Click to expand...
Click to collapse
Where download this NetHunter_Binares
AbayefD said:
Where download this NetHunter_Binares
Click to expand...
Click to collapse
Scroll down here to first release of kernel.
Thx. What firmware recommend with this kernel?
AbayefD said:
Thx. What firmware recommend with this kernel?
Click to expand...
Click to collapse
No recommendation you need to test some ROMs and look if it's work fine for you. I use Stock ROM on my Galaxy s7.

Categories

Resources