THBK1-10 thread: extend, root, hack ! - Windows 8 Development and Hacking

Hello,
I'm the proud owner of an hybrid monster, called THBK1-10.
This is basically an affordable tablet, running both Windows 8 and Android 4.2.2.
10.1 display, running x86 Atom 4cores, 2Gb RAM, 32Gb eMMC, USB host enabled. It is shipped with an external keyboard/touchpad (no port, no battery, no extended storage on it). More informations: http://www.thomsoncomputing.eu/dualboot.html
Windows 8 comes in x86 flavor...
The boot process let you choose Windows or Android.
There is no play store. My main goal actually is:
- (ok) rooting Android part
- (ok) installing Play Store
- (ok) increasing space
- (nok) installing a recovery (CWM/TWRP) allowing you to flash non-signed updates
- (nok) running Linux from an external USB drive
Partition layout: http://forum.xda-developers.com/showpost.php?p=54095052&postcount=8
Rooting / play store guide: http://forum.xda-developers.com/showpost.php?p=55513404&postcount=23
Known clones: http://forum.xda-developers.com/showpost.php?p=54282229&postcount=10
Increasing space with external SD: http://forum.xda-developers.com/showpost.php?p=54914759&postcount=17
Timezone issue Android/Windows: http://forum.xda-developers.com/showpost.php?p=54945950&postcount=19
BIOS default (SlateDroid): http://www.slatedroid.com/topic/106594-thbk110-default-bios-values/
Have fun !

