Hi, Guys
Currently I'm working on preparing Linux boot and rootfs image for tf700 device.
Project is based on Nexus 7 Ubuntu installer, Linaro distribution and Hundsbuah kernel.
Release version 0.8.3
Developers thread is here
Warning!
You can brick your device or loose all your data. I'm not to be held responsible if you damage or brick your device. Please, be careful.
This manual has been prepared for the advanced users. You are an advanced user?
You have linux experience
If there is a problem - you contact support and provide all the necessary information (devices info, steps to reproduce, logs)
Please, change password for ubuntu user at first login. Default password is "ubuntu".
Components:
This system consists of several components:
Installer (v0.8.3)
- is standart Android ZIP update file with Aroma interface.
Features:
Pretty simple touch interface
Installing and usage Linux without a keyboard or dock
Detailed localization of install process (rus, eng)
Any device to install rootfs (usb media, sdcards or internal virtual disk file)
You can skip rootfs preparation and install only bootimage (if dualboot has been replaced by another installation)
Data2sd option supported
Use android /data partition as /home directory for users
Autobackup of old virtual rootfs image file and ubuntu user
Select boot priority - you can select default system to boot (Basic or Linux)
Next release features:
Review of initrd options scheme
Install additional system to directory
Rootfs archive finder search maxdepth 3
Save log into internal memory
{
"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"
}
Bootimage (v0.8.3)
- contains Linux kernel (zImage) and initial ramdisk (initramfs). It is created during installation and stored in a special LNX partition on your device.
Features:
Support of many basic systems - Android (CleanROMv3.x, CleanROMv3.x+Data2SD, CM10.x) and Ubuntu-Touch
Any media booting - you can boot SDcard, microSD or usbdisk
Virtual Disk multiboot - possible to select need virtual disk (up to 9)
Android & Ubuntu-Touch booting - can boot android system init from media or virtual disks
File system checker - before mounting filesystem should be checked by fsck.
Hundsbuah kernel - v2.1 optimized kernel
Next release features:
Support for 4.2 android (CleanROMv4.x)
Run additional system from directory
RootFS archive
- compressed tar archive with root file system of OS. It is unpacked during installation to a prepared ext4 filesystem (in file or media device).
Ubuntu 12.10 (v0.8.0)
Archive contain prepared Ubuntu 12.10 environment with last updates, based on Unity (3d) with Cube Desktop. You can install any software (like lxdm or xfce) to improve desktop performance, but (for now) only Unity will be supported.
Features:
Pad-mode - you can use your device as pad without dock
Keyboard remapping - Special keys is replaced to default (Esc, F1-12, Ins, Print, Break, Del, Home->Alt, Search->Meta4) by evdev keymap.
WiFi - You can connect to internet or lan through wifi
Touchpad 2 fingers scrolling - Move 2 fingers up-down to scrolling. 2 finger tap - is mouse 3rd button.
Touchscreen - Supports right click by touch one finger and click by second finger.
OpenGL ES - 3D, games (eduke32, Jagged Alliance 2) and nice browsing by Chromium
Audio and Video up to 1080p - Use nvgstplayer to HW decoding FullHD video
nvgstplayer --sas="audioconvert ! pulsesink" -i <videofile> - Fullscreen mode
nvgstplayer --svs="nvxvimagesink" --sas="audioconvert ! pulsesink" -i <videofile> - Window mode
Problems:
Unity has some problems with performance and ram eating - this is place for optimizations.
Going to suspend is freezing device
HDMI FullHD is not working (but HD is ok)
Bluetooth not working
Disable speaker if headphones connected
Totem is not support nvidia gstreamer plugins
No flash player - only HTML5
Skype and any proprietary software (we need ARM binary, not x86)
Ubuntu-Touch preview (v0.5.2 2013/03/25)
Features:
Smooth touch interface
WiFi support (fixed)
Frontal Camera
Ubuntu 13.04 - development
First release features:
Packages for specific tf700t and tegra3 components (tf700 ppa)
Wayland + Weston + libhybris optional support
Install Manual:
For now installation is very simple)) No console operations needed!
Requirements:
Access to recovery & zip upgrade
> 3Gb free space in tf700 /sdcard folder or external storage
Process:
Get linux-install-0.8.3.zip (12 Mb), (mirror) MD5: 46e458791d232dafa7df49a7b506beca
Get need rootfs:
Ubuntu: rootfs-ubuntu-12.10-0.8.0.tar.lzma (687 Mb), (mirror) MD5: 6dbf50fe8623ceef3e5771e01ba52938
Ubuntu-Touch preview: rootfs-ubuntu-touch-tf700t-0.5.2_20130325.tar.lzma (444 Mb), (mirror) MD5: d50b7fe310f0feb23729e9f857e5c157
Arch (workdowg): arch linux thread
Copy linux-install-*.zip and rootfs-*.tar.lzma to your SDcard or /sdcard on your tf700
Reboot to recovery mode
Run linux-install-*.zip
Next, next, next ))
Wait, wait...
Done, now you can reboot and see four penguins!
If you have a problem with installation process - please, save install log and attach it to your help request message with good description.
Uninstall:
Really? I feel so sad
To complete uninstall multiboot & linux you need:
Reinstall your Android distributive or kernel part of it (this is replaces bootimage with multiboot)
Remove /data/media/linux directory with linux root file systems
Epilogue:
Currently we have basic linux environment with graphics and internet. For now, Android is more friendly to the user on a Tablet PC, but we can tilt the balance to Ubuntu advantage.
If you have any question about usage - please, post it here.
Really appreciate you effort! Why not post this in the developers forum, where you might get some good inputs from other brainy people like yourself.
rahulunni said:
Really appreciate you effort! Why not post this in the developers forum, where you might get some good inputs from other brainy people like yourself.
Click to expand...
Click to collapse
I would like to prepare this howto (after stabilization and fixing minor bugs) for general users. But thanx for you response - brainy people do not come here?
How does this vary from the other Ubuntu effort? Why not combine resources?
http://forum.xda-developers.com/showthread.php?t=1988170
danger-rat said:
How does this vary from the other Ubuntu effort? Why not combine resources?
http://forum.xda-developers.com/showthread.php?t=1988170
Click to expand...
Click to collapse
That would be great! At the moment I'm trying to run their environment using fastboot and find differences. I already sent message to jaybob413 and we try to combine our resources.
rabits said:
I would like to prepare this howto (after stabilization and fixing minor bugs) for general users. But thanx for you response - brainy people do not come here?
Click to expand...
Click to collapse
I am sure they do. Just that the developers forum seemed more appropriate. Anyway, good luck and will wait for your work to finish!
rabits said:
fastboot boot boot.img
Click to expand...
Click to collapse
Good idea to boot via fastboot, that should save the hassle of permanent reflashing the kernel - however it doesn't work for me, at least with the kernel from the other Ubuntu project.
First try: use a raw kernel+ramdisk image (starting with "ANDROID!"):
Code:
[email protected] ~/android/tf700/ubuntu $ fastboot boot blob.LNX
downloading 'boot.img'...
OKAY [ 2.829s]
booting...
FAILED (remote: ()
finished. total time: 2.830s
Second try: use the complete blob:
Code:
[email protected] ~/android/tf700/ubuntu $ fastboot boot blob
creating boot image...
creating boot image - 6281216 bytes
downloading 'boot.img'...
OKAY [ 7.318s]
booting...
FAILED (remote: ()
finished. total time: 7.319s
Fastboot itself works, because after that I issued "continue" and it booted the installed Android kernel just fine:
Code:
[email protected] ~/android/tf700/ubuntu $ fastboot continue
resuming boot...
OKAY [ 0.000s]
finished. total time: 0.000s
Any idea?
What's also interesting is that last time I flashed stuff with fastboot some weeks ago, "fastboot devices" used to show all "??????" and I had to use the well-known "-i 0xb05" option. Today "fastboot devices" showed a proper serial number and I could omit the option (also tried specifying it anyway, but it did not make any difference). Maybe that was repaired with a recent bootloader.
You typically have to include the device ID in the fastboot command for this device... might be worth a try?
For example:
fastboot -i 0x0B05 flash recovery twrp.blob
Not quite sure what the syntax is to boot an image...
danger-rat said:
You typically have to include the device ID in the fastboot command for this device... might be worth a try?
Click to expand...
Click to collapse
Read my post to the end...
_that said:
Code:
[email protected] ~/android/tf700/ubuntu $ fastboot boot blob.LNX
downloading 'boot.img'...
OKAY [ 2.829s]
booting...
FAILED (remote: ()
finished. total time: 2.830s
Any idea?
Click to expand...
Click to collapse
I see - you use blob. It's wrong - you need to unpack blob (see the blobunpack on this forum). Fastboot can flash only images. Blob - is used from zip and sdcard.
_that said:
Read my post to the end...
Click to expand...
Click to collapse
Yes, sorry, saw that afterwards...
rabits said:
I see - you use blob. It's wrong - you need to unpack blob (see the blobunpack on this forum). Fastboot can flash only images. Blob - is used from zip and sdcard.
Click to expand...
Click to collapse
blob.LNX is actually the output of blobunpack, and it's a boot image starting with the "ANDROID!" magic. As you can see above, I tried both variants and neither worked.
rabits said:
I see - you use blob. It's wrong - you need to unpack blob (see the blobunpack on this forum). Fastboot can flash only images. Blob - is used from zip and sdcard.
Click to expand...
Click to collapse
I believe you can flash blobs - see my earlier post. I'm pretty sure that's how I flashed recovery...
Thank you for your work and this awesome project!! If this becomes stable and usable, I'll be buying the keyboard dock for my Infinity!! Congratulations on your progress thus far, and a big thank you!!! I was just thinking the other day how much I would love to have this capability!! Would give me a Ubuntu system for me to easier work on various Android phones
Sent from my EVO 4G LTE using xda premium
Nothing have ever excited me more than this. Thank you so much for all your work! Im not a big linux programmer, but iv been using it for the better part of my life. If i can help in any way, Im in!
Thanx for your response - now I prepare rootfs for publication and I'll do this in near time.
rabits said:
Thanx for your response - now I prepare rootfs for publication and I'll do this in near time.
Click to expand...
Click to collapse
Awesome!!!!!
Take your time man. We're in no rush and my Infinity will probably never leave me, especially if you get this going!!! Thanks again!!!
Sent from my EVO 4G LTE using xda premium
Looks like you're making good progress
rabits said:
Thanx for your response - now I prepare rootfs for publication and I'll do this in near time.
Click to expand...
Click to collapse
Great news really looking forward to this. :good:
Nice. Its always good to options when it comes operating systems.
Also, is this bloated at all? Because, Ubuntu for non-embedded systems has been very bloated since 11.04 and got worse with 11.10.
Related
I have working on a project in the form of an app, which guides you through the installation of Ubuntu within android via chroot. It includes a ubuntu 10.10 image I have been working on which includes lots of program to allow users to develop program/scripts etc within Ubuntu on there phone/tablet.
However I have I have yet to get much testing on this device and would like more feedback from users!
Please post your device/kernel/rom along with what did and didn't work, so I can draw up what I need to change in the next release of the app/ubuntu build.
Website
http://linuxonandroid.blogspot.com/
Video
http://www.youtube.com/watch?v=UCqzs8yQTM8
App Download
Free App
Paid App
Boot Script
ubuntu.sh(V5)
Full Image
This image is 1.5GB to download, once extracted 3.5GB, and include alot of programs like openoffice, thunderbird, firefox and over programs for 'developing' - Also allows you to switch between the LXDE and Gnome desktops, and you can define screen size on boot!
ubuntuV5-image.zip
Lightweight Image - This is yet to be included in an app, will be included in the next release (aka 2.0 ), so get it now before anyone else!
This image is just under 500MB to download, once extracted 2.5GB, and include only programs needed (LXDE desktop, web browser, + other basic programs) also allows you to define screen size on boot
ubuntuV5-sm-image.zip
12.04 images
I have now started work on building new 12.04 images these come in core (just the bear-bones ubuntu) and full (ubuntu with GUI and other programs) and will be updated as 12.04 moves through its milestones (and when I make new updates to the mods I make from the main stream arm port).
These are for testing ONLY until 12.04 reaches stable release.
You can view the images here:
http://sourceforge.net/projects/linuxonandroid/files/Ubuntu/12.04/
I also want to build up a small group of testers who I can email with new images and scripts, these will include all future distros that I do. If you are interested in joining this test group please PM me or send a email to [email protected]
The only requirement is that your willing to test and send feedback along with screen shoots etc where required, it would also be good if your willing to try different roms and kernels for your device!
Sig Banner
Show your love of ubuntu on android with my sig banner:
{
"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"
}
image url is "http://dl.dropbox.com/u/11206993/ubuntuuser.png"
Other Guides
Like this guide? want to try something different? then check out my other guides for different distro's
Backtrack - This is a distro that is based around security testing, it also includes the Gnome desktop environment and a range of other programs.
Updates
18/02/12
*New 12.04 images started building, for now not included in the app but once a bit more stable will be included
29/01/12
*New V5 small image, featuring fixed Java, even more lightweight (now around 1.2GB free) and user can set screen size on boot
*PAID New Build guide which shows you how to build your own Ubuntu images
*Brand new UI To make the whole thing more useable
*PAID new 'one click boot' feature to allow quick booting from either the widget or inside the app
*PAID new widget to activate the one click boot
*PAID app install guide changed in light of 'one click boot'
*Fixed keyboard mapping of random letters in Gnome
18/01/12
*Large ubuntu image now allows user to set screen size on boot!
*Large Ubuntu image now lets you select between LXDE and Gnome desktops
*Large Ubuntu image has been recompiled to fix the likes of Java (note some of the above changes will be included in the small image in the future)
*FAQ section updated with more answers to questions I have been getting
*Install guide updated in light of the new large image
06/01/12
*PAID app file downloads now use new fast FTP server and support direct downloading (click the button to download a image and it starts to download right away)
*New boot script which has fixed problems with it not booting on alot of devices, and fixed problem which some people getting a grey screen when loading UI
*Boot script now downloaded in zip file to fix problems with downloading script
*Both apps fixed to support low resolutions
*Both apps cleaned up
28/12/11
*PAID app now supports 960x540 'qHD' resolution
*ALL Ubuntu lightweight images cleaned up even more saved another 300MB of space
*ALL Ubuntu images updated with all new updates
*ALL Ubuntu images now in .zip format to fix problems with some peoples devices failing to extract the .rar files
*Boot script updated, once booted now terminal acts like a command line interface for Ubuntu, and some boot problems now fixed
*Image and boot script now downloadable separately to allow easier updating
19/12/11
New 'lighter' ubuntu image options for all resolutions already supported
15/12/11
New ubuntu images with all updates up to 15/11/11
FREE app ubuntu image resized to fit 800x480 resolution
PAID app ubuntu images now includes 4 images for 800x480, 854x480, 1024x600 and 1280x800 resolutions
http://forum.xda-developers.com/showpost.php?p=20598548&postcount=83
Samsung Galaxy Note G7000
FM 1.5 Kernel
RocketRom V10 (14Toggle, smoothnessupdate, addperformance, stock theme)
Note freezes after executing ubuntu.sh, only restarting by holding powerbutton helps...
It's a pity, I thought booting ubuntu is only possible on a Rom with loop devices capabilities and now I read that only the stock rom is working
tried ubuntuv3.sh see picture:
http://imageshack.us/f/808/sc20111223042953.png/
Allamann said:
http://forum.xda-developers.com/showpost.php?p=20598548&postcount=83
Samsung Galaxy Note G7000
FM 1.5 Kernel
RocketRom V10 (14Toggle, smoothnessupdate, addperformance, stock theme)
Note freezes after executing ubuntu.sh, only restarting by holding powerbutton helps...
It's a pity, I thought booting ubuntu is only possible on a Rom with loop devices capabilities and now I read that only the stock rom is working
tried ubuntuv3.sh see picture:
http://imageshack.us/f/808/sc20111223042953.png/
Click to expand...
Click to collapse
Indeed its VERY odd that stock works but custom roms do not work...should really be the other way round, perhaps something to do with how the device file system in custom roms is different or something?
I don't know, this is the problem trying to support as many devices as possible, I don't have the device to test and work out what's wrong, just got to keep basically stabbing into the dark until I hit something
Change log for new release (release will be in the next few days for paid end of next week for free) - all new images etc will be added to the first post as they are finished and uploaded!
*PAID app now supports 960x540 'qHD' resolution
*ALL Ubuntu lightweight images cleaned up even more saved another 300MB of space
*ALL Ubuntu images updated with all new updates
*ALL Ubuntu images now in .zip format to fix problems with some peoples devices failing to extract the .rar files
*Boot script updated, once booted now terminal acts like a command line interface for Ubuntu, and some boot problems now fixed
*Image and boot script now downloadable separately to allow easy updating of the script
*+more likely before release
Allamann said:
http://forum.xda-developers.com/showpost.php?p=20598548&postcount=83
Samsung Galaxy Note G7000
FM 1.5 Kernel
RocketRom V10 (14Toggle, smoothnessupdate, addperformance, stock theme)
Note freezes after executing ubuntu.sh, only restarting by holding powerbutton helps...
It's a pity, I thought booting ubuntu is only possible on a Rom with loop devices capabilities and now I read that only the stock rom is working
tried ubuntuv3.sh see picture:
http://imageshack.us/f/808/sc20111223042953.png/
Click to expand...
Click to collapse
+1 I got it to boot with cf kernel but not with fm or abyss kernel.
Sent from my GT-N7000 using xda premium
timstanley1985 said:
+1 I got it to boot with cf kernel but not with fm or abyss kernel.
Sent from my GT-N7000 using xda premium
Click to expand...
Click to collapse
Odd so I'm guessing the two kernels that don't work don't have loop support...best talk with the kernel developer
Sent from my HTC Desire S using XDA App
timstanley1985 said:
+1 I got it to boot with cf kernel but not with fm or abyss kernel.
Sent from my GT-N7000 using xda premium
Click to expand...
Click to collapse
Yep, I was really enjoying - had PHP and mysql installed and working as a wee test environment, then flashed FM and no more Ubuntu.
Thanks for the work - appreciated
If I manually downloaded the script and the image, where do I put
the extracted content of the zip, and the script ? on the root of external SD or phone storage ?
lucid said:
If I manually downloaded the script and the image, where do I put
the extracted content of the zip, and the script ? on the root of external SD or phone storage ?
Click to expand...
Click to collapse
Place them in a folder called ubuntu on either your sdcard or internal memory as you have both either should work
Sent from my HTC Desire S using XDA App
Thanks, by pressing ahead without knowing I put the files there, however, in terminal emulator, after aquiring superuser persmissions, changing to the ubuntu folder wont work. I must be doing something wrong. I came as far as cd /sdcard but /sdcard/ubuntu fails. Asking ls -a says dir is empty ? Linux noob
lucid said:
Thanks, by pressing ahead without knowing I put the files there, however, in terminal emulator, after aquiring superuser persmissions, changing to the ubuntu folder wont work. I must be doing something wrong. I came as far as cd /sdcard but /sdcard/ubuntu fails. Asking ls -a says dir is empty ? Linux noob
Click to expand...
Click to collapse
check in a file explorer where the sdcard is mounted, sometimes the internal memory is mounted as the sdcard directory and then the sdcard itself is mounted in another directory within that.
Once you work out where its mounted then just cd to that location
Got it to work. Copied the ubuntu folder to /
Pretty responsive in 24bit colour. Working with cassies ultralight v4.
lucid said:
Got it to work. Copied the ubuntu folder to /
Pretty responsive in 24bit colour. Working with cassies ultralight v4.
Click to expand...
Click to collapse
which Kernel/Rom?
Hi
Before run ubuntu.sh check if loop inst bussy with other kind of programs who use it.
try losetup will show you how many loop you have used and edit ubuntu.sh to get 1 free
like last 1 user will be 10 then line with busybox mknod /dev/loop11 b 7 11
and wher you see loop0 change to loop11 or any free number.
Hope will works for you.
---------- Post added at 12:06 PM ---------- Previous post was at 12:03 PM ----------
Hi,
Nice work but you forgot something.
Your image wont work on many device since the /sdcard partition if VFAT who limit the file to 2G.
converting /sdcard to ext2 or ext4 is the way to work with files larger than 2G.
B.
dahas said:
Hi
Before run ubuntu.sh check if loop inst bussy with other kind of programs who use it.
try losetup will show you how many loop you have used and edit ubuntu.sh to get 1 free
like last 1 user will be 10 then line with busybox mknod /dev/loop11 b 7 11
and wher you see loop0 change to loop11 or any free number.
Hope will works for you.
---------- Post added at 12:06 PM ---------- Previous post was at 12:03 PM ----------
Hi,
Nice work but you forgot something.
Your image wont work on many device since the /sdcard partition if VFAT who limit the file to 2G.
converting /sdcard to ext2 or ext4 is the way to work with files larger than 2G.
B.
Click to expand...
Click to collapse
Thank you very much I will integrate these changes in the next version of the script
you can also change de fstab line where root partition is mount by uuid and replace by name
losetup returns nothing...
I also asked the dev of FM kernel and he told me that it has loop capabilities
if losetup show nothing then or you dont have loop set or you not root.
for see if you r root type id and the have to show your id. If is not root type su -
For the no loop set then the original ubuntu.sh have to work.
Runs perfectly on my Note
Had rooted it yesterday with CFRootFlasher
Kernel is "KK9" (Android 2.3.6)
Tested the V3 800 first, and now running with the V4 1280 image
Btw I´m an Android noob, came from Ios 2 weeks ago, so i dont really know what is important for you to know. But if you want to know something, just ask
kevinturbo said:
Runs perfectly on my Note
Had rooted it yesterday with CFRootFlasher
Kernel is "KK9" (Android 2.3.6)
Tested the V3 800 first, and now running with the V4 1280 image
Btw I´m an Android noob, came from Ios 2 weeks ago, so i dont really know what is important for you to know. But if you want to know something, just ask
Click to expand...
Click to collapse
Thank you very much, glad to hear you have it working!
And welcome to the dark side
Old Tool
Added on Mar 05, 2014
Updated CTR v2.2 for MTK devices with ubifs ONLY
And Thanks to dhinesh77 for countless beta-testing & most importantly, Master Shifu carliv for looking into those ubifs source code to make it work on MTK devices....
{
"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"
}
Download link here...
Solution to cannot see whole sdcard is here by Master Shifu himself, it is actually a new feature/ function... :laugh:
----------------------------------------------------------
Added on Jan 27, 2014
Updated CTR v2.2 Recovery for MT6575,15, 77, 17, 89, 82, 88, 92
MT6572 (ext4 only, ubifs not supported)
Pls support by donation or at least drop your thanks here to encourage Master Shifu for further development...
Download link here
----------------------------------------------------------
Added on June 02, 2014
New Porting Tool CTRv-1.4 for ext4 devices ONLY. . .
Known problems : Touch not working on some MTK devices . . .
Any bugs report here . . .
----------------------------------------------------------
Added on June 10, 2014
New AIO Porting Tool Easy Magic CTR v2.4 Installer for MTK for ALL MTK Cortex-A9/ A7 devices ONLY with either mtd, emmc, ubifs or custpack partition . . .
Any bugs report here . . .
Updates
Thanks to surfturtle for reporting . . .
Workaround : Use Manual mode & select 720x1024 that is the screen res for 720x1280 . . .
This is an AIO porting tool so go ahead & try the differrent res at Manual mode, the unpack/ repack feature, play around with it & you'll learn what is needed for porting custom recoveries . . .
----------------------------------------------------------
Added on June 17, 2014
Users using XP & 720x1280 MTK devices use this fix . . .
----------------------------------------------------------
Added on July 01, 2014
CTRv2.5 refer to here . . .
----------------------------------------------------------
Notice to annoying n00bs & newbies
Most of your questions are already answered on this thread so pls read it...
1) Either your MTK is still ro.secure=1 then use this method here then EXIT/ CLOSE it first then re-start the porting tool...
2) i've already put in alot of error checking to make sure this porting tool works, either the Auto or Manual port, it will leave behind Ported-CTR folder then manually install it via SPFT when it fail to auto install.... Most probably why it fail to install is b'cos you use SuperSu did you bother to look at your MTK device & grant access to Root Shell... There has been cases where the stock recovery is already corrupted then this tool will also port a corrupted CTR too. Re-install your stock 3e recovery.img & make sure you can boot into it then only use the porting tool again or just use the manual port... The differences is Auto will upload whatever recovery already at your device be it older CWM or TWRP & it will repack it with CTR ramdisk. While Manual will use whatever at your stock 3e -> factory_init.project.rc, meta_init.modem.rc, ueventd.rc & etc... Refer to this by Master Shifu carliv... :good: This tool has no log b'cos it is actually a simple copy & paste program, thats what it actually do.... :laugh:
3) Pls bear in mind that this porting tool has been downloaded by many & confirmed working BUT i can't guarantee that it will work flawlessly on your MTK device so continue trying & report back the solution if you found one...
4) This has been mentioned many times on this thread, if you really can't get it to work then don't just say your porting tool doesn't work...
Instead list out everything then it'll be easier to trouble-shoot
a) What OS you are using on the PC & your MTK...
b) Did you disable UAC & Anti-Virus on your PC
c) Did you execute the porting tool at C:\ drive if you're using XP else then at your Desktop READ what the porting tool says & it will ask you to wait then wait for it to continue without pressing the OK button...
As said many times, this porting tool uses Russian Master Shifu Michfood Repack Utils Huge Credits to him, it is actually DOS program with cygwin dll working at the back so all DOS limitation still applies such as it will ONLY operate properly when it is executed at the Desktop on latest OS... Tested working on XP to 8.1
As much info as possible then it'll be easy to identify where it goes wrong & did you bother to read 5 to 10 pages from the back then you would have know what is the latest story...
Last but not least, i didn't compile CTR so any features not working / bugs found pls report it here BUT again, read the whole thread first as most already answered at that thread...
Q&A
1) Touch not working, refer to here...
2) MTK Alcatel devices refer to here & here... Supported on CTRv2.4
3) All MTK devices supported except this...
4) Inverted screen solutions -> Compile your own
5) CTRv2.5
Nice one bro.....will be helpful for many.......!!:good:
Good to see you back......!
--------------------
P.S: Thinking of creating a Multi-tool for MTK6573.......what are features that can be added bro ??
Yo, Bala bro, been quite busy with work, until now only manage to finish this tut...
Yeah, i was thinking about that too, to mod dsixda's android kitchen just for MT6573 platform that includes Bruno Martins's unpack/ repack boot.img, unpack/ repack recovery & port it to CWMR like this tut, replace a2sd with data2ext or ad2sdx; only this two mod stable on MT6573 platform so far that i have tested...
actually did try but give up half way as my scripting skill is still at novice level...
did read it on some other forum that someone is actually doing that too but i never see it got release though...
Well i guess we need dsixda expertise to be able to do that but he is retired now...
Added on Sept 04, 2012 Info Update
Dark Tremor's a2sd/ Apps2sd works well on MT6573 platform after all...
i was using the last version 2.7.5.3 Beta 04 all this while & i always use a2sd datasd all the time & it FC all apps after a few weeks of using/ sometimes a few days even after a fresh install...
After all, DT_a2sd/ apps2sd is actually apps to sd & i always push it as data2sd...
Only until recently that i play with Android Kitchen, use it to extract my system.img & update it with its built-in Darktremor Apps2SD version 2.7.5.2, it works extremely well because 2.7.5.2 doesn't support a2sd datasd feature...
So guys, if you are using DT_a2sd beta 4, don't use the command a2sd data2sd instead use a2sd cachesd...
You can checkout my other post here
great tools and description
hello y2yu,
Glad you find it informative...
According to this site, there will be another 2 new cpu after MT6575/ MT6577... (use google chrome for translation)
This means MT6573 is 5 generation behind MT6588 & it is still unexploit with all info/ tools scattered all over the web...
Thats where i decided to compile all these info & put it here... :good:
Now that i check, i've bought my first mediatek back in 2008...( never knew it until i check it just now ) :silly: It has serve me well for almost 2 years in spite of dropping, a few times from 8 feet height when i was on a ladder & it still works ! It was the last drop that spoilt the mic & render it unuseful. It can still make & receive call to date but the other side can't hear what i say...
At that time, made in china phone was famous for its extra loud speaker/ ringtone but doesn't support android back then...
haha, enough of history, have you manage to port CWMR to your MT6573 ? In fact, i have manage to create a plugin for dsixda's Android Kitchen which can port CWMR to any MT6573 with a few copy & paste features just like Android Kitchen... :good:
Still testing it, may be you would like to be the first beta tester...
Thank you so much for this. I managed to "port" cwmr to my phone without going through the build hassle. Thanks also go to koush for the builder. I had downloaded the source but hadn't managed to completely set up my build environment as there are a couple of gotchas to iron out for ROM development.
Anyway, this serves as a good precursor to actually porting a custom recovery to new devices. Just one problem - cwmr does not recognise any of the hardware buttons for the select action. I can only scroll. The phone has 2 side buttons for volume control, 1 power button on top, and at the bottom on the home row there is a home button, the menu (these 2 also scroll, in stock recovery the home button selects), the previous, and the search. [1][2]
Do you happen to have any cure for this? Is there some place I could remap hardware buttons? One more thing. I made sure root shell access was configured but adb shell will not work (insufficient permissions). Also, adb devices, as is the case for stock recovery, will return question marks. Any idea?
edit: It is important to mention that the flashing had some errors:
Code:
/mnt/sdcard # flash_image recovery recovery.img
mtd: read error at 0x00000000 (Out of memory)
mtd: read error at 0x00020000 (Out of memory)
mtd: read error at 0x00040000 (Out of memory)
mtd: read error at 0x00060000 (Out of memory)
mtd: recovery successfully wrote block at 0x00000000
mtd: recovery successfully wrote block at 0x00020000
mtd: recovery successfully wrote block at 0x00040000
mtd: recovery successfully wrote block at 0x00060000
... <snip>
... <snip>
... <snip>
mtd: recovery successfully wrote block at 0x00420000
mtd: recovery successfully wrote block at 0x00000000
The flash of the stock recovery goes without any error.
[1] http://symphony-mobile.com/index.php?route=product/product&path=63&product_id=75
[2] http://www.tinno.com/en/productinfo.aspx?proid=128
u r most welcome, jason...
i think the button key map is actually built inside /sbin/recovery so there is nothing much you can do about it unless you build the whole recovery from sources & change it from there...
i do have feedback from fellow xda member that has the same problem flashing recovery with error however he reported back, all menu options at cwm works fine...why don't you use mobileuncle tools, its easier that way...found another flashing tool for ZTE, reported unknown image but it works fine on MT6573 platform too...
As for the adb shell at cwmr, it should work by default & if it doesn't then you have the check default.prop & make sure ro.secure=0 As for stock recovery, mine doesn't work at all...
i think after 6.0.0.3 version, ported cwmr has the camera button as enter key for MT6573 if you built it from koush builder...
yuweng said:
u r most welcome, jason...
i think the button key map is actually built inside /sbin/recovery so there is nothing much you can do about it unless you build the whole recovery from sources & change it from there...
i do have feedback from fellow xda member that has the same problem flashing recovery with error however he reported back, all menu options at cwm works fine...why don't you use mobileuncle tools, its easier that way...found another flashing tool for ZTE, reported unknown image but it works fine on MT6573 platform too...
As for the adb shell at cwmr, it should work by default & if it doesn't then you have the check default.prop & make sure ro.secure=0 As for stock recovery, mine doesn't work at all...
i think after 6.0.0.3 version, ported cwmr has the camera button as enter key for MT6573 if you built it from koush builder...
Click to expand...
Click to collapse
Crap, then I have to dig through the sources really hard. This phone has no camera button.
If I'm not wrong the last time I checked "mobileuncletools" uses flash_image. Either that, or nandwrite, or failing that, dd. Coming from a Linux and UNIX background I'm more comfortable with the simpler underlying commands rather than a complex front-end wrapper around those commands. NAND images have some peculiarities so we kinda have to deal with it I guess.
I had triple-checked that ro.secure != 1 I think this is probably a hardware issue where during recovery there is no bridging interface exposed.
Anyway a couple of other things related to the documentation side of this:
* Why not just upload your own recovery.fstab to the builder instead of editing it later?
* Changing the fstab is only needed for those who have an ext-sd, i.e. a second partition for the memory card
* The bin/ folder is empty, and the lib/ folder only contains the ext2 module, so if above not needed, this is also not needed
So in the end, I think we can simply advocate use of the builder as-is. What do you think of putting up a list/database of MTK phones and some details? Like rootable or not, cwmr available or not, etc. I think RootzWiki would be a good place for that?
AFAIK, most readers at xda are non-registered, only when they are stuck somewhere or they really needed help then only they'll register & start posting; that is including me !
You can see my other post where it is nearing to 300 over downloads while the MTK phones list feedback from users is less than 10 !
AFAIK, all MT6573 are root-able & all needs data2sd mod. There are so many apps & games at google play, MT6573's 256 or 512MB internal memory gets filled up pretty fast !
On adb shell, did you have all the three adb files (adb.exe, AdbWinApi.dll, AdbWinUsbApi.dll) & on linux, i use ./adb shell to get it to work...
yuweng said:
AFAIK, most readers at xda are non-registered, only when they are stuck somewhere or they really needed help then only they'll register & start posting; that is including me !
Click to expand...
Click to collapse
Very true.
AFAIK, all MT6573 are root-able & all needs data2sd mod. There are so many apps & games at google play, MT6573's 256 or 512MB internal memory gets filled up pretty fast !
Click to expand...
Click to collapse
Indeed. I actually want to try just bind-mounting data to a second partition, but I don't know whether init scripts are supported on this phone (would be better instead of editing the init itself). But I will also try this data2sd mod, haven't looked at it yet. After clearing out loads of preincluded apps I was happy for a while, but am now running out of space again!
On adb shell, did you have all the three adb files (adb.exe, AdbWinApi.dll, AdbWinUsbApi.dll) & on linux, i use ./adb shell to get it to work...
Click to expand...
Click to collapse
Actually I have the Android SDK set up already on my system, so everything is conveniently there including adb. I will have to find some other day to troubleshoot why the bridge would not work during recovery.
re-packing error
Now I am doing this on Xubuntu so maybe that's why it doesn't work:
I get the following when trying to repack:
MTK-Tools by Bruno Martins
MT65xx repack script (last update: 31-07-2012)
Repacking recovery image...
Ramdisk size: gzip: unpack/ramdisk-repack.cpio.gz: No such file or directory
Could not open ramdisk file: ramdisk-repack.cpio.gz
Any ideas?
Unpacking is no problem.
This Android Kitchen plugins only work with cygwin...
Even unpacking shouldn't have work because mkbootimg & 7z is windows exe...
i'm in the mid of modding it so that it can work on linux too...
Thanks for your reply yuweng. 7z is available as a plugin for Ubuntu too.
In the mean time I will try another website which I already posted a link before.
http://www.slatedroid.com/topic/32450-how-to-unpack-repack-systemimg-properly-using-linux/
breaky9973 said:
Now I am doing this on Xubuntu so maybe that's why it doesn't work:
I get the following when trying to repack:
MTK-Tools by Bruno Martins
MT65xx repack script (last update: 31-07-2012)
Repacking recovery image...
Ramdisk size: gzip: unpack/ramdisk-repack.cpio.gz: No such file or directory
Could not open ramdisk file: ramdisk-repack.cpio.gz
Any ideas?
Unpacking is no problem.
Click to expand...
Click to collapse
It will work on any GNU/Linux as long as you have the proper tools installed. Almost all tutorials for Android "modding" are Cygwin-based, which basically emulates a GNU system on Windows (so you can skip all parts about "setting up" anything). Here your file does not exist, please double-check that it does. This is a perl script which utilizes gzip, gunzip, and cpio. Make sure these are available as well.
Btw, this is independent of Android Kitchen. You don't need that if you're using the builder. Android Kitchen is just a front-end to modifying ROMs. So skip the Kitchen for now and do this manually.
Again, the "another website" you link to is about backing up real filesystems (which the boot and recovery partitions are not). See: http://forum.xda-developers.com/showthread.php?t=1744265&page=2
yuweng: What benefit does using the Android Kitchen have over simply using the builder? All you need is a rebuilt /sbin/recovery along with the resources in /res, and optionally an ext2.ko if it does not exist on the phone itself.
This is just a simple tool for n00b/ newbie...
i was a n00b six months ago & even now my android knowledge is still half empty...
As the first post says, there are hundreds if not thousands of android phone based on MT6573 SoC design, each with their own recovery.img-kernel.img & AFAIK, non is compatible for use on others...
i simply provided a plugins based on Android Kitchen so that even a n00b/ newbie can port cwmr to their MT6573 simply by just drag & drop files to it... You are a programmer by profession i presume, so this is chicken feet to you but to a n00b/ newbie they don't no even where to start, like i did... :laugh:
you'll be surprise if i tell you the top download of my tuts is rooting & installing busybox !
As for the builder, you still need to unpack it, copy few files over & repack it with bgcngm's MTK-tools for it to work on MT6573...not alot of n00b/ newbie know how to do that !
the intention of this plugins is to be able to port cwmr to any mt6573 based android phone...
yuweng said:
This is just a simple tool for n00b/ newbie...
i was a n00b six months ago & even now my android knowledge is still half empty...
As the first post says, there are hundreds if not thousands of android phone based on MT6573 SoC design, each with their own recovery.img-kernel.img & AFAIK, non is compatible for use on others...
i simply provided a plugins based on Android Kitchen so that even a n00b/ newbie can port cwmr to their MT6573 simply by just drag & drop files to it... You are a programmer by profession i presume, so this is chicken feet to you but to a n00b/ newbie they don't no even where to start, like i did... :laugh:
you'll be surprise if i tell you the top download of my tuts is rooting & installing busybox !
As for the builder, you still need to unpack it, copy few files over & repack it with bgcngm's MTK-tools for it to work on MT6573...not alot of n00b/ newbie know how to do that !
the intention of this plugins is to be able to port cwmr to any mt6573 based android phone...
Click to expand...
Click to collapse
yuweng, and I thought you were the programmer! (other than bgcngm I see you as our local MTK expert)
Seriously, we are all noobs. That was my main concern :silly: Android Kitchen interface is command-based whereas the builder you just need to upload an image and you will get an image in return.
So do you mean using Android Kitchen there is no need to go through setting up Cygwin, repack, unpack, etc.? Just download the Kitchen, enter some commands, and you will have a recovery.img which you can flash directly?
i'm a half-cook programmer...
yaya, but you need to setup java, Android Kitchen & the plugins scripts will do everything... :laugh: That is for linux...For windows, you already know...
As for the builder, it works on major brands where it can be flash directly but not on mt65xx...
Ahh OK in that case I do suppose the Kitchen would be much simpler.
Ya, the MTK partitions and images are not the same as those of other devices. That's why Bruno wrote the script to help us
jason_cheng said:
yuweng, and I thought you were the programmer! (other than bgcngm I see you as our local MTK expert)
Seriously, we are all noobs. That was my main concern :silly: Android Kitchen interface is command-based whereas the builder you just need to upload an image and you will get an image in return.
So do you mean using Android Kitchen there is no need to go through setting up Cygwin, repack, unpack, etc.? Just download the Kitchen, enter some commands, and you will have a recovery.img which you can flash directly?
Click to expand...
Click to collapse
Hi Jason,
I have cpio and can execute perl scripts. gzip and gunzip are setup too. The script just cannot find the file ramdisk-repack.cpio.gz and I cannot find it anywhere.
Maybe the dump of the recovery.img was not good. I will try again.
*UPDATE*
The mkbootimg executabe I download was not correctly installed. Now the script finishes without error.
However the recovery.img doesn't do anything. I think I have to look for another mkbootimg or compile one from source myself...
For people who are interested to try the Ubuntu way:
Unpacking:
sudo perl ./unpack-MT65xx.pl recovery.img
Re-packing:
sudo perl ./repack-MT65xx.pl -recovery ./recovery.img-kernel.img ./recovery.img-ramdisk ./recovery.img
I will attach the mkbootimg once I succeed
[Win32/64][Dual Boot][Mount-Loop] Tubuntu - 1 click installer SBK1 & SBK2! *2/1/2013*
* ADDED Ubuntu Raring(13.04) *
* ADDED ARCH Linux *
Tubuntu - One Click Installer for Windows
Hi, i recently been seeing myself flashing my tf101 a lot using OLiFE2. yes my main os is linux but i also use windows and came across a lot of people asking about windows verison SBK2 for ubuntu installer. I found modified version of Frankc123 tools http://forum.xda-developers.com/showthread.php?t=1760513 but it's down. so i created a new one from scratch.
thanks
lilstevie for his OLiFE scripts
wheelie app
Frankc123
kenshin1388
and a few more. (i will find there names and edit this post again)
*Name is still Pending. couldn't think of a good name when i was making this tool. suggestions are welcomed!
Disclaimer:
you know the usual stuff. use are your own risk blah blah might brick.. will not help your become rocket scientest... yea that stuff.
Note:
this was made using VS2010. package needed to run will be dot net 4.0. google is your friend
this is very alpha not all the features are implemented yet
Code:
v0.4.7:
fixed sbk1 device flashing.
v0.4.6beta:
reworked the code for loading into sync mode for sbk1 devices
basically wasted my time with version 0.4.4b & 0.4.5b due to this new update =P
v0.4.5beta:
removed --setbct parameter for sbk1 devices
v0.4.4beta:
fixed bct loader for sbk1 devices
v0.4.3beta:
fix bootloader injection for sbk1 devices
v0.4.2beta:
fixed more bugs not initiating wheelie when needed to for sbk2 devices
v0.4.1beta:
fixed syntax error for flashing kernels
v0.4beta:
added sbk1 support(not tested nor confirmed yet)
re coded flashing method
fixed kernel flashing
fixed only ubuntu boot
fixed only ubuntu/android boot
v0.3alpha:
added RootFS install only option to selected partition
added 2.6x x3maniac kernel to the mix
removed uboot kernel image.( i will not be developing on uboot yet)
reduces zip from 80mb to 50mb. quicker download for faster hacking =)
v0.2.2alpha:
fixed ubuntu/android flash.(ubuntu as default was not booting)
fixed timing issue caused with apx mode detection.
v0.2.1alpha:
added APX mode detection.(now this app will let you know if you are really in apx mode, using drivers i provided)
v0.2alpha:
added logo
added ability to for different flashes and restore back to stock
added different recovery CWM and TWRP
added kernel flashing for chromium or jhanti
fix textbox not updating with console
few bug fixes in program
v0.1a:
initial release
Known bugs:
Code:
[strike]when flashing with Ubuntu Only. kernel panic and keeps rebooting. i am working on a fix.[/strike]
program appears to not be doing anything while flashing device. if it's not frozen and window can be dragged
around it's working. wait for device to reboot. usually 15 - 20 mins to upload 1gb
Not my program bug. but should be mentioned. After you flash your device the 1st time. let Prime run until welcome
screen. then you can flash twrp to flash custom rom. Failure to do so and flashing custom rom without letting prime
run will cause boot loop in newly flashed custom rom. i havn't looked into the logcat but i'm pretty sure that the data
partion don't match or something.
if you run into any problems and you feel it might be bricked.( haven't happen to be at all using this tool) you can use http://forum.xda-developers.com/showthread.php?t=1688012 easy flasher to fix.
Instructions:
MOUNT-LOOP now possible! * 2/1/2013 *
I have now made my new kernel which supports Mount-Loop!! thanks to transformador for the suggestion.
http://goo.im/devs/x3maniac
what does this mean?
this means that you can now just place the ubuntu.img in your internal sdcard and boot the image.
How it works?
i have turned this into a blob file(can be flash with cwm or twrp). which mean you can boot into your recovery flash ubuntu-mountloop.zip. To go back to your android you would need the kernel blob that goes along with the rom your are using. http://www.mediafire.com/?labcx60jowrdx which can be found here. (this is not my link)
Need more information?
http://forum.xda-developers.com/showthread.php?t=1537566
**Useful posts**information regards to partition size
Thanks again to TomTcom for putting together instruction to get BLUETOOTH working!!!! http://forum.xda-developers.com/showthread.php?t=2128080
**FOR SBK1 devices**Follow this guide TomTcom has created! don't forget to thank him!
http://forum.xda-developers.com/showthread.php?t=2041030
**FOR SBK2 devices**
FOLLOW THIS UPDATED GUIDE [GUIDE][Win32/64][Dual Boot] For SBK2 Install of TFUbuntu for x3Maniac Thread by Kingzak34 & don't forget to thank him!!
download the prime image and have it named system.img(if not so already) and place it in the /images folder
download the ubuntu image of your choice and name it ubuntu.img and plce it in the images folder.
go into APX mode. (press volumn up & power at the same time until screen goes black) for windows try to listen for a usb connected sound( for linux type lsusb and look for nvidia(not asus))
Dual Boot A/U:
use flash from dual boot a/u option and wait for device to reboot.
Flash Recovery for Custom rom:
to flash custom rom. goto advanced option and use "flash TWRP recovery" and click "flash". the button will now say "reflash" to reflash the kernel back into the recovery partition.
Drivers:
this option is to install the drivers for APX mode.
(¯`'•.¸//( Using Custom ROM(cm, aosp, etc......))\\¸.•'´¯)this app will re-partition the file system adding a new ubuntu partition on block 16 (mmcblk0p8). this mean it will erase everything. keep the CustomRom.ZIP in your external sdcard. (flash/dual boot a/u) wait till that finishes then let prime Rom boot fully till you get "welcome" screen. reboot into APX mode and use (advanced/flash twrp recovery).. goto recovery(volume down & power) to boot into twrp and flash your CustomRom.ZIP. when done flashing custom rom. go back into tubuntu app and click "ReFlash" in (advanced/flash TWRP recovery) to flash the recovery back to booting ubuntu.
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"
}
tubuntu v0.4.7 [1mb] Executable ONLY - download v0.4.2b and replace the tubuntu.exe with this one
download v0.4.7 (jan, 3 2013)
tubuntu v0.4.6beta [1mb] Executable ONLY - download v0.4.2b and replace the tubuntu.exe with this one
download v0.4.6b (dec, 10 2012)
tubuntu v0.4.2beta [78mb] without Prime(system.img) or ubuntu.img
download v0.4.2b (dec, 7 2012)
tubuntu v0.3alpha [57mb] without Prime(system.img) or ubuntu.img
download v0.3a
Prime ROM[stock hc w/ root](system.img)
download
lilstevies Prime
http://forum.xda-developers.com/showthread.php?t=1191141
Tubuntu Image - lightweight ubuntu
Tubuntu In Action! video submitted by hugantic
Ubuntu Raring Ringtail (13.04) is up on goo.im
This is a ubuntu-core image.(this mean it has nothing)
for a quick and dirty howto check post #652
password: family
added Nano
added WPA_SUPPLICANT
added kernel supplicants(2.6.36-12.10+)
added wifi modules on boot
Image is 200M
this is a nightly development from http://cdimage.ubuntu.com/ubuntu-core/daily/20130201/
i have this up cause when 13.04 does launch i know what i'm dealing with =)
ARCH Linux for ARM (alarm)
Arch Linux - http://goo.im/devs/x3maniac 151M
More Details for How To
this is a build it yourself system.
It Boots
root password: family
Ubuntu(ubuntu.img)
Lubuntu v1.2 (12.10) - http://goo.im/devs/x3maniac 496.01 MB
only added support for 2.6.36 kernel.(if you want to use newer kernels must installed kernel and supplements)
please review all change log from previous version to see what and how much i have done
zram is broken with kernel 2.6.36 (I am working on patching this up to new zram variation)
added multi-touch support
minimize - three finger down swipe
scroll - two finger up or down
maximize - three finger up swipe
move window - 3 finger drag
right click - two finger tap
fixed boot loop when using "reboot to recovery" from android space
fixed typos on applations not starting
updated a few program forked from "raring" 13.04
removed unnecessary boot up bloat
fixed conky from dissappearing when clicking on desktop
sound works (must use alsamixer and enable DACL & DACR)
Hot plugging works!
DO NOT INSTALL NVIDIA DRIVERS!!(2.6.36.4 does not have hw acceleration)
Lubuntu V1.1-rc1 (12.10)- [download] -382mb 1.4G unrar (wip)(i don't have dock yet so some stuff can't be tested. but it's stable @ 1.2ghz)
Don't forget to download and flash the new kernel below
lots of fixes read post #236 remember to thank Serkenar!!
changed swappiness to 10
now will start on performance mode on boot(had to recompile the kernel for that)
added script in rc.local to fix sound on boot up(you will now hear a slight click noise on boot, means sound should be working)
added scripts to brighten and darken screen(can't test yet but should would with function keys on keyboard)
using newest 3.1.10 kernel forked from jhinta(i just overclocked it)
added script to turn off backlight completely when xscreensaver "blanks" screen
added initial firstboot script to re-partition file system broken: run "sudo resize2fs /dev/mmcblk0p8" (in terminal for now until i get it working again)
sound is working
added cpufreq goverenor controller(located in menu/preferences/cpu-goverenor)
added conky (auto starts with session)
changed XF86poweroff button to disable screen(instead of logoff-selection)
added adb support(jhinta kernel break it, do doesn't work. i'm looking for a fix)
removed programs that our tablet can't use(example: xbacklight)
added zram support
added cifs support(to mount window shares install cifs-utils)
fixed nvidia tegra headers(now can be installed via "software sources" and disabled if needed)
added support for ntfs read and write support
chromium fixed
added some what of a patching system. to upgrade my builds without having to reflash.
added default user "user" (password family)
fixed "waiting for network". no more waiting
removed option with onbaord on boot in favor or default user
added gnome-system-manager (much better i think)
removed extra /lib/modules/ not needed
fixed apparmor complaining issues on boot.
added kernel boot to show everything(easier to debug for me, will be removed in future release when i know it's stable)
some more stuff i can't seem to think of( just bug fixes).
kernel issue: usb stuff gotta be plugged in before you turn on device
kernel issue: touch pad not working(look at post #154 & #206 for fix)
Discussion starts from page 13: http://forum.xda-developers.com/showthread.php?t=1995157&page=13
Lubuntu (12.10)- download - 448mb zip 1.5gb unzipped -now its working, but still don't have my dock =(
version 1.0
removed ubiquity
removed oem-config-firstinstall
removed wpa-supplicant on boot in flavor of network manager(much easier)
pre-installed all packages needed to startup and run
added support for kernel 2.6x and 3.1x
hardware accereration fully working
(not working :cryingadded onboard support for login(people without dock)
added resize2fs on boot (first time) to resize ubuntu image to fill partition (6gb)
pre-installed openssh
more stuff like bug fixes.
what's not working yet:
**do not use android os to reboot to recovery - you will be stuck in recovery boot loop!**
if you happen to be stuck in recovery loop type this in terminal
Code:
sudo echo boot | dd of=/dev/block/mmcblk0p3 bs=1 seek=0
sound
zram
aircrack
webcam(don't think this will ever work)
chromium-browser (use firefox instead for now)
this is a LXDE destop version of ubuntu http://lubuntu.net/ light weight and works pretty fast with our devices. i have not been able to fully test if this linux image is stable. currently still waiting for my keyboard to arrive. i will be making this lubuntu image better as i go.
(root password is family i changed it due to hurricane Sandy, yes i'm from NYC)
i'm in the works for my own Lubuntu Image and Arch linux. (waiting for my keyboard dock to arrive but i do have both os booted)
I use netinstaller v0.5 (smaller file size) v0.6(more bug fixes and better support for no dock)
http://forum.xda-developers.com/showthread.php?t=1852702
lilstevies ubuntu.img
http://forum.xda-developers.com/showthread.php?t=1191141
shaola Debian image
http://forum.xda-developers.com/showthread.php?t=1476835
Kernels
#470 Controlling your CPU for stability
Stable kernels (use with care for OC version)
[extreme]
2.6.36 - [cpu 1.6 ghz] [gpu 400mhz] - download
benchmarks - blowfish score 30
glxgear - 70 fps
[good]
2.6.36 - [cpu 1.4 ghz] [gpu 300mhz] - download
benchmarks - blowfish score 36
glxgear - 59 fps
[stock]
2.6.36 - [cpu 1.2 ghz] [gpu 300mhz] - download
benchmarks - blowfish score 40
glxgear - 50 fps
kernel supplement - 2.6.36.4-1210.zip
extract and copy the kernel suppliment to /lib/modules/ then use tubuntu tool to flash new kernel
[whats up with 2.6.x]
clocked at 1.2ghz (for now)
hot plugging works
sound works
chrome works (enable CONFIG_SYSVIPC & CONFIG_SHMEM)
STABLE. does not have freezing issues
lid patch
hardware acceleration (not working)
** experimental NOT Stable! **
compiled with gcc 4.7
3.1.10 - xlinux.img
source - http://github.com/novaspirit
*kernel Instructions*
download kernel unzip and place in \tubuntu\images folder
copy the xlinux.img over linux.img(temp fix to load new kernel until i get the program fixed)
flash using "x3maniac 2.6 kernel" (even tho it says 2.6, your acutally uploading the new xlinux.img, which is 3.1.10)
*updated kernel 12/10/2012*
kernel image - 3.1.10-g6e2783c
kernel supplement - kernel_sup.tar.gz
download the kernel supplement file and place it on the root of the drive.
you can also wget the file
Code:
sudo wget http://novaspirit.com/tubuntu/kernel_sup.tar.gz /
unzip using root
Code:
sudo tar zxvf /kernel_sup.tar.gz
this will extract the new firmware and modules to the correct location(/lib/modules, lib/firmware)
now use my tubuntu tool copy the linux3.img to the \images\ folder and rename to xlinux.img
now flash using "x3maniac kernel" option in the advanced section.
** I will be making a tutorial when i get around to it **
*linux version*
as per a few request in this thread about a linux version. i will not be creating a linux version for there is one that works perfect!
OLiFE by lilstevie
someone then has modified the version and made it compatible with SBK2 devices using wheelie. due to OLiFE sbk2 is hard to find on this forum i have uploaded the version to my own server
OLiFE sbk2
I did not create this program so support for it will be limited.
*i don't remember where i found the thread nor who modified it. if someone knows the orginal creator please pm me and i will update to apply credit to the dev. the orginal creator contacted me josteink. thanks for his amazing work on updating oLiFe to support sbk2
Source Codes - http://www.github.com/novaspirit/
Downloads - http://goo.im/devs/x3maniac
I am very interested in this!
However, I do not want to spend time tweaking a whole bunch of stuff and there seems to be conflicting and outdated info on how linux/ubuntu runs on the tf101
Would you summarize what bugs you've noticed with both your tool and using ubuntu on the tf101? I'd really appreciate it as its been hard to get a good picture.
LeoBloom. said:
I am very interested in this!
However, I do not want to spend time tweaking a whole bunch of stuff and there seems to be conflicting and outdated info on how linux/ubuntu runs on the tf101
Would you summarize what bugs you've noticed with both your tool and using ubuntu on the tf101? I'd really appreciate it as its been hard to get a good picture.
Click to expand...
Click to collapse
give me a few more days and i'll come up with a good summary for you(waiting for my dock). but as for a brief one. it works really well on minimal install like lxde or gnome classic. everything does work except webcam. it's pretty stable but i've been flashing my device so much i havn't stayed on one os that long(1 day max). hardware acceleration does work on certain kernel (will be updating my programs to inject new kernels later). my goal for this program in general is to keep my transformer as a fully functional 2nd laptop and being able to swap between / backup my ubuntu as i go along trying to find the perfect build.
Definitely man, take your time. I really appreciate you doing this!
I too wanna convert the transformer into a laptop because I am sick of android honestly, but the transformer is a pretty sweet piece of hardware.
I'll try it out now
LeoBloom. said:
Definitely man, take your time. I really appreciate you doing this!
I too wanna convert the transformer into a laptop because I am sick of android honestly, but the transformer is a pretty sweet piece of hardware.
I'll try it out now
Click to expand...
Click to collapse
i have flashed my own device at least 10x working on this program. so i know it works. thanks for trying it out let me know if you have any bugs or features you want to see
x3maniac said:
i have flashed my own device at least 10x working on this program. so i know it works. thanks for trying it out let me know if you have any bugs or features you want to see
Click to expand...
Click to collapse
I must be a complete noob.
For the life of me I can't figure out where to find a system.img or ubuntu.img
The link to lilstevie's ubuntu.img doesn't seem to be pulling anything up, and I thought that the system.img is somehow extracted from the android update zip file but I can't figure that out either. The link that you posted for the system.img didn't seem to mention it, but I'll look a little deeper.
LeoBloom. said:
I must be a complete noob.
For the life of me I can't figure out where to find a system.img or ubuntu.img
The link to lilstevie's ubuntu.img doesn't seem to be pulling anything up, and I thought that the system.img is somehow extracted from the android update zip file but I can't figure that out either. The link that you posted for the system.img didn't seem to mention it, but I'll look a little deeper.
Click to expand...
Click to collapse
look in post #3 of lilstevies thread. OLiFE with prime. pull the system.img from there. it's going to be a bit before i get mine up on my website. 500mb
Hi!
Hi!
Thanks for the great and awsome work!
I just used ur tool but when i boot to ubuntu i get this screen:
I have no idea what to do....
Hi,
Why prime name? it's for TF101 or TF2 Prime?
Envoyé depuis mon Transformer avec Tapatalk
billouetaudrey said:
Hi,
Why prime name? it's for TF101 or TF2 Prime?
Envoyé depuis mon Transformer avec Tapatalk
Click to expand...
Click to collapse
well "prime" is the ROM stock from asus.
x3maniac said:
well "prime" is the ROM stock from asus.
Click to expand...
Click to collapse
Oh ok, I am on PA Rom, so I need PA.zip or It's work only with stock rom ?
billouetaudrey said:
Oh ok, I am on PA Rom, so I need PA.zip or It's work only with stock rom ?
Click to expand...
Click to collapse
for now you have to flash with stock rom. then install custom rom later using advanced/twrp recovery.
this app will repartition the file system adding a new ubuntu partition on block 16 (mmcblk0p8). this mean it will erase everything. keep the pa.zip in your external sdcard. (flash/dual boot a/u) wait till that finishes then let prime Rom boot fully till you get "welcome" screen. reboot into APX mode and use (advanced/flash twrp recovery).. goto recovery(volume down & power) to boot into twrp and flash your custom rom.
hope this helps
thxxxxxx
x3maniac said:
for now you have to flash with stock rom. then install custom rom later using advanced/twrp recovery.
this app will repartition the file system adding a new ubuntu partition on block 16 (mmcblk0p8). this mean it will erase everything. keep the pa.zip in your external sdcard. (flash/dual boot a/u) wait till that finishes then let prime Rom boot fully till you get "welcome" screen. reboot into APX mode and use (advanced/flash twrp recovery).. goto recovery(volume down & power) to boot into twrp and flash your custom rom.
hope this helps
Click to expand...
Click to collapse
OK Thx I will try tommorow Thx !
Envoyé depuis mon Galaxy Nexus avec Tapatalk
i9apps said:
Hi!
Thanks for the great and awsome work!
I just used ur tool but when i boot to ubuntu i get this screen:
I have no idea what to do....
Click to expand...
Click to collapse
follow the instructions on screen to finish the installtion process. head over to http://forum.xda-developers.com/showthread.php?t=1852702 post #1
Other question... Any possibility to use it on linux ? Because I don't have windows...
Manually maybe by command... Thx
Envoyé depuis mon Galaxy Nexus avec Tapatalk
billouetaudrey said:
Other question... Any possibility to use it on linux ? Because I don't have windows...
Manually maybe by command... Thx
Envoyé depuis mon Galaxy Nexus avec Tapatalk
Click to expand...
Click to collapse
my main os is linux also. but i use windows a lot also. this is what i use when in linux
Modified OLifE http://forum.xda-developers.com/showthread.php?t=1872229
x3maniac said:
my main os is linux also. but i use windows a lot also. this is what i use when in linux
Modified OLifE http://forum.xda-developers.com/showthread.php?t=1872229
Click to expand...
Click to collapse
Okey Thx if I want remove dual boot, what need I do ?
Envoyé depuis mon Galaxy Nexus avec Tapatalk
billouetaudrey said:
Okey Thx if I want remove dual boot, what need I do ?
Envoyé depuis mon Galaxy Nexus avec Tapatalk
Click to expand...
Click to collapse
i have not implemented in my app yet... soon to come(working on it as we speak) but now you can use OLiFE to return to stock android.
x3maniac said:
i have not implemented in my app yet... soon to come(working on it as we speak) but now you can use OLiFE to return to stock android.
Click to expand...
Click to collapse
OK so I wait because I'm not expert and don't all understand... And I'm french and it's not easy...
Envoyé depuis mon Galaxy Nexus avec Tapatalk
This thread is about Linux port for J120F. Test build is currently in beta state. But if you're a Linux user you can try it.
Status:
Display and touchscreen work
Hardware and software keyboards work
Wi-Fi works (and Firefox onboard )
USB works as OTG or serial gadget with a console (115200n8). UART JIG also works
Bluetooth. You can run hciattach (@115200) to get BT device but most tools don't see it
Known issues:
Touchscreen won't work if phone was started by attaching USB or charger. That's because Android can't start this way (phone shows battery status and goes off).
For same time after boot you can't click anything but cursor moves. Just wait ~30 sec.
This will be fixed in v1.3. Or you can execute:
Code:
rpm -ev --nodeps xinput-calibrator
Fixed:
Onscreen keyboard doesn't work. Sad but true
"Connect to Wi-Fi" button is out of screen. It's next to "DHCP" combobox in TAB order.
Display goes to sleep and can't be turned back on. You can restart X from SSH or USB console to turn it on again. (No timeout - no bug )
How to install:
Create 3 partitions on SD card. 1st is FAT for your Android data. 2nd for Link2SD (make it tiny if not needed). 3rd is ext2 for Linux (500 MB should be enough for now).
Extract rootfs.tar.xz contents to 3rd partition. It should be done as root and from terminal. GUI tools aren't good for this.
Flash kernel (boot.img) with heimdall. It can work as recovery too. In this case you will get dualboot.
Milestones:
1.0 Make it boot
1.1 Bring up major hardware
1.2 Make ROM easier for testing and building
1.3 Organize included software
My next major tasks:
Improve BSP. Make image recipe.
Make toggle screen on/off feature by power button.
Improve onscreen keyboard layout. Make keys bigger.
Done tasks:
Sort out all the patches I've made to FS. Make a BSP (OpenEmbedded machine layer).
Find a problem with USB serial gadget and make it work as console. For now I use UART JIG but only few people have such hardware.
Get Wi-Fi to work. Smartphone is not a smartphone without internet connectivity.
Make connman-gnome window usable with such small display. Currently you need to do blind TAB to connect to Wi-Fi.
Find a problem with on screen keyboard. The only way to input text now is USB keyboard over OTG.
Improve BSP. Integrate FS patches into it. Fix kernel so it can be built inside OE.
Fix screen timeout bug. (Timeout disabled so far)
Photos:
{
"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"
}
Link to my ROMs folder on MEGA.
Kernel source on GitHub.
OpenEmbedded Layer (BSP) source on GitHub.
Wi-Fi works!
dmesg from Android helped me to start Wi-Fi. To finish initialization you need to run
Code:
cat /proc/deferred_initcalls
Seriously!
Good news!
SSH is working over Wi-Fi.
USB gadget works after all!
To activate it do:
Code:
echo connect > /sys/class/udc/13580000.usb/soft_connect
Now I will try to make a build with all those things activated on boot
Version 1.1 released. It's MUCH more user-friendly but you still need some skills to install and use it.
It's possible to do this on Galaxy J120H?
jlfedmmc456 said:
It's possible to do this on Galaxy J120H?
Click to expand...
Click to collapse
OS image should start on J120H but you need a special kernel. So there are two answers on two kinds of questions:
1) No. This is impossible to [just] install kernel and OS from J120F to J120H because of different hardware.
2) Yes. This is possible to port this project to J120H. It's easy if you're ROM maker.
Good job. Thank you for this ROM.
Set up both keyboards.
To activate software one:
/etc/X11/Xsession.d/80matchboxkeyboard.sh
Code:
#!/bin/sh
. /etc/formfactor/config
CMD="matchbox-keyboard -d"
if [ "$CMD" ]; then
# Delay to make sure the window manager is active
# by waiting for the desktop to say its finished loading
dbus-wait org.matchbox_project.desktop Loaded && $CMD &
fi
To activate hardware one you need new kernel. It is on MEGA already (linux_1_2_boot.img).
Buttons:
RECENT -> Context menu
HOME -> My Computer
BACK -> Esc
Power and Vol keys are Power and Vol keys
To make HOME work as "show desktop" button add:
Code:
XF86MyComputer=desktop
to kbdconfig file.
That's all for now
Fixed Samsung kernel. Now it builds inside OE.
IIRC bitbake should be able now to build OS image without any "tricks".
BSP v1.2
Made proto BSP in a form of diffs. Changes are listed in fs_files.diff file. New files are in files folder. Patches are in diffs folder. New packages are in rpms folder.
Hey really great work; I have created 2 forks of your project for J120A here in the states... I haven't used bitbake before. I went and installed it, but not sure how to use it with the 2 projects you've uploaded. I tried "bitbake J120A" and "bitbake world" but that doesn't seem to be the thing to do. Can't seem to build the kernel manually with "make" either. Could you tell me what commands/config I need to do with bitbake to get this working? Thanks again for your hard work!
puargs said:
Hey really great work; I have created 2 forks of your project for J120A here in the states... I haven't used bitbake before. I went and installed it, but not sure how to use it with the 2 projects you've uploaded. I tried "bitbake J120A" and "bitbake world" but that doesn't seem to be the thing to do. Can't seem to build the kernel manually with "make" either. Could you tell me what commands/config I need to do with bitbake to get this working? Thanks again for your hard work!
Click to expand...
Click to collapse
You don't need bitbake. You need OpenEmbedded.
https://www.openembedded.org/wiki/Getting_started
https://www.openembedded.org/wiki/OE-Core_Standalone_Setup
Then add some layers. I have:
meta (oe-core)
meta-oe
meta-multimedia
meta-networking
meta-filesystems
meta-gnome
meta-initramfs
meta-perl
meta-python
meta-webserver
meta-xfce
meta-browser
meta-j120f
Setup a MACHINE to build for.
Code:
MACHINE ?= "j120f"
And allow non-free licenses
Code:
LICENSE_FLAGS_WHITELIST += "commercial"
Now you can try to build "core-image-sato". OE needs huge amount of free space and time to build! (~100GB)
You can also build packages: bitbake firefox
I doubt that F kernel will run on A version. So you need to port all my patches to the Samsung kernel source for J120A. It shouldn't be hard.
Then diff my linux defconfig with original one (for j120f) and add those changes to your (j120a) defconfig.
After that unpack stock boot.img for your device. And pack your zImage with original DT file.
This is how I do this:
Code:
android_img_repack_tools/mkbootimg --kernel zImage --ramdisk NONE --dt boot.img-dt --base 10000000 --pagesize 2048 --board SRPOI21A000RU -o new_boot.img
Now you can flash new_boot.img with heimdall
Code:
heimdall flash --BOOT new_boot.img
I think you should start with kernel. Patch, build, pack img and flash it. (Don't forget to unlock bootloader first!) Then you can install my OS build on SD card (replace /etc/wifi and /lib/firmware with your files). I hope v1.2 will be released already. And if it works you can start to build your own OS image
This is really great information, thank you so much for the assistance! I have gone through and started work on what you mention, but I realized I'm not sure which Kernel you originally downloaded for your device. There are a lot available for the J120F:
https://imgur.com/a/OeI9u
Do you remember which one you started with? It will make filtering down the diff a lot easier.
-W_O_L_F- said:
You don't need bitbake. You need OpenEmbedded.
https://www.openembedded.org/wiki/Getting_started
https://www.openembedded.org/wiki/OE-Core_Standalone_Setup
Then add some layers. I have:
meta (oe-core)
meta-oe
meta-multimedia
meta-networking
meta-filesystems
meta-gnome
meta-initramfs
meta-perl
meta-python
meta-webserver
meta-xfce
meta-browser
meta-j120f
Setup a MACHINE to build for.
Code:
MACHINE ?= "j120f"
And allow non-free licenses
Code:
LICENSE_FLAGS_WHITELIST += "commercial"
Now you can try to build "core-image-sato". OE needs huge amount of free space and time to build! (~100GB)
You can also build packages: bitbake firefox
I doubt that F kernel will run on A version. So you need to port all my patches to the Samsung kernel source for J120A. It shouldn't be hard.
Then diff my linux defconfig with original one (for j120f) and add those changes to your (j120a) defconfig.
After that unpack stock boot.img for your device. And pack your zImage with original DT file.
This is how I do this:
Code:
android_img_repack_tools/mkbootimg --kernel zImage --ramdisk NONE --dt boot.img-dt --base 10000000 --pagesize 2048 --board SRPOI21A000RU -o new_boot.img
Now you can flash new_boot.img with heimdall
Code:
heimdall flash --BOOT new_boot.img
I think you should start with kernel. Patch, build, pack img and flash it. (Don't forget to unlock bootloader first!) Then you can install my OS build on SD card (replace /etc/wifi and /lib/firmware with your files). I hope v1.2 will be released already. And if it works you can start to build your own OS image
Click to expand...
Click to collapse
puargs said:
This is really great information, thank you so much for the assistance! I have gone through and started work on what you mention, but I realized I'm not sure which Kernel you originally downloaded for your device. There are a lot available for the J120F:
https://imgur.com/a/OeI9u
Do you remember which one you started with? It will make filtering down the diff a lot easier.
Click to expand...
Click to collapse
You don't need to know it. Just take a look at commits: https://github.com/LONELY-WOLF/kernel-j120f/commits/master
Version 1.2 ready
ROM made more user friendly. Most patches are integrated in BSP. It's far more easier to test and build ROM now.
Fixes not included in 1.2:
xinput-calibrator should be removed as it's useless for modern touchscreens
keyboard layout was reworked but I still need to make keys bigger
removed "Ethernet" option from connman-gnome. This fix is available in proto_BSP_1.2 archive
Version 1.3 will be about included packages.
I want to delete and install some packages. Busybox will be replaced first!
BSP will get image recipe.
BSP builds without errors! My Ryzen 1700 (OC to 3800MHz) builds OS image in ~1 hour.
-W_O_L_F- thanks for leading work on a custom kernel and Linux userspace on SM-J120x. Great to see the improvements you've made on top of the vendor kernel to make it easier for developers to test (e.g. packaged boot.img, and userspace).
puargs: I'd also like to see a version for SM-J120A, however I expect we will be blocked running custom RECOVERY as the SM-J120A ships with a locked bootloader. So far I've been unable to find any bootloader unlock methods for SM-J120A.
Tried flashing linux_1_2_boot.img to RECOVERY with heimdall in "download mode" as a test, with no success.
The download mode recognizes an unexpected RECOVERY image, and reports "SECURE CHECK FAIL : (RECOVERY)" on the device.
Have you had any success? Perhaps you found a method that works?
Wow, this is some serious development going on for the SM-J120F! I'm surprised to see such projects for the Exynos platform.
Keep up the good work and may your project become successful!
Project moved to new hardware: Galaxy Note9.
https://forum.xda-developers.com/ga...linux-porting-native-linux-to-galaxy-t3936077
repacksuper
===========
Copyleft uluruman 2021-2022
(for LINUX/WSL only)
This is the minimalistic set of tools + a script for Linux for the automated
ground-up repacking and flashing of the Samsung Galaxy super.img, replacing
the stock Android system with something much less intrusive and obtrusive
(e.g. LineageOS). Or just some other GSI (Generic System Image).
Additional included scripts (since v1.1) simplify flashing of stock firmware or
separate image files under Linux using Heimdall.
Theoretically should work for any Samsung A-series phones, and may be even for
some others. Tested on SM-A127F/DSN made in India and Vietnam and SM-A325F/DS
made in India, on Debian Linux 11 x64. There are reports of successful flashing
of SM-A127M, SM-A032M and SM-A226B.
Why this method?
----------------
Repacking of super.img is the only method which allows changing of the phone's
operating system without screwing up the Verified Boot (VB) protection
mechanism. Keeping the VB allows you to be sure that everything besides the
platform was indeed compiled by Samsung and wasn't tampered with, no matter from
where you downloaded your stock firmware.
The other reason is that although there are alternative methods of changing the
OS, for phones with dynamic partitioning and no working version of TWRP
available they may be even more complicated than repacking of super.img
externally by this script.
Requirements
------------
Install the following tools from the official repositories of your Linux distro:
simg2img xz-utils lz4 unzip gzip jq file
Basic instructions
------------------
repacksuper.sh: main script for changing your phone's operating system
heimdall_flash_stock.sh: script for flashing stock firmware under Linux
heimdall_flash.sh: script for flashing any custom image file under Linux
Just run a script without any arguments to see help.
Extra tools used (x64 binaries and sources included)
----------------------------------------------------
GitHub - LonelyFool/lpunpack_and_lpmake: android super.img tools
android super.img tools. Contribute to LonelyFool/lpunpack_and_lpmake development by creating an account on GitHub.
github.com
GitHub - amo13/Heimdall: Heimdall is a cross-platform open-source tool suite used to flash firmware (aka ROMs) onto Samsung Galaxy devices. This is a fork of the original repository with a few crucial pull requests merged.
Heimdall is a cross-platform open-source tool suite used to flash firmware (aka ROMs) onto Samsung Galaxy devices. This is a fork of the original repository with a few crucial pull requests merged....
github.com
Additional notes
----------------
The included binaries for the lpunpack, lpmake and Heimdall were compiled for
the x86_64 architecture. If your PC architecture is different (e.g. x86 32-bit
or ARM) you have to compile these tools yourself. The full source code is
included (or otherwise available on GitHub).
Spoiler: Changelog
0.9: Initial release
0.91: Non-sparse new system is now correctly moved into the super dir
0.91a: Bug in the new system file format checking fixed
0.91b: Better support for spaces in paths
0.92: Added checking for system requirements and an optional parameter for
setting of the final tar archive name.
0.92a: Fixed file ownership issues inside the tar distribution archive
0.93: Added support for SM-A325F. Several minor improvements.
0.94: Added support for gzip-packed GSI images. Packing into .tar is now done
without question if the command line parameter is given. Tar parameter
now can include the full path. Without the full path the default tar
location is now the same as the GSI. Several other minor changes.
1.0: Finally added working native Linux flashing using Heimdall (HUGE thanks
to amo13 and Benjamin Dobell). Two new options: using empty product.img
and silent (non-interactive) mode. Colored text. Bugfixes and minor
changes.
1.01: Option to specify the SUPER partition name manually (needed for flashing
SM-A127F with Heimdall). Now it is possible to place output .img and .tar
files in any directory and give them any name. Text terminology a bit
clarified, help text expanded. Done many internal optimizations,
additional sanity checks and minor changes.
1.02: Support for SM-A032F/M and similar firmwares with non-packed super.img.
Support for firmwares with/without additional partitions. Support for
arbitrary partition group names. Very experimental option to use empty
system_ext.img for additional privacy (applicable to some phone models/
regions). Lots of minor fixes.
1.03: Multiple .img files are now supported in GSI archive files (one of them
should be system.img in that case), e.g. Android AOSP zip files are now
supported directly. The logic of flashing with Heimdall now includes more
complex cases, such as flashing in two steps with a reboot. Unnecessary
code in GZ unpacking removed. Some other small fixes and optimizations.
1.1: New scripts heimdall_flash_stock.sh and heimdall_flash.sh added.
Lots of refactoring in repacksuper.sh (because of that there may be some
bugs left), improved and clarified UI logic, changes in where the files are
now placed (see help for details), direct work with stock Zip firmware
files, lots of minor changes.
1.11: Colored text now should be correctly displayed in almost any shell that
supports it except if it's explicitly disabled with NO_COLOR.
1.11.1: heimdall_flash.sh now can flash Super partitions unconditionally in one
step when using both the -s parameter and manually specifying parition
name (e.g. SUPER for SM-A127F).
1.12: The heimdall_flash_stock.sh script was significantly upgraded with lots of
new features. Now it theoretically allows upgrading of stock firmware
without erasing user data, keeping the GSI and custom recovery, etc.
(although it's not that straightforward, read the help for details).
A couple of fixes in the other scripts.
1.12.1: changed unlz4 to lz4 -d, as some distros don't have the needed symlink
1.13: In repacksuper.sh support added for the Vendor DLKM and ODM DLKM
partitions, as well as the experimental -v option to add or replace Vendor
DLKM with a custom image. A couple of minor fixes.
1.14: Greatly improved logic of heimdall_flash.sh, now it's possible to specify
both or either custom partition name and custom file name, and acquiring
PIT from device is done only when it's needed. Versioning scheme of the
scripts was unified: the script that was updated receives the updated
version number of the whole pack, the rest retain the old numbers.
1.15: up_param_tool.sh script was added: it allows altering of the boot
sequence images (logo, "not official" warning, etc.), as well as the
Recovery and Download internal graphics. Happy hacking, but please pay
attention to the warning displayed after extracting the JPEG files.
A couple of minor fixes in the other scripts.
1.15.1: Bug with failing LZ4 uncompression fixed in repacksuper.sh and
heimdall_flash_stock.sh.
1.15.2: Added the Ctrl+C trap in heimdall_flash_stock.sh, so now the temporarily
renamed files are correctly renamed back in case of flashing being
aborted with Ctrl+C. Upgraded Heimdall with the git pull requests, but
it seems those still do not cure the relatively rare issue when flashing
specific files gets completely stuck at some point.
1.15.3: The "file" tool used to identify PIT files was replaced with direct
reading of the file header as the first method proved to be unreliable.
1.15.4: Fixed a bug in heimdall_flash.sh (missing g flag in sed)
1.15.5: Fixed the compatibility issue with the older LZ4 compressors
1.15.6: Fixed compatibility issues with systems where /bin/sh is Bash, such as
ArchLinux
1.15.7: repacksuper.sh: fixed using the existing "repacksuper" dir as source,
also in this mode you can now specify "-" as new system image to reuse
everything inside the "super" subdir. New experimental -w parameter.
All scripts: the Ctrl+C trap now switched on and off the correct way.
Several other fixes.
1.15.8: Fixed using the heimdall_flash_stock dirs as source for repacksuper.sh.
A couple of other fixes.
1.15.9: heimdall_flash_stock.sh: fixed skipping of duplicate partitions (e.g.
vbmeta) for some shells; fixed upgrade-flashing of Galaxy A32 (default
behavior).
Spoiler: Known issues
During the script run you can see several "Invalid sparse file format at header
magic" warnings, just ignore them.
For some firmware files Heimdall may not work at all (freeze indefinitely or
exit with an error), in that case you have to resort to Odin. In many cases
Heimdall freezes when uploading files for some time, but that does not mean it
is completely frozen, just be patient.
In LineageOS, Dot OS and some other GSIs I tried on SM-127F the touch screen
remains not responsive for about 6 seconds after waking up. The problem is not
present at least with SM-127F/DSN phones made in India, but present at least in
those made in Vietnam. Another problem in the most, if not all, GSIs is that the
MTP USB file transfer does not work (at least on Linux) because of the "wrong"
(Samsung's instead of Google's) default MPT driver used by the kernel.
Both of the aforementioned problems can be solved by installing the fixed and
recompiled kernel.
For the last problem alternative solutions include using apps such as
Warpinator, Syncthing or ftpd.
Spoiler: Food for thought
When choosing a GSI to install I really don't recommend using ones which include
GApps and therefore use any of the Google services. Don't let corporations
gather your data. You bought the phone and from now on it should be all yours,
with all of its data, like a PC in the good old days. You own your device, and
nobody has the right to stick their nose into how you use your phone, gather any
statistics and push you any ads. You always have a choice to turn down
privacy-unfriendly stuff, the price of that "inconvenience" is actually
ridiculous. From my point of view, there is simply no point in using non-stock
systems if they are still littered with the privacy-unfriendly bloatware.
For the step-by-step guide (slightly outdated) read this and this post. Also be sure to read this post concerning the importance of optics.img. Concerning the up_param_tool.sh be sure to read this post.
The included binaries for the lpunpack, lpmake and Heimdall were compiled for the x86_64 architecture. If your PC architecture is different (e.g. x86 32-bit or ARM) you have to compile these tools yourself. The full source code is included (or otherwise available on GitHub).
Latest stable combinations of stock firmware and LineageOS (updated February 5, 2023):
SM-A127F: A127FXXU7BVI4 + LineageOS 20.0-td 20230115 arm64 bvS
SM-A325F: A325FXXU2CVK3+ LineageOS 20.0-td 20230115 arm64 bvS
Some recommendations (updated February 5, 2023):
If you are a newbie and don't know how to do unlock the bootloader and other such stuff, here is a good guide by LAST_krypton (follow the "Unlocking the booloader" section) or a shorter guide by cldkrs.
First flash the phone with the whole set of stock firmware using the heimdall_flash_stock.sh (Linux only) script with the -d parameter: the latter forces flashing the unsafe partitions, which are needed for complete re-flashing.
If you're on Windows use Odin instead. Although there is a "leaked" Linux version of Odin, it's still closed-source (of course), so I don't recommend using it on your main Linux PC. For using the Windows version of Odin on Linux you have to either use Windows in QEMU (tested and works) or probably Wine (untested). When using QEMU remember to add the SUBSYSTEM=="usb", ATTRS{idVendor}=="04e8", ATTRS{idProduct}=="685d", MODE:="0666" line to the udev rules (e.g. /etc/udev/rules.d/30-qemu.rules) to enable the write access to the phone.
Sometimes Heimdall cannot flash the stock firmware and gets stuck at some particular file. Although you can successfully flash such a firmware using Odin, I recommend to better to find another firmware, may be one release older, because that may indicate some sort of incompatibility with your particular version of the phone.
The stock firmware comes in different revision numbers (also known as the baseband version), which are upgraded about once a year. Generally it should be beneficial to use the latest revision, but note that once you have upgraded it to a later revision there is no way back (at least known to me). In case you want to experiment with flashing of special kernels and other flavors provided by the XDA developers, if possible, you should probably stick to the very first revision.
If you already have the bootloader unlocked (OEM unlock) then after flashing the stock firmware there is no need to set up the Android, just go straight into the download mode again and flash the repacked super.img.
When downloading LineageOS or any other GSI select the normal arm64 bvS version, not vndklite version.
After flashing the OS go into the Recovery mode (hold volume up and power when rebooting) straight away and do the Factory reset. If you cannot get into the Recovery mode be sure to connect the USB cable before trying to.
If flashing with Heimdall completely freezes at some point make sure you've downloaded and repacked the correct arm64 b or a/b GSI and not arm and not a or a-only variant. If "sw rev check fail" message appears on the screen at some point just ignore it.
You can forcefully reboot your phone at any time, even if it seems bricked, by holding the volume down and power buttons for several seconds.
To upgrade your system to the recent version of the same OS just repackage it again using the same script and flash it normally. If the phone does not boot, get into the Recovery mode and try wiping the Cache partition (all your apps and settings should remain intact).
Most probably you don't need TWRP or any other 3rd party recovery tool at all, as the stock recovery tool works fine for just the factory reset after flashing the super file.
Try to avoid using Magisk if you just want to install another OS and nothing else. It is also not needed for LineageOS bvS version as it already has the su utility integrated, you just need to install the additional Superuser app by Pierre-Hugues HUSSON from the F-Droid store (although it's very old it works just fine).
It's possible that SM-127F/DSN internally is not A12 but actually M12, at least most of the tools and kernels made for M12 work on SM-127F/DSN while those made specifically for SM-125 and even other SM-127 versions do not. Therefore you can find more relevant info and tools in the corresponding XDA thread (my script is still remains relevant though).
I should test this for a127f
Bugs fixed: v0.91 & v0.91a
Bug fixed: v0.91b
Added the "file" utility to the list of requirements, updated readme.txt.
Thanks A LOT, this works! I am finally able to run LineageOS on my phone!
For Windows 10+ users: WSL runs this script just fine with a few additional steps.
1. Install WSL 2 and any Linux distribution from Microsoft Store
2. Run the distribution to finish setup
3. Install the required packages from the post (sudo apt install for Ubuntu/Debian)
4. Shift + Right Click in the folder where you have the script, the AP and the GSI packages
5. Open Linux shell there
6. Unpack & run script as stated in its help
Voila!
Wow ! Great job! I want to try it, but i'm getting many "Invalid sparse file format at header magic" while running the script, is it OK to flah the super.tar anyway?
jadfa said:
Wow ! Great job! I want to try it, but i'm getting many "Invalid sparse file format at header magic" while running the script, is it OK to flah the super.tar anyway?
Click to expand...
Click to collapse
It is totally OK
jadfa said:
Wow ! Great job! I want to try it, but i'm getting many "Invalid sparse file format at header magic" while running the script, is it OK to flah the super.tar anyway?
Click to expand...
Click to collapse
Yes, it is fine. These are just warnings produced by lpmake, they can not be suppressed. I could only suppress all the stdout/stderr from lpmake but it's no good in case of more serious warnings.
Updated to v0.92 with a couple of minor improvements.
{
"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"
}
What should I do next with the raw file?
"Unknown super file format" is this how it should be?
ANDARXapi said:
View attachment 5490897What should I do next with the raw file?
"Unknown super file format" is this how it should be?
Click to expand...
Click to collapse
Of course not. The format of each file is checked using the "file" utility, it should return the string "Android super image". Try to run file /home/toor/APfilles/super.stock.raw . What is the response? And try doing it all without sudo. There is no need in root privileges.
uluruman said:
Of course not. The format of each file is checked using the "file" utility, it should return the string "Android super image". Try to run file /home/toor/APfilles/super.stock.raw . What is the response? And try doing it all without sudo. There is no need in root privileges.
Click to expand...
Click to collapse
The raw file opens as a picture
uluruman said:
Of course not. The format of each file is checked using the "file" utility, it should return the string "Android super image". Try to run file /home/toor/APfilles/super.stock.raw . What is the response? And try doing it all without sudo. There is no need in root privileges.
Click to expand...
Click to collapse
run without sudo: 168: ./lpunpack_and_lpmake/lpunpack: Permission denied Cannot correctly unpack the super file. Exiting ...
I managed to fix the script, you just need to give chmod +x rights to the files in the folder "lpunpack_and_lpmake": lpunpack, lpmake, lpflash, lpdump, lpadd
ANDARXapi said:
I managed to fix the script, you just need to give chmod +x rights to the files in the folder "lpunpack_and_lpmake": lpunpack, lpmake, lpflash, lpdump, lpadd
Click to expand...
Click to collapse
Hmmm. I have updated it, may be it'll help. Could you please test the latest version (v0.92a)? I want to work it out of the box for everyone, without sudo or any tweaks.
uluruman said:
Hmmm. I have updated it, may be it'll help. Could you please test the latest version (v0.92a)? I want to work it out of the box for everyone, without sudo or any tweaks.
Click to expand...
Click to collapse
Okay, I'll test it tomorrow, today I want to relax at the computer all day
uluruman said:
Hmmm. I have updated it, may be it'll help. Could you please test the latest version (v0.92a)? I want to work it out of the box for everyone, without sudo or any tweaks.
Click to expand...
Click to collapse
Checked, it works right away
Is there a way to install magisk and root?