[INSTALLER]Universal NativeSD installer for all roms v0.1 - HD2 Android NAND Development

Hey guys people here have constant troubles flashing mods to NativeSD roms as they can't be flashed the normal way like gapps,etc
I intend to provide people a solution to patch their roms with the mods of their choice.
Also chefs cooking/porting roms can use this to patch their roms while debugging
Also people willing to contribute mods circulating XDA can also put them up here in the thread
How it works:
This is Aroma based installer based on tytung's NexusHD2 JB 1.0
This is a zip file so people have to first extract it,place the respective mod files/apps in the system folder zip it again and flash
Devs/Chefs working on roms can also place the patches to be made in the system folder.also the original files can be placed in the system-original folder so that patches can be reverted to see what works and what not
Most importantly don't forget to change the ROM_NAME to the nativesd name of the rom you wish to flash in the mount_nativesd.sh file with the help of any text editor(If using your android device,it can be done using jota text editor set to linefinder)
v0.1(Modified by wwchang originally for JellyBelly rom)
DOWNLOAD

MODs by me
Acid Audio Engine Version 5
DOWNLOAD
After flashing this add these lines to build.prop
HTML:
#Sony Xloud & Clearbass +
ro.semc.sound_effects_enabled=true
ro.semc.xloud.supported=true
persist.service.xloud.enable=1
ro.semc.enhance.supported=true
persist.service.enhance.enable=1
ro.semc.clearaudio.supported=true
persist.service.clearaudio.enable=1
ro.sony.walkman.logger=1
ro.somc.clearphase.supported=true
persist.service.clearphase.enable=1
#Resampling
af.resampler.quality=255
persist.af.resampler.quality=255
#Beats Engine
htc.audio.swalt.enable=1
htc.audio.swalt.mingain=14512
Native 720p mod for any of the existing JB roms out there
DOWNLOAD

Reserved#2

Anurag pandey said:
Most importantly don't forget to change the ROM_NAME to the nativesd name of the rom you wish to flash in the mount_nativesd.sh file with the help of any text editor(If using your android device,it can be done using jota text editor set to linefinder)
Click to expand...
Click to collapse
There are a few of these installers floating about (with a few made by myself); the last one I had extracted the rom name from the initrd.gz in /sdcard/NativeSD, thus removing the need for the above, if I can find it feel free to modify the installer, it should cut down on some of the work for end users (and make 1 zip usable with multiple ROMs without further modification)
Edit. Changing Mount_NativeSD.sh to:
Code:
#!/sbin/sh
mmcblk0p2=`ls /dev/block/mmcblk0p2`
# Mount the ext4 partition
if [ $mmcblk0p2 == "/dev/block/mmcblk0p2" ]
then
mkdir -p /ext4p
mount -t ext4 /dev/block/mmcblk0p2 /ext4p
cp /ext4p/NativeSD/initrd.gz /tmp/initrd.gz
mkdir /tmp/ramd
cd /tmp/ramd
gzip -d -c ../initrd.gz | cpio -i -d
if [-a "init.android"]
then
sed -n '/rom_name=/w romname.txt' /tmp/ramd/init
sed -i 's/rom_name=//' romname.txt
else
sed -n '/--bind/,/system/w initrc.txt' init.rc
sed -n '1w romname.txt' initrc.txt
sed -i 's,exec /bin/busybox mount --bind /NativeSD/,,
s,/system /system,,
s/ *//g' romname.txt
fi
export ROM_NAME=`cat romname.txt`
mount --bind /ext4p/$ROM_NAME/system /system
mount --bind /ext4p/$ROM_NAME/data /data
#the sd-ext directories are ready, so flag the updater-script
echo "NativeSD=true" >> /tmp/nfo.prop
else
#no ext4 partition found
echo "NativeSD=false" >> /tmp/nfo.prop
fi
should do it, you may want to run your eye through it first.

Good work anuraj as always...
@Hypoturtle... i saw this script on Sportstar too, but I havent tried it... Seems quite interesting but afraid to try (as hd2 is my primary and only phone...) Dont understand much of these code but, is there any way the script uncomment or remove the following lines in init.rc or init.htcleo.rc?
mount yaffs2 [email protected] /system noatime nodiratime
mount yaffs2 [email protected] /data nosuid nodev noatime nodiratime
mount yaffs2 [email protected] /mnt/cache nosuid nodev
Sorry I'm still learning, and dont have unserstand any language C,C++ or Java...

macs18max said:
Good work anuraj as always...
@Hypoturtle... i saw this script on Sportstar too, but I havent tried it... Seems quite interesting but afraid to try (as hd2 is my primary and only phone...) Dont understand much of these code but, is there any way the script uncomment or remove the following lines in init.rc or init.htcleo.rc?
mount yaffs2 [email protected] /system noatime nodiratime
mount yaffs2 [email protected] /data nosuid nodev noatime nodiratime
mount yaffs2 [email protected] /mnt/cache nosuid nodev
Sorry I'm still learning, and dont have unserstand any language C,C++ or Java...
Click to expand...
Click to collapse
This script is different to whats on Sportstar's thread (I think, not sure what your referencing)
All that code does is take the ROM_NAME from the currently used ROM and set it as the ROM for the update to be applied to.
If you want to check if it works then just add a text file into the system folder and see if it installs into the currently running ROM.
The patcher (look at sig.) does the commenting of yaffs in init.rc (as well as other stuff to turn a NAND ramdisk into a NativeSD one).

sense 3.5 kernel
who can help(assist) me to make a sense 3.5 kernel nativeSD able?
pixelfreak

-pixelfreak- said:
who can help(assist) me to make a sense 3.5 kernel nativeSD able?
pixelfreak
Click to expand...
Click to collapse
Try hypoturtle's patcher On linux
http://forum.xda-developers.com/showthread.php?t=1953428
Sent from my NexusHD2 using xda premium

re
Anurag pandey said:
Try hypoturtle's patcher On linux
http://forum.xda-developers.com/showthread.php?t=1953428
Sent from my NexusHD2 using xda premium
Click to expand...
Click to collapse
many thanks this is not whas i mean. in the kernel must change the init.rc file with script for nativeSD. and this must change in my sense 3.5 kernel thats work sense 3.5 with nativeSD
i am not a linux coder i work with windows. thats work must make a profesionel coder for kernel "tytung or other user"
pixelfreak

Anurag pandey said:
MODs by me
Acid Audio Engine Version 5
DOWNLOAD
After flashing this add these lines to build.prop
HTML:
#Sony Xloud & Clearbass +
ro.semc.sound_effects_enabled=true
ro.semc.xloud.supported=true
persist.service.xloud.enable=1
ro.semc.enhance.supported=true
persist.service.enhance.enable=1
ro.semc.clearaudio.supported=true
persist.service.clearaudio.enable=1
ro.sony.walkman.logger=1
ro.somc.clearphase.supported=true
persist.service.clearphase.enable=1
#Resampling
af.resampler.quality=255
persist.af.resampler.quality=255
#Beats Engine
htc.audio.swalt.enable=1
htc.audio.swalt.mingain=14512
Click to expand...
Click to collapse
Thanks for your mods. I downloaded the file Acid audio engine for jellybelly.zip. How do I flash it to the Jellybelly NativeSD ROM?
Can I use 4EXT Recovery for the same?

Well I had some people reporting that NativeSd Gapps installer that i put together using script from HypoTurtle is not working on PAC rom.
So I checked it and it seems that PAC has somewhat different was of mounting, rom name is located in mounts.sh script.
Anyway I've updated it, and now it should also work on such ROMs.
Code:
#!/sbin/sh
mmcblk0p2=`ls /dev/block/mmcblk0p2`
# Mount the ext4 partition
if [ $mmcblk0p2 == "/dev/block/mmcblk0p2" ]
then
mkdir -p /ext4p
mount -t ext4 /dev/block/mmcblk0p2 /ext4p
cp /ext4p/NativeSD/initrd.gz /tmp/initrd.gz
mkdir /tmp/ramd
cd /tmp/ramd
gzip -d -c ../initrd.gz | cpio -i -d
#!/bin/sh
if [ -a "init.android" ]
then
sed -n '/rom_name=/w romname.txt' /tmp/ramd/init
sed -i 's/rom_name=//' romname.txt
else
if [ -f "mountfs.sh" ]
then
sed -n '/rom_name=/w mount.txt' mountfs.sh
sed -n '1w romname.txt' mount.txt
sed -i 's/rom_name="//' romname.txt
sed -i 's/"//' romname.txt
else
sed -n '/--bind/,/system/w initrc.txt' init.rc
sed -n '1w romname.txt' initrc.txt
sed -i 's,exec /bin/busybox mount --bind /NativeSD/,,
s,/system /system,,
s/ *//g' romname.txt
sed -i 's/[[:blank:]]//g' romname.txt
fi
fi
export ROM_NAME=`cat romname.txt`
mount --bind /ext4p/$ROM_NAME/system /system
mount --bind /ext4p/$ROM_NAME/data /data
#the sd-ext directories are ready, so flag the updater-script
echo "NativeSD=true" >> /tmp/nfo.prop
else
#no ext4 partition found
echo "NativeSD=false" >> /tmp/nfo.prop
fi

how can i flash another kernel to a native sd rom?

firebird11 said:
how can i flash another kernel to a native sd rom?
Click to expand...
Click to collapse
For now download tytungs jb kernel and replace his kernel files with the kernel u want to install.
I guess tytungs jb kernel is based on aroma installer for nativesd
Sent from my LG-P990 using xda premium