I know there are EXT2 drivers for Windows, and EXT3 is just EXT2 + Journaling (the journaling is an important feature, but it's not part of the security model). However, I'm not sure if any of those drivers can modify file permissions. Alternatively, one could of course hex-edit the Android partition and try to tweak the file permissions that way, but that would require much more understanding of the EXT filesystem than I have. The source code is all open, though...

Thank you. Here is what i did:
a) trying to handle EXT3 fs from Windows
-> with Ext2Fsd, i have accesses to all the partitions, including /system and /data, but unfortunatly, permissions are not correct
-> i trying with other tool (Explore2Fs) not luck
-> ltools seems to provide a lattr util that could do it, but i'm unable to see the files (certainly because of the GPT partition
b) trying to use VirtualBox with raw disk access for handling, with a linux guest, permissions:
-> up to partition 7, this seems correct
-> from partition 8 (/system), i can mount it in RO but it crashes in RW
c) trying to boot to any linux supporting EFI32 and GPT
-> thanks to paperwastage, i could achieve it (thread here: http://forum.xda-developers.com/showthread.php?t=2500078 )
-> i have strange troubles: the system only detect mmcblk0 to mmcblk7, and is throwing an error (error -110 + unknow command)
-> both, in clonezilla and ubuntu
d) tryed to use so android local tricks to force change mode, but once, i'm stuck with no eXecute flag. I dig around the local.prop or any stuff that would help me to achieve this goal. The recovery is not available (nor i found it) and the only thing i can do is factory reset.
It really seems only Windows got the proper drivers for this eMMC. This could explain why i had hard time to dump it (and, actually, i would not try to restore b/c i'm not sure everything is backuped correctly and don't want to brick my tablet), and why i could only write from Windows and why it cuts at partition7 (i have at least 12 partitions. NTFS windows main is the #11 iirc)
What i could try actually:
-> double check with newer ubuntu (when i started "install to disk", it seems it could detect the whole disk, have to look again)
-> double check with local THBK install (copy 3 apks bundled with the tablet, but perhaps a command script is available to be executed ?)
-> double check with virtual box & raw disk acces (i focused on /system, but perhaps /data is ok ?)
-> recompile Ext2Fsd to have different default properties
-> dig the hardware to see if a real recovery boot is not available, or change the recovery to something more usefull than factory reset
Thank you if you have more and more ideas

Quick notes:
- THBK1 does NOT connect to PC/MAC
- THBK1 does NOT have USB Debug activated. The micro-usb is aimed to put a (normal) cable, not an OTG one nor a charging cable. You can reach ADB only over Wireless.
-> Currently trying TowelRoot with different parameters, but for now not successfull. Basically this is a 4.2.2 kernel so i could expect a low resistance at exploits, it worths to be tested

Good news, i was able to boot from an USB stick (with EFI), and while the MMC is not accessible, i found a trick to change permissions.
I have now full R/W support on EXT3 partition.
But sadly SU is not enough to gain root accesses.... damn.
Anyone able to find doc or explain how root access is triggered ?

I found an update, and i'm now able to flash the whole system partition. Sadly, i could not flash another update.zip, so i guess this is signed (and sadly it is).
I have also tryed z4root, towelRoot exploits, not working.
Basically i could somehow bypass the sign system in applying myself the content of the update.zip (as long as it deals with /data and /system files & perms). I'll try that for at least google apps.
edit: ok i have now play store and the whole google suite is working after a big playstore update (talkback, vocal syntgetisis and so on). Only google+ is FCing but it should only be a matter of installation. I should remove it and reinstall it from the market.
Only thing missing is root
Status on Android forum side: http://forum.xda-developers.com/android/help/hacking-thbk1-10-getting-root-t2804631/post53896017

As today, the tablet is now rooted. It works flawlessly.
Next step is the handling of recovery to flash non-signed zip files. It would ease the process of installing GAPPS or rooting the tablet.
But i'll take a break before
TODO list, from top to crazy:
- recovery
- test and deploy various system tweaker sur as Xposed framework
- bugfix vibrator (only working when you hit Windows button, not in apps)
- new rom, new kernel

Here is the actual partition layout:
Code:
Model: MMC BIWIN (sd/mmc)
Disk /dev/mmcblk0: 30.9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 269MB 268MB fat16 ANDROID!bootloader boot, hidden, legacy_boot
2 269MB 337MB 67.1MB ANDROID!panic
3 337MB 873MB 537MB ext4 ANDROID!factory
4 873MB 2484MB 1611MB ANDROID!fake
5 2484MB 2618MB 134MB ext4 ANDROID!config
6 2618MB 4229MB 1611MB ext4 ANDROID!cache
7 4229MB 5303MB 1074MB ext4 ANDROID!logs
8 5303MB 7450MB 2147MB ext4 ANDROID!system
9 7450MB 11.7GB 4295MB ext4 ANDROID!data
10 11.7GB 11.7GB 1049kB ANDROID!misc
11 11.7GB 11.8GB 33.6MB ANDROID!boot
12 11.8GB 11.9GB 134MB ANDROID!recovery
13 11.9GB 11.9GB 33.6MB ANDROID!droidboot
14 11.9GB 12.3GB 315MB ntfs Basic data partition diag
15 12.3GB 12.5GB 273MB fat32 EFI system partition boot
16 12.5GB 12.7GB 134MB Microsoft reserved partition msftres
17 12.7GB 30.9GB 18.3GB ntfs Basic data partition msftdata
I'm not able to read the partition w/o filesystem (2, 4, 10, 11, 12, 13).
I tryed with yaffs2, but i'm not able to see them (and since it is not MTD...)
I'm working on dd image of the 32Gb MMC.
In example, hexdump of partition 12 shows it is a kernel. Certainly the recovery kernel directly flash, i should dig this.

Guide: installing Google Apps and Rooting the tablet
THIS POST IS DEPRECATED. See http://forum.xda-developers.com/showpost.php?p=55513404&postcount=23
:good: /!\ Please click thanks or offer me a coffee with donate if it was usefull for you /!\ :good:
This is rather technical, but i can help if you are stuck. Thank you for your comments.
Here is how you could install Google App suite to the THBK1-10 and certainly many ones based on Inside H2O bios, board name: CARD_B (see above for detailled specs)
Basically, to install some stuff, the concept is to get rid of all the caveats (special MMC drivers, EFI 32 bits with GPT, etc...) through actual Windows 8.1 installation. Everything takes place through classic Windows desktop. For convenience, personnally worked with TeamViewer, doing this with the dock/touchpad is pain in the ass. You can void your warranty and break the android part of your tablet, so operate carefully, i'm not responsible of what you do !
This leads to 3 phases:
a) accessing EXT4 Android partitions
b) transfer files from Windows to Android
c) change permissions
a) Accessing EXT4. I used coLinux to access and handle Android EXT4 partitions:
- download and install coLinux http://sourceforge.net/projects/colinux/files/latest/download?source=files. At the 'Choose components' screen, uncheck 'Root filesystem image Download', and accept everything (including TAP drivers)
- download and unzip Debian Squeeze image in coLinux folder (c:\program files\colinux). Warning, this leads to a 2Gb file, ensure you have proper space. You could unzip it in your external SDcard, but you would have to change the path to rootfs and swap in above squeeze.conf
http://sourceforge.net/projects/col... 6.0 Squeeze/Debian-6.0.1-squeeze.7z/download
- test it: click on the squeeze.bat file into c:\program files\colinux (if you have an error co-slirp, simply close colinux and restart it). Once you have the 'debian login:' prompt simply type root then enter. You are now under coLinux.
First, install your local keyboard (if needed)
Code:
apt-get update
apt-get install console-setup locales console-data
In case you miss the point for the keyboard:
(choose select keyboard from full list / pc azerty or whatever...)
Code:
dpkg-reconfigure console-data
- you should now update your /etc/apt/sources.list file:
Code:
nano /etc/apt/sources.list
- fill with the following lines (remove all before)
Code:
deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
deb http://security.debian.org/ squeeze/updates main contrib non-free
- update your apt repository:
Code:
apt-get update
- you would like to sync the clock from Linux with Windows: edit /etc/default/rcS and change UTC=yes to UTC=no
Code:
nano /etc/default/rcS
You can exit coLinux, we have things to tweak now.You can then download the attached Squeeze.conf, and put it into your colinux folder, replacing the old. Remember, if you have changed the path for rootfs and swap, you must change them to reflect your current installation.
Squeeze.conf:
Code:
kernel=vmlinux
cobd0="c:\program files\coLinux\rootfs_2gb.img"
cobd1="c:\program files\coLinux\\swap_128mb.img"
cofs0="C:\share"
cobd8=\Device\HarddiskVolume8
root=/dev/cobd0 ro
initrd=initrd.gz
mem=256
eth0=slirp
b) transfer files from Windows to coLinux
We would create a share folder at the root of C:\.
You must have C:\share folder.
- Create a directory in /mnt
Code:
mkdir /mnt/win
- then mount the folder into your coLinux
Code:
mount -t cofs cofs0 /mnt/win
FOLLOW THE ABOVE ONLY FOR GAPPS:
- You must now download the google apps files. The operation is done under Windows:
download Android 4.2.2 ones: http://goo.im/gapps/gapps-jb-20130812-signed.zip and extract all the file into C:\share
This folder must contains the whole gapps (you 'll see folders named: system, META-INF, optional...).
You must directly DELETE 3 files and 1 folder:
file system\app\GooglePlus.apk
file system\app\LatinImeDictionary.apk
file system\lib\libjni_latinime.so
fodler system\tts
If everything is ok, browsing /mnt/win/ from coLinux (not windows)
Code:
ls /mnt/win
should show the share directory content (META-INF,system,optional,...).
FOLLOW THIS ONLY IF ROOT:
- You must now copy su binary to your tablet: download attached files, unzip, copy it to your windows desktop shared folder
Nota: this file is extracted from Koush' superuser APK. This is the x86 su binary. Feel free to replace with newest version if available or if you fear something
FOLLOW THIS IF ROOT & GAPPS
c) access to Android partition
- create a system folder in /mnt
Code:
mkdir /mnt/system
- mount android to system
Code:
mount /dev/cobd8 /mnt/system
- check you are ok with
Code:
ls /mnt/system
You must see app, bin, usr, etc .... folders.
*** at this point, /mnt/system contains ALL your android system. NO MISTAKE ! ***
FOLLOW THIS ONLY IF GAPPS
- part 1: removing files. Browse to /mnt/system/app and CAREFULLY delete the 8 files (some could be missing, don't bother):
Code:
cd /mnt/system/app
rm Provider.apk
rm Provider.odex
rm QuickSearchBox.apk
rm QuickSearchBox.odex
rm SetupWizard.apk
rm SetupWizard.odex
- part2: copy. Copy the files from Windows to Android - it could take up to 2 minutes -
Code:
cp -rp /mnt/win/system/* /mnt/system
- then fix the permissions:
Code:
chmod -R 755 /mnt/system/addon.d
chmod 755 /mnt/system/app/*
sync
At this point, this is over. You can exit from colinux, reboot to Android, and come back to windows uninstalling coLinux, if anything is ok
The whole GAPPS are installed. Enjoy !
FOLLOW THIS ONLY IF ROOT
- copy attached x86 su binary to android
Code:
cp -p /mnt/win/su /mnt/system/bin
- then fix the permissions:
Code:
chmod 755 /mnt/system/bin/su
chmod u+s /mnt/system/bin/su
ln -s /mnt/system/bin/su /mnt/system/xbin/su
sync
At this point, this is over. Reboot, you can now download and install superuser https://f-droid.org/repository/browse/?fdfilter=superuser&fdid=com.koushikdutta.superuser
Your tablet is now rooted. Enjoy !

Know clones (feel free to help):
- Danew i1012 dual boot (strictly identical to Thbk1)
- VOYO A1 (Windows 8 only).
- Cube U100GT (Windows 8 only)
Certainly clones:
- Ramos i10 pro (dual boot)
- Pipo W1 / Work W1 (Windows 8 only)
- ColorFly i106 (Windows 8 only)
- Toshiba WT8-AT01G (Windows 8 only)

Graveen said:
Know clones (feel free to help):
- Danew i1012 dual boot (strictly identical to Thbk1)
- VOYO A1 (Windows 8 only).
- Cube U100GT (Windows 8 only)
Certainly clones:
- Ramos i10 pro (dual boot)
- Pipo W1 / Work W1 (Windows 8 only)
- ColorFly i106 (Windows 8 only)
- Toshiba WT8-AT01G (Windows 8 only)
Click to expand...
Click to collapse
Considering getting a voyo a1 or a pipo w2. But 99% of my interest in windows 8 tablets is running old windows games on them. What's your experience with win 8 and older games for windows? Touchscreen make anything unplayable? Thinking old command and conquer or Warcraft 1-3 etc. With some RPG thrown in.
I hate the idea of being limited to just windows, but I'm hesitant to spend too much on what might not work like I hope.

StridAst said:
Considering getting a voyo a1 or a pipo w2. But 99% of my interest in windows 8 tablets is running old windows games on them. What's your experience with win 8 and older games for windows? Touchscreen make anything unplayable? Thinking old command and conquer or Warcraft 1-3 etc. With some RPG thrown in.
I hate the idea of being limited to just windows, but I'm hesitant to spend too much on what might not work like I hope.
Click to expand...
Click to collapse
Honestly,i installed Steam and played some to test. But, alas, it is not successfull. If you can wire a BT pad, let's say it is ok, but else, generally, the touchpad is not suitable, really.
Of course some point'n clic games should work nicely. But except theses, you 'll be forced to add keyboard/mouse. Or, as i mentionned, a bluetooth gamepad, with some keyboard mapping, such as XPadder, could work fine.

Graveen said:
Honestly,i installed Steam and played some to test. But, alas, it is not successfull. If you can wire a BT pad, let's say it is ok, but else, generally, the touchpad is not suitable, really.
Of course some point'n clic games should work nicely. But except theses, you 'll be forced to add keyboard/mouse. Or, as i mentionned, a bluetooth gamepad, with some keyboard mapping, such as XPadder, could work fine.
Click to expand...
Click to collapse
So basicly, the hardware ran things OK, but the interface sucks, oh well. Probably not worth the headaches of dealing with windows again. I'd imagine it's a real PITA to fix things if it gets a virus.

StridAst said:
So basicly, the hardware ran things OK, but the interface sucks, oh well. Probably not worth the headaches of dealing with windows again. I'd imagine it's a real PITA to fix things if it gets a virus.
Click to expand...
Click to collapse
Like a windows. The 'dock' is allowing light computer use, and Office 2013 home is shipped for free with the tablet. But yeah, Windows legacy is the key when dealing with windows

Hey mate,
I have one of these - http://www.ebay.co.uk/itm/390900023783?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649
are you implying that I should be able to get it to dual boot Windows and Android following your guide?
Thanks
Karl

Hello Karl,
Yes it should be possible if strictly identical.

Increase data space with Link2SD
You can dedicate a part of external SD to increase /data size. Link2SD is ok for this, and will, in the free version, allows you to move APK to external partition.
Your tablet MUST be rooted !
1) ensure you have a FAT32 partition (primary, 1st position)
2) ensure you have an EXT2 or EXT4 partition (primary, 2nd position)
3) install Link2SD https://play.google.com/store/apps/details?id=com.buak.Link2SD
You can now use Link2SD which 'll create links and move your APKs to your new EXT partition.
Personnaly, i have a 32Gb SD with 24Gb FAT + 8Gb EXT4 partition.

Increase data space with Link2SD : Good news !!! You are the Boss. THNK1-10 is available at Carrefour (an another good news)

Time is changing between windows and Android
You can simply set timezone to GMT+0 and disable network time.
On Debian, you set UTC to YES, but need to seek where it takes place in Android.

bu3304 said:
Increase data space with Link2SD : Good news !!! You are the Boss. THNK1-10 is available at Carrefour (an another good news)
Click to expand...
Click to collapse
carrefour or conforama.
thomson carrefour and /danew in conforama.
even saw on internet that MSI is also having this tablet and just sticking there logo on it. atleast looked like this tablet.
---------- Post added at 12:05 AM ---------- Previous post was at 12:01 AM ----------
hum. i think i will go for the new asus transformer book t100 with atom z3775 processor.
i like the battery life of the asus.
but prefer the acer switch 10 in terms of look and the magnetic dock
but yeah choice of 11 hours of battery or 8. makes a difference
and the new 3775 or 3745. cpu

Related

[NST]MinimalTouch 1.1beta5 (+Index to manual rooting)

I am not responsible for any damage your nook suffers.
Officially supported by The Nooter Project for Nook Simple Touch
http://code.google.com/p/nooter/​
MinimalTouch 1.1beta5
Information:
What it does:
Enables ADB via uRamdisk
Installs su and Superuser.apk
Installs Busybox and sqlite3
All zips install ADW launcher + NookColorTools + MinimalisticBlack theme + Minimalistic Text Widget + Button Savior with eink friendly skins.
Bugs:
Two step method (necessary to avoid the 1+ day wait time on market).
Future updates:(In order of priority)
Block automatic updates (Accidentally taken off on last update).
Officially make it compatible with 1.1.2
Check /system version and proceed install, if not force update to 1.1.2
Make a 1 step process.
Automatically backup and zip /factory to SDcard, to avoid having to make a full backup before rooting, and to use in conjunction with Touch-Formatter
Minimal zips install my stripped down repack of Gapps.
Fulltouch zips include the complete package of Gapps.
All W zips install ADB wireless Uramdisk.
All U zips install ADB USB Uramdisk + ADB widget to enable wireless adb at need.
All X zips include NookTouchTools + Xorzone's mods, for more details on this, read (http://forum.xda-developers.com/showthread.php?t=1289894).
All beta5 in conjunction with Unroot.zip include a way to backup and restore the original files modified by the rooting process, and delete all apps installed after rooting.
Unroot restores the original files modified and deletes all installed programs after or during the rooting process (only use with beta5).
Files that get Modified:
/boot/uRamdisk - enables ADB over wifi or usb
/system/build.prop - enables google check-in service and fakes signature, to enable protected apps on market
/data/system/packages.xml - enables Gapps to work correctly once installed
/system/framework/framework.jar - generates Android ID
/data/data/com.android.providers.settings/databases/settings.db - enables Non-Market Installs
Also on X files:
/system/framework/services.jar
/system/framework/android.policy.jar
User manual:
Things you will need before rooting:
Update your NST to 1.1 (http://nooter.googlecode.com/files/nook_1_1_update.zip)
CWM: Thread: http://forum.xda-developers.com/showthread.php?t=1360994
Direct download links:
http://forum.xda-developers.com/attachment.php?attachmentid=806435&d=1323121399
http://forum.xda-developers.com/attachment.php?attachmentid=806434&d=1323121315
Download it and burn it to an sd-card, (windows users use this to burn the image https://launchpad.net/win32-image-writer/+download)
(If the last version dosn't work, try the first).
You must have an external microSDCard reader to burn CWM, not the NST.
Understand the button layout of CWM:
Both Buttons on the left: BACK
Upper button on the right: UP
Lower button on the right: DOWN
n button: SELECT
Power button: TOGGLE DISPLAY
Download 2 zips from one of the different releases listed underneath:You can choose what first part to use on each folder, which can be the original MinimalTouch (coreGapps+launcher,etc), or the Fulltouch(fullGapps+launcher,etc).
The second part zip is obligatory.
Select the package version to use:
NW files include Normal + adb Wifi zips.
(Download one of the "START" zips and the "END" one).
NWFullTouchPART-1-START
NWMinimalTouch-PART-1-START.zip
XWU-NWU-MFTouch-PART-2-END-1.zip
NU files include Normal + adb Usb zips.
(Download one of the "START" zips and the "END" one).
NUFullTouch-PART-1-START.zip
NUMinimalTouch-PART-1-START.zip
XWU-NWU-MFTouch-PART-2-END-1.zip
XW files include Normal + Xorzone's mods + adb Wifi zips.
(Download one of the "START" zips and the "END" one).
XWFullTouch-PART-1-START
XWMinimalTouch-PART-1-START
XWU-NWU-MFTouch-PART-2-END-1.zip
XU files include Normal + Xorzone's mods + adb Usb zips.
(Download one of the "START" zips and the "END" one).
XUFullTouch-PART-1-START
XUMinimalTouch-PART-1-START
XWU-NWU-MFTouch-PART-2-END-1.zip
beta5 folder has the most popular zips above, with an extra security layer for those who forget to make a backup. Beta5 backups all the used files to /data/backup.
(Download one of the "START" zips and the "END" one).
beta5-2 XUFullTouch-PART-1-START
beta5-2 XWFullTouch-PART-1-START
beta5-1 XWUMFTouch-PART-2-END
Unroot(only for beta5) You can revert back to the original state by flashing Deletebeta5-1.zip through CWM, let it run then pull the SD and reboot. Beta5 files also have the progress bar fixed.(testing)
beta5-4Unroot
Installing instructions:
Copy the zips onto the root directory of the sdcard you burned the CWM.(Don't extract them)
Insert the sdcard on your nook, and boot it.
On CWM select Choose install from zip, choose zip from sdcard, MinimalTouch-PART-1-START.zip, click yes and wait 1+ minute, (or FullTouch-PART-1-START.zip)
Go back, eject the sd card, and click reboot.
If you selected the extended package with Touchnooter apps:
At the Android Welcome Screen skip Sign In
Enable Location Services when given the option.
Select ADW launcher as default.
Log in on YouTube, by clicking options, my channel, add acount, use a complete Gmail account not just the username, accept the messages, open Gmail but dont add any account to it, just click options and force sync it, force sync it until it fails to sync and closes (FC), it may take some tryes and time, dont desist, then open market and it will fail to sync, DO IT, dont skip this steps as they are necessary for building correctly the databases.
Easy steps from here on.
Shut down your Nook.
Insert the sdcard on your nook, and boot it.
On CWM select Choose install from zip, choose zip from sdcard, MinimalTouch-PART-2-END.zip, click yes and wait.
Go back remove the SD-card, reboot.
The system will load, open Gmail let it sync, wait a bit, if it dosn't, force it to sync, it will work.
Open market, accept policies, and you are ready to go .
File list:
All the available files are listed here:
http://code.google.com/p/nooter/downloads/list
or
http://bit.ly/uqxM99
Index
Automatic Methods:
[NST]MinimalTouch 1.1beta5
[NST]Touch-Formatter
Manual Tutos:
Skip registration (OOBE)
Making the manual process LESS PAINFULL
Setting up adb manually on the nook touch
Setting up root access on NST through adb and installing busybox
Improve battery life(testing)
Backup bookmarks and annotations(testing)
Enable non market app installs
Installing XorZone's B&N button modifier
Change the powered off screen image
Blocking OTA updates
Installing new fonts for your nook (testing)
Installing Gapps (+launcher, etc)
Totally uninstall Gapps (my repack), unrooting, erasing and restoring
Interesting or useful specific apps or hacks for Nook Simple Touch
nook 1.1 update
Thanks to:
GabrialDestruir for his hard work, making easy to root the NST creating the Touchnooter (http://forum.xda-developers.com/showthread.php?t=1343143) (http://forum.xda-developers.com/showthread.php?t=1132693)
ros87 for the update on uramdisk and the how to modify boot/charging images and usb drivers. (http://forum.xda-developers.com/showthread.php?t=1337653) (http://forum.xda-developers.com/showpost.php?p=17882146&postcount=11) (http://forum.xda-developers.com/showpost.php?p=19342931&postcount=12)
XorZone for NookTouchTools and his jars, book button menu and the orientation Switch (http://forum.xda-developers.com/showthread.php?t=1289894)
nookdevs for noogie and making all this possible (http://nookdevs.com/NookColor_Rooting)
mali100 for the update on framework. (http://forum.xda-developers.com/showpost.php?p=19201466&postcount=352)
xboxexpert for the working market. (http://forum.xda-developers.com/showpost.php?p=15084704&postcount=51)
Kralik for his findings. (http://www.mobileread.com/forums/showthread.php?t=156539)
jerryfan2000 for Button savior (http://forum.xda-developers.com/showthread.php?t=865525)
OMGWTF_BBQ for the Button Savior eink friendly mod (http://forum.xda-developers.com/showthread.php?t=1250278)
met67 for the permissions and ownership on Gapps (http://forum.xda-developers.com/showpost.php?p=19658259&postcount=109)
mali100 for portin CWM to NST (http://forum.xda-developers.com/showthread.php?t=1360994)
salsichad2 for pointing out that the X files where corrupt and his adw theme config (http://forum.xda-developers.com/showpost.php?p=19720053&postcount=139)
kneeldug for sugesting extra steps on the automatic tuto.
bisbal for helping me beta test.
dobbing for the copy of the 1.1 update.
Hi,
thanks for the guide. I have a dumb question. Could you please provide the correct sqlite3 url to use for the download?
Thanks.
Eded,
All I can say is that I am truly sorry. The nooter didn't work because I was dumb enough not to read instructions properly. Now I added the uramdisk to the nooter/boot directory, not root directory!!!!!!!!!!!
Now it worked, and I restored the apps I downloaded with titanium backup pro.
Thing is: market (with vending.apk installed over original market) doesn't reach the server properly when I press "my apps", and I am still not able to find my device on the android market in my computer.
On the rest, it works! Thanks for everyone who gave tips!!!
I already rooted my nook with touchnooter for 1.1 can I use the instructions to just install market or do I have to start from scratch.
Dopedangel said:
I already rooted my nook with touchnooter for 1.1 can I use the instructions to just install market or do I have to start from scratch.
Click to expand...
Click to collapse
You have no need to start from scratch
You can use this method to install gapps.
Just remember to delete the other apps as launcher, etc, that you have allready installed from the package I posted.
apeine said:
Eded,
All I can say is that I am truly sorry. The nooter didn't work because I was dumb enough not to read instructions properly. Now I added the uramdisk to the nooter/boot directory, not root directory!!!!!!!!!!!
Now it worked, and I restored the apps I downloaded with titanium backup pro.
Thing is: market (with vending.apk installed over original market) doesn't reach the server properly when I press "my apps", and I am still not able to find my device on the android market in my computer.
On the rest, it works! Thanks for everyone who gave tips!!!
Click to expand...
Click to collapse
Dont worry, **** happens It's easy to mess up if you are in a hurry, it happens to me alot.
Can you still search and install from market, even if it dosnt appear en the pc?
beber75 said:
Hi,
thanks for the guide. I have a dumb question. Could you please provide the correct sqlite3 url to use for the download?
Thanks.
Click to expand...
Click to collapse
I will when I get home.
Is it possible to modify the partition to enlarge the 250mb partition? I heard that 750 mb is reserved to b&n contents and i find it a waste of space.
user4242 said:
Is it possible to modify the partition to enlarge the 250mb partition? I heard that 750 mb is reserved to b&n contents and i find it a waste of space.
Click to expand...
Click to collapse
Not sure what you mean?
Nook partition (6) is 252MB and Data partition (8) is 841MB
There's no partition "reserved" for B&N contents, it uses both and so can you.
Code:
Number Start End Size Type File system Flags
1 16.4kB 79.7MB 79.7MB primary fat32 boot, lba
2 79.7MB 96.5MB 16.8MB primary fat32 lba
3 96.5MB 296MB 199MB primary ext2
4 296MB 1942MB 1646MB extended
5 296MB 598MB 302MB logical ext2
6 598MB 849MB 252MB logical fat16 lba
7 849MB 1101MB 252MB logical ext3
8 1101MB 1942MB 841MB logical ext3
Yes but i can't put my files on the b&n reserved partition.
So if i want to put only my contents on the nook i have only 250 mb.
Right?
user4242 said:
Yes but i can't put my files on the b&n reserved partition.
So if i want to put only my contents on the nook i have only 250 mb.
Right?
Click to expand...
Click to collapse
Sure you can, but only the Nook partition is auto mounted trough USB.
If you want to put files in /data/media you can use adb or some filemanager app.
thanks Ros87, thats just another reason to nooter my NST.
I'm still on 1.0 and my plan is to:
1. backup 1.0 with the help of the link in your sig.
2. upgrade to 1.1. from B&N servers
3. Follow the guide in this thread and nooter it manually...
Smart? or do you have any tips for me?
Thanks a lot for the root.
Just got my nook touch and I'm eager to root it.
Quick question, what's the difference between this root and touchnooter.
Thanks.
dark_hawk said:
Quick question, what's the difference between this root and touchnooter.
Click to expand...
Click to collapse
This root is manual bút it adds android Market. Touchnooter does this all with a script, so its automatic BUT it doesnt add Android Market because it can't.
tomic22 said:
This root is manual bút it adds android Market. Touchnooter does this all with a script, so its automatic BUT it doesnt add Android Market because it can't.
Click to expand...
Click to collapse
Can you use touchnooter to root and then use the part of this guide to add market and apps?
Can you use touchnooter to root and then use the part of this guide to add market and apps?
Click to expand...
Click to collapse
Of course
user4242 said:
Yes but i can't put my files on the b&n reserved partition.
So if i want to put only my contents on the nook i have only 250 mb.
Right?
Click to expand...
Click to collapse
If you still want to resize the Nook partition, here's a Linux way:
As always, make sure you backup your Nook before fiddling with stuff like this
Prerequisites:
1: NST booted with Noogie
2: USB attached and recognized in Linux (usually /dev/sdb)
Make a copy of Nook and Data files (ignore socket warnings)
Code:
#mkdir tmpnook tmpdata
#mount /dev/sdb6 tmpnook
#mount /dev/sdb8 tmpdata
#tar cf tmpnook.tar tmpnook
#tar cf tmpdata.tar tmpdata
#umount tmpnook
#umount tmpdata
Delete existing and create new partitions:
Code:
# fdisk /dev/sdb
Command (m for help): d
Partition number (1-8): 8
Command (m for help): d
Partition number (1-7): 7
Command (m for help): d
Partition number (1-6): 6
Command (m for help): n
First cylinder (286-926, default 286):
Using default value 286
Last cylinder, +cylinders or +size{K,M,G} (286-926, default 926): +840M
Command (m for help): n
First cylinder (707-926, default 707):
Using default value 707
Last cylinder, +cylinders or +size{K,M,G} (707-926, default 926): +252M
Command (m for help): n
First cylinder (834-926, default 834):
Using default value 834
Last cylinder, +cylinders or +size{K,M,G} (834-926, default 926):
Using default value 926
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
Create filesystems:
Code:
# mkfs.vfat -F 16 -n Nook /dev/sdb6
# mkfs.ext3 /dev/sdb7
# mkfs.ext3 /dev/sdb8
Write back your data:
Code:
# mount /dev/sdb6 tmpnook
# mount /dev/sdb8 tmpdata
# tar xf tmpdata.tar tmpdata
# tar xf tmpnook.tar tmpnook
tar: tmpnook: implausibly old time stamp 1970-01-01 01:00:00 (just ignore)
# umount tmpnook
# umount tmpdata
Remove sdcard and reboot
Eded,
Even though I am unable to download through my computer, I can perfectly download from Nook. A few weeks ago, I lost that capacity on 1.0.1, and that is why I was so interested in running the 1.1.0 rooted.
Once again, thank you all (Gabrial, Eded, Xorzone - great nooktouchtools comeback, Ros, and everyone else that helped me).
eded333 said:
[*]When the NST reboots select go launcher as your predefined launcher, skip google registration and try first to open and register on Youtube (Youtube may fail, dont worry) then GMail and then Market, if Gmail fails, dont panic, reboot and try again, dont start all the proces agian, just power cycle, allways use the same google account.
Click to expand...
Click to collapse
I was able to register on YouTube, but I keep getting the register your google account screens with both Gmail and Market over and over again. I've rebooted and tried registering about a dozen times, no success.
I followed directions exactly, could there be something I'm missing?
Hi,
If I well remember, this is a know issue I already faced off on my notion ink adam. You have to delete your registered account in your settings.
Power off then power on again your device.
Register again.
beber75 said:
Hi,
If I well remember, this is a know issue I already faced off on my notion ink adam. You have to delete your registered account in your settings.
Power off then power on again your device.
Register again.
Click to expand...
Click to collapse
Thank you for the suggestion. I tried to do this but got a message "Barnes and Noble failed to deregister device" or something. Then I tried to return to the launcher and my Button savior failed.
Restoring with nookRestore.img and starting from scratch.

[Guide] Eden Midas 8" Tablet

Moderators, please permit me to leave the tablet's Korean name (Eden Midas: 이든 마이다스) here so it shows up in google searches (if you don't have Korean fonts, it will probably show as garbage, but it really does say "Eden Midas" in Korean script).
This thread is intended as a place to collect together information about the Eden Midas tablet. It's quite possible that we will eventually find that the internals are the same as one of the Chinese tablets using the RK2918 chipset, in which case the thread may just turn into a pointer to that other thread.
What is the Eden Midas tablet?
In the form I have it, an 8" tablet based on the RK2918 chipset, with ICS 4.0.3 and kernel 3.0.8+ (whatever the plus may mean). It's quite nice, with a very clean 1024*768 screen. But like most RK2198 builds, severely locked down and marketed just as an entertainment station. At present, it seems to be only sold online in Korea. My build is V1.0.1.IMK74K.eng.root_20120508.165508_HW:1.0.0.0 (I wonder if the HW stands for huawei??).
Rooting[\B]
This is all I've done so far. Here's what I did:
On Linux
What's needed:
You may need to have root privileges on your linux system (you will need to mount some filesystems, and edit a udev rule file - depends on the linux system who is allowed to do these). You will also need rk2918tools ( https://github.com/lamegopinto/rk2918tools) - these are tools collected by lamegopinto, credits inside to the original authors; specifically, you will need ivop's rkflashtool.
In theory, this shouldn't remove your applications, data, and settings. In practice, on my machine, it did. So I'd back everything up first. And take out any external sd card so it's safe. Also, I better warn that I had a few scary moments getting to here, so please make sure you have really good backups. You will need (on your linux system) copies of su, Superuser.apk and busybox.
Connect the tablet by USB to your linux machine (real or virtual). Put the tablet into fastboot mode by holding down the whole +/- key, then pressing the start key for about 3 seconds. Keep holding the +/- key for up to ten seconds. If the system boots or goes into the boot screen (android open robot icon) you need to try again.
On the linux system, type lsusb (if you get an error, you probably need to install usbutils - how you do this depends on the linux system). If you see 2207:290a, you are OK. If you see 2077:0000, you missed fastboot mode and need to try again.
Tell linux about your device. You need to install udev rules.
Code:
cd /etc/udev/rules.d
sudo pico 61-android.rules
then create the content
Code:
# USB devices
SUBSYSTEM=="usb",ATTRS{idVendor}=="2207",ATTRS{idProduct}=="0000",MODE="0666",GROUP="users"
SUBSYSTEM=="usb",ATTRS{idVendor}=="2207",ATTRS{idProduct}=="290a",MODE="0666",GROUP="users"
This is for fedora 17. On current ubuntu the priority number (the 61 in the file name) probably needs to be different (maybe 51?). In earlier systems, the udev rule format is different, you're going to need to google this. The above rules also include one for adb mode, which will probably turn out useful. If you want adb mode, you will also need to do this:
Code:
pico ~/.android/adb_usb.ini
and create the content
Code:
0x2207
Create a directory called MIDAS inside the directory where you stored the rkflashtools. You need to have probably 2 times the capacity of your sdcard available (if you have an 8GB internal sdcard, I'd aim for 16GB+ free). Go into that directory.
Use ivop's rkflashtool to retrieve the first 2K blocks of memory:
Code:
../rkflashtool r 0x0 0x2000 > headers
This will create a file called headers. It's a binary file, but the important bit is readable. Try
Code:
more header
to read it, and carefully note down the partition locations (note that the order parameter order is the opposite to what rkflashtool uses. [email protected] means that the partition consists of X blocks starting at Y. Whereas for rkflashtool, you specify "rkflashtool (r or w) Y X (< or >) filename". The numbers X and Y are in hex notation (that's what the 0x at the start means). Note also that the MIDAS has a different layout to the tablet Ivop was discussing).
Now retrieve all the other partitions from the device, giving them descriptive names. For root, the only one you will actually need should be system.img. But get the rest just in case, as backups... Please note that there seem to be some funnies with this device, and rewriting partitions often causes it to reinitialise everything. It's probably doing some checksumming... Please keep these image files safe, and don't edit them! But you can gzip them to reduce the space they take up. Please note also that the last partition - usually the user partition - goes to the end of your card. So you need to convert your flash card size into a hex number (e.g. 8GB is 0x200000000 bytes, or 0x10000000 512B blocks). Suppose the user partition starts at 0x32A000. Then you need to put its length as 0x10000000 - 0x32A000 = CD6000 blocks (you may need a hex calculator for this).
Download su, Superuser.apk and busybox (these are all public domain) into your MIDAS directory
Code:
cp system.img system.new.img
mkdir mnt
sudo mount -t ext3 system.new.img mnt
Copy su into mnt/xbin, busybox into mnt/bin and Superuser.apk into mnt/app (simplest is to use a file manager to do this - or use linux commands). At this point, your image is complete!
Code:
umount mnt
../rkflashtool w (the system partition address and length for _your_ system image, which might be different from mine) < system.new.img
../rkflashtool b
Disconnect the USB cables
Your system should now reboot. If you're lucky (I wasn't) it will reboot as a rooted system with all your files intact. If you're semi-lucky, it will reboot as a rooted system, but without your files. Hope your backups were good... If you're really unlucky, it won't reboot. You may need to recreate all partitions from the copies you just made above, and try again. If the system seems completely bricked, the reset button (the tiny pinhole in the back, just above the external sd card door) is your friend. Pressing it and going into fastboot mode can allow you to reload all your partitions (you did make those backup copies of all partitions, didn't you)?
On Windows[\I]
Sorry, I have no idea. If someone drafts a guide, I'm happy to put it up. Alternatively, you can easily install a ubuntu virtual machine inside your windows box. It will probably be easier, and the linux experience won't go astray in working with android anyway.
[Tun Drivers and Openvpn]
For some reason known only to themselves, the manufacturers have removed the Tun drivers from the ics kernel build. The kernel doesn't have the ability to load modules. (This makes sense for phones, maybe, but I can't understand why anyone would remove the ability to load modules in a tablet. Perhaps the Chinese government doesn't want it to be too easy for people to set up vpns?) Anyway, you can install what appears to be a suitable Tun module using Tun.ko installer. It installs OK but when you try to use it, the system freezes for about 10 seconds, then reboots. If anyone finds a version of the 3.0.8+ kernel (maybe 3.0.8- kernel would be a better name), suitable for the Midas and with either a built-in tun driver, or the ability to load kernel modules, please let me know.
Complete Reflashes
Not sure if there are any that will work right now. If you're really stuck, the cyanogenmod version for Cube might work, but it sounds like it is still a work-in-progress.
Do you have the kernel of the tab?
- Oma -
Oma7144 said:
Do you have the kernel of the tab?
Click to expand...
Click to collapse
Sorry, no - and sorry for the delay in replying, I didn't get notification for the thread.
Dump the firmware and upload the files: http://forum.xda-developers.com/showpost.php?p=35298423&postcount=462
- Oma -

[DEV][WIP] xubuntu on tf300tg 0.1.2 (updated 130408)

*** ABOUT ***
This is an attempt to build a completely clean installation of xubuntu for the tf300tg (and probably tf300t). Most notably it does not reuse the ac100 ubuntu package.
I also want it to be as completely documented as possible starting from an official ubuntu repository and kernel source, until everything is working. Which does not mean it is for a complete beginner to reproduce...
It's not (yet) packaged : you at least need to be able to install a blob for the kernel, and a rootfs to a dedicated partition.
It's also not yet as cleaned up and documented as I would for the kernel side of things.
Everything is done on device on (and for) a tf300tg but as been reported to work on tf300t.
Most of the hard work was done by others. I mostly started from rabit's tf700 ubuntu, and added some insight from cb22 work on arch to get something working.
*** STATUS ***
What works :
- it boots into a clean xubuntu dm/desktop, with wifi (improved), 3g
- it also boots into android (stock, didn't try cm)
- 3g also works under android (new)
- touchpad / touchscreen
- 3d acceleration (version 16.3 of nvidia drivers)
- cpu and gpu overclock (respectively to 1,5 GHz and 446 MHz)
What I know doesn't work, isn't there yet :
- sound
- bluetooth
- some key remapping (esc, alt, ...)
Many other things I didn't check (sensors ?).
*** HOWTO install ***
0. of course you can break many things doing that ; you should have access to nvflash (never had to use it though) and with a recovery installed (I'm on twrp 2.4.3.0)
1. unpack xubuntu_tf300tg_rootfs-0.1.2.img.lzma to the internal storage and move / rename to linux/rootfs.img (/data/media/linux/rootfs.img)
1bis. you can change your keyboard layout in /etc/default/keyboard (replace "us" by whatever is your locale)
2. install the kernel blob using fastboot or "dd if=xubuntu_tf300tg_kernel-0.1.2oc.blob of=/dev/block/mmcblk0p4"
You should be able to reboot into xubunfu (or android).
3. log in as guest, from "user and groups" in the "settings manager", add one user, set password, change account type to administrator, add to sudo group (root password wil be asked : root)
4. logout, then login into your newly created user
5. open "language support" from the settings manager, and when it says missing locales, either choose install if you want "en" or "ask me later" if you want something else (in which case you can chose to install your own language, and configure them on the "regional format" page ; don't forget to apply system wide on both pages
6. change root password
Your second reboot should be more satisfying
*** HOWTO improve ***
1. find out what does not work and tell in the thread
2. understand what is documented bellow and propose correction / evolutions in the thread
3. don't hope for frequent updates : I do that alongside a more than full time job and tending to a two years old child. Still I will update.
*** DOWNLOAD ***
rootfs : http://d-h.st/vYf
kernel : http://d-h.st/UAy
misc config files : http://d-h.st/TEZ
nvidia drivers : http://d-h.st/pwQ
md5sum :
4f572c110c3f06f54699c826fed692f4 src-0.1.2.tar.lzma
249826271f4fadff4352217467e4ed2e xubuntu_tf300tg_kernel-0.1.2oc.blob
3263de707c2586d1e2177367f067361a xubuntu_tf300tg_rootfs-0.1.2.img.lzma
cf20b01281be3ef4b6d4631ae5cea67b R16.3.tar.lzma
*** HOW is it done / rootfs ***
I did it from ubuntu (rabits') on my tf300tg. Should be doable from another platform. Definitly doable from self.
As root.
# unset languages / locales
export LANG=C
unset LC_ADDRESS
unset LC_IDENTIFICATION
unset LC_MEASUREMENT
unset LC_MONETARY
unset LC_NAME
unset LC_NUMERIC
unset LC_PAPER
unset LC_TELEPHONE
unset LC_TIME
# mount a cleanly ext4 formated partition (futur root partition)
mount /dev/mmcblk1p2 /media/p1
# install initial minimal system
apt-get install debootstrap
debootstrap quantal /media/p1 http://ports.ubuntu.com/
# prepare to chroot
mv /media/p1/etc/apt/sources.list /media/p1/etc/apt/sources.list.orig
cp src/sources.list /media/p1/etc/apt/sources.list
mv /media/p1/etc/fstab /media/p1/etc/fstab.orig
cp src/fstab_chroot /media/p1/etc/fstab
mkdir /media/p1/run/user
# chroot into the new system and mount all special filesystems
chroot /media/p1
mount -a
# download xubuntu (avoiding unity which is recommended by lightdm)
apt-get update
apt-get upgrade
apt-get install xserver-xorg
apt-get --no-install-recommends install lightdm
apt-get install lightdm-gtk-greeter
apt-get install xubuntu-desktop
# install nvidia drivers and tuned nv.conf
tar xf R16.3.tar
update-alternatives --force \
--install /etc/ld.so.conf.d/arm-linux-gnueabihf_EGL.conf arm-linux-gnueabihf_egl_conf /usr/lib/nvidia-tegra/ld.so.conf 9000 \
--slave /usr/lib/xorg/modules/drivers/tegra_drv.so nvidia_drv /usr/lib/nvidia-tegra/xorg/modules/drivers/tegra_drv.abi13.so
ldconfig -v
update-rc.d ondemand disable
# change root password to something of your chosing and exit chroot
passwd root
# configure touchscreen and touchpad
apt-get install xserver-xorg-input-multitouch
exit
cp src/mtev.so /media/p1/usr/lib/xorg/modules/input
mkdir /media/p1/etc/X11/xorg.conf.d
cp src/50-elan* /media/p1/etc/X11/xorg.conf.d
# change hostname
# edit /media/p1/etc/hostname and replace tf300tg with your chosen hostname
# edit /media/p1/etc/hosts and insert a line (second one) with "127.0.0.1 yourhostname"
# hide the partitions from mmcblk0 (thanks cb22)
echo 'ENV{ID_PATH}=="platform-sdhci-tegra.3", ENV{UDISKS_IGNORE}="1"' > /media/p1/etc/udev/rules.d/80-hide_tf300tg_partitions.rules
# change keyboard defaults
# edit /media/p1/etc/default/keyboard ; replace "pc105" by "asus_laptop" ; you can also change "us" to your locale
# create mountpoints for system and data
mkdir /media/p1/system /media/p1/data
# configure for loading wifi module
echo bcm4329 >> /media/p1/etc/modules
#
cp /media/p1/etc/fstab.orig /media/p1/etc/fstab
*** HOW is it done / kernel ***
The kernel source is default asus 10.4.3.9 from asus' website download section. Patched to add cpu overclock from faux's kernel and gpu overclock from motley's kernel (diff file in src.tar.lzma).
Initial kernel config file is taken from stock 10.4.3.9 android, with options added to support ubuntu and oc. path to the nvram for bcm4329 modified.
Ramdisk is mostly that from rabbits 0.8.0, with some modificaitons to enable modem support under android.
*** Todo ****
- modify config / kernel to use nvidia's R16.3 tool to patch wifi ;
- build initramfs anew from tf300t/tg stock android initramfs (currently rabbits modified tf700) ;
- bluetooth and sound ;
- key remapping.
reserved 2
Sounds promising! Keep it up, hopefully other devs see this and help you out :good:
Re: [DEV][WIP] xubuntu on tf300tg 0.1.0
Good job, I will tray luck to night when I back from work.
P.S. I heave no dock - that means no keabord and mouse
Sent from my GT-I9100 using xda app-developers app
Keshukas said:
Good job, I will tray luck to night when I back from work.
P.S. I heave no dock - that means no keabord and mouse
Sent from my GT-I9100 using xda app-developers app
Click to expand...
Click to collapse
Thanks for your interest.
Although I would be happy to have some feedback, it may be a bit early if you don't have a dock : it's completely functionnal with a dock and mouse (I've been using it for work - and build - for a few days), without a keyboard and mouse, you will not go farther than xubuntu' login screen.
Anyway if you still wan't to try it, tell me if you reach xubuntu blue login screen.
Re: [DEV][WIP] xubuntu on tf300tg 0.1.0
On the rabbit Ubuntu for tf700 are virtual keabord (beside clock switch ) witch I use to login to Ubuntu
Sent from my GT-I9100 using xda app-developers app
Assuming this is a dual boot kernel, how does the kernel know where ubuntu is installed if not installed on internal sdcard? Also what's the minimum size partition that can be used?
Moved the thread for ya...
Yes!!! ) Thanks I wait for it )) Xubuntu is my lovely linux, I have it on PC, Notebook, installed on fathers PC and now for tablet!! :good::good::good:
Keshukas said:
On the rabbit Ubuntu for tf700 are virtual keabord (beside clock switch ) witch I use to login to Ubuntu
Sent from my GT-I9100 using xda app-developers app
Click to expand...
Click to collapse
I know that and it can be reproduced (look at rabits' /etc/X11/xorg.conf ; and needs packages xserver-xorg-input-multitouch and mtev).
But I have not yet abandonned all hope of doing it the ubuntu way (ie. with evdev).
TechyNut said:
Assuming this is a dual boot kernel, how does the kernel know where ubuntu is installed if not installed on internal sdcard? Also what's the minimum size partition that can be used?
Click to expand...
Click to collapse
Rabits modified the boot image so that it checks /dev/sda*, then /dev/mmcblk1p*, then an img file on /dev/mmcblk0p8. The first which looks to be an ubuntu partition is used as root. He also activated vt (having a console during boot) in is kernel configuration. I reproduced both.
NRGZ28 said:
Moved the thread for ya...
Click to expand...
Click to collapse
Thanks. Induced some noise on other threads
Ramdisk initrd.img in your kernel blob file is not a gzip !!!
Ok starting test
1. Yours kernel most start android if no Linux in /dev/sda1 or /dev/mmcblk1p* or on /dev/mmcblk0p8. Some I understand ?
Now making backup of me tablet ( TF300t ) and flashing kernel to test it.
2. I planing Make Linux on me ExtSDcard (MiniSD 8 gb) and plug sdcard in tablet and then reboot tablet. i hope to start Xubuntu
akurpiel said:
Ramdisk initrd.img in your kernel blob file is not a gzip !!!
Click to expand...
Click to collapse
No. It's lzma.
You can check rabits' git for details : https://github.com/rabits/tf700
Keshukas said:
Ok starting test
...
i hope to start Xubuntu
Click to expand...
Click to collapse
I hope too. Thanks for testing.
Can't mount linux
So I thought I'd give this a try. These are the steps I took to install this:
1. Formated 8gig SD card as ext4
2. Extracted rootfs to SD card.
3. Inserted SD in base
4. copy /system/vendor and /system/etc from your tf into /system on that partition ; copy /data/misc from your tf into /data on that partition
5. fastboot -i 0x0b05 flash staging xubuntu_tf300tg_kernel-0.1.0.blob
6. reboot
6. Kernel boots prompting option, select 1 (linux) and fails to mount partition and boots into android with no other problem.
What am I missing?
ColMustard said:
So I thought I'd give this a try. These are the steps I took to install this:
1. Formated 8gig SD card as ext4
2. Extracted rootfs to SD card.
3. Inserted SD in base
4. copy /system/vendor and /system/etc from your tf into /system on that partition ; copy /data/misc from your tf into /data on that partition
5. fastboot -i 0x0b05 flash staging xubuntu_tf300tg_kernel-0.1.0.blob
6. reboot
6. Kernel boots prompting option, select 1 (linux) and fails to mount partition and boots into android with no other problem.
What am I missing?
Click to expand...
Click to collapse
I have had some occurences of hitting return to fast at the prompt and init not detecting correctly the SD card. So maybe let it timeout into trying to boot linux.
If that does not work, you can choose "s" at the prompt, then from there check into /dev/ which disks / partitions are recognized. Provided that your linux partition is the first and only one on the SD card, you should have a /dev/sda and /dev/sda1. What do you see ?
Also remove any usb drive, which could appear as /dev/sda (and make the sd card appear as /dev/sdb).
Some RABIT write "In-device microSD really bad works." :crying:
I heave problems to boot from sd now i think extract xubuntu in /data/media/linux/rootfs.img
-- Update --
MicroSD - /dev/block/mmcblk1p1
schrdlu said:
I have had some occurences of hitting return to fast at the prompt and init not detecting correctly the SD card. So maybe let it timeout into trying to boot linux.
If that does not work, you can choose "s" at the prompt, then from there check into /dev/ which disks / partitions are recognized. Provided that your linux partition is the first and only one on the SD card, you should have a /dev/sda and /dev/sda1. What do you see ?
Also remove any usb drive, which could appear as /dev/sda (and make the sd card appear as /dev/sdb).
Click to expand...
Click to collapse
Well it looks like it's a no go for me. it could be that I used Minitool Partition Wizard to format because I could not get to my linux machine at the time.
I also tried flashing the kernel over 3 different ROM:
1. CROMI 3.4.4 - Keep failing with Encryption error after boot animation prompting me to reset the device.
2. Hydro 7 - Keep failing with Encryption error after boot animation prompting me to reset the device.
3. CM 10.1 - Failed to get pass boot animation.
I'll have to re-flash Asus stock ROM (10.4.2.20) in order to fully test this, I might have to reformat the sd on linux also.
ColMustard said:
Well it looks like it's a no go for me. it could be that I used Minitool Partition Wizard to format because I could not get to my linux machine at the time.
I also tried flashing the kernel over 3 different ROM:
1. CROMI 3.4.4 - Keep failing with Encryption error after boot animation prompting me to reset the device.
2. Hydro 7 - Keep failing with Encryption error after boot animation prompting me to reset the device.
3. CM 10.1 - Failed to get pass boot animation.
I'll have to re-flash Asus stock ROM (10.4.2.20) in order to fully test this, I might have to reformat the sd on linux also.
Click to expand...
Click to collapse
Me to. I can't boot to android at all
I still tray boot to xubuntu with this kernel and I make img on the internal card
Keshukas said:
Me to. I can't boot to android at all
I still tray boot to xubuntu with this kernel and I make img on the internal card
Click to expand...
Click to collapse
Yeah, I did notice that the kernel looks for the /data/media/linux/.img for a last effort. I was thinking on doing the same.

[LIVE][USB][T100] Asus T100-TA Magic Stick

Asus T100-TA Magic Stick
{
"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"
}
Since development and hacking for the Asus T100 tablet has been rather slow these past few months, due to the many problems that plagued the kernel and missing drivers, I decided to make a simple-to-use toolchain that works well on the device out-of-the-box. Thus, I have bundled a fully working Ubuntu live CD image and an Android-x86 build into a single usb stick format (I call it the "Magic Stick"), to allow easy testing, booting and updating stuff on the tablet. You can also use it to recover your device and perform maintenance activities without the usual hassle. And you can use it for showing off to your friends and co-workers by triple booting your tablet.
T100 Magic Stick Features:
Dual-boot directly from USB stick into Android or Ubuntu!
Test and play with both systems to see if you like them
Ubuntu 15.04 Live:
Updated 4.0 kernel (thanks to Kirill Belyaev for the kernel build)
No more internal HDD errors (no more rpmb issues)
Suspend working!
Installer working with grub installation! Finally!!
microSD Card working correctly
Wi-Fi working stable since boot
Battery reporting
Hardware buttons
Additional tools by default (gparted, mc, uefi, efibootmgr, grub2)
Android CM13.0.2-rc1 Live:
No more internal HDD errors (no more rpmb issues)
Wi-Fi working
Bluetooth working
Battery reporting
Hardware buttons working
Google Services! (Play Store etc.)
Pre-rooted!
Writable system partition
Persistent data saving on stick (1GB internal storage)
Rotation sensor working
Shrink and change partition layouts
Install and repair bootloaders, grub2 and UEFI
Install, repair, debug and update any operating system
Download and Install:
The installation procedure is extremely simple:
Download the Magic Stick zip file from here: T100 Magic Stick download
Extract the ZIP file
Copy the contents of the extracted folder to a USB stick (at least 3GB free space required)
Disable secure boot in the UEFI firmware configuration (tap F2 at startup to enter configuration)
Boot from the USB stick (tap F2 at startup and choose the stick as boot device from the menus)
Thanks and credits:
Kirill Belyaev, Povilas Staniulis, rbg, Chih-Wei Huang, Brain WrecK, pstglia for their work and contribution + their dedication and their builds.
The whole Asus T100 Ubuntu Google+ Community (chck us out!);
The whole Android-x86 Google Group (check us out!);
Everyone else who contributed patches, fixes, ideas and suggestions!
Download:
v2.0-beta1: Download
Cheers,
C.
Changelog:
v1.5: Ubuntu: no changes or improvements, sorry...
v1.5: Android: microSD card support
v1.5: Android: no more FC bugs at boot...
v1.5: Android: display driver improvements (some games and apps which didn't work will start working now)
v1.5: Android: better overall performance (+2500 points in Antutu than previous version)
v1.5: Android: better browser support (chrome, firefox etc.)
v1.5: Android: streaming support less buggy
v1.5: Android: latest 4.4.2-r3 build included (much more stable)
v1.5: Android: improved bluetooth support (some issues still reported, though)
v1.4: Ubuntu: added bluetooth support (seems unreliable)
v1.4: Ubuntu: updated packages to latest versions
v1.4: Ubuntu: fixed Software Center problems
v1.4: Android: data is saved to the stick (1GB internal storage only!)
v1.4: Android: added bluetooth support (tethering not working, yet)
v1.4: Android: added accelerometer sensor support
v1.4: Android: added rotation sensor support
v1.3: Ubuntu installer does not crash anymore!
v1.3: Added suspend support in Ubuntu
v1.3: Updated to Ubuntu 15.04
v1.3: Added sound for Ubuntu
v1.2: Initial release
Known Issues:
Ubuntu: suspend doesn't work as it should, no bluetooth, no rotation, no camera, no microphone;
Android: suspend doesn't work as it should, no bluetooth, no rotation, no microSD, no camera, no microphone;
Android: at boot, Google text-to-speech will FC a couple of times. This is fixed once you log into google play and update the GApps;
[*]Android: sometimes the keyboard dock is not enabled at boot. This is caused by a race condition at boot and I won't fix it. If you run into it, reboot and try again; (didn't encounter it anymore)
You tell me...
Frequent Questions:
Can I remove the stick after boot?
Answer: No. This works like a live CD.
Will my data be saved?
Answer: In Ubuntu no. This works like a live CD. In Android yes, you can store up to 1GB of data (due to popular request).
Can I install Ubuntu?
Answer: Yes. This works like a live CD.
Can I install Android?
Answer: Yes, but not using the built-in installer.
How can I install Android-x86?
Answer: Manually, but it's easy. Maybe I will create a step-by-step guide later...
Will Android work with ART (before or after install)?
Answer: No.
Can I install xposed framework?
Answer: Yes, but not on the live version, you must install Android locally first.
How can I update the Android-x86 version on the stick?
Answer: Replace the files in the "x86" folder on the stick.
How can I update the Ubuntu version on the stick?
Answer: You can't (not easily anyway).
Windows Tools:
I recommend you download these and save them onto the USB stick you create yourself, to always have them on hand. I did not include them on the stick as they are licensed separately (even if "free") and all credits go to their respective authors. I also recommend downloading the Windows 8.1 drivers for the T100 and saving them to the same stick, just in case you have to re-install Windows. Just make a separate folder on the stick and save whatever you want there. It won't break any functionality.
EasyUEFI - Download
A tool which helps you manage UEFI boot entries, paths and configuration for booting with ease
Ext2Fsd - Download
A tool which helps you mount ro/rw the Android/Linux partitions in windows as regular drives
unsqashfs 4.0 - Download
A tool to extract the ".sfs" and ".squashfs" images to regular ".img" files (to make system.img writable, mountable etc.)
Advanced reboot script - Download
A Windows batch file that reboots the system so you can select the boot device using your touchscreen (boot in Android/Ubuntu directly without the dock attached etc.)
Linux how-to resources:
Unsquash FS: http://unix.stackexchange.com/questions/80305/mounting-a-squashfs-filesystem-in-read-write
Update grub: http://askubuntu.com/questions/281119/how-do-you-run-update-grub
Grub install to separate partition: http://askubuntu.com/questions/472669/install-grub-on-a-different-partition-on-triple-boot-system
Make IMG files: http://ubuntuhak.blogspot.ro/2012/10/how-to-create-format-and-mount-img-files.html
More grub: https://docs.oracle.com/cd/E26502_01/html/E28983/gkvif.html
Even more grub: http://superuser.com/questions/376470/how-to-reinstall-grub2-efi
Android How-to / guides section:
This section contains a set of guides to help you with some basic tasks and activities to easily manage your own installation(s) of Android. This is the part where the Magic Stick itself will prove to be useful and how you can use it to customize and repair or update anything. The Ubuntu related stuff is not documented here, as documentation and forums are available on the internet.
WARNING: These guides are not extremely detailed and include only the activities which have to be performed. Each configuration is different and you need to understand what you are doing to make sure you don't break anything. Worst case scenario is that you will lose all your data. However, you will still be able to boot the Magic Stick to repair or re-install everything (thank me later!)
DISCLAIMER: I am not responsible for any loss of data and you are at your own risk while using the tools, guides and information provided here. Back up your data and do not play around with systems that you use on a daily basis. Only follow these guides if you feel comfortable with the instructions and completely understand what you need to do at each step.
Make the Android system partition writable
When you download an Android-x86 release, you will find in the ZIP or ISO a bunch of files, including a file called "system.sfs" or "system.img".
If you have a file called "system.img" you can stop now, your Android system partition is writable and you can skip to the final step.
If you have a file called "system.sfs", then use the unsquashfs command to convert it into a writable format:
If you are using Windows, download the unsqashfs tool above and extract the zip. Drag and drop the "system.sfs" file on top of the unsqashfs executable to extract the system.img (you can find it inside the generated folder)
If you are using Linux, make sure squashfs-tools are installed and run this command from the folder containing the "system.sfs" file:
Code:
unsquashfs ./system.sfs
That's it, now you can mount the system.img file generated under linux using this command:
Code:
mount -o loop ./system.img /path/to/destination/
Resize the system partition
Usually, the system partition of Android-x86 is made as small as possible (you don't want to download "free space", right?) so if you want to add gapps or other packages to the system partition there will be no space left. Here's how to increase the size of the system partition:
Boot the Magic Stick into Ubuntu
Open a console using the Ctrl+Alt+T shortcut
Browse to the folder containing the system.img file (using 'cd' or 'mc')
Extend the system.img file by 200MB. Replace 200 with the amount of MB you want to add:
Code:
dd if=/dev/zero bs=1M count=200 >> ./system.img
Run gparted to also extend the partition inside the file:
Code:
sudo gparted system.img
In gparted, right click on the partition and select the option to shrink it down by only one MB (so it registers a change) and apply the changes
Close gparted. You're done.
Make space to install Android
Creating a new partition onto which to install Android usually requires shrinking an existing partition. If you want to install Android on the tablet (not the dock base) you will have to shrink the Windows system partition. Here's how to do it in a reasonably safe way:
Boot the Magic Stick into Ubuntu
Open a console using the Ctrl+Alt+T shortcut
Run gparted as root:
Code:
sudo gparted
In gparted, right click on the Windows system partition and select the option to shrink it down by at least 2GB. Make sure the partition actually has 2GB of free space, otherwise the process will not work.
Right click the free space and create a new partition and select to format it as ext4. It's important to make it ext4, so keep this in mind. Also give it a name such as "android".
Apply the changes and wait for the partition to be created.
Close gparted. You're done.
To have the partition available in Ubuntu Live, you have to mount it manually or just reboot (to have it mounted at boot automatically)
Install Android locally
Make sure you have the system.img, kernel, ramdisk.img and initrd.img files available. Make sure you have an ext4 partition mounted. The Android-x86 installation is in fact a simple process of copying the ISO/ZIP files onto the destination partition:
Boot the Magic Stick into Ubuntu
Open a console using the Ctrl+Alt+T shortcut
Copy the four relevant files to the ext4 partition using your method of choice
That's it, Android-x86 is installed (but not yet bootable!)
Enable data saving for Android
To enable data saving for Android-x86, you have many choices. However, the simplest one is to use an ext4 partition and create a dedicated "data" folder for android. Make sure Android-x86 is installed onto an ext4 partition:
Boot the Magic Stick into Ubuntu
Open a console using the Ctrl+Alt+T shortcut
Navigate to the root of the partition (the mount point folder)
Create a folder called "data":
Code:
mkdir -p data
You're done, Android will save data persistently across reboots.
Note that this only works for ext4 partitions.
Note that using ext2 or ext3 will output errors for Google Play if you use Lollipop builds.
You have been warned.
Install the grub2 boot loader
Resizing partitions and copying (read installing ) Android is a very simple process. However, the bootloader installation is a much more complicated business (usually!). Here's how to make sure everything is installed correctly:
In progress...
Add the Android menuentry to grub2
Once we have grub2 installed and ready to go, it's time to make Adroid-x86 bootable as easily as possible:
In progress...
Update Android with new releases
Once Android is set up and ready to go, all you need to do to update it properly is to overwrite the existing files and reboot. Make sure you have the updated system.img, kernel, ramdisk.img and initrd.img files available. Make sure you have the Android ext4 partition mounted:
Boot the Magic Stick into Ubuntu
Open a console using the Ctrl+Alt+T shortcut
Copy the four relevant files to the ext4 partition using your method of choice, overwriting the existing ones
That's it, Android-x86 is updated
Cheers,
C.
Reserved....
I am having some problems with this. Granted I am trying to use it for install on the Dell Venue 8 Pro. This tablet is a bay trail base, with most of the same hardware, minus the wireless/bt card. This works fantastic as a live cd, but when I install it I get problems. Is the ubuntu image only i386? When I was trying to change the kernel from the G+ group I kept getting the architecture mismatch (Kernel.deb file is amd64 and system is i386). Also the bootloader is kind of weird. All of the grub settings are correct, but if I want to boot ubuntu from the mmc I have to enter the advanced menu, then boot recovery mode. When recovery mode boots, I hit resume boot and then I am magically loaded into my installed system. Am I doing something wrong here?
The live image is i386 only. For the grub boot loader, try copying the entry contents into the stick boot menu and see if it works as intended. The menuentry file on the stick is in ./boot/grub/grub.conf.
I'll be releasing a new version of the stick with Ubuntu 15.04 (i386) and some additional sound fixes in the next few hours as well.
Cheers,
C.
Ok, v1.3 with new updates and fixes has been posted. Let me know of any improvements and/or problems.
Cheers,
C.
Thank you for great work! One promise: please, fix bug for HP Omni 10. My tablet can't boot in Ubuntu (but works perfectly with Android). Here is a link to the G+ posts with bug disc.
https://plus.google.com/105824122847813147186/posts/4G1BQgD5LNQ
https://plus.google.com/105824122847813147186/posts/gxqsVsNNJoq
The HP omni problem comes from the kernel, which I did not build and I do not maintain. Also, I don't have a HP omni, so I can't test it out.
The bottom line is that I can not promise to make it work, but I will update the kernel when possible. Keep in mind that this is a Asus T100 tool. Follow the thread and when an update for the kernel is posted, try the new version.
Cheers,
C.
Everything runs perfectly. Flawless Android and I'm still testing around Ubuntu. You've helped revitalize my T100! thanks!
Now I just need to figure out how to install the bootloader. Seems simple enough but your instructions say it may be a bit complicated so maybe I'm missing something
For some reason, after Ubuntu installed coulnd open the software manager and didnt have synaptics, also is there a way to turn of the white led,
second do i copy all the android files into the Ubuntu drive or i need to partition the ssd for another partition for android( what are the chances of 5.0/5.1)
thanks for the files and works good, only issue, not home dev but Linux/Ubuntu, that is not finger scroll friendly, and click and hold for right click(context menu) beside chromium that scroll with out having to hold the scroll bar like the rest of the system
It will be great, if you fix it. Thanks for reply!
""Login failed, impossible to establish a reliable connection to the server. This could be a temporary problem or your Android device may not be suitable for data services. If the problem persists, contact customer service. ""
Gives me this error every time I try to log in with my google account. Solutions?
Installation on hdd
I have installed ubuntu on my t100 on the hdd. It works great so manu thanks for that but I have on issue, I need to let the usb stick in on boot in order to make it boot. If I don't grub is in rescue mode saying that : "error : no such device : 25dc1ad7-c268…"
Is there any way to get touch screen working on a Toshiba Encore 2 Write? I know this thread is for the Asus T100, but I tried this flash drive image out on my device and it ran, minus touchscreen. It booted up fine and everything. If anyone is able to help me out, it would be greatly appreciated! I think the issue stems from the device having a Wacom touchscreen, but I can give any information needed!
@feduss: The connection problem did not appear in my tests and I am able to log into Google Services without any problems. Skip the account creation during the initial setup wizard and create it later and see if it works.
@alphaeagle777: try installing plasma-active. You can see it in action here: https://www.youtube.com/watch?v=mOMmp8iEaqY
@Macro le noir: Make sure you select /dev/mmcblk0 as the drive to install the grub2 boot loader during installation. Otherwise, the installer may detect the USB stick grub boot loader and install the OS selection menu for Ubuntu from there.
@FiendFyre: The stick will never have Encore 2 support unless one of the kernel developers include it in the configuration. I am not building the kernels myself, so it is best to ask the Android-x86 group for more info.
Cheers,
C.
I tried already to login later...maybe i'll solve the problem creating a new account
cheatman said:
@Macro le noir: Make sure you select /dev/mmcblk0 as the drive to install the grub2 boot loader during installation. Otherwise, the installer may detect the USB stick grub boot loader and install the OS selection menu for Ubuntu from there.
Cheers,
C.
Click to expand...
Click to collapse
Thanks for the reply. It was the correct issue, I didn't pay attention during installation. To solve the problem I juste reinstall grub at the right place.
edit : I speak to fast. Just reboot work, not after a shut down.
edit2 : after reinstalling ubuntu with grub at the rigth place, it still doesn't work. Can you explaim me how to install grub correctly ?
Grub entry
Hi cheatman, thanks for your great work and nice tutorials. Now I am trying to figured out, how to edit grub to add entry for android. It is situated in /dev/mmcblk0p5 in folder android. I have alrready installed ubuntu on keyboard HDD. Thanks.

[ROM][KERNEL][MOD] Debian 10 for Google Nexus Player (fugu)

This is a guide to install Debian Linux on your Nexus Player
NOTE: This guide is for advanced users
This is NOT VNC nor chroot nor Android X server nor anything else like that, but running Linux natively.​
D I S C L A I M E R
----------------------------------------------------------------------------
Use this at your OWN RISK. Experimental software may harm you, your device and others around you. I cannot be held responsible for any damage done. You have been warned!
Installing Linux will most likely VOID YOUR WARRANTY! (If warranty still applies to a five year old device...)
P R O L O G U E
----------------------------------------------------------------------------
I have adapted the Nexus Player's kernel to meet GNU/Linux, namely Debian 10, requirements so far that it has become quite stable by now.
Since the processor is Intel x86 compliant you can run a regular distribution, receive updates, load software, etc. etc. This makes the Nexus Player virtually a desktop PC.
You can install Debian onto a USB stick and dual boot along with Android OR you may install Debian to the device's internal storage (and speed up things significantly).
H A R D W A R E S U P P O R T
----------------------------------------------------------------------------
What is NOT working:
* Suspend/standby
* Screen off (DPMS off)
What is working:
* Hopefully anything else...
R E Q U I R E M E N T S
----------------------------------------------------------------------------
* Nexus Player (obviously) w/ unlocked bootloader
* USB OTG cable and mirco USB cable
* A USB Hub
* An empty USB stick (I suggest at least 16 GB of storage and 40 MB/s read and 20 MB/s write speed. 8 GB is the minimum requirement though.)
* Input devices (i.e. mouse, keyboard)
* Linux PC (or virtual machine)
* Basic Linux/ROM tinkering knowledge, some time and patience...
Ready?! Let's go!
S T E P 1: Install the Linux boot image
----------------------------------------------------------------------------
a) Unlock your Nexus Player's bootloader (there are guides online in case you don't know how to do that)
b) Reboot to bootloader, attach the Nexus Player to your PC and flash the device specific Linux boot image to the boot partition.
fastboot flash boot fugu_bootimage.img_EXTERNAL
Hint: This will be the only change to your Nexus Player.
Note: You may revert the changes by flashing the stock boot image.
S T E P 2: Prepare USB stick(done on the Linux PC)
----------------------------------------------------------------------------
a) Format the partition on the USB stick with the ext4 file system.
b) Manually mount the partition to e.g. /mnt
c) Download the attached root file system creator, untar it and change to the directory.
d) Create the rootfs (need to be root): ./fugu_rootfs_creator /mnt
Note: The process sometimes fail, you might have to try more than once.
Note: This will take a long time. To speed things up, you may create the rootfs into a disk image on your HDD and afterwards write the image to the USB stick.
d) Connect the USB stick to the Nexus Player/hub.
e) That's it, if you now boot your Nexus Player, it will actually boot into Linux.
S T E P 3 (optional): Install Linux to the internal storage
----------------------------------------------------------------------------
If you are keen enough to purge Android completely, you may read on:
a) Boot into Linux from the USB stick.
b) IMPORTANT: Make a backup (preferably a dd copy of the entire internal storage). Since you alter the partition table in the next step, this is very important in case you want to go back to Android
c) Use gparted to delete the following partitions: cache, system, data
d) Use the freed storage to create one "large" ext4 partition.
e) Flash the file system image to the new partition.
g) Flash the boot new image to the boot partition: fastboot flash boot fugu_bootimage.img_INTERNAL
h) Reboot.
P O S T I N S T A L L A T I O N A N D I S S U E S
----------------------------------------------------------------------------
a) Compositing
On fugu, Mate's window manager "Marco" is NOT hw accelerated. Compositing is slow. When watching Videos or browsing the internet, you may disable compositing (use mate-tweak) to increase performance.
If you need hw accelerated compositing you may use kwin-x11 but this takes up 1GB of disk space...
b) Chromium
Chromium is accelerated with X11/EGL, but buffer management does not work properly. When resizing the window you may need to restart Chromium, because the buffer allocation may fail.
Chromium does have support for WebGL.
c) Firefox
Firefox is not hw accelerated but still gives you decent performance when browsing or watching movies (tested Youtube FullHD and Netflix, works fine).
However when using WebGL, Chromium is much faster.
d) VLC media player
Video playback is hw acceleration is not supported. To achieve decent performance anyways do as follows:
I) Choose Tools --> Preferences --> Video
II) As "Output" choose "X11 video output (XCB)" and for "Fullscreen Video Device" select "hwcomposer" for best performance.
Q & A
----------------------------------------------------------------------------
Q: There is no text console shown during boot process, how can I get it?
A: Unfortunately the Nexus Player's bootloader appends "console=none" to the kernel command line, effectively disabling the console. If you want to have a console you need to rebuild the kernel and enable a built-in command line which cannot be overridden by the bootloader.
Q: Does graphics acceleration work?
A: Yes, OpenGL ES does work, however a lot of programs do depend on desktop OpenGL which is NOT supported. Graphics acceleration is achieved through libhybris which makes it possible to use Android graphics drivers in GNU/Linux.
Q: What is graphics performance like?
A: Depends. When a program supports OpenGL ES, you get decent performance (e.g. Kwin-X11 window manager, Chromium). Performance is sufficient to watch FullHD movies in Firefox or with VLC or browse the internet. Chromium supports accelerated WebGL.
Q: What is system performance like?
A: Depends. Bottle neck of system performance is the speed of the storage used. Using the internal storage gives huge speed improvements vs. an external USB storage (Nexus Player only has USB 2.0, so max ~ 30 MB/s). With internal storage simple tasks like file management, office applications etc. work fine. RAM is limited tough.
Q: Why? Why would you wanna turn your AndroidTV into a subpar desktop PC? Tell me why, I ask of thee!
A: Well... Linux on the Nexus Player is actually a by-product. I develop this for the Dell Venue 7040 which is basically - silicon wise - the same device. But the Nexus Player has the more recent software. So I did this to run Linux on the Dell. But I thought, hey, maybe someone is in to it...
S O U R C E C O D E
----------------------------------------------------------------------------
* Halium - https://github.com/halium
* Libhybris - https://github.com/NotKit/ and https://github.com/libhybris/
* Debian - https://www.debian.org/
* Kernel - https://android.googlesource.com/kernel/x86_64/+/refs/heads/android-x86_64-fugu-3.10-nougat-hwbinder , https://github.com/fcipaq/android_kernel_asus_fugu
* Lineage OS - https://github.com/lineageos
C R E D I T S
----------------------------------------------------------------------------
Special thanks goes to the Halium team, especially JBB and NotKit
And to Hybris, Debian and the LOS team
ROM OS Version: Debian 10
ROM Kernel: Linux 3.10.20
ROM Firmware Required: 8.0.0 (OPR2.170623.027, Nov 2017)
Graphics drivers based On: Lineage OS 14.1
Version Information
Status: Stable
Created 2020-01-30
Last Updated 2020-02-08
Updates:
2020-04-06
* Preserve temporary installation files by moving them from /tmp to /install
* Include wifi config file
2020-02-08
* Delete some unnecessary files from rootfs
* Fix issue with udev rule (which might prevent graphics from working properly)
A small demo on Youtube...
Is it possible to boot something like Batocera linux or Recalbox so we can use it as a retro console?
Well... that is an interesting idea! In theory you may run any Linux distro that still supports kernel 3.10. And maybe that applies to the two afore mentioned distro. I mean some of the Odroids (which might be supported) have a quite similar setup in terms of the drivers basis (Android drivers running via libhybris).
On the other hand this won't be plug and play or even installing, but one would rather have to put quite some work into it... If you are willing to get your hands dirty, I will try to offer some support.
PS: Batocera Linux seems to support Odroid XU4 which has OpenGL ES support (just like the Nexus Player), so there is a change that this could work.
trying to finish step 2 and get the following:
debootstrap
/home/bonnie/Downloads/fugu_mate_desktop/fugu_rootfs_creator: line 44: debootstrap: command not found
cp: cannot create regular file '/home/bonnie/Downloads/etc/network/': No such file or directory
cp: cannot create regular file '/home/bonnie/Downloads/etc/': Not a directory
cp: cannot stat 'rootfs/*': No such file or directory
Chroot...
mount: sys/: mount point does not exist.
mount: dev/: mount point does not exist.
mount: proc/: mount point does not exist.
chroot: failed to run command ‘bin/bash’: No such file or directory
umount: sys/: no mount point specified.
umount: dev/: no mount point specified.
umount: proc/: no mount point specified.
Exiting chroot
Done.
Try
sudo apt install deboostrap
Nephilim3883 said:
trying to finish step 2 and get the following:
debootstrap
/home/bonnie/Downloads/fugu_mate_desktop/fugu_rootfs_creator: line 44: debootstrap: command not found
cp: cannot create regular file '/home/bonnie/Downloads/etc/network/': No such file or directory
cp: cannot create regular file '/home/bonnie/Downloads/etc/': Not a directory
cp: cannot stat 'rootfs/*': No such file or directory
Chroot...
mount: sys/: mount point does not exist.
mount: dev/: mount point does not exist.
mount: proc/: mount point does not exist.
chroot: failed to run command ‘bin/bash’: No such file or directory
umount: sys/: no mount point specified.
umount: dev/: no mount point specified.
umount: proc/: no mount point specified.
Exiting chroot
Done.
Click to expand...
Click to collapse
That worked. But now the issue is during boot I get:
Waiting on root device /dev/sda1
I’ve tried using a USB flash drive and an external HDD. Wondering my maybe the OTG cable is crappy.
lunigma said:
Try
sudo apt install deboostrap
Click to expand...
Click to collapse
Run a file system check on your flash drive, it might be corrupted. A bad OTG cable could also be the culprit, try it on a phone with micro USB.
---------- Post added at 02:48 PM ---------- Previous post was at 02:46 PM ----------
Has anyone gotten the WiFi to work?
It was definitely the OTG hub being a piece of junk. I’m reinstalling everything now and will try again when it’s done.
I did find out if you have installed everything to usb once already then all of the files and folders have already been downloaded to the system and you have to manually delete everything in /mnt and /media (not sure if you HAVE to delete everything in /media but that’s what I did).
Also, his video mentioned WiFi works. Not sure how to get it working if it doesn’t.
lunigma said:
Run a file system check on your flash drive, it might be corrupted. A bad OTG cable could also be the culprit, try it on a phone with micro USB.
---------- Post added at 02:48 PM ---------- Previous post was at 02:46 PM ----------
Has anyone gotten the WiFi to work?
Click to expand...
Click to collapse
This is as far as I have gotten after getting a new OTG hub and rerunning the rootfs script for the USB flash drive:
{
"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"
}
Nephilim3883 said:
This is as far as I have gotten after getting a new OTG hub and rerunning the rootfs script for the USB flash drive:
Click to expand...
Click to collapse
Sorry for my delayed response. This usually happens if you got a corrupted root file system. That's why you get the
Code:
"devtmpfs: error mounting -2"
message. Good news is: your storage is properly detected and mounted, so most likely no hardware incompatibilities.
When creating to the file system be sure to a) either write it directly to the SD card (i.e. mount the SD card to e.g. /mnt) b) or first write to disk IMAGE (not directly to a directory). If you write the rootfs to a directory and then copy the directory over to a SD card might end up with a broken root file system.
Nephilim3883 said:
Also, his video mentioned WiFi works. Not sure how to get it working if it doesn’t.
Click to expand...
Click to collapse
Wifi should work out of the box.
Could you please get be the output of:
Code:
sudo ifconfig
and
Code:
dmesg | grep -i dhd
Could you please provide the method for writing to disk image? I am using Lubuntu to run the rootfs script. Thanks
lunigma said:
Run a file system check on your flash drive, it might be corrupted. A bad OTG cable could also be the culprit, try it on a phone with micro USB.
---------- Post added at 02:48 PM ---------- Previous post was at 02:46 PM ----------
Has anyone gotten the WiFi to work?
Click to expand...
Click to collapse
fcipaq said:
Sorry for my delayed response. This usually happens if you got a corrupted root file system. That's why you get the
Code:
"devtmpfs: error mounting -2"
message. Good news is: your storage is properly detected and mounted, so most likely no hardware incompatibilities.
When creating to the file system be sure to a) either write it directly to the SD card (i.e. mount the SD card to e.g. /mnt) b) or first write to disk IMAGE (not directly to a directory). If you write the rootfs to a directory and then copy the directory over to a SD card might end up with a broken root file system.
Click to expand...
Click to collapse
Nephilim3883 said:
Could you please provide the method for writing to disk image? I am using Lubuntu to run the rootfs script. Thanks
Click to expand...
Click to collapse
That would be (executed from the rootfs creator's directory):
Code:
sudo su
mount /dev/sdX1 /mnt
./fugu_rootfs_creator /mnt YourUserName YourPassword
umount /mnt
Replace sdX1 with the proper device name and replace YourUsername and YourPassword with your desired user name and password respectively.
Btw: What version of Lubuntu are you using, 18.04? (because I tested with Ubuntu 18.04)
It is the latest version, 19.10
I will try create the image instead and see how it goes. Thank you for providing the information and for your work on this project.
fcipaq said:
That would be (executed from the rootfs creator's directory):
Code:
sudo su
mount /dev/sdX1 /mnt
./fugu_rootfs_creator /mnt YourUserName YourPassword
umount /mnt
Replace sdX1 with the proper device name and replace YourUsername and YourPassword with your desired user name and password respectively.
Btw: What version of Lubuntu are you using, 18.04? (because I tested with Ubuntu 18.04)
Click to expand...
Click to collapse
I got further this time. It acts as though it wants to go into Debian but I just get stuck on a blinking cursor using the EXTERNAL WCONSOLE boot image. If I use the EXTERNAL NOCONSOLE image it just stays on a white screen.
fcipaq said:
That would be (executed from the rootfs creator's directory):
Code:
sudo su
mount /dev/sdX1 /mnt
./fugu_rootfs_creator /mnt YourUserName YourPassword
umount /mnt
Replace sdX1 with the proper device name and replace YourUsername and YourPassword with your desired user name and password respectively.
Btw: What version of Lubuntu are you using, 18.04? (because I tested with Ubuntu 18.04)
Click to expand...
Click to collapse
Nephilim3883 said:
It is the latest version, 19.10
I will try create the image instead and see how it goes. Thank you for providing the information and for your work on this project.
Click to expand...
Click to collapse
Hm, odd... Maybe you could start over and upload the installation log.
Mark all the output of the installation of the Lubuntu console and copy and paste it to https://paste.ubuntu.com/
Just make sure your console has a line buffer large enough, because the log will be quite long.
FYI- I can get into tty1 by Alt+F1 which lets me login to the terminal. After that I have no idea what to do. I am thinking maybe there’s an issue with Xorg.conf
I forgot what command I used but I get: No Screens Found (EE)
fcipaq said:
Hm, odd... Maybe you could start over and upload the installation log.
Mark all the output of the installation of the Lubuntu console and copy and paste it to https://paste.ubuntu.com/
Just make sure your console has a line buffer large enough, because the log will be quite long.
Click to expand...
Click to collapse

Categories

Resources