BlissOS is installed but no boot entry is available. - BLISS ROMS Q&A

I installed blissOS on a separate partition from my Lubuntu installation.It asked me for grub installation but since I already had one I skipped it.On the first boot everything worked normally.But after shutting down.I found no way to boot into it.There is no entry in the bios nor in my grub

What device and what model device are you using? Please explain "exactly" what all you did "in detail" before you had issues and please provide whatever files you installed as well and your install process... The more details you provide the more help and the faster help you will get.

flash713 said:
What device and what model device are you using? Please explain "exactly" what all you did "in detail" before you had issues and please provide whatever files you installed as well and your install process... The more details you provide the more help and the faster help you will get.
Click to expand...
Click to collapse
I am using Asus A44h laptop.Before installing I ran phonix OS with this script
insmod part_gpt
search --file --no-floppy --set=root
/BlissOS/system.sfs
linux /BlissOS/kernel root=/dev/ram0 androidboot.selinux=permissive buildvariant=userdebug SRC=/BlissOS
initrd /BLissOS/initrd.img
but I needed read or write permissions.So,I installed Phoenix OS in a separate partition from Ubuntu.I did everything normally except for the fact I said no when it asked me about Installing Grub since I already had it installed.But installation I cannot find any boot entry.For now I copied the kernel,initrd,system.img,ramdisk it created in that partition and pasted it to /BlissOS mentioned in the script above.Now, It is working with rw permissions.

Related

[Tool][Guide]Linux tools