Anurag pandey said:
For now download tytungs jb kernel and replace his kernel files with the kernel u want to install.
I guess tytungs jb kernel is based on aroma installer for nativesd
Sent from my LG-P990 using xda premium
Click to expand...
Click to collapse
thank you but tytungs kernel doesn't have aroma installer,,
i'll change the files in the rom before flashing

Link is down.
Hello,
I know this thread is quite old but I tried to download the Universar NativeSD installer to install a mod into my current NativeSD rom, but the link is down. Where can I get the installer? Is there another way to do what I'm trying?
Thanks.
Regards,

pepemonje said:
Hello,
I know this thread is quite old but I tried to download the Universar NativeSD installer to install a mod into my current NativeSD rom, but the link is down. Where can I get the installer? Is there another way to do what I'm trying?
Thanks.
Regards,
Click to expand...
Click to collapse
The link to the 720p mod is still working, you could change the system files and rom-name in that one to suit. Or just put your files in your NativeSD rom.zip and re-flash without wiping, backup first though

Robbie P said:
The link to the 720p mod is still working, you could change the system files and rom-name in that one to suit. Or just put your files in your NativeSD rom.zip and re-flash without wiping, backup first though
Click to expand...
Click to collapse
Thanks Robbie P for your help. But I was referring to the Universal NativeSD installer for all roms v0.1 download link. Anyway, what is the 720p mod?

pepemonje said:
Thanks Robbie P for your help. But I was referring to the Universal NativeSD installer for all roms v0.1 download link. Anyway, what is the 720p mod?
Click to expand...
Click to collapse
the 720p mod is in post#2, it allows people to play 720p quality video files. afaik it uses the same install method as the original installer.
You can delete the system folder in the zip and add yours. You would also need to change the rom_name in mount_NativeSD.sh to whatever the rom you are modifying uses (same name as the folder in /sdcard/NativeSD)
Note that permissions and possibly symlinks for the new files might need changing after installation.
If you put the mod files in your original rom.zip and reflash as i mentioned earlier, there is no need to change rom-name.

Related

[MOD] SHW-M110S Development (with lagfix/root/voodoo sound kernel)