I. How to root Defy via Linux!
A simple script for rooting Defy from Linux. I use SuperOneClick 1.9.1 files in my script, and I rooting succesfully my device from Ubuntu 11.04.
It does not install "bussybox" and "Android Terminal", just "su" and "Superuser.apk".
I hope it will work for someone else too.
Using:
0. install usb grants on your computer (see adb install method)
1. unzip file
2. run RootDefy.sh
3. after succesfully install, reboot phone (./adblinux reboot)
Download:
(version 0.2) download
Changelogs:
Code:
[B]02.06.2011:[/B] Version 0.2
- Added header to script
[B]13.05.2011:[/B] Version 0.1
- correct Defy device number
- correct /system filesystem type and path
[B]12.05.2011:[/B] First release
II. How to flash a SBF via Linux!
0. charge your phone 100%!
1. download and extract your sbf file: download
2. download sbf_flash file (same directory): download, or see the editor blog
3. chmod +x sbf_flash
4. sudo ./sbf_flash xxxxxx.sbf
Now your phone should start flashing, and phone will reboot when finish it.
III. How to unroot Defy via Linux!
Go to this topic: link
Nice, will try this =)
nice work!
I have been looking for it
Thx.
Great. I'm under linux too, each time I root a rom I launched a script from sdcard. For next time I'll test your script.
Fyi, I flash rom under linux too. I use 'sbf_flash', that works very well!
( but unsuccessfull under mac )
Now I'm looking for deodex script. I wrote and test some but still get errors with some apk and jar
Sent from my MB525 using XDA App
rumcajsz said:
I made a simple script for rooting Defy from Linux. I use SuperOneClick 1.9.1 files in my script, and I rooting succesfully my device from Ubuntu 11.04.
It does not install "bussybox" and "Android Terminal", just "su" and "Superuser.apk".
I hope it will work for someone else too.
Using:
0. install usb grants on your computer (see adb install method)
1. unzip file
2. run RootDefy.sh
3. after succesfully install, reboot phone (./adblinux reboot)
Download:
link
(sorry for my bad english)
Click to expand...
Click to collapse
I believe that this script will not work for Motorola Defy for the following reasons:
1)on lines 17-19 the script checks if there are any udev rules matching a Samsung device (for Samsung devices the idVendor attribute is 04e8, but for Motorola devices, the idVendor attribute is 22b8).
2)on line 53 you are remounting the /system partition specifying that the file system is yaffs2 and the device block is /dev/block/mtdblock0.
On my Defy the file system used is ext3 and the device is /dev/block/mmcblk1p21
I have managed to root my defy a few days ago, from my linux box, using the files used by Sooperonelick (rageagainstthecage, superuser.apk, su and busybox) but considering the facts stated above.
@MisterWB
Fyi, I flash rom under linux too. I use 'sbf_flash', that works very well!
( but unsuccessfull under mac )
Click to expand...
Click to collapse
Did you used the last version for sbf_flash? On the original site its stated that the same binary should work on linux and mac
tuxtm said:
I believe that this script will not work for Motorola Defy for the following reasons:
1)on lines 17-19 the script checks if there are any udev rules matching a Samsung device (for Samsung devices the idVendor attribute is 04e8, but for Motorola devices, the idVendor attribute is 22b8).
2)on line 53 you are remounting the /system partition specifying that the file system is yaffs2 and the device block is /dev/block/mtdblock0.
On my Defy the file system used is ext3 and the device is /dev/block/mmcblk1p21
I have managed to root my defy a few days ago, from my linux box, using the files used by Sooperonelick (rageagainstthecage, superuser.apk, su and busybox) but considering the facts stated above.
Click to expand...
Click to collapse
Thanks for the advice, I will correct their lines ...
You're welcome.
If you want to make a script that will work on all devices you could parse the /rpoc/mounts file from the device and extract the device that's mounted to /system and the file system used (in this case the udev part would also need to be modified)
Also, did you check if the adb binary you are using doesn't need any other external libraries installed by Android SDK. I'm asking this because in the sooperoneclick zip I downloaded, I saw some dll files which I' guess that are used by the adb windows binary, and I don't know if the linux adb binary doesn't need some external libraries, which should also be included in your zip file.
Good luck
tuxtm said:
@MisterWB
Did you used the last version for sbf_flash? On the original site its stated that the same binary should work on linux and mac
Click to expand...
Click to collapse
Yes I use it on mac+linux... but on my mac, at beginning sbf_flash see my phone, but when I want to flash a sbf, sbf_flash freeze on message "waiting for phone" It seems usb behavior varies on mac models.
Anyway, thanks for your reply.
@everyone
This thread could-be a good space to exchange about linux tools.
In this case rumcajsz should change the first post's title, and maintain text, links ...
What do-you think about ? Or do-you prefer a new thread ?
MisterWB said:
Fyi, I flash rom under linux too. I use 'sbf_flash', that works very well!
Sent from my MB525 using XDA App
Click to expand...
Click to collapse
where can i download sbf_flash?
thank you.
MisterWB said:
@everyone
This thread could-be a good space to exchange about linux tools.
In this case rumcajsz should change the first post's title, and maintain text, links ...
What do-you think about ? Or do-you prefer a new thread ?
Click to expand...
Click to collapse
Great idea, I changed it.
johnw.xda said:
where can i download sbf_flash?
thank you.
Click to expand...
Click to collapse
The download link in the first post now.
usb tether
Hi,
thanks for both script, works well for me.
I like: go first to recovery menu (vol donw and power) with usb connected and run the flashing script, perfect...
How do you usb tether with your defy and linux ? (ubuntu)
I use this a lot with my previous phone htc.
I run the french froyo rom (http://forum.xda-developers.com/showthread.php?t=1072367), but i did not found the m.stone usbtether app.
Maybe you got a sbf with every things working natively with linux and no blur?
Regards and BRAVO again...
usb tether
Usb tether is ok with proxoid and port fowarding with the defy (see proxoid wiki).
It is not like my old htc as the device is seen by the pc as a network interface (usb0). In this way you got an IP to communicate with your phone (i am using it for vlc remote for example and other app where ip is needed).
When i plug my defy on usb I got 3 menu: motorola pc, windows sync, sd and nothing.
Is there a way to have menu without motorola and windows stuff ? ( sorry for duplicate the question between this form and the french froyo rom one...)
++
That option should be related to the Media Portal application. Maybe if you would rename it (by changing the apk extension to something else) would do the trick. I didn't test this so, I can not tell you if it will work or if it won't brick your phone
/LE I have just renamed the MediaPortal.apk and apk for the Media Share (I belive it is HomeSyncWizard.apk)then rebooted the phone, but the "Portal and Tools" and "Windows Media Sync" options are still there.
I have to check what is the difference between HTC and motorola.
Tkx for the try,
added "unroot" to first post
On an aside, superoneclick and sbfdepacker can both be ran with mono
If you running 64bit distro ensure libncurses 32bit is installed
I tried SOC & mono (ubuntu 10.10, 11.04: 32 bit), and it doesn't worked for me.
http://forum.xda-developers.com/showpost.php?p=8699742&postcount=537
Follow the link on there, it will work although the script's here do it just as well anyway, but the sbfdepacker, I can find no equivalent of.
I tried this way...
Hi,
If
i root an froyo offical french rom with this script to backup my stuff
install 2nd-init
upgrade to an GingerRom with fixed sbf
then flash back the official french sbf
will i keep my warranty ?
No way to find out i rooted my defy?
I will try mono...

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

Q&A for [DEV][WIP] xubuntu on tf300tg 0.1.2 (updated 130408)
Some developers prefer that questions remain separate from their main development thread to help keep things organized. Placing your question within this thread will increase its chances of being answered by a member of the community or by the developer.
Before posting, please use the forum search and read through the discussion thread for [DEV][WIP] xubuntu on tf300tg 0.1.2 (updated 130408). If you can't find an answer, post it here, being sure to give as much information as possible (firmware version, steps to reproduce, logcat if available) so that you can get help.
Thanks for understanding and for helping to keep XDA neat and tidy!
cannot boot into xubuntu
Hello guys.
I'm having a problem trying to make everything working. I tried to follow the webdoctors instructions and somehow things went wrong.
First of all, I installed v2.2.9 kernel using TWRP. Then, I split my microSD cart into partitions under gparted, then I used dd to copy from img to first card's partition. To this point everything went well. I tried to boot into xubuntu - it worked. But I had no internet connection and couldn't run mod_update.sh under xubuntu. Then, I decided to reboot system. And I couldn't go back into xubuntu - I'm choosing linux [1], and then there are some lines and it looks like it's stuck on lines like
Code:
init avahi-deamon terminated (or something like that)
...
pad_get_pspval->inval=Not charging ret=0
pad_get_psp voltage_now=8060
pad_get_psp ...
asuspec: [asuspec_enter_s3_work_function] EC in S3
I can boot into android without any problem, but WiFi isn't working. I've tried to format my card, put files from rootfs for a couple of times, and it worked only twice, rest of it just shows lines of code I mentioned.
I hope I managed to write everything clearly I receive some help from you!
xubuntu 14.04 working
[It seems as a new member I cannot post to the dev thread directly, but to an associated Q&A thread. I hope the people that might be interested in this post can read it anyway.]
I have been running xubuntu 14.04 on my Asus TF300T for some months now. As other people seem to have difficulties with this I want to share how I got this to work. My own contribution in this is quite small. It mostly consists in combining in a particular way the great work others here on xda have done.
About my methodology: I am neither expert in the relevant hardware nor software. Also I like things to be reproducible and portable. So I try to start from the most standard ingredients (official sources, standard linux distrubtions etc.) and modify them in small independent and documented modular steps until I get things to work.
In this post I will present only a very brief outline of how I proceeded. I hope to present more details in later posts.
KERNEL:
I am using a boot menu setup with kexec hardboot. Thus, for linux I am using a dedicated linux kernel, not a dual purpose linux/android kernel. The kernel is based on the official Asus source with a few small patches. I am not sure the patches are relevant for 14.04 to work, but they might be. I will describe them in a later post.
ROOTFS + INITRAMFS:
The initial rootfs is simply the official ubuntu core 14.04 armhf image found at the official ubuntu site [cannot post link].
On top of this the kernel config in /boot and modules + firmware in /lib/modules and /lib/firmware have to be installed. Also a few other small files for wifi + bluetooth to work can be installed at this stage or later.
The initial initramfs is generated through a chroot from this image via the standard update-initramfs tool. For this to work properly only a tiny configuration file that indicates the linux root partition is needed in /etc/initramfs-tools/conf.d
In subsequent stages new versions of the initramfs can always be generated directly from the booted linux image via update-initramfs.
The chroot can also be used to download all required packages for the full install via
> apt-get -d install "packagename"
This requires having set /etc/apt/sources.list and possibly /etc/resolv.conf /etc/hosts /etc/hostname
X11:
As everybody knows X11 is a problem with tegra graphics. Fortunately, drivers are available at Nvidia's Linux for Tegra Site [cannot post link].
Unfortunately, these cover only X11 ABI up to version 14, while X11 in 14.04 is using ABI 15. What is more, I have experienced graphics corruption issues with the ABI 14 driver so I am actually using the ABI 13 driver. That means in addition to installing the relevant files from the nvidia site it is necessary to downgrade X11 for 14.04. I got this to work with the following packages:
- from 12.04:
libxi6 (this is more up to date than the 13.04 version)
- from 13.04:
xserver-xorg-core
libxfixes3
xserver-xorg-input-evdev
xserver-xorg-input-multitouch
xserver-xorg-video-dummy (might not be necessary)
- from 13.10:
libgl1-mesa-dri
Also you need the package xserver-xorg-input-mtev
sources are at rabits launchpad site [cannot post link]
SECOND STAGE:
After setting up a user, downloading desired packages (in particular "xubuntu-desktop"), making available the X11 packages etc. boot into the new system as the new user. Now install the X11 packages, set some of them on hold (apt-mark hold), for me it worked by marking xserver-xorg-core, libxfixes3 and libgl1-mesa-dri. Afterward you might need
> apt-get -f install
Then install xubuntu-desktop and possibly further required packages, then generate a new initramfs. Also further stuff needs to be / can be installed at this stage for audio, video, codecs, keyboard etc.
The next boot should then land you in a fully working xubuntu 14.04.
Good news! Could you upload your image xubuntu 14.04?
aurel33 said:
Good news! Could you upload your image xubuntu 14.04?
Click to expand...
Click to collapse
The image I am using myself is quite a mess now, after many months of use. Stripping this to the essentials and removing all personal stuff would be quite some work. What I rather want to do is share a procedure that should allow anybody to generate his/her own customized image. My previous post was extremely brief in this respect, but I hope to give more details in a follow up post. The next post, however, will be dedicated to the kernel I use as there are two patches that might (or might not) be relevant for 14.04 to work.
kernel for xubuntu 14.04
[I am sorry for not including the relevant links. As a new member I am not allowed to post links.]
As I said I am using a dedicated linux kernel, not a dual purpose linux/android kernel.
I am using the toolchain from ubuntu package "gcc-arm-linux-androideabi".
Instructions: Download the official Asus kernel source and get the toolchain ready.
Apply the following patches (attached):
toolchain/config patches:
- toolchain.patch : a minimal patch to solve toolchain dependent compliation issues
- modmake.patch : compile modules with option "-fno-pic"
- compressed_makefile.patch : also to solve toolchain issues (I found this in various places)
- bcm.patch : complete Kconfig for modules "bcmdhd_29" so none of "bcmdhd", "bcm43xx", "bcm4329" needs to be selected
proper kernel patches:
- mored.patch : patch to see console information at boot (from xda contributer "moreD")
- subreaper.patch : patch to update certain process information/signals to kernel 3.4 (from Lennart Poettering)
- 0001/2/3-AppArmor-... : update kernel to make apparmor work properly (from John Johansen)
- grouper-f2fs.patch : use this in case you want to add f2fs support (from Alex Page)
My kernel config file "config.txt" is also attached.
Now set environment variables:
KBUILD_OUTPUT=<outdir> directory for compilation output and config files
INSTALL_MOD_PATH=<libdir> directory for module and firmware installation
INSTALL_PATH=<bootdir> directory for kernel installation
In case of cross compilation set additionally:
ARCH=arm
CROSS_COMPILE=arm-linux-androideabi-
Now compile:
make -j4 all
make modules_install
make firmware_install
make zinstall
I am not sure if any of the above patches is essential to get xubuntu 14.04 running, but I suspect that the subreaper patch and the AppArmor patches might be important. The reason I use them is that I got errors in previous attempts of installing (x)ubuntu that after some research I found got fixed with these patches.
Happy compliling!
Can you please give me step by step instructions on how to install Ubuntu 14.04 on my TF300T?
Sent from my TF300T using XDA Free mobile app
rootfs for xubuntu 14.04 - PART 1
Here I describe in more detail the first part of the installation of the root file system (rootfs) for xubuntu 14.04 on the Asus TF300T. I will assume that the installation is to the root of an empty partition.
I. PREPARE ROOTFS:
1. CORE ROOTFS: Download the file
"ubuntu-core-14.04.1-core-armhf.tar.gz"
from the Ubuntu repositories. (Search for "ubuntu core" to find the site, I cannot post the link.) Extract this to the xubuntu partition. This is the initial rootfs.
This rootfs already works in a chroot, either from an existing linux installation or from Android. However, for this to be more useful we need to set up internet access and repositories.
2. INTERNET SETUP: Extract the attached file "inet-setup-trusty.tar.gz" into the rootfs. This sets up the relevant ubuntu repositories and fixes DNS lookup and gives the machine a name. Here I chose "tf300t-linux". To change the name, edit the files "/etc/hostname" and "/etc/hosts".
Before entering the rootfs via chroot, we set up more infrastructure for the ability to later run the rootfs stand alone. This requires a kernel.
3. KERNEL SETUP 1: Extract the kernel modules into "/lib/modules/..." and the kernel firmware into "/lib/firmware/...". If you compiled the kernel youself, these files will have been generated in the process. If you take the kernel from elsewhere these files have to be provided with the kernel.
4. KERNEL SETUP 2: To ensure relevant modules are loaded at boot, a file "/etc/modules" might be needed. This depends on the kernel. Assuming you compilde the kernel following my instructions in a previous post, just extract the attached file "initmodules.tar.gz" into the rootfs.
We shall later use "update-initramfs" to generate the initial ram file system, a file named "initrd.img". For this to work we need the following:
4. KERNEL SETUP 3: Put the kernel image into "/boot/". It should be called "vmlinuz-3.1.10" or similar. Also put "config-3.1.10" and "System.map-3.1.10" into this directory. These are also generated when compiling the kernel. I am not sure if "System.map-3.1.10" is required. "config-3.1.10" can be extracted from the kernel image if not provided. (See instructions elsewhere.)
5. INITRD CONFIG: For "update-initramfs" to work correctly a configuration file is needed indicating the root partition. This goes into "/etc/initramfs-tools/conf.d/". You might just extract the attached file "initramfs-mmcblk1p1.tar.gz". This assumes that xubuntu uses the partition "mmcblk1p1" with "ext4", i.e. the first partition on the external micro sd card and fomatted with the "ext4" file system. If you use a differnt partition and/or file system, edit the included file "/etc/initramfs-tools/conf.d/specify_root_device" accordingly.
6. WIFI: For wifi to work you need a file "nvram.txt". This is located under Android in "/data/misc/wifi/nvram.txt". Copy this to the rootfs at "/lib/firmware/nvram.txt" if you use the kernel I describe in a previous post. Otherwise the required location might be different. You can read it off in the kernel config file "config-3.1.10". (Search for "*NVRAM_PATH*".) Also you need firmware files. Under Android these should be under "/system/vendor/firmware/". Copy them to "/lib/firmware/" or see the location in the config file (search for "*FW_DIR*"). Note that these files include subdirectories, copy with subdirectories.
7. BLUETOOTH: You need a firmware file. This should be in Android under "/system/etc/firmware/". Its name should start with "BCM4329...". In the rootfs name this "/lib/firmware/BCM4329.2.hcd". You need an executable called "brcm_patchram_plus" which loads the firmware dynamically. This goes in the rootfs into "/usr/sbin/brcm_patchram_plus". Go to the site of the Linux for Tegra R16 project of Nvidia. Download "Tegra30_Linux_R16.4.0_armhf.tbz2". Inside look for "Linux_for_Tegra/nv_tegra/nvidia_drivers.tbz2". Inside this you find the executable "/usr/sbin/brcm_patchram_plus". You need a process that automatically calls this executable. It is convenient to integrate this with ubuntu's upstart. To this end just extract the attached file "nvbt.tar.gz". It yields a file "/etc/init/patchram.conf". I have adapted this file from previous work on xda on bluetooth for linux on the tf300t or tf700t (but can't find the post now). Modify this if you want to change the name or location of the firmware file.
8. GENERAL CONFIG: To fix some general configuration parameters for the tf300t extract the attached file "nvinit.tar.gz". This yields a file "/etc/init/nv.conf". Again, this is from prvious work on xda for the tf300t or tf700t (but I can't find the relevant post now).
II. ENTER ROOTFS:
I suppose you have mounted the partition for xubuntu at "/mnt/linux", either under an existing linux or under Android.
> LC_ALL=C sudo chroot /mnt/linux
update repositories:
> apt-get update
this is useful for a smooth installation of packages:
> apt-get install dialog
now install upgrades:
> apt-get dist-upgrade
create your user:
> adduser username
> addgroup username adm
> addgroup username sudo
generate initramfs and leave chroot:
> update-initramfs -c -k 3.1.10
> exit
This generates a file "/boot/initrd.img-3.1.10". This file together with the kernel image are needed to boot into the newly set up system.
III. BOOT ROOTFS:
You should now be able to boot into the system. How this is done depends on your set up. There are lots of threads on xda devoted to this subject. You should now have a functional minimal linux system based on ubuntu 14.04.
If you want to install packages it is convenient to download these from the chroot (where wifi is available) and before booting into the system as follows:
> apt-get -d install package1 package2 ...
Then after booting, install them via,
> sudo apt-get install package1 package2 ...
The details of the further set up of the GUI and of the full xubuntu 14.04 will be described in a subsequent post.
rootfs for xubuntu 14.04 - PART 2
Here I describe the second part of the installation of the root file system (rootfs) for xubuntu 14.04 on the Asus TF300T. I assume the rootfs has been prepared as described in this post, following the steps "I. PREPARE ROOTFS" and "II. ENTER ROOTFS", but not booted yet. If it has already been booted it might (or might not) be necessary to rewrite the file "/etc/resolv.conf" to the version contained in the file "inet-setup-trusty.tar.gz" from that post. This is to ensure internet access works correctly from chroot.
I. GET REQUIRED PACKAGES
The most complicated part of getting xubuntu 14.04 to work is in the graphics drivers and libraries. Mostly, the necessary files are found on the page of the "Linux for Tegra R16" project of nvidia. Look for the Tegra 30 "Cardhu" versions. As described in my first post, the problem with this and Ubuntu 14.04 is that this version of Ubuntu uses an X server with ABI version 15. An appropriate driver is not supplied by nvidia. The latest driver version supplied by nvidia is with ABI version 14. However, I had problems with graphics corruption with this driver, so I am using the one for ABI version 13. There is a ready made package containing this in the ubuntu 13.04 repository. Get this. The filename is:
"nvidia-tegra3_16.0-0ubuntu3_armhf.deb"
(I compiled a version of this with updated source files using nvidia's latest release "16.4" for my own use, but it is somewhat complicated to do this, so I wont put the details in this post. Anyway, this version should work for most purposes.)
Since we need the X server with ABI version 13, we need to install corresponding packages that are not from ubuntu 14.04, but from previous releases. Grab the following packages:
RELEASE PACKAGE FILENAME
12.04 libxi6 libxi6_1.7.1.901-1ubuntu1~precise1_armhf.deb
13.04 xserver-xorg-core xserver-xorg-core_1.13.3-0ubuntu6.2_armhf.deb
13.04 libxfixes3 libxfixes3_5.0-4ubuntu5.13.04.1_armhf.deb
13.04 xserver-xorg-input-evdev xserver-xorg-input-evdev_2.7.3-0ubuntu2b2_armhf.deb
13.04 xserver-xorg-input-multitouch xserver-xorg-input-multitouch_1.0~rc2+git20110312-2build3_armhf.deb
13.04 xserver-xorg-video-dummy xserver-xorg-video-dummy_0.3.6-0ubuntu1_armhf.deb (this might not be needed)
13.10 libgl1-mesa-dri libgl1-mesa-dri_9.2.1-1ubuntu3_armhf.deb
There is another package needed for the X server for the touchscreen to work. Build instructions can be found on the GitHub page of user "rabits" under "tf700". I have attached the resulting package "xserver-xorg-input-mtev". Uncompressing yields:
"xserver-xorg-input-mtev_0.1.13ubuntu2_armhf.deb"
II. PLACE PACKAGES
1. Put all the 9 package files for the x server into a directory in the rootfs.
2. Enter the rootfs via chroot from Linux or Android (supposing the parition of the rootfs is mounted at "/mnt/linux")
> LC_ALL=C sudo chroot /mnt/linux
3. Go to the directory with the X server packages. Then install them:
> dpkg -i filename1 filename2 ...
4. IMPORTANT! Prevent relevant packages from being updated:
> apt-mark hold xserver-xorg-core
> apt-mark hold libxfixes3
> apt-mark hold libgl1-mesa-dri
5. Pull in dependencies:
> apt-get -f install
6. Get xubuntu packages (this takes some time depending on the speed of your internet connection) and leave:
> apt-get -d install language-pack-en
> apt-get -d install xubuntu-desktop
> exit
III. XUBUNTU INSTALL
Now, boot the rootfs.
1. Set timezone
> sudo dpkg-reconfigure tzdata
2. Install language pack to avoid locale problems
> sudo apt-get install language-pack-en
3. Install xubuntu. (This takes some time)
> sudo apt-get install xubuntu-desktop
4. Produce a new initrd.img and exit
> sudo update-initramfs -c -k 3.1.10
> sudo shutdown now
Copy this from /boot/initrd.img-3.1.10 to where its needed for the boot process.
IV. FURTHER CONFIG
1. FIX AUDIO CONFIG PROBLEMS
Extract attached file "nvaudio.tar.gz" to the rootfs.
2. SET UP X INPUT DRIVERS
Extract attached file "xorg-input.tar.gz" to the rootfs.
V. BOOT XUBUNTU
Booting the rootfs should land you now in a fully working xubuntu 14.04.
There are further steps to improve the experience such as
- install nvidia codecs and player
- fix graphics corruption on resume from suspend
- install keymaps for a better keyboard experience with the dock
I hope to describe some of this in later posts in so far as it differs from solutions that other xda members have already proposed.
A final remark:
THE IDENTICAL PROCEDURE SHOULD WORK FOR INSTALLING LUBUNTU.
(Just replace "xubuntu-desktop" with "lubuntu-desktop", I have tested this once)
It does not work with standard Ubuntu (i.e. Unity) though, because that depends on the newer X server.
@Geometry
Is there any chance, that you would share your working rootfs (ofc fresh build) and others can use it? Or everyone has to follow your guide to have working rootfs and it cannot be shared?
mentosso said:
@Geometry
Is there any chance, that you would share your working rootfs (ofc fresh build) and others can use it? Or everyone has to follow your guide to have working rootfs and it cannot be shared?
Click to expand...
Click to collapse
I would certainly be happy to share a working rootfs (understandably not the one I have been using myself for the last couple of months though). Unfortunately, I can spend very little time on this. So it is a question of finding the time to prepare a new build, then finding a free file hosting service etc. I will try to make an effort to make this happen in the near future, but can't promise anyhing at this point...
can you go more in depth in how you installed the kernel? I get some of the basics but I don't understand how to install it.
phonegeekjr said:
can you go more in depth in how you installed the kernel? I get some of the basics but I don't understand how to install it.
Click to expand...
Click to collapse
Sorry for being very brief in this respect. One way to install the kernel would be to use the "abootimg" tool to combine the kernel with a initrd.img file into a boot image, then convert this to a blob file using "blobpack" and then flashing this to the tablet. However, this would leave you unable to run any other OS/ROM (such as any Android). So this is probably not what you want. Instead you want some multiboot/multirom system. What I use myself is a modified version of the boot kernel from the main thread which starts a script that gives me a menu and then boots the kernel/initrd.img I select via kexec-hardboot. To "install" a kernel/initrd.img you just have to store them at a place where this script can find them. If I have time I might describe my particular setup in more detail later. But for the moment my main intention is to have those that already have a setup like this be able to test a full xubuntu 14.04. Then, with the help of those experts it will be easier to generate a way to make this accessible to a large number of users.
test kernel
I provide here a test kernel, compiled as described in this post. There is one small difference compared to the description in the post. It turns out that instead of the "arm-linux-androideabi-" toolchain, the "arm-linux-gnueabihf-" toolchain works as well and I have used that. Note that the kernel is a linux only kernel that will not work with Android. The attached file can be decompressed directly into the rootfs, automatically providing all essential files (modules, config etc.) in the right place. The (compressed) kernel itself is the file "/boot/vmlinuz-3.1.10". This is the file that is often named "zImage". The kernel config file is "/boot/config-3.1.10".
The other news is that I have also built a working xubuntu 14.04 rootfs as described in his post. As soon as I find a suitable file hosting service I will make this available here.
xubuntu 14.04 rootfs
So, here is the rootfs as prepared according to this post and this post. There is one small difference in the preparation as compared to those posts. I have used a modified and updated version of the package "nvidia-tegra3", see attached file.
So the rootfs file is called "tf300t-xubuntu-rootfs.tar.gz" and can be found here. Expand this into the partition you want to use for xubuntu 14.04. It is recommendable that you replace the file "/lib/firmware/nvram.txt" with you own version from your own machine at "/data/misc/wifi/nvram.txt" in Android.
This associated kernel is also in the rootfs at "/boot/vmlinuz-3.1.10". The initial ramfs is the file "/boot/initrd.img-3.1.10". This assumes linux is in first partition "mmcblk1p1" of the external micro sd card. The username is "ubuntu" with password "ubuntu".
If you want to use a different kernel (I hope other kernels will work too, please report!) then replace the module files under "/lib/modules" and possibly some firmware files under "/lib/firmware" as necessary. Also (!) put the kernel config file in "/boot/config-3.1.10". Then enter the rootfs via chroot and generate a new initrd.img via "update-initramfs -c -k 3.1.10". It will be replace the provided one.
Also, if you want to put this on a different partition edit "/etc/initramfs-tools/conf.d/specify_root_device" accordingly and generate a new initrd.img as described above.
As before I assume here that you know what to do with the kernel and the initrd.img...
Happy testing!
---
md5sum for "tf300t-xubuntu-rootfs.tar.gz" is: 46639d3af438e9c856d5951a321e203b
---
UPDATE: Here is an alternative download link for the rootfs which might provide faster download speed. Thanks to Graiden05!
@Geometry
Thank you a lot for your effort! I have a question tho, is it possible to run your rootfs and have dualboot? The best way would be to use dualboot kernel posted somewhere in the topic. If it's possible, can you briefly write how to do it?
Geometry said:
Sorry for being very brief in this respect. One way to install the kernel would be to use the "abootimg" tool to combine the kernel with a initrd.img file into a boot image, then convert this to a blob file using "blobpack" and then flashing this to the tablet. However, this would leave you unable to run any other OS/ROM (such as any Android). So this is probably not what you want. Instead you want some multiboot/multirom system. What I use myself is a modified version of the boot kernel from the main thread which starts a script that gives me a menu and then boots the kernel/initrd.img I select via kexec-hardboot. To "install" a kernel/initrd.img you just have to store them at a place where this script can find them. If I have time I might describe my particular setup in more detail later. But for the moment my main intention is to have those that already have a setup like this be able to test a full xubuntu 14.04. Then, with the help of those experts it will be easier to generate a way to make this accessible to a large number of users.
Click to expand...
Click to collapse
thanks
actualy converting it all to a blob file really is what I want to do. what is this program blobpack? I have googled it and didn't get much.
phonegeekjr said:
thanks
actualy converting it all to a blob file really is what I want to do. what is this program blobpack? I have googled it and didn't get much.
Click to expand...
Click to collapse
OK, so I assume you know how to use "abootimg" to create a boot image. "blobpack" converts this into a blob file that you can flash to the staging partition. For the blob tools see this thread. However, I had problems with the version of "blobpack" from that thread. Instead, a different version of "blobpack" worked for me. I got this by going to the cyanogenmod web site and following the instructions to built cyanogenmod for the tf300t. In the build process not only cyanogenmod is built, but various tools as well. This includes a version of blobpack, called "blobpack_tfp". This worked for me. Note that I did this almost a year ago. So I am not sure an up to date version of cyanogenmod yields the same. If you are just after the blobpack tool, downloading the complete source and building cyanogenmod is a huge overkill of course. But I guess you could browse through their sources online and find exactly what you need. Hope this info helps!
mentosso said:
@Geometry
Thank you a lot for your effort! I have a question tho, is it possible to run your rootfs and have dualboot? The best way would be to use dualboot kernel posted somewhere in the topic. If it's possible, can you briefly write how to do it?
Click to expand...
Click to collapse
I don't know of the rootfs works with this dualboot kernel. Actually, it would be great if somebody could test this! How to adapt the rootfs to another kernel is sketched in the post. However, some of the patches described here and not included in that kernel might be necessary for xubuntu 14.04 to work. But I'm not sure...
Another possibility would be to modify the kernel I described here for dualboot (or multiboot). This would require an additional kexec-hardboot patch and a modification of the initrd.img to include the kexec binary and a script that offers the boot menu.
---------- Post added at 17:01 ---------- Previous post was at 16:18 ----------
I have now announced the xubuntu 14.04 rootfs described in previous posts on the main thread here. I would like to encourage people to continue discussion there as I think that is the more appropriate place.
Hi
i would like to install xubuntu on my tablet.
I have not yet figured out what the starting point.
I currently have installed a cm11 official rom.
what i can do now? which are the steps to make dualboot working?
I can install android on the internal memory and xubuntu in sd card?
How can i make this work? I've to many doubts to start flashing and install stuffs right now.
Thanks in advance.

[Guide] Triple boot full rooted Android-x86 with Ubuntu and Windows without USB

There are a couple of guides on how to install android-x86 on your PC, but this is a specifically written tutorial to install it as an OS (Not on VM), for linux users, without the use of a USB or CD, with full root capabilities unlike other Non-USB methods.
I have a 12" touch notebook Asus X200 with 4GB of RAM and 500GB of disk space.
Currently triple booting Windows 8.1, Ubuntu 14.04, and Android-x86 Kitkat.
Quick summary:
Create an ext3/ext4 partition for Android-x86.
Download the iso and extract its content to that partition.
Configure grub to detect Android-x86.
Pre-Requirements:
Ubuntu already installed.
Windows already installed.
Grub already installed (Obviously).
Squashfs-tools installed
Code:
sudo apt-get install squashfs-tools
First of all, boot your PC into Ubuntu.
A. Creating a partition for you Android
We need to prepare a 10GB ext3/ext4 partition for Android. You can do so by resizing an existing partition, using gparted.
Now depending on which partition you want to resize (Ubuntu or Windows), you can use gparted from a Live Ubuntu CD, or directly from Ubuntu. I highly recommend resizing an NTFS partition (Windows).
Here is a tutorial on how to use it.
Install gparted (in case you don't have it)
Code:
sudo apt-get install gparted
Once installed run gparted (requires root permission).
Select the partition you want to resize
Right-click and select Resize/Move.
Shrink it so you can get a new partition of 10GB
An unallocated partition will be created.
Right-click on it and select New.
Select ext3, label it Android and press Add.
Notice that I labeled the partition "Android", for easier identification.
Make sure that you took the right steps before you apply the changes.
Here is how my Android Partition looks like (sda8)
{
"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"
}
Write down the path for your android partition, in my case /dev/sda8 (You will need it later)
To test it. Go to nautilus (file explorer), and mount the partition and see if you can access it.
B. Downloading and extracting the ISO
If you don't need full root (read/write) you can skip this section, all you need to do is to copy the 4 files extracted from the andorid-x86 iso (initrd.img ramdisk.img kernel system.sfs) to your android partition. Create an empty folder called data in your android partition too. And then jump to section C.
The difference here in this section is that we extract the contents of system.sfs and then copy them to the android partition with the other 3 files (initrd.img ramdisk.img kernel), and create an empty data folder. This way, we will have full root access.
(system.sfs is a squashfs which is a compressed read-only file system, which explains why we can't have full root)
Head down to android-x86 website and download the latest version (iso version).
In my case it's Android-x86 4.4 r2
Hit the terminal (Crtl+Alt+T).
You can use the following bash commands to easily extract and copy the files.
Extract the contents of the iso
Code:
7z x android-x86-4.4-r2.iso -oandroid_installation && \
cd android_installation
Extract the contents of the system.sfs
Code:
sudo -s && \
unsquashfs -f -d . system.sfs && \
mkdir temp && \
mount -o loop system.img temp
Now let's copy initrd.img ramdisk.img kernel files to the Android partition. Create 2 folders on the Android partition called data and system, extract system.sfs (and eventually system.img) and copy its contents to the system folder we just created.
Code:
cp initrd.img ramdisk.img kernel [COLOR="Lime"]/path/to/the/android/partition[/COLOR] &&\
mkdir [COLOR="Lime"]/path/to/the/android/partition[/COLOR]/system && \
mkdir [COLOR="Lime"]/path/to/the/android/partition[/COLOR]/data && \
cp -avr temp/* [COLOR="Lime"]/path/to/the/android/partition[/COLOR]/system &&\
umount temp &&\
cd .. && \
rm -rf android_installation &&\
exit
You should have something like that
C. Configuring Grub
Now after copying all the necessary files to the Andorid partition, all we need to do is modify grub to boot from that partition.
Code:
sudo gedit /etc/grub.d/40_custom
menuentry "Android Kitkat" {
set root='(hd0,8)'
linux /kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode SRC=/ HWACCEL=
initrd /initrd.img}
Click to expand...
Click to collapse
You should change (hd0,8) entry based on your android partition location, the one that we wrote before.
(hdX,Y) for /dev/sdXY with a corresponding to 0, b to 1, c to 2 etc ..
In my case, my android partition is /dev/sda8 correspond to (hd0,8)
a -> X=0
8 -> Y=8
So '(hd0,8)'
Update Grub configuration by:
Code:
sudo update-grub
D. Finally
Reboot your laptop, and select Android Kitkat from Grub list (it should be the last entry).
... And enjoy the Kitkat!
(And then you can install the latest SuperSU and update the root binaries)
Bonus. Installing Xposed Framework.
As many probably faced the same problem, Xposed Framework presents an issue on intel devices, although there is a work around.
Here are the steps:
Boot into Android.
Download Xposed Framework Installer from here.
Install it, but DO NOT RUN IT.
Now hit the terminal emulator. It should be already installed on your system. Type the following:
Code:
su
echo 148 > /data/data/de.robv.android.xposed.installer/conf/jit_reset_offset
chmod 664 /data/data/de.robv.android.xposed.installer/conf/jit_reset_offset
Run the installer, and install Xposed Framework.
Reboot and enjoy
Other similar guides:
Xposed Framework Issue workaround
Installing android x86 without CD or USB (Windows 7 and Vista)
Installing android x86 using USB or CD or VM
Installing android x86 without USB or USB with Ubuntu (limited root)
Cool! Finally a true boot guide, No VMs! But what about XP?
I've got a very old laptop, that I want to wipe and install a triple boot (android, ubuntu, winxp).. any pointers on which order to do the installs/partitions? Wubi?
Haven't found any step-by-step procedure for this particular scenario, but I've read that if not done correctly all 3 os'es won't appear in the boot menu!
snoop911 said:
I've got a very old laptop, that I want to wipe and install a triple boot (android, ubuntu, winxp).. any pointers on which order to do the installs/partitions? Wubi?
Haven't found any step-by-step procedure for this particular scenario, but I've read that if not done correctly all 3 os'es won't appear in the boot menu!
Click to expand...
Click to collapse
The more convenient order would be Windows then Ubuntu (using Wubi and install alongside Windows) then Android (you can follow this guide after you install Ubuntu)
PS. I would not recommend windows XP as it's unsupported but if you feel nostalgic, it's your choice. Better use Windows 7.
Thanks it Worked!
Although this tutorial is to Triple boot windows, ubuntu and android,
I have Installed and can boot.
Ubuntu 14.0.4 LTS, Linux Mint, Kali Linux 2.0 Windows 10 and Android 6.0
in different hard disk partitions.
On my Asus X2OOM
(Touch Screen, 4GB RAM, 500GB HDD, Intel Celeron 2.16Ghz Dual Core)
_______________________________________________________________________________
Yes I do know that this post is about triple booting linux, windows, and andorid.
since you have mentioned about xposed. how to I install xposed on android Lollipop or marshmallow.
the tutorial doesn't work on lollipop or marshmallow. (obviously) .
I was wondering if I can do this with remix os. will this work?
sorry for a noob question. newbie here
I tired, Didn't work
deeXDA said:
I was wondering if I can do this with remix os. will this work?
sorry for a noob question. newbie here
Click to expand...
Click to collapse
When i extract the remix OS iso there was no system.sfs, there was system.img
So I skipped
Code:
unsquashfs -f -d . system.sfs
and mounted system.img to temp.
Did all the other steps correctly.
It didn't work, It just reboots. :crying:
BTW If you got a way please let me know.
I currently have Windows, Linux Mint, Ubuntu, Kali Linux, Android x86 on my laptop.
and don't apologize :v
shihaam_ab_r said:
When i extract the remix OS iso there was no system.sfs, there was system.img
So I skipped
Code:
unsquashfs -f -d . system.sfs
and mounted system.img to temp.
Did all the other steps correctly.
It didn't work, It just reboots. :crying:
BTW If you got a way please let me know.
I currently have Windows, Linux Mint, Ubuntu, Kali Linux, Android x86 on my laptop.
and don't apologize :v
Click to expand...
Click to collapse
I think I'm lost. I was actually referring to remix os for pc but AFAIK it's still Android x86. Anyway, I followed the steps here and it seems that I successfully installed it BUT I got a problem on booting it since grub isn't installed and I don't know how to add an OS to grub's listing. AND FINALLY, I don't know where to go/to do next. The good thing is it ran with my hp laptop and explore it with a couple of minutes and rebooted to check if it will be recognized by grub but unfortunately, it didn't
googled how to add an OS to grub but, sadly, no luck.
I don't know it this is the right thread to ask this but, can anyone point out where am I? I just want to boot with remix OS.
Current OS's Windows 10, ubuntu 14.04 LTS, Remix OS for PC
deeXDA said:
I think I'm lost. I was actually referring to remix os for pc but AFAIK it's still Android x86. Anyway, I followed the steps here and it seems that I successfully installed it BUT I got a problem on booting it since grub isn't installed and I don't know how to add an OS to grub's listing. AND FINALLY, I don't know where to go/to do next. The good thing is it ran with my hp laptop and explore it with a couple of minutes and rebooted to check if it will be recognized by grub but unfortunately, it didn't
googled how to add an OS to grub but, sadly, no luck.
I don't know it this is the right thread to ask this but, can anyone point out where am I? I just want to boot with remix OS.
Current OS's Windows 10, ubuntu 14.04 LTS, Remix OS for PC
Click to expand...
Click to collapse
Where do you have grub installed? And where do you have the RemixOS files...
deeXDA said:
I got a problem on booting it since grub isn't installed and I don't know how to add an OS to grub's listing.
Click to expand...
Click to collapse
deeXDA said:
Current OS's Windows 10, ubuntu 14.04 LTS, Remix OS for PC
Click to expand...
Click to collapse
You must have a bootloader installed, as you're running Linux and Windows together (In the majority of the cases it's grub), but in your case, try to find out what bootloader you have installed and try to add the Remix OS partition to your boot menu.
Let me know what boot loader you have installed and I'll try to see if I can help.
shihaam_ab_r said:
It didn't work, It just reboots.
BTW If you got a way please let me know.
I currently have Windows, Linux Mint, Ubuntu, Kali Linux, Android x86 on my laptop.
Click to expand...
Click to collapse
I Just checked Remix OS website, and they have 2 alpha versions of their OS, one for EFI and another for Legacy (BIOS). You should download the first one (EFI). I suspect that might be the problem. Otherwise I'll try to see if I have time to tinker with Remix OS, and I'll update you.
silv3rfox said:
I Just checked Remix OS website, and they have 2 alpha versions of their OS, one for EFI and another for Legacy (BIOS). You should download the first one (EFI). I suspect that might be the problem. Otherwise I'll try to see if I have time to tinker with Remix OS, and I'll update you.
Click to expand...
Click to collapse
Thanks, Ill try
So, I guess you've heard already the news. Android-x86 and Remix OS are partnering together, for a better world (of course), so today I replaced my android-x86 partition with Remix OS beta, and it worked! So I can confirm the method works like charm. You only need to replace the grub parameters with the following in step C:
androidboot.hardware=remix_x86_64
Click to expand...
Click to collapse
excuse me, what ubuntu theme are you using
arima0k said:
excuse me, what ubuntu theme are you using
Click to expand...
Click to collapse
It's an old screenshot. Like nearly two years old. I moved on from Ubuntu. But I think it was the Numix theme.
This is what I needed...
Thanks for the tech on this guided installation Silv3rfox ! I also am new to the Linux scene
and having fun learning! I did get stuck early on, but it was mostly related to my early
exposure to this unix o/s.
I realize that this tech may be a bit off topic for this site, but I just wanted to say thank
you for this and for the great advice this site offers iphone users...lol...
Now that I have some command knowledge, I will delete and re-run your tech as I have a
few questions I failed to record on my first several attempts. I will also be exploring this site
which, as an android phone user, looks to be a great find I stumbled upon during my search
for tech related to this topic!
kid
I thank you for your excellent instructions. Followed them to the letter and it keeps getting stuck at "detecting android." Then it reboots. Any suggestions?
---------- Post added at 09:25 PM ---------- Previous post was at 09:17 PM ----------
Thanks for your your excellent instructions. I do have a problem unfortunately. I followed these instructions pretty much to the letter except I used Lineage OS iso (cm-x86_64-14.1-rc1.iso) on my Inspiron Dell laptop. I am running Linux Mint 18.2 and am trying to dual boot that and Android-x86 (Lineage). After following your instructions I boot up and it acts like it is going to start but then it says "detecting android-x86." and then reboots. Any suggestions?
Here is what I copied into the grub.d/40_custom file:
menuentry "Lineage Android" {
set root='(hd0,4)'
linux /kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode SRC=/ HWACCEL=
initrd /initrd.img}
The partition I created is sda4. Appreciate your help!
I followed everything to the t but I'm getting an error saying cannot stat 'temp/* after i execute the code at step 5
Please help
Something wrong
I performed step 5 and gave the following message:
Code:
mkdir: é impossível criar o diretório “/media/xikowisk/Android/system”: File exists
My system folder is empty.
error:hd1 can't get C/H/S values
error:you need to load kernel first
help
Sorry guys, I didn't receive notifications of your post, as you didn't tag me, or quote me.
pastordeecat said:
I thank you for your excellent instructions. Followed them to the letter and it keeps getting stuck at "detecting android." Then it reboots. Any suggestions?
Thanks for your your excellent instructions. I do have a problem unfortunately. I followed these instructions pretty much to the letter except I used Lineage OS iso (cm-x86_64-14.1-rc1.iso) on my Inspiron Dell laptop. I am running Linux Mint 18.2 and am trying to dual boot that and Android-x86 (Lineage). After following your instructions I boot up and it acts like it is going to start but then it says "detecting android-x86." and then reboots. Any suggestions?
Here is what I copied into the grub.d/40_custom file:
menuentry "Lineage Android" {
set root='(hd0,4)'
linux /kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode SRC=/ HWACCEL=
initrd /initrd.img}
The partition I created is sda4. Appreciate your help!
Click to expand...
Click to collapse
To be honest I haven't updated mine for a while now (the guide was written for kitkat ). But if it's booting after the grub menu, it means that grub is well configured. Are you still facing this problem?
EDIT: I just noticed, you should have androidboot.hardware=android_x86_64 instead of androidboot.hardware=android_x86.
Heelixx said:
I followed everything to the t but I'm getting an error saying cannot stat 'temp/* after i execute the code at step 5
Please help
Click to expand...
Click to collapse
Maybe you didn't mount the system image in temp? The idea is to extract the content of system image. Let me know if you still facing this problem.
Xikowisk said:
I performed step 5 and gave the following message:
Code:
mkdir: é impossível criar o diretório “/media/xikowisk/Android/system”: File exists
My system folder is empty.
Click to expand...
Click to collapse
It seems it failed to copy the content of the system image to the system folder. Try to do it using nautilus (ubuntu file explorer).
mooddy said:
error:hd1 can't get C/H/S values
error:you need to load kernel first
help
Click to expand...
Click to collapse
You have misconfigured grub. Check part C again. Or you can post your partition table and the Android entry on grub and I can check it.

exFAT and NTFS fuse drivers easy build for any platform

My primary goal was to build exfat and ntfs-3g for x86, for my Lenovo Yoga Tablet 2 830L, but I've resulted with a project that can be built for any platform, using only Android NDK, even under Windows/Cygwin. Also I've ended up with a mount script, which was not a trivial task. I thought it might be useful for other devices, or other developers. The project is here:
https://github.com/Lurker00/Android-fs
The pre-built binaries for ARM and x86, along with a mounting script, are here:
https://github.com/Lurker00/Android-fs/releases
So, if your device is running Android KitKat, it misses exFAT and/or NTFS support, and you have rooted it, you may try... I said, KitKat, because I have no idea how these things are working in Lollipop and later, and I don't believe there is any interest in earlier versions.
If you have any suggestions on how it can be improved, you are much appreciated
Very nice, I'll try with Lollipop and get back to you.
I've created a CWM/TWRP installation zip, with pre-built binaries for most of platforms, including 64-bit. It is also there:
https://github.com/Lurker00/Android-fs/releases
It still requires root and SuperSU already installed.
I've updated the drivers to version 1.0.2:
1. One more supolicy rule added to the mounting script. Without it, unmount from Android Settings didn't work.
I didn't put per-platform binaries this time, because the recovery zip contains them all.
I'm sorry for so frequent updates, but
exFAT/NTFS fuse drivers binaries for Android v1.0.3
The problem is that the original exFAT driver was designed to update the file system only at unmount events, but the current Android never unmounts microSD mounted not by Android's vold process Meaning, file system corruption may happen on a reboot or power off.
Version 1.0.2 partially addresses that issue, and is stable enough. Only freshly created directories can be damaged by a reboot, and only if there were no any file operations after that, i.e. a rare case. Version 1.0.3 ensures that the file system is kept consistent almost always. It can be damaged only by removing microSD card during write operation.
Nevertheless, I plan to make at least one more release, to keep microSD clean, when there are no pending writes. Also, I'd try to improve the write performance compared to 1.0.3, without a penalty of the file system consistency.
I just have released
exFAT/NTFS fuse drivers binaries for Android v1.0.4
and I can say I'm quite satisfied with both performance and robustness of the resulting exFAT driver (no changes were made to ntfs-3g). So, I believe, it is the final build for a while.
Lurker0 said:
I just have released
exFAT/NTFS fuse drivers binaries for Android v1.0.4
and I can say I'm quite satisfied with both performance and robustness of the resulting exFAT driver (no changes were made to ntfs-3g). So, I believe, it is the final build for a while.
Click to expand...
Click to collapse
When I mount an external with exfat I get "Permission denied" for any writing op...it's totally r/o. Running as root
Code:
mount.exfat -o rw,umask=000 /dev/block/sda1 /system/test
Thanks for any help...currently stumped.
Do you try to write also as root? If you don't, the reason can be CELinux restrictions.
setenforce 0 fixed me up. Thanks for the reply!
(and for the binaries)
Work
Hi,
I'm trying to use your drivers on my Chuwi Vi8 Intel based tablet but i have an error message in the log :
Error: SECONDARY_STORAGE is not set. Don\'t know where to mount!
I tried to take a look at the shell script but my memory is too confused about sh to understand what is done.
Can you help me to fix this ?
I installed your drivers using the zip file and modified the logfile variable to enable log.
PrinceGITS said:
Hi,
I'm trying to use your drivers on my Chuwi Vi8 Intel based tablet but i have an error message in the log :
Error: SECONDARY_STORAGE is not set. Don\'t know where to mount!
I tried to take a look at the shell script but my memory is too confused about sh to understand what is done.
Can you help me to fix this ?
I installed your drivers using the zip file and modified the logfile variable to enable log.
Click to expand...
Click to collapse
Hello,
I have the same problem here, and the same kind of device. Can I set the path manually, instead of using the environment variable?
asteck said:
I have the same problem here, and the same kind of device. Can I set the path manually, instead of using the environment variable?
Click to expand...
Click to collapse
Of course, you can!
asteck said:
Hello,
I have the same problem here, and the same kind of device. Can I set the path manually, instead of using the environment variable?
Click to expand...
Click to collapse
Hey there, meanwhile I had some time, and figured it out. I can give the path manually in the script. I modified it that if it not find the system variable SECONDARY_STORAGE, then it uses the path what Chuwi Vi8 use(/storage/sdcard1), and it is working with my Chuwi Vi8!
I attached the modified script.
!!!USE IT ONLY WITH CHUWI Vi8 dual boot windows8.1/android4.4!!!
Lurker0 said:
Of course, you can!
Click to expand...
Click to collapse
And ready!
Thank you very much for your work!
asteck said:
Hey there, meanwhile I had some time, and figured it out. I can give the path manually in the script. I modified it that if it not find the system variable SECONDARY_STORAGE, then it uses the path what Chuwi Vi8 use(/storage/sdcard1), and it is working with my Chuwi Vi8!
I attached the modified script.
!!!USE IT ONLY WITH CHUWI Vi8 dual boot windows8.1/android4.4!!!
Click to expand...
Click to collapse
Thanks ! :highfive:
I didn't had time to check this thread since last year ( ).
I'll update with your shell script this evening.
Thanks again for your help.
And thanks Luker0 for your driver.
It will ease the use of my SDcard between Android and Windows.
PrinceGITS said:
Thanks ! :highfive:
I didn't had time to check this thread since last year ( ).
I'll update with your shell script this evening.
Thanks again for your help.
And thanks Luker0 for your driver.
It will ease the use of my SDcard between Android and Windows.
Click to expand...
Click to collapse
But keep in mind, sdCard handling is not perfect in Chuwi Vi8. When you switch from android to windows, somehow the android keeps the sd-reader locked. That is why you can't use it in windows. If you make a turn off-turn on (not simple restart) in windows, then you can use the sdcard again. From windows to android it works perfectly, only from android to windows is problematic.
Sorry for the slight off topic in this thread, this is the chuwi vi8 thread:
http://forum.xda-developers.com/android/general/chuwi-vi8-review-cheap-z3735f-8-tablet-t3066807
asteck said:
But keep in mind, sdCard handling is not perfect in Chuwi Vi8. When you switch from android to windows, somehow the android keeps the sd-reader locked. That is why you can't use it in windows. If you make a turn off-turn on (not simple restart) in windows, then you can use the sdcard again. From windows to android it works perfectly, only from android to windows is problematic.
Sorry for the slight off topic in this thread, this is the chuwi vi8 thread:
http://forum.xda-developers.com/android/general/chuwi-vi8-review-cheap-z3735f-8-tablet-t3066807
Click to expand...
Click to collapse
I know this problem and had it several times.
I think I'll unmount the SDcard in Android before switching to Windows.
I tried last evening but it didn't work.
asteck, I looked at your script and I have a question.
Why do you add the variable in the "if...then" ?
Code:
if [ x$SECONDARY_STORAGE == x ]; then
echo "Error: SECONDARY_STORAGE is not set. Don\'t know where to mount!" >> $logfile
#exit 1
secstor=/storage/sdcard1
fi
I think this can be done outside the condition.
I didn't haave enough time to make some checks, I'll try to execute the script from a terminal with echo messages to understand where it doesn't work.
PrinceGITS said:
I tried last evening but it didn't work.
asteck, I looked at your script and I have a question.
Why do you add the variable in the "if...then" ?
Code:
if [ x$SECONDARY_STORAGE == x ]; then
echo "Error: SECONDARY_STORAGE is not set. Don\'t know where to mount!" >> $logfile
#exit 1
secstor=/storage/sdcard1
fi
I think this can be done outside the condition.
I didn't haave enough time to make some checks, I'll try to execute the script from a terminal with echo messages to understand where it doesn't work.
Click to expand...
Click to collapse
Yes, you can put it outside. My mistake. I think I put it there to execute only if there is no SECONDARY_STORAGE system variable, but if there is one, then it is fails now, because the variable don't get a value. It was a quick resolution for the exact problem.
However, to solve you problem maybe you should just change the path "/storage/sdcard1". You can check the right path by putting a FAT32 sdcard in it, and see where it mounts in a file explorer. My Chuwi Vi8 mounts to here, that is why I use this path.
I attached again with an else statement for use SECONDARY_STORAGE if exist, and the log is turned off.

[SOLVED] Flashing a kernel without TWRP or Fastboot with only an Android shell

Hey everyone
I am working on a dual boot Ubuntu Touch, Droidian (mobian-hybris) setup without breaking either of the systems. I have figured everything out on how everything should work and modifications that need to be done to the recovery image but there is one question that i do not have an answer for but here is some information but how things work.
So right now Ubuntu Touch uses a customized version of LineageOS recovery to do OTA updates. and is when installed it replaces androids rootfs. Then we have Droidian which uses a rootfs.img file as its rootfs which is mounted at boot as a loop device. (file is placed in /data)
They use different kernels because they have different ramdisks (obviously). My plan is to write a desktop file in both OSes to create a file to let recovery know to flash the right kernel (kernels will be placed under /data aswell no space limitations). I have the recovery and desktop file code mostly ready the only remaining thing is the command to flash a kernel.img/boot.img file to the device (Redmi Note 9S)
I know that LineageOS does not have a terminal all of the flashing tasks will be done by a script which checks which kernel should be flashed.
Is there some documentation on this? Because TWRP can do the same and TWRP is just a GUI on top of the android shell with some added functionality for backups and such.
Any response is appreciated.
FakeShell said:
Hey everyone
I am working on a dual boot Ubuntu Touch, Droidian (mobian-hybris) setup without breaking either of the systems. I have figured everything out on how everything should work and modifications that need to be done to the recovery image but there is one question that i do not have an answer for but here is some information but how things work.
So right now Ubuntu Touch uses a customized version of LineageOS recovery to do OTA updates. and is when installed it replaces androids rootfs. Then we have Droidian which uses a rootfs.img file as its rootfs which is mounted at boot as a loop device. (file is placed in /data)
They use different kernels because they have different ramdisks (obviously). My plan is to write a desktop file in both OSes to create a file to let recovery know to flash the right kernel (kernels will be placed under /data aswell no space limitations). I have the recovery and desktop file code mostly ready the only remaining thing is the command to flash a kernel.img/boot.img file to the device (Redmi Note 9S)
I know that LineageOS does not have a terminal all of the flashing tasks will be done by a script which checks which kernel should be flashed.
Is there some documentation on this? Because TWRP can do the same and TWRP is just a GUI on top of the android shell with some added functionality for backups and such.
Any response is appreciated.
Click to expand...
Click to collapse
Answering my question as the answer was just too dumb but for some reason i could not figure it out.
dd can be used like a regular linux machine
dd if=/data/boot.img of=/dev/block/platform/soc/by-name/boot
Closing down
I kinda had the same issue here: https://forum.xda-developers.com/t/...wrp-openrecoveryscript.4301279/#post-85681605
I remember that I read somewhere / was told actually not to use /dev/block/platform/soc/by-name/boot (which is a symlink) but the actual device path the symlink resolves to with dd.
I'm not sure what the reasoning was though. I'd like to mention this here, maybe someone knows why.

Categories

Resources