For SHW-M110s development/discussion. (Korean Anycall SGS ONLY yes for any who don't know, we are officially part of the I9000 forum.
Koe1974 suggested this thread and will I think act as a co-OP on this discussion. Look for front page updates, links, whatever from him 3 posts down, (below the lost guy from China) in the future too.
Version 4 released
Version 4.0r1 released to fix Odin flashing problem
link to kernel
with tegrak_voodoo sound (v2) module, tegrak ext4 module, root (superuser.apk) and busybox 1.17.1 optional, safe mount option overides by default, auto detect lag fixed partitions (improves upgradeability and interchageability) [/B][/size] Compatible with previously z4modded ext2 setups. All ROM versions, SK05 through TA13 tested and released (link is below).
안녕하세요 to any of the Korean developers who find this. Please update us in English about what you are doing. Your English is probably MUCH better than my korean, and I live in Korea.. There are some people in China, Iran, Philippines, etc using this device who might be helped.
-------------------------------------------------------------------------------------------------------------------------
Ext4 (tegrak modules) z4build rooted voodoo sounds kernel link
A stock z4moded kernel with added ext4 support ( presently by "stealing" tegrak kernel modules.) and many tweaks to make it actually work.
This is now working with z4control to get an easy to apply ext4 lag fix!
------------------------------------------------------------------------------------------------------------------------------------
Bug discussion here please, usage discussion (how do get the file into odin?) .. maybe the general thread is better.
For now, our rooting guide is linked from my sig also, although the above linked kernel can also be made to provide root with no effort.
This type of initramfs modification can be done by unpacking a stock kernel making customizations and then applying z4build to it. But I used a z4modded kernel and then applied customizations and repacked. I did this because I set up to repack by hand anyway before knowing I wanted to use z4mod and even then, when I thought I needed to pack into a tegrak kernel (which z4build can't do). It turned out to cause complications, but also taught me a good bit about the process and about z4mod, and probably helped me find bugs.
Some other related useful links for Reference:
kernel extraction (commented by me specifically for tegrak lzma compressed initramfs and z4build split initramfs)
http://forum.xda-developers.com/wiki/index.php?title=Extract_initramfs_from_zImage
kernel repacking
http://forum.xda-developers.com/showthread.php?t=789712
It needs the initramfs to be cpio'd already something like this:
Code:
cd $initram
find ./ | cpio -H newc -o > $repackdir/newramfs.cpio
It also needs the editor.sh script modified to point to the cross-compiler.
By default it can only pack you initramfs into an image which previously had an uncompressed initramfs. This can be modified though easily.
kernel compiling
This old thread probably isn't too useful now..
http://forum.xda-developers.com/showthread.php?t=740740&page=2
We have much better info 3 posts down by koe1974.
Kernel sources here:
http://opensource.samsung.com/
search SHW-M110S.
The first froyo update has a nice readme with a link to the compiler (I don't have the link right this moment)
Not sure if we need to figure/find .configs, or if the ones included are ok to start. Just need to compile one once and see.
I got my compiler toolchain here:
http://www.codesourcery.com/sgpp/li...1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2
I thought it's the one recommended is the original froyo source from samsung, but Koe says they point to 2009 version, so I don't know now.
............
I flashed the korean voodoo sk22 kernel just to boot it into recovery. It has CW mod recovery. Might be useful. (BTW I don't recommend flashing unfamiliar kernels haphazardly, ex: this one injected a file into my ROM that interefered with z4mod until I realized it ) Mine BTW injects only one empty directory (/etc/init.d) and nothing else. Remove the kernel and all other changes dissappear. (z4control adds a tad more, but very little, most of its additions self destruct after use.)
Post reserved.
Post Removed, as requested.
Sent from my GT-I9000 using XDA App
Links:
Korea's equivalent to XDA
Lilinser's GitHub - kernel repack, deodexer, etc.
Project-Voodoo - initramfs (SK05)
Just for hobbies - Voodoo for SL28
Tegrak Kernel
SHW-M110S intramfs Requires further research.
Older M110S from someone at MIT working on the M110S potential resource
bml7 & initramfs possible resource
more initramfs
initramfs SK05 Tested .. OK
How-Tos:
Basic How-To Build Environment with built kernel test
First this diff is from a z4modded stock SL28 image to the custom kernel image. It's not against stock. So it includes tegrak files and scripts I changed. Also note the -N option. It pretends like files that don't exist do.. Any binary files that "differ" are actually added from tegrak.
Code:
diff -rbpN z4mod_sl28/initramfs/init.rc z4grak-construction-sl28/initramfs/init.rc
*** z4mod_sl28/initramfs/init.rc 2011-01-13 02:20:12.000000000 -0500
--- z4grak-construction-sl28/initramfs/init.rc 2011-01-11 07:43:34.000000000 -0500
*************** loglevel 3
*** 58,63 ****
--- 58,72 ----
mount j4fs /dev/block/stl6 /mnt/.lfs
insmod /lib/modules/param.ko
+ #ext4 modules by woo
+ insmod /tegrak/lib/modules/mbcache.ko
+ insmod /tegrak/lib/modules/jbd2.ko
+ insmod /tegrak/lib/modules/ext4.ko
+
+ # tegrak system lagfix by woo
+ #
+ insmod /tegrak/lib/modules/tegrak_module.ko
+
# Backwards Compat - XXX: Going away in G*
symlink /mnt/sdcard /sdcard
*************** service vt /system/bin/vtserver
*** 728,734 ****
#user system
#group system
-
service dumpstate /system/bin/dumpstate -s
socket dumpstate stream 0660 shell log
disabled
--- 737,742 ----
*************** service dumpstate /system/bin/dumpstate
*** 739,747 ****
# oneshot
-
# Added by z4mod
service z4postinit /init
oneshot
--- 747,761 ----
# oneshot
# Added by z4mod
service z4postinit /init
oneshot
+ #install root ingore the mount type, it doesn't matter
+ # syntax looks a little strange to me.. we'll see if it works
+ mount rfs /dev/block/stl9 /system rw remount
+ cat /sbin/su > /system/bin/su
+ chown root /system/bin/su
+ chmod 4755 /system/bin/su
+ mount rfs /dev/block/stl9 /system ro remount
\ No newline at end of file
diff -rbpN z4mod_sl28/initramfs/lpm.rc z4grak-construction-sl28/initramfs/lpm.rc
*** z4mod_sl28/initramfs/lpm.rc 2011-01-13 02:20:12.000000000 -0500
--- z4grak-construction-sl28/initramfs/lpm.rc 2011-01-11 06:37:28.000000000 -0500
*************** on init
*** 16,21 ****
--- 16,26 ----
insmod /lib/modules/param.ko
insmod /lib/modules/vibrator.ko
+ #ext4 modules by woo
+ insmod /tegrak/lib/modules/mbcache.ko
+ insmod /tegrak/lib/modules/jbd2.ko
+ insmod /tegrak/lib/modules/ext4.ko
+
mount rfs /dev/block/stl9 /system check=no
mount rfs /dev/block/mmcblk0p2 /data nosuid nodev check=no
Binary files z4mod_sl28/initramfs/sbin/sslvpn and z4grak-construction-sl28/initramfs/sbin/sslvpn differ
Binary files z4mod_sl28/initramfs/tegrak/bin/mkfs.ext4 and z4grak-construction-sl28/initramfs/tegrak/bin/mkfs.ext4 differ
Binary files z4mod_sl28/initramfs/tegrak/bin/tune2fs and z4grak-construction-sl28/initramfs/tegrak/bin/tune2fs differ
Binary files z4mod_sl28/initramfs/tegrak/lib/modules/ext4.ko and z4grak-construction-sl28/initramfs/tegrak/lib/modules/ext4.ko differ
Binary files z4mod_sl28/initramfs/tegrak/lib/modules/jbd2.ko and z4grak-construction-sl28/initramfs/tegrak/lib/modules/jbd2.ko differ
Binary files z4mod_sl28/initramfs/tegrak/lib/modules/mbcache.ko and z4grak-construction-sl28/initramfs/tegrak/lib/modules/mbcache.ko differ
Binary files z4mod_sl28/initramfs/tegrak/lib/modules/tegrak_module.ko and z4grak-construction-sl28/initramfs/tegrak/lib/modules/tegrak_module.ko differ
I'm a bit confused about sslvpn It's in my SL28 , it's not in my z4moded SL28. everything else diff as expected. Maybe I just lost it, maybe z4mod removed it. It's a small unimportant mystery.
BTW it looks like what I believe are the recovery keys have changed from SK22 to SL28, so maybe using the wrong kernel breaks something.
and my slightly modified version of the extraction script with commented lines to deal with lzma.
it's much faster (well.. why not), and it handles direcories a little better. It need a "/" somewhere in the file name though so use "./zImage".
Code:
#!/bin/bash
#MUCH faster than dd bs=1 skip=blah
#
# syntas is fastdd file skip <length_in_bytes_optional>
# skip is NOT optional and should be set to 0 read from begining.
#
fastdd () {
#dd with a skip is crazy slower cause it forces bs=1
#credit goes to somebody on the internet.
local bs=1024
local file=$1
local skip=$2
local count=$3
(
dd bs=1 skip=$skip count=0 2>/dev/null
if [[ "$count" != "" ]]; then
dd bs=$bs count=$(($count / $bs))
dd bs=$(($count % $bs)) count=1
else
dd bs=1024 2> /dev/null
fi
) < "$file"
}
zImage=$1
basedir=${1%/*}
echo working directory $basedir
mkdir $basedir/initramfs
outdir=$basedir/initramfs/
#========================================================
# find start of gziped kernel object in the zImage file:
#========================================================
pos=`grep -P -a -b -m 1 --only-matching $'\x1F\x8B\x08' $zImage | cut -f 1 -d :`
echo "-I- Extracting kernel image from $zImage (start = $pos)"
echo
echo "*** Start of compressed kernel image:" $pos
#========================================================================
# the cpio archive might be gzipped too, so two gunzips could be needed:
#========================================================================
fastdd $zImage $pos | gunzip > /tmp/kernel.img
pos=`grep -P -a -b -m 1 --only-matching $'\x1F\x8B\x08' /tmp/kernel.img | cut -f 1 -d :`
#
# Use next one for tegrak secuere 11 SL28
# It's an lzma header
# It's found by looking for 5D 00 in the exact same place as cpio (070701) is found in stock.
# The long string of FF's is the real give away since 5D 00 is too vague.
# pos=`grep -P -a -b -m 1 --only-matching '\x{5D}\x{00}\x..\x{FF}\x{FF}\x{FF}\x{FF}\x{FF}\x{FF}' /tmp/kernel.img| cut -f 1 -d :`
echo
echo "*** gzip position in kernel.img :" $pos "(start of gzipped cpio)"
#===========================================================================
# find start and end of the "cpio" initramfs image inside the kernel object:
# ASCII cpio header starts with '070701'
# The end of the cpio archive is marked with an empty file named TRAILER!!!
#===========================================================================
if [ ! $pos = "" ]; then
echo "-I- Extracting compressed cpio image from kernel image (start = $pos)"
# use either one of the next two lines for gzip
# dd if=/tmp/kernel.img bs=1 skip=$pos | gunzip > /tmp/cpio.img
fastdd /tmp/kernel.img $pos |gunzip > /tmp/cpio.img
# comment above and uncomment one of next two lines for lzma, if decompressing tegrak image.
# dd if=/tmp/kernel.img bs=1 skip=$pos | unlzma > /tmp/cpio.img
# fastdd /tmp/kernel.img $pos | unlzma > /tmp/cpio.img
start=`grep -a -b -m 1 --only-matching '070701' /tmp/cpio.img | head -1 | cut -f 1 -d :`
end=`grep -a -b -m 1 --only-matching 'TRAILER!!!' /tmp/cpio.img | head -1 | cut -f 1 -d :`
inputfile=/tmp/cpio.img
else
echo "-I- Already uncompressed cpio.img, not decompressing"
start=`grep -a -b -m 1 --only-matching '070701' /tmp/kernel.img | head -1 | cut -f 1 -d :`
echo start $start
end=`grep -a -b -m 1 --only-matching 'TRAILER!!!' /tmp/kernel.img | head -1 | cut -f 1 -d :`
echo end $end
inputfile=/tmp/kernel.img
fi
end=$((end + 10))
count=$((end - start))
if (($count < 0)); then
echo "-E- Couldn't match start/end of the initramfs image."
exit
fi
echo "-I- Extracting initramfs image from $inputfile (start = $start, end = $end)"
echo inputfile: $inputfile
echo start $start
echo count $count
echo outdir $outdir
# dd if=$inputfile bs=1 skip=$start count=$count > $outdir/initramfs.cpio
fastdd $inputfile $start $count > $basedir/initramfs.cpio
cd $basedir
basedir=`pwd`
cd $outdir; cpio -v -i --no-absolute-filenames < $basedir/initramfs.cpio
cp /tmp/kernel.img $basedir/
More to come.
I like the way this is going, appagom, please put [MOD] in the title.
GL on the new thread, if you hope to have Koreans stumbled upon the thread it might be good to add more phrases like:
루팅
갤럭시s
안드로이드
프로요
업그레이드
업데이트
I never really fully utilized it myself. I hope you get more done here or I'll just take the move personally. Actually, now that you guys were moving into compiling and building I thought this would come. Also, you should look to get some Soju out of this with some donate links or something, even if you aren't looking to take in any cash perhaps you could use it as a seed pot for bounties.
Most importantly, I need to know what "the lost guy from China" said...ㅋㅋㅋ
@Koe, don't waste your time on Gingerbread, get us Honeycomb
Compile a Kernel in 13 Lucky Steps
If you are not familiar with Linux, you might have a hard time following this. Just as I am writing how to do get setup to compile a kernel and compile Android apps, others have written how to setup VirtualBox, Ubuntu, AndroidSDK, etc. Please see documentation provided by Oracle, Google, Ubuntu, etc. before you ask for help about VirtualBox, Ubuntu and the SDK. Thanks.
This is written for people who have used Linux but have not compiled much. Or for the brave at heart who are looking for a nice weekend project. This will tell/guide you through getting a system setup that will not destroy your existing OS.
My host OS is Ubuntu 10.10 64-bit. I wanted had to make an Ubuntu 10.04 32-bit 64-bit system for development because I didn't want to deal with 64-bit vs. 32-bit issues but since Gingerbread requires a 64-bit compiler, I had to. Might as well just use my host system, but since we're here let's keep going!
So you're about to begin. Let's just get one thing straight. No! This will not result in a kernel you can flash. “Then why do this?, you ask. Ask yourself that!
1. Install VirtualBox and the Oracle VM VirtualBox Extension Pack (Currently 4.0.0 r69151)
http://www.virtualbox.org/wiki/Downloads
2. Download an Ubuntu ISO (I suggest Ubuntu Desktop 10.04 64-bit)
http://www.ubuntu.com/desktop/get-ubuntu/download
3. Create a new VM in VirtualBox (You may/have to modify the settings)
Operating System: Linux
Version: Ubuntu64
Extended Features: IO APIC
Processors: 2
RAM: 2048MB
Video Mem: 128MB
HDD: 32GB
Enable PAE/NX
Shared Drive: (I use a shared folder, more detail later)
Click to expand...
Click to collapse
4. Install VirtualBox Guest Additions
5. Install Ubuntu and Update Ubuntu
TIP: Mount your Shared Folder with fstab (Optional but helpful)
If you chose to use a shared folder you can auto-mount it via /etc/fstab.
NOTE: I use a shared folder named andDEV and I mount it on my desktop (~/Desktop). Below is what I add to my /etc/fstab (You may/have to change it)
Code:
andDev /home/koe/Desktop/andDev vboxsf uid=1000,gid=1000 0 0
Click to expand...
Click to collapse
6. Enable multiverse and partner "Software Sources"
7. Install additional software: NOTE: I would also recommend installing preload, but it is not required.
Code:
sudo apt-get install qt3-dev-tools texinfo git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk eclipse ia32-libs
8. Get and Setup the AndroidSDK (Everything you need to know is there or just Google for help)
http://developer.android.com/sdk/index.html
NOTE: Ubuntu 10.04 does not have Java 5 in it's repositories. Follow this link to setup to Java 5
9. Get and Setup ADT Plugin for Eclipse (Everything you need to know is there or just Google for help)
http://developer.android.com/sdk/eclipse-adt.html#installing
TIP: At this point you might want to try Google's “Hello, Android” tutorial.
Click to expand...
Click to collapse
10. Download and Install the Sourcery G++ Lite for ARM EABI Toolchain (Currently arm-2010.09)
http://www.codesourcery.com/sgpp/lite/arm/portal/subscription3053
Look for and click the link for Recommended Release
Look for and click the link for IA32 GNU/Linux TAR
Extract the archive. You will have a folder named arm-2010.09
Make a directory in your home directory named CodeSourcery
Ex. mkdir ~/CodeSourcery
copy the entire arm-2010.09 folder into CodeSourcery
Click to expand...
Click to collapse
11. Update your $PATH
You should be familiar with this because you had to do it to setup the AndroidSDK
Append the following to your PATH in .bashrc
Code:
~/CodeSourcery/arm-2010.09/bin
12 Download and Prepare the Samsung Source Code (Currently SHW-M110S_Opensource_Froyo_update2.zip)
http://opensource.samsung.com/
Click Mobile - Mobile Phones
Look for and download SHW-M110S_Opensource_Froyo_update2.zip
Extract the archive. Inside the new folder are two more archives.
Extract SHW-M110S_Kernel.tar.gz Inside there is a new folder Kernel
You can copy this to a more convenient location. I copy it to my desktop.
In the Kernel folder is a file named Makefile. Open it with your editor of choice.
Go to line 184. You will see ...
CROSS_COMPILE ?= /opt/toolchains/arm-2009q3/bin/arm-none-linux-gnueabi-
You have to change it to something like below, but see the koe? That is my username so you have to change it to your username.
CROSS_COMPILE ?= /home/koe/CodeSourcery/arm-2010.09/bin/arm-none-eabi-
Save Makefile.
Click to expand...
Click to collapse
13. Compile a Kernel
NOTES:
1. Do not try to compile the code in your Shared Folder. It will fail.
2. When issuing these commands you will see lots of output during this part, most of which is not useful to you at this point.
3. The amount of time it takes for the final make command to run will depend on your computer.
Click to expand...
Click to collapse
Open a terminal window and move into the Kernel directory. Issue the following commands.
Code:
$ make shw-m110s_defconfig
$ make menuconfig
When the config editor opens do the following:
DOWN ARROW to Userspace binary formats and press ENTER
DOWN ARROW to Kernel support for a.out and ECOFF binaries and press SPACE
RIGHT ARROW to Exit and press ENTER
RIGHT ARROW to Exit and press ENTER
Press ENTER again and it will exit back to the command line
NOTE: If you have a powerful computer and you want to speed up the build time, make can be run as, make -j# The # represents how much it will try to do at once. $ make does 1 operation, make -j3 tries to do 3. I have a 2.66 Ghz dual-core CPU and I allow the VirtualBox guest OS access to both cores, so I use make -j3 The compile finishes in about 12 minutes and allows me to still use my host OS. For now, you might just want to run make without the -j option to get a full understanding of how long it takes. Later you can test with values.
Click to expand...
Click to collapse
WARNING: Time is relative. This will take some time ... go make a sandwich or maybe even watch a movie.
Code:
$ make
When you see $ again check the last couple of lines of output. You want to see …
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
Click to expand...
Click to collapse
Congratulation! You just built a kernel for the m110s!
good write up.. Glad to see you hit the same a.out snag as me. Just makes me think it's not configured right and so I have low hopes. Will be fun to see what happens when you put an initramfs in it. I'd just unpack the stock one and try that first.
As for z4control.. I'm pretty interested in getting this working as something like this was the real reason I started messing with this. It seems there may be some issue with the z4mod's init wrapper not doing things it should but anyway.. just now seeing issues. flashed one kernel where I added some debug output added.. trying to understand it (not understanding it yet). I'm optimistic that I can track it down. edit:... definitely making progress, not quite there yet but getting closer.
appagom said:
good write up.. Glad to see you hit the same a.out snag as me. Just makes me think it's not configured right and so I have low hopes. Will be fun to see what happens when you put an initramfs in it. I'd just unpack the stock one and try that first.
Click to expand...
Click to collapse
Strictly to see if it would build completely and to get more info on how to do it, I did do an initramfs & kernel test build.
used the update2 kernel source
used the initramfs linked above (SHW-M110S intramfs Requires further research.)
ran find ./ | cpio -H newc -o > ~/Desktop/newramfs.cpio
added the cpio via menuconfig with no compression
It did build successfully and I ended up with a 7mb zImage vs. a 2.5mb.
There is no way in hell I am going to flash it because I do not know which initramfs (maybe from sk05) it is or what it contains but it did complete.
Now isn't this a kick in the nuts!
Since I got the toolchain all set I decided to focus on the Android source code. Following these directions .. http://source.android.com/source/download.html I got to "Building the code"
Code:
[email protected]:~/Desktop/myAnd$ source build/envsetup.sh
including device/htc/passion/vendorsetup.sh
including device/samsung/crespo/vendorsetup.sh
[email protected]:~/Desktop/myAnd$ lunch
You're building on Linux
Lunch menu... pick a combo:
1. full-eng
2. full_x86-eng
3. simulator
4. full_passion-userdebug
5. full_crespo-userdebug
Which would you like? [full-eng] 1
============================================
PLATFORM_VERSION_CODENAME=AOSP
PLATFORM_VERSION=AOSP
TARGET_PRODUCT=full
TARGET_BUILD_VARIANT=eng
TARGET_SIMULATOR=false
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv5te
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=OPENMASTER
============================================
[email protected]:~/Desktop/myAnd$ make
============================================
PLATFORM_VERSION_CODENAME=AOSP
PLATFORM_VERSION=AOSP
TARGET_PRODUCT=full
TARGET_BUILD_VARIANT=eng
TARGET_SIMULATOR=false
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv5te
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=OPENMASTER
============================================
Checking build tools versions...
build/core/main.mk:76: ************************************************************
build/core/main.mk:77: You are attempting to build on a 32-bit system.
build/core/main.mk:78: Only 64-bit build environments are supported beyond froyo/2.2.
build/core/main.mk:79: ************************************************************
build/core/main.mk:80: *** stop. Stop.
Well, 32-bit will do for now seeing how ::cough:: I'm not the one building gingerbread.
I guess my next how-to is going to be how to go out and buy a PC and setup a 64-bit development environment.
Well, 32-bit will do fro now see how ::cough:: I'm not the one building gingerbread.
I guess my next how-to is going to be how to go out and buy a PC and setup a 64-bit development environment.
Click to expand...
Click to collapse
Could try the gnu cross compiler I suppose maybe it's clever enough to work around it. Your computer really isn't 64 bit though? You could just install a 64 bit VM assuming it is.
koe1974 said:
added the cpio via menuconfig with no compression
Click to expand...
Click to collapse
Ok, that procedure is easier than it used to be, or than what I read it used to be. I'm not afraid to add one and flash it. Just busy with making one I like right now though.. then again.. sounds like a 10 minute interruption.. so.. we'll see... oh and I don't remember what was stopping xconfig from working, but something annoying.. it's quite a bit nicer than menuconfig. I need to learn how that works though.. cause really you should add modules from the compilation itself right.. so you cant have the initramfs already before you compile, unless make opens it and add the modules and re-cpio's it. Anyway.. I'll shoot first, ask later.
edit: just flashed.. it gave about 1 tenth of a blue bar and froze. Ok, that was fun, back to fixing and ext4 kernel up.
appagom said:
Could try the gnu cross compiler I suppose maybe it's clever enough to work around it. Your computer really isn't 64 bit though? You could just install a 64 bit VM assuming it is.
Click to expand...
Click to collapse
The VM I setup was 32bit, but it's 64bit now. I will just modify the How-To for a 64bit system.
4 bugs related z4control issues solved(ok 2 were probably the same as well as a fifth, so really 3)..
one, it's failing to create a directory it needs (/system/etc/init.d), reported, work around create by hand.
2) It's rfs formatting wrapper script which checked for voodoo, failed. Strange bug in sh actually.. workaround in script found and reported
bugs 3 and 4 details unimportant, were related to the mystery of where sslvpn went. z4build was splitting the initramfs by tacking it some of it brute force on to the end of the zImage. The init script found it again and unpacked the files before continuing. Oddly, it seems an uneeded because I fit the only big displaced file in just fine without splitting and I didn't even use heavy compression. Anyway, needed or not it caused two files to go missing, this one, and a small text file that reported the version of z4mod. this file prevented z4control from working.
I will not fix this tonight, but I mostly understand it (altough not in exact detail of precisely understanding some of the odd symptoms, but I think dealing with this will likely solve it all) My diffs could never find the version file, cuase I never unpacked it to know it even existed in the first place. Waaaah.. bug tracking is tiring. We should have this all running very shortly.
update: my first attempt at fixing the repacking bug.. resulted (I already feared this but hoped it would just go away) in a kernel that seems totaly complete, but where it seems something in the init wrapper isn't working... getting closer to finding it.
update: LAST BUG FIXED
The last bug(which I previously assumed was part of the repack bug) was actually aslo part of z4build, now documented here:
http://forum.xda-developers.com/showpost.php?p=10638535&postcount=1062
I'm pretty sure that one should really get it all going now. there are no lines of code left to break. I've tested almost every line now. I'll get a new kernel out, but will need to wait for an updated z4control. z4ziggy seems busy right now maybe (no complaint obviously).
I can fix this last bug in my roll out of the kernel. The other remaining ones can be worked around pretty easily, but not pretty for user instructions, better to wait probably.
SK05 Rebuild test (PASS)
We have doubts about if the shw-m110s_defconfig is what is used by samsung so I decided to try to make a working kernel from an initramfs and froyo_update source code.
General idea of what I did...
sk05 source code froyo_update (from samsung)
sk05 initramfs (link in post 4 "initramfs SK05 Tested .. OK")
cd initramfs_dir
find . -print0 | cpio -o0 -H newc | gzip -9 -f > some/path/initramfs.cpio.gz
cd kernel source code root directory
modify Makefile ln. 184
make aries_android_rfs_defconfig
make menuconfig
disable a.out
add path to initramfs archive
compression gzip
make
tar --format=ustar SK05rebuilt.tar zImage
Click to expand...
Click to collapse
Results in a zImage the same size (4.6mb) as samsung's, and it boots.
awesome..
I GOT IT
That was big fat B to solve. Debugging self destructing scripts that run in a startup environment with different mounts and different PATH variable is no fun and requires some imagination. I had to work around 2 more bugs in z4build but now I have user transparent workarounds to all of them.. plug and play. Unfortunately I have about 30 minutes more free time today so I probably wont post it today. I should clean up some comments and such in it first probably. We'll see.
appagom said:
awesome..
I GOT IT
Click to expand...
Click to collapse
Very nice!
Sent from my SHW-M110S using XDA App
the "awesome" comment was referring to you. Should be able to take the grak of z4grak with some compiling , but I'm happy with it in too.. doesn't matter.
Anyway.. I updated the kernel page (from the link on OP). The new kernel is there, but I pushed it out very fast. Didn't flash last repack myself yet after changing comments.. but I only changed comments. (I am running the posted copy now) It needs testing since my system has gotten a been used and non-pristine. Get z4control, you can use it to flash it if you want. the rest is all push button I hope.
Oh and default settings are less safe than Tegrak, not much if any better than ext2 actually. I think.. can't confirm right now. I recommend modifying etc/fstab to data=ordered,barrier=1 personally.. but that's what I like about z4.. you can decide for yourself.
Sent from my SHW-M110S using XDA App

[REF] zImage Initramfs

Very basic guide to extract the initramfs from the zImage, as well as a dump of the initramfs inside I9100XEKDB firmware.
Q: Why? This is simple!
A: Might help someone out!
Linux Bash script follows (standard initramfs extract script) :
Code:
pos=`grep -F -a -b -m 1 --only-matching $'\x1F\x8B\x08' zImage | cut -f 1 -d :`
dd status=noxfer if=zImage bs=$pos skip=1 2>/dev/null| gunzip -q > kernel.img
start=`grep -F -a -b -m 1 --only-matching '070701' kernel.img | head -1 | cut -f 1 -d :`
dd status=noxfer if=kernel.img bs=$start skip=1 > initramfs.img 2>/dev/null
mkdir initramfshere
cd initramfshere
cpio -i --no-absolute-filenames < ../initramfs.img
ls -l
I9100XEKDB initramfs: http://www.sgscompilebox.dreamhosters.com/initramfs.tar.gz
Repacking should be easy as well, but I haven't tried to boot a kernel I have repacked myself yet. Since Chainfire has a root kernel posted, it should work without issue though -- and these are standard linux kernels after all.
Grab the kernel repacker from http://www.sgscompilebox.dreamhosters.com/repacker.tar.gz
Following bash script to use it:
Code:
end=`repacker/findcpio.pl kernel.img | cut -f 2`
(cd initramfshere/; find . | cpio --quiet -R 0:0 -H newc -o > ../newinitramfs.img)
gzip -f9c newinitramfs.img > newinitramfs.img.gz
repacker/kernel_repacker.sh zImage newinitramfs.img.gz
Might need some tweaking depending on your system, but this will hopefully get you started. You can use this to create your own root kernels as Chainfire has done, or modify as you want. Refer to the Q&A above!
Hi,
You can also find Samsung unmodified Galaxy S II initramfs on github, contributions welcome for missing ones:
https://github.com/GalaxySII/initramfs-galaxysii
Its repository collections is for every developer, and is not project/people specific: https://github.com/GalaxySII/
This is what Samsung should give us directly.
Related post, with reference Kernel source repository: http://forum.xda-developers.com/showthread.php?t=1054738
RyanZA said:
Very basic guide to extract the initramfs from the zImage, as well as a dump of the initramfs inside I9100XEKDB firmware.
Q: Why? This is simple!
A: Might help someone out!
Linux Bash script follows (standard initramfs extract script) :
Code:
pos=`grep -F -a -b -m 1 --only-matching $'\x1F\x8B\x08' zImage | cut -f 1 -d :`
dd status=noxfer if=zImage bs=$pos skip=1 2>/dev/null| gunzip -q > kernel.img
start=`grep -F -a -b -m 1 --only-matching '070701' kernel.img | head -1 | cut -f 1 -d :`
dd status=noxfer if=kernel.img bs=$start skip=1 > initramfs.img 2>/dev/null
mkdir initramfshere
cd initramfshere
cpio -i --no-absolute-filenames < ../initramfs.img
ls -l
I9100XEKDB initramfs: http://www.sgscompilebox.dreamhosters.com/initramfs.tar.gz
Repacking should be easy as well, but I haven't tried to boot a kernel I have repacked myself yet. Since Chainfire has a root kernel posted, it should work without issue though -- and these are standard linux kernels after all.
Grab the kernel repacker from http://www.sgscompilebox.dreamhosters.com/repacker.tar.gz
Following bash script to use it:
Code:
end=`repacker/findcpio.pl kernel.img | cut -f 2`
(cd initramfshere/; find . | cpio --quiet -R 0:0 -H newc -o > ../newinitramfs.img)
gzip -f9c newinitramfs.img > newinitramfs.img.gz
repacker/kernel_repacker.sh zImage newinitramfs.img.gz
Might need some tweaking depending on your system, but this will hopefully get you started. You can use this to create your own root kernels as Chainfire has done, or modify as you want. Refer to the Q&A above!
Click to expand...
Click to collapse
Hi..I notice there's an embedded kernel in the packer directory, but the path is an older version than the actual one in zimage. Is third just for pearl script purposes? Thanks
Sent from my GT-I9100
Hey RyanZA,
Following your script
> cpio -i --no-absolute-filenames < ../initramfs.img
extracts initramfs but gives me the error:
cpio: ../init: Cannot symlink to 'sbin-ueventd': Operation not permitted
Can you help a linux newbie here ? Do I need to be root?
EDIT: Ah! I think I know now... FAT does not support symlinks Going to ext...
Ok got the initramfs extracted from a zImage. Used repacker to create the zImage again. Did not change anything in initramfs. Filesize 5mb vs 8mb for the original. After a closer look I see that original contains lots of zeros. Ok appended zeros to match filesize and flashed the 'new' kernel. No go. Yellow triangle and no boot. Waited a long time.
Can anyone help? Maybe the repacker does something wrong? Maybe it should not compress?
Sent from my GT-I9100 using XDA Premium App
Anybody had any luck with this?
After said tweaking to get the repacker script running I got it to build a new zImage.
But mine was even only ~2MB small.... (seeing that the extracted initramfs summs up to about 3MB it makes at least a bit of sense, but still wondering).
Also the older kernel used (.29 against .35 that's actually running on my phone) makes me ....
Well, flashed it anyway but (as expected) it didn't work, phone showed the bootlogo and that's it, not even recovery worked.
So, is it the older kernel? Or is it forking up the initramfs image creation?
Or is there another way to rebuilt the kernel image with a new initramfs image?
I'd really like to get rebuilding the zImage working so I toy around with that a bit, try to make my own root kernel and all that funstuff
HellcatDroid said:
Anybody had any luck with this?
After said tweaking to get the repacker script running I got it to build a new zImage.
But mine was even only ~2MB small.... (seeing that the extracted initramfs summs up to about 3MB it makes at least a bit of sense, but still wondering).
Also the older kernel used (.29 against .35 that's actually running on my phone) makes me ....
Well, flashed it anyway but (as expected) it didn't work, phone showed the bootlogo and that's it, not even recovery worked.
So, is it the older kernel? Or is it forking up the initramfs image creation?
Or is there another way to rebuilt the kernel image with a new initramfs image?
I'd really like to get rebuilding the zImage working so I toy around with that a bit, try to make my own root kernel and all that funstuff
Click to expand...
Click to collapse
the fist script actually works good to pull initramfs. but I don't know about the repacker...better to build new
Yeah, trying to build a new kernel from sources at the moment (make is running as I type this).
Here's an idea why the rebuilder fails:
.29 kernel (that the rebuild script brings in and uses) but the initramfs has .35 version kernel modules (as it's for/from the .35 kernel)!
Not sure how delicate this version missmatch is, but there's a chance the one or the other important kernel module erroring out upon boot due to the version missmatch....
Well, let's see if a full build from sources works (as I know my luck, it won't....)....
that's because zImage has SFX code which tied very much to data (Image.gz). So you cannot just re-pack it back to existing zImage. You have to download source code of i9100 kernel and execute final part of kernel build where Image binary gets compressed and pre-pended by sfx header.
RyanZA said:
Following bash script to use it:
Code:
end=`repacker/findcpio.pl kernel.img | cut -f 2`
(cd initramfshere/; find . | cpio --quiet -R 0:0 -H newc -o > ../newinitramfs.img)
gzip -f9c newinitramfs.img > newinitramfs.img.gz
repacker/kernel_repacker.sh zImage newinitramfs.img.gz
Click to expand...
Click to collapse
err... the repacker/kernel_repacker.sh script only takes one argument.. how is it supposed to work???
sorg said:
that's because zImage has SFX code which tied very much to data (Image.gz). So you cannot just re-pack it back to existing zImage. You have to download source code of i9100 kernel and execute final part of kernel build where Image binary gets compressed and pre-pended by sfx header.
Click to expand...
Click to collapse
Yeah, that is actually what the repacker script does!
It has precomplied objects and compiles/links them together to the final (new) zImage.
saturn_de said:
err... the repacker/kernel_repacker.sh script only takes one argument.. how is it supposed to work???
Click to expand...
Click to collapse
You only pass the newinitramfs.img.gz that's created in the lines above, just drop the "zImage" from the commandline.
// EDIT
OK, I got as far as to compile my own kernel from the sources Samsung has released
I eventually end up with a nice and fresh, built from scratch zImage \o/
When I throw my selfmade zImage at the extractor script posted above, I get the proper (stock) initramfs filestructure I intended to put in (in other words, I managed to put my (as of now untouched) own initramfs.img into the zImage).
I create a nice .tar, flash with Odin and.... nothing
I get the bootsplash with the triangle and that's it, it doesn't get any further.
Anyone got a hint for me what I did wrong?
What I did:
(this all happened on a Linux machine)
extract Samy's kernel source
installed the codesourcery toolchain
set the CROSS_COMPILE var in ./kernel/Makefile to the proper path to the toolchain
ran
make c1_rev02_defconfig (according to readme.txt)
and then
make zImage CONFIG_INITRAMFS_SOURCE="/path/to/extracted/stock/initramfs/"
padded with 0x00s to the 8MiB size, tar'ed and Odin'ed
which brings me to the dead bootscreen....
Not even recovery works.
HellcatDroid said:
Yeah, that is actually what the repacker script does!
It has precomplied objects and compiles/links them together to the final (new) zImage.
Click to expand...
Click to collapse
I guess you've got repacker from first Galaxy?
It won't work. SFX header you're trying to compile is for first galaxy. It has hardcoded addresses and they are not compatible with Galaxy S II. Toolchain is also for SGS as well (not sure if it still suitable for SGSII).
Take kernel source code and toolchain for SGSII and it will work.
Yah, well, I got the kernel to compile fresh from sources now, no need for a repacker anymore, I just go make zImage and be happycat
Someone knows how to repack it?
Maybe Chainfire or Pulser?
Agreed, Can someone explain the process in full? modyfying and repacking zImage gets 2mb+ less in size, what we are missing?
Grooby said:
Agreed, Can someone explain the process in full? modyfying and repacking zImage gets 2mb+ less in size, what we are missing?
Click to expand...
Click to collapse
Necro much?
rawat said:
necro much?
Click to expand...
Click to collapse
zombie thread wants braaaaiiiiiiinnnnnnnnnnnnzzzzzzzzzzzzzz!!!!!!
Looks like i raised death searching for answer lool
A few tried to make repackers for the I9100 - and failed.
Even less know how to actually do it - and don't share the knownledge.
The thing is, that the initramfs is linked into the zImage during compile time, so it can't simply be "snipped out" and "new one pasted in".
That's why I eventually ended up compiling the whole thing from sources.
It would certainly nice if someone like ChainFire could share how to do it.... but he's too worried about others rebuilding his rootkernel with other nametags on it.
HellcatDroid said:
A few tried to make repackers for the I9100 - and failed.
Even less know how to actually do it - and don't share the knownledge.
The thing is, that the initramfs is linked into the zImage during compile time, so it can't simply be "snipped out" and "new one pasted in".
That's why I eventually ended up compiling the whole thing from sources.
It would certainly nice if someone like ChainFire could share how to do it.... but he's too worried about others rebuilding his rootkernel with other nametags on it.
Click to expand...
Click to collapse
GitHub.com/xiaolu
Sent from my GT-I9100 using xda premium

[DEV Idea] Magldr/CLK detection & Install Integration

CLK/MAGLDR Detection
Link to original thread: Neopeek
My old thread about this idea from july of last year was a fail, and that did not work at all. This is a completely different version tested and working by me and others.
Here is a very simple script (can this even be considered scripting?) to detect magldr/clk (for rom devs) and flash the correct boot type (boot.img or /boot) so end-users won't have to flash another kernel patch afterwards.
Background info:
CLK 1.4.0.1 (version and up) has an extra clk=1.4.0.1 (or cLK=x.x.x.x) at the end of cmdline (and magldr does not), so because of that, we can use this to find which bootloader is in use.
This is what the cmdline is when clk 1.4.0.1 is installed...
Code:
no_console_suspend=1 wire.search_count=5 clk=1.4.0.1
To detect CLK bootloader or MAGLDR bootloader, just run a shell script within updater-script and use grep to find clk anywhere in cmdline, and if it detects it, it will write "clk=true" to /tmp/nfo.prop and if not, it will write clk=null (we have to write something because if nothing is written, file_getprop will exit with error)
In Shell Script:
Code:
#!/sbin/sh
# checksys.sh
output=`grep -i "clk" /proc/cmdline`
if [ -n "$output" ]; then
echo "clk=true" > /tmp/nfo.prop; else
echo "clk=null" > /tmp/nfo.prop; fi
in Updater-script:
Code:
#check the system information of the system we are installing on
package_extract_file("checksys.sh","/tmp/checksys.sh");
set_perm(0,0,755,"/tmp/checksys.sh");
run_program("/tmp/checksys.sh");
if file_getprop("/tmp/nfo.prop","clk") == "true"
then
ui_print("CLK Detected... Enabling PPP...");
run_program("/sbin/sh","-c","
echo \"p\" > /system/ppp
else
ui_print("Magldr detected... Defaulting to RMNET...");
endif;
Other files you need to include such as libhtc_ril_wrapper.so/init.d scripts and modifications to build.prop or default.prop, you can figure out by yourself
Rom devs need only included boot.img! Please read this post.
However, users will need to modify their flash.cfg a bit. Please read complete info from this post
Click to expand...
Click to collapse
EXT detection script
Code:
#!/sbin/sh
# Check for mmcblk0p2 partition type
# e334 <[email protected]>
tp=$(parted /dev/block/mmcblk0p2 print | egrep -i 'ext[2-4]|linux-swap' | awk '{ print $5 }')
pr1=`echo "type=$tp" | cut -c -8`
echo $pr1 >> /tmp/nfo.prop
in updater-script
Code:
# Sample
if file_getprop("/tmp/nfo.prop","type") == "ext"
then
ui_print("Second Partition is Ext!"
else
ui_print("Second Partition is Linuxswap!"
endif;
If you change the name of "part=" to something else, make sure to change the cut deliminator also..
You can figure out the rest
Click to expand...
Click to collapse
Old Scripts (for historic purposes):
http://pastebin.com/b5YWvj3B
I want to say thanks to the work of Tytung, Koush, EZterry, Cedesmith, arif-ali, cmhtcleo, tytung, and Cotulla (feel free to donate to them) because I learned a lot looking from their work.
Any questions, please ask, thanks for looking!
Code:
output=`df | grep /data | cut -d " " -f5`
if [ $output -gt 455680 ]
then
installeu=`df | grep /sd-ext | cut -d " " -f5`
if [ $installeu -gt (size_of_ext_in_mb*1024) ]
then
echo "tmous=false" >> /tmp/device.prop
else
echo "tmous=true" >> /tmp/device.prop
else
echo "tmous=false" >> /tmp/device.prop
fi
This script will also let automate eu or tmous install,
if /data size is greater than 445 mb ( higher than what eu can have ) then it checks if /sd-ext size is also big (if user wants eu install on tmous device) otherwise it continues with normal tmous install.
Sorry if i can't interpret exactly what the script does because I'm not a native english speaker.
I wrote this yesterday for dunc001 when he needed automation in tbd rom.
great idea ... waiting to complete ....
Nice to see the android install process getting streamlined this way...
And then we would be able to implement automatic partitioning. Where a certain ROM would repartition system, boot and cache partitions automatically upon installation. (I don't think that's going to happen, or probably will, but in the long run )
Anyway, great to see those two ideas put into work. The more automatic installation becomes, the easier it is for newbies .
Appreciated.
Great implementation! Great idea.
thanks for sharing this great idea
i'm sure everyone all want this nice script!
I updated it to make it less "clunky", we can now run everything in updater-script
We've now got an auto install working for TBD which uses the /data size check to detect EU or TMOUS, then runs a check for existence of mmcblk0p2 (sd-ext) whether TMO or EU. If TMO is detected with no ext then TMO ROM configuration is installed. If TMO or EU with ext partition is detected then EU ROM configuration is installed. And if EU with no ext is detected then a warning message is displayed, /system is reformatted and installation is aborted. cLK detection is also incorporated for kernel installation. So now we have a fully automated install process regardless of bootloader, phone model and ext partition
The only thing we haven't checked is if someone has a TMO phone with no ext partition but with a Swap partition whether the swap partition would become 0p2, in which case we'd just need to add in an fschk to see if it is swap or not.
Anyway, the ROM is uploading now so I'm sure we'll hear soon enough if there is an issue LOL
Thank you so much for the inspiration for this and for the original idea
You can check the partition type with "parted /dev/block/mmcblk0p2 print" and use grep or sed to read.. I'm currently working on a script for that
EDIT: I reverted to old version because the updated version did not seem to be working consistently with the "test" command..
So if I add all the files needed for magldr & clk and put this in my updater script it will automatically detect what files to install or do I need a different script for that??
Also would I need to include both a boot.img and boot folder??
Another thing, when building my rom, I added the ril wrapper and a few other things in the build.prop file.. I don't know if thats correct or not but it worked and booted.
kylew1212 said:
So if I add all the files needed for magldr & clk and put this in my updater script it will automatically detect what files to install or do I need a different script for that??
Also would I need to include both a boot.img and boot folder??
Another thing, when building my rom, I added the ril wrapper and a few other things in the build.prop file.. I don't know if thats correct or not but it worked and booted.
Click to expand...
Click to collapse
Yes. You should add all the files needed for clk into the rom also
Dunc001 said:
The only thing we haven't checked is if someone has a TMO phone with no ext partition but with a Swap partition whether the swap partition would become 0p2, in which case we'd just need to add in an fschk to see if it is swap or not.
Click to expand...
Click to collapse
I finally got around to writing it.. I don't know if anyone else has already done so but this is completely based on my research and work..
I am sure there is a way to make the code less 'lengthy' but it works for now...
in script (or add to checksys.sh or wherever)
Code:
#!/sbin/sh
# Check for mmcblk0p2 partition type
# e334 <[email protected]>
tp=$(parted /dev/block/mmcblk0p2 print | egrep -i 'ext[2-4]|linux-swap' | awk '{ print $5 }')
pr1=`echo "type=$tp" | cut -c -8`
echo $pr1 >> /tmp/nfo.prop
in updater-script
Code:
# Sample
if file_getprop("/tmp/nfo.prop","type") == "ext"
then
ui_print("Second Partition is Ext!"
else
ui_print("Second Partition is Linuxswap!"
endif;
If you change the name of "part=" to something else, make sure to change the cut deliminator also..
You can figure out the rest
I hope this benefits the community even though I'm not that good at scripting and I don't have my HD2 anymore.
e334 said:
I finally got around to writing it.. I don't know if anyone else has already done so but this is completely based on my research and work..
I am sure there is a way to make the code less 'lengthy' but it works for now...
in script (or add to checksys.sh or wherever)
Code:
#!/sbin/sh
# Check for mmcblk0p2 partition type
# e334 <[email protected]>
tp=$(parted /dev/block/mmcblk0p2 print | egrep -iw 'ext[2-4]|linux-swap' | awk '{ print $5 }')
pr1=`echo "type=$tp" | cut -c -8`
echo $pr1 >> /tmp/nfo.prop
in updater-script
Code:
# Sample
if file_getprop("/tmp/nfo.prop","type") == "ext"
then
ui_print("Second Partition is Ext!"
else
ui_print("Second Partition is Linuxswap!"
endif;
If you change the name of "part=" to something else, make sure to change the cut deliminator also..
You can figure out the rest
I hope this benefits the community even though I'm not that good at scripting and I don't have my HD2 anymore.
Click to expand...
Click to collapse
Hey you don't have hd2 anymore? So where is your hd2? It's sadly to heard about this.(last time when I pressed the thanks button, I didn't notice the line.)
Sent from my HTC Sensation XL with Beats Audio X315e using XDA
iamcxa said:
Hey you don't have hd2 anymore? So where is your hd2? It's sadly to heard about this.(last time when I pressed the thanks button, I didn't notice the line.)
Sent from my HTC Sensation XL with Beats Audio X315e using XDA
Click to expand...
Click to collapse
I don't anymore.. I replace the digitizer 3 times already since may 2010 and I traded hd2 motherboard for mytouch 3g slide.. Maybe in the future I will get another one since it is such a great phone (when the touchscreen worked haha) I will still be around to offer help
e334 said:
I don't anymore.. I replace the digitizer 3 times already since may 2010 and I traded hd2 motherboard for mytouch 3g slide.. Maybe in the future I will get another one since it is such a great phone (when the touchscreen worked haha) I will still be around to offer help
Click to expand...
Click to collapse
My MyTouch that I'll be shipping in the next week and a half ^_^
Sent via XDA for Windows Phone (HTC HD2 running Windows Phone 7.5)
Thanks to cmhtcleo (from this post in the cm10 thread) and tytung (from this post), devs will not need to include both unpacked initrd.gz/zImage and boot.img if they want to simplify things and encourage transition to boot.img only.
Only boot.img is required and some modification to flash.cfg in magldr 1.13
I have also removed unnecessary lines from script posted in OP.
Just a notice for devs who haven't discovered this.

[Kernel] Update Kernel | Stock Asus Kernel 10.4.2.17 | CIFS & MD4 Modules !

Hi !
Stock Asus Kernel 10.4.2.17 & 10.4.2.16 - build from the last update Asus source code !
Because Asus has not yet released the new firmware 10.4.2.16, propose to see together, which brings new kernel 10.4.2.16 !
Useful for all those who want to see what improvements brought on kernel Asus & also recommended for those who opt for the basic root version !
This kernel has init.d* support, root support | insecure kernel with "USB debugging" already enabled !
Change log :
unfortunately not found ( Asus not released yet ! )
Downloads :
kernel_10.4.2.16.zip
boot.blob_10.4.2.17.zip - 5.33 MB
cifs_md4_10.4.2.17.zip - 131.65 KB
Installation : 10.4.2.16
recommended to install just over latest firmware 10.4.2.13 ;
copy kernel_10.4.2.16.zip on your device and go to TWRP recovery ;
wipe cache & dalvik-cache -> Install ! ;
Now you have the last Android Asus firmware 10.4.2.13 with the last Asus kernel 10.4.2.16 !
Installation : 10.4.2.17
extract boot.blob from archive boot.blob_10.4.2.17.zip
put your device in fastboot mode
> fastboot -i 0x0B05 flash boot boot.blob
> fastboot -i 0x0B05 reboot
unzip archive cifs_md4_10.4.2.17.zip and extract cifs.ko & md4.ko
> adb shell
# mount -o remount,rw -t ext4 /dev/block/mmcblk0p1 /system
(...or if you have busybox already installed : # busybox mount -o remount,rw /system )
# exit
> adb push cifs.ko /system/lib/modules
> adb push md4.ko /system/lib/modules
> adb shell
# chown 0.0 /system/lib/modules/*
# chmod 0644 /system/lib/modules/*
# insmod /system/lib/modules/cifs.ko
# insmod /system/lib/modules/md4.ko
# exit
* available for any rom ( custom rom ) who already has busybox installed !
regard,
Surdu Petru
I have to say I'm pretty impressed, seems as smooth at 1300 as it did before on a modified .13 kernel at 1700 mhz! Thank you!
Sent from my ASUS Transformer Pad TF300T using Tapatalk 2
Do you plan on adding oc an your I/o tweaks to this Cus that would be awesome
Sent from my SAMSUNG-SGH-I727 using xda app-developers app
here is the diff from 10.4.2.13->10.4.2.16 the kernel was released for the JP sku, possibly adding support for an audio dock of some sort.
https://github.com/untermensch/asus_kernels/commit/a377c8f41d6d99aa102ecfc976e4049c80b7ec6a
Charle692 said:
Do you plan on adding oc an your I/o tweaks to this Cus that would be awesome
Sent from my SAMSUNG-SGH-I727 using xda app-developers app
Click to expand...
Click to collapse
Yes, sure ...
untermensch said:
here is the diff from 10.4.2.13->10.4.2.16 the kernel was released for the JP sku, possibly adding support for an audio dock of some sort.
https://github.com/untermensch/asus_kernels/commit/a377c8f41d6d99aa102ecfc976e4049c80b7ec6a
Click to expand...
Click to collapse
Thank you untermensch ! :good:
After deciding to keep my tf300 until i see the nexus 10 in person at least. Im now running stock rooted and this kernel.
Wow this is super smooth its a joy to use this tablet now... Thanks!
Although i like to OC my devices im now starting to appreciate longer battery life more..
Sent from my GT-N7000 using xda app-developers app
Quick question: did anyone notice I/O boost after flashing this kernel (e.g in quadrant)?
Hi !
Update !
Build from Asus kernel source code ( last update 10.4.2.17 14/11/2012 ) => modules cifs, md4 & kernel !
...please check my first post ! :good:
Hi !
Cifs & md4 module for the last update Asus TF300T Firmware 10.4.2.17 !
Download :
cifs_md4_10.4.2.17.zip - 131.65 KB
Installation :
unzip archive and extract cifs.ko & md4.ko
conect USB cable
> adb shell
# mount -o remount,rw -t ext4 /dev/block/mmcblk0p1 /system
(...or if you have busybox already installed : # busybox mount -o remount,rw /system )
# exit
> adb push cifs.ko /system/lib/modules
> adb push md4.ko /system/lib/modules
> adb shell
# chown 0.0 /system/lib/modules/*
# chmod 0644 /system/lib/modules/*
# insmod /system/lib/modules/cifs.ko
# insmod /system/lib/modules/md4.ko
# exit
Good luck ! :good:
regards,
Surdu Petru
surdu_petru said:
Hi !
Cifs & md4 module for the last update Asus TF300T Firmware 10.4.2.17 !
Download :
cifs_md4_10.4.2.17.zip - 131.65 KB
Installation :
unzip archive and extract cifs.ko & md4.ko
conect USB cable
> adb shell
# mount -o remount,rw -t ext4 /dev/block/mmcblk0p1 /system
(...or if you have busybox already installed : # busybox mount -o remount,rw /system )
# exit
> adb push cifs.ko /system/lib/modules
> adb push md4.ko /system/lib/modules
> adb shell
# chown 0.0 /system/lib/modules/*
# chmod 0644 /system/lib/modules/*
# insmod /system/lib/modules/cifs.ko
# insmod /system/lib/modules/md4.ko
# exit
Good luck ! :good:
regards,
Surdu Petru
Click to expand...
Click to collapse
Surdu Petru,
Thanks for compiling those modules, maybe not the best place to ask, but I'm just currious
if you had any issues with the 10.4.2.17 source code from ASUS, I wish I knew what I was doing wrong
but I had noticed the source was about 25% smaller than previous source I had downloaded from ASUS
KAD79 said:
Surdu Petru,
Thanks for compiling those modules, maybe not the best place to ask, but I'm just currious
if you had any issues with the 10.4.2.17 source code from ASUS, I wish I knew what I was doing wrong
but I had noticed the source was about 25% smaller than previous source I had downloaded from ASUS
Click to expand...
Click to collapse
Hi !
... the currently download has ~197.87MB and include kernel source ~452.2MB and mydroid ~414.2MB ( you can build here wireless driver ! )
... the previous source for firmware 10.4.2.17 was incomplete ! :good:
Flashable?
Please can u make a flasable zip of 10.4.2.17 so i can install it via TWRP cause i cant make it with fastboot method.
pankobios said:
Please can u make a flasable zip of 10.4.2.17 so i can install it via TWRP cause i cant make it with fastboot method.
Click to expand...
Click to collapse
Hi !
...please use Firmware 10.4.2.18 , is up to date ! :good:

[DEV][CLK][2013-12-08]CM-11.0 unofficial - Android 4.4 [2.6.x and 3.0.101 kernel]

CM 11.0 for HD2 (unofficial)
Status: testing
CWM-Recovery 6.0.4.4: Download
Download: 2013-12-08 (2.6.32 tytung kernel) compiled by chautruongthinh: http://d-h.st/yoY
fixed: sdcard and nativeSD, directSD
source updated to Android 4.4.1
2013-12-03 (2.6.35 kernel) http://d-h.st/e9c
For magdlr: View attachment cm-11-20131203-UNOFFICIAL-leo-NAND-MAGLDR.zip
Download: 2013-12-04 (3.0.101 kernel) http://d-h.st/xAm
View attachment 2431327View attachment 2433342
2.6.32 kernel source:
2.6.35 kernel source:
3.0.101 kernel source:
THANKS to:
CyanogenMod - Team for CM-11
EVERVOLV TEAM for the legacy codes.
TYTUNG for his contribution Kernel, Aroma Installer, libgps with AGPS
MARC1706 for contribution to developing new kernels.
Sportsstar89, Securecrt, Xylograph, Pixelfreak, ph03n!x, datagr, chautruongthinh, Rick_1995, Daekin, BSDgeek_Jake
texasice, marco.palumbi, Robbie-P, zeppelinrox, zexmunze, zain0300 for all HD2 kernels, libs, mods, corrections
And all those individual/teams who I might have missed.
What is working 2.6.32 kernel;
- lights
- calling
- mobile data 2g/3g
- camera
- sound
- display + touch
not working
- adb
- wifi
- camcorder
What is working 2.6.35 kernel:
- adb
- lights
- LED
- Display + Touchscreen
- mobile data 2g/3g
- no need for xattr on yaffs2
What is working 3.0.101 kernel:
- Lights
- LED
- Display + Touchscreen
- Sound
- 2g/3g
- calling
OLD !!
Android 4.4 for HTC - LEO
Code:
[COLOR=Blue]What work:[/COLOR]
- rom boots but display did not work. (black screen only backlight on)
- Sound
- Touchscreen
- adb
For Android 4.4 we need a new recovery and new kernel with some security options enabled.
Leo NAND use yaffs2 file system. --> We need to port xattr support for yaffs2.
Leo NativSD use ext4 file system. --> I compiled a recovery and a kernel with enabled xattr and security for ext4.
Recovery for EXT4 only support: http://d-h.st/wa4
Kernel: http://d-h.st/368
Kernel source: https://github.com/walter79/android_kernel_htc_leo_2.6.35-mark1706-based
(cm-10.2 branch)
UPDATE 2013-11-21:
Recovery for yaffs2 and ext3/4 support (only for 3.x kernel yet)
Download: http://d-h.st/QtF
Kernel source: https://github.com/walter79/android_kernel_htc_leo (cm-11.0 branch)
2.6.35 - Local.xml: https://github.com/walter79/android_htc_leo_local_xml
With the recovery and a custom installer script we can install Android 4.4 on sdcard ext4 partitions.
(files need to install to mmcblk0p2)
Installer:
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p2", "/system");
.
.
ui_print("Mounting System...");
mount("ext4", "EMMC", "/dev/block/mmcblk0p2", "/system");
ui_print("delete old System...");
delete_recursive("/system");
ui_print("Installing System...");
package_extract_dir("system", "/system");
Local.xml: https://github.com/walter79/android_htc_leo_local_xml
init.htcleo.rc
Code:
on fs
# Mount all partitions
# mount_all ./fstab.htcleo
# mount mtd partitions
# Mount /system rw first to give the filesystem a chance to save a checkpoint
#mount yaffs2 [email protected] /system noatime nodiratime
#mount yaffs2 [email protected] /system ro remount
# move cache to data -TYT
#mount yaffs2 [email protected] /data nosuid nodev noatime nodiratime
#mount yaffs2 [email protected] /mnt/cache nosuid nodev
# wait for sdcard
# wait has a timeot of 5 seconds.
# calling it 4 times allows 20 seconds for the mmcblk0p2 partition to show up
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
# SD Card Speed Fix
write /sys/devices/virtual/bdi/179:0/read_ahead_kb 2048
# File system check
exec /bin/busybox sh -c "/bin/e2fsck -p /dev/block/mmcblk0p2 > /fscksystem.log"
exec /bin/busybox sh -c "/bin/e2fsck -p /dev/block/mmcblk0p3 > /fsckdata.log"
# mount the 1st (NativeSD) SD-EXT partition
mount ext4 /dev/block/mmcblk0p2 /system wait noatime nodiratime barrier=0
# mount the 2nd (NativeSD) SD-EXT partition
mount ext4 /dev/block/mmcblk0p3 /data wait noatime nodiratime barrier=0
# cleanup
# delete /bin to free ram
rm /bin/busybox
rm /bin/e2fsck
rmdir /bin
I will uploading my compiled Android 4.4 rom. Installer works it use 2 ext4 partitions. mmcblk0p2 for /system and mmcblk0p3 for /data.
Boot.img will installed to NAND /boot.
!!! You will need 2 ext4 primary partitions on your sdcard !!!
!!!This rom will delete all data from your ext4 partition !!!!
ROM: http://d-h.st/0at
1 st reply
1 st reply.
Good Jobs!
Thank you for your hard work!
This is awesome... thankyou thankyou...
@walter79
clk or magldr ?
BLiZzR said:
@walter79
clk or magldr ?
Click to expand...
Click to collapse
CLK.
walter79 said:
CLK.
Click to expand...
Click to collapse
hello walter , thank's for your great work . i have installed clk and after kitkat , the rom boot but stuck on white android screen .what is the size of the partition?
philipped346 said:
hello walter , thank's for your great work . i have installed clk and after kitkat , the rom boot but stuck on white android screen .what is the size of the partition?
Click to expand...
Click to collapse
We need to fix display_legacy. I use 650 mb for first ext4 and 1200 for 2nd ext4 partition.
Good job @walter79
hope to get yaffs2 with xattr done soon
nice job
thanks dear...
mosi hd2 said:
nice job
thanks dear...
Click to expand...
Click to collapse
Wo0ow Thanks Bro
Mosi
Ignore this
http://d-h.st/wa4
walter79 said:
http://d-h.st/wa4
Click to expand...
Click to collapse
What we need for using kitkat with nand, can you explain please?
Kernel update with yaffs filesystem support for xattr and security. For more information ask "google" xattr yaffs patch, please.
I already knew that, searched before asking. Thanks anyway.
Probably I couldnt ask rightly. Can we need a new flasher (and/or bootloader) for magldr & clk for flashing kitkat on nand memory? Because DAF only supports raw (for boot and recovery part.) and yaffs types fot example.
walter79 said:
Rom boots. ADB works well but some EGL errors. Loop on bootanimation
Click to expand...
Click to collapse
Well rom does boot, but you don't get stuck in bootloop, but when in finishes booting, the screen does show anything.
And going trough logcat i see this line constantly showing up
Code:
E/WVMExtractor( 96): IsWidevineMedia not found in libwvm.so
maybe libwm.so is the problem for lack of screen output?
Ignore
For NativeSD script, creating 2 EXT4 partitions on SD card are we going to lose multiboot futures with older ROMs which use just first EXT4 partition as System?
lolerpro8 said:
Well rom does boot, but you don't get stuck in bootloop, but when in finishes booting, the screen does show anything.
And going trough logcat i see this line constantly showing up
Code:
E/WVMExtractor( 96): IsWidevineMedia not found in libwvm.so
maybe libwm.so is the problem for lack of screen output?
Click to expand...
Click to collapse
That error have nothing to do with Graphics, In my Sense 5 port, i have this error, and it works well

Categories

Resources