PendriveLinux's YUMI USB multiboot compatibility - config files, etc.?

3,863 views
Skip to first unread message

Bob Carroll

unread,
Jun 18, 2013, 7:45:14 PM6/18/13
to andro...@googlegroups.com
References: (1) http://www.pendrivelinux.com/yumi-multiboot-usb-creator/ -- (2) http://www.gooplusplus.com/multiboot-2013/ 

We would like to include Android x86 as part of the free 2013 Goo++ YUMI-based USB multiboot collection of smaller, faster, and unique distros.

While PendriveLinux.com includes an option to install an "unlisted ISO", it usually does not work (we tried it with the Android x86 ISO).

If you would like to make it easier for more people to try Android x86, perhaps someone here can create the config files and file structure compatible with booting via YUMI USB.

YUMI uses SYSLINUX and GRUB.  The basic USB files and directory structure is:

+---multiboot
|   |   syslinux.cfg
|   |   vesamenu.c32
|   |   chain.c32
|   |   memdisk
|   |   grub.exe
|   |   
|   +---menu
|   |       porteus.cfg
|   |       xbmcbunt.cfg
|   |       pmint4.cfg
|   |       linux.cfg
|   |       sysrescu.cfg
|   |       slitaz.cfg
|   |       avg.cfg
|   |       ub1304.cfg
|   |       menu.lst
|   |       yumi.xpm.gz
|   |       knoppix.cfg
|   |       system.cfg
|   |       ubcd.lst
|   |       
|   +---ISOS
|   +---porteus
|   +--- (more distros)

Some typical (simplified) USB file/directory entries:

1.  U:/multiboot/syslinux.cfg

label SliTaz 4.0
menu label SliTaz 4.0
MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/slitaz.cfg
 
label Optional Linux and Utility CDs
menu label Optional Linux + Utility CDs ->
MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/linux.cfg

2.   U:/multiboot/slitaz/FILES+DIRECTORIES

+---slitaz
|   |   index.html
|   |   md5sum
|   |   README
|   |   style.css
|   |   
|   \---boot
|       |   bzImage
|       |   gpxe
|       |   rootfs1.gz
|       |   rootfs2.gz
|       |   rootfs3.gz
|       |   rootfs4.gz
|       |   vmlinuz-2.6.37-slitaz
|       |   
|       +---grub
|       |       splash.xpm.gz
|       |       
|       \---isolinux
|               boot.cat
|               common.cfg
|               de.cfg
|               de.kbd
|               default.cfg
|               display.txt
|               en.cfg
|               en.kbd
|               help.en
|               i18n.cfg
|               ifmem.c32
|               isolinux.bin
|               isolinux.cfg
|               md5sum.c32
|               noram.cfg
|               opts.en
|               poweroff.com
|               reboot.c32
|               splash.jpg
|               us.cfg
|               us.kbd
|               vesamenu.c32 
3.   U:/menu/slitaz,cfg

LABEL slitaz
MENU LABEL Run SliTaz 
KERNEL /multiboot/slitaz/boot/bzImage
append initrd=/multiboot/slitaz/boot/rootfs4.gz,/multiboot/slitaz/boot/rootfs3.gz,/multiboot/slitaz/boot/rootfs2.gz,/multiboot/slitaz/boot/rootfs1.gz rw root=/dev/null autologin

4.   U:/menu/linux.cfg

label Ubuntu 13.04
menu label Ubuntu 13.04
MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/ub1304.cfg
label Ultimate Boot CD 5.2.4
menu label Ultimate Boot CD 5.2.4
MENU INDENT 1
KERNEL /multiboot/grub.exe
APPEND --config-file=/multiboot/menu/ubcd.lst

Direct download via Google Drive - a 1.5GB (self-extracting) BASE-DOWNLOAD.exe setup file for testing is at the link below:





Chih-Wei Huang

unread,
Jun 20, 2013, 6:11:29 AM6/20/13
to Android-x86
Thank you for the info.
But I'm afraid I don't have time to understand it well.
If you can tell us which part needs to be modified
or provide a patch, that would be easier for us.

2013/6/19 Bob Carroll <gooplus...@gmail.com>:
> --
> You received this message because you are subscribed to the Google Groups
> "Android-x86" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to android-x86...@googlegroups.com.
> To post to this group, send email to andro...@googlegroups.com.
> Visit this group at http://groups.google.com/group/android-x86.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>



--
Chih-Wei
Android-x86 project
http://www.android-x86.org

lexblaze

unread,
Jun 20, 2013, 12:32:37 PM6/20/13
to andro...@googlegroups.com
This uses YUMI-based USB multiboot installer
Use notepad++ or any note pad editor
For the android iso just extract it using any zip/iso extractor and create a folder for every iso at multiboot folder.
By doing this you can create multiple android iso for test in a single usb

Example folder tree
+---multiboot
|   |   syslinux.cfg
|   |   vesamenu.c32
|   |   chain.c32
|   |   memdisk
|   |   grub.exe
|   +---hc32
|   +---ics404t
|   +---jb42
|   +---menu
|   |       hc32.cfg
|   |       ics404t.cfg
|   |       jb42.cfg

Try this:

Add one of this to syslinus.cfg

label Boot from first Hard Drive
menu label Continue to Boot from ^First HD (default)
KERNEL chain.c32
APPEND hd1
MENU DEFAULT

label Linux Distributions
menu label Linux Distributions ->

MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/linux.cfg

label Android Honeycomb 3.2 Netbook
menu label Android Honeycomb 3.2 Netbook ->

MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/hc32.cfg

label Android Jelly Bean 4.2.1 androidx86.org
menu label Android Jelly Bean 4.2.1 androidx86.org ->

MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/jb421.cfg

label Android ICS 4.04 Netbook Android-x86.sceners.org
menu label Android ICS 4.04 Netbook Android-x86.sceners.org ->

MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/ics404.cfg

label Android ICS 4.04 Netbook TabletsX86.org
menu label Android ICS 4.04 Netbook TabletsX86.org ->

MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/ics404t.cfg

label Android ICS 4.04 Generic TabletsX86.org
menu label Android ICS 4.04 Generic TabletsX86.org ->

MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/ics4gen.cfg

label Android ICS 4.04 Asus Laptop TabletsX86.org
menu label Android ICS 4.04 Asus Laptop TabletsX86.org ->

MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/ics4a.cfg

-----------------
Create jb42.cfg (I use notepad++ from portable apps) in menu folder

default vesamenu.c32
timeout 600

menu background android-x86.png
menu title Android-x86 Live & Installation CD 4.2-20121205
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffff00 #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ffffff00 #ff000000
menu color hotkey 7 #ffffff00 #00000000

label livem
    menu label Live CD - ^Run Android-x86 without installation
    kernel /multiboot/jb421/kernel
    append initrd=/multiboot/jb421/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode quiet SRC=/multiboot/jb421/ DATA=

label vesa
    menu label Live CD - ^VESA mode
    kernel /multiboot/jb421/kernel
    append initrd=/multiboot/jb421/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode quiet vga=791 SRC=/multiboot/jb421/ DATA=

label debug
    menu label Live CD - ^Debug mode
    kernel /multiboot/jb421/kernel
    append initrd=/multiboot/jb421/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode vga=788 DEBUG=1 SRC=/multiboot/jb421/ DATA=

label install
    menu label Installation - ^Install Android-x86 to harddisk
    kernel /multiboot/jb421/kernel
    append initrd=/multiboot/jb421/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode INSTALL=1 DEBUG=

---------------

Create hc32.cfg (I use notepad++ from portable apps) in menu folder

default vesamenu.c32
timeout 600

menu background android-x86.png
menu title Android-x86 Live & Installation CD 2011-11-13
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffff00 #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ffffff00 #ff000000
menu color hotkey 7 #ffffff00 #00000000

label livem
    menu label Live CD - ^Run Android-x86 without installation (MDPI)
    kernel /multiboot/hc32/kernel
    append initrd=/multiboot/hc32/initrd.img root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode nomodese UVESA_MODE=1280x800 quiet SRC=/multiboot/hc32/ DATA=

label vesa
    menu label Live CD - ^VESA mode
    kernel /multiboot/hc32/kernel
    append initrd=/multiboot/hc32/initrd.img root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode quiet vga=788 SRC=/multiboot/hc32/ DATA=

label debug
    menu label Live CD - ^Debug mode
    kernel /multiboot/hc32/kernel
    append initrd=/multiboot/hc32/initrd.img root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode vga=788 DEBUG=1 SRC=/multiboot/hc32/ DATA=

label install
    menu label Installation - ^Install Android-x86 to harddisk
    kernel /multiboot/hc32/kernel
    append initrd=/multiboot/hc32/initrd.img root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode INSTALL=1 DEBUG=

---------------

Create ics404t.cfg in menu folder

default vesamenu.c32
timeout 600

menu background android-x86.png
menu title Android-x86 Live & Installation CD 2012-09-03 TabletX86.or Ed.
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffff00 #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ffffff00 #ff000000
menu color hotkey 7 #ffffff00 #00000000

label livem
    menu label Live CD - ^Run Android-x86 without installation (MDPI)
    kernel /multiboot/ics4gen/kernel
    append initrd=/multiboot/ics4gen/initrd.img root=/dev/ram0 androidboot.hardware=gen_x86 acpi_sleep=s3_bios,s3_mode quiet SRC=/multiboot/ics4gen/ DATA=

label vesa
    menu label Live CD - ^VESA mode
    kernel /multiboot/ics4gen/kernel
    append initrd=/multiboot/ics4gen/initrd.img root=/dev/ram0 androidboot.hardware=gen_x86 acpi_sleep=s3_bios,s3_mode quiet vga=791 SRC=/multiboot/ics4gen/ DATA=

label debug
    menu label Live CD - ^Debug mode
    kernel /multiboot/ics4gen/kernel
    append initrd=/multiboot/ics4gen/initrd.img root=/dev/ram0 androidboot.hardware=gen_x86 acpi_sleep=s3_bios,s3_mode vga=788 DEBUG=1 SRC=/multiboot/ics4gen/ DATA=

label install
    menu label Installation - ^Install Android-x86 to harddisk
    kernel /multiboot/ics4gen/kernel
    append initrd=/multiboot/ics4gen/initrd.img root=/dev/ram0 androidboot.hardware=gen_x86 acpi_sleep=s3_bios,s3_mode INSTALL=1 DEBUG=


Bob Carroll

unread,
Jun 27, 2013, 10:03:12 PM6/27/13
to andro...@googlegroups.com
Thanks a lot, Lexblaze.

Booting and running Android X86 JB 4.2.2 seems to work well using YUMI using your general instructions. I did not test "install to HD" option.

In the YUMI /multiboot directory:

+---androidx86
|   |   TRANS.TBL
|   |   system.sfs
|   |   ramdisk.img
|   |   install.img
|   |   kernel
|   |   initrd.img
|   |   
|   \---isolinux
|           TRANS.TBL
|           android-x86.png
|           boot.cat
|           isolinux.bin
|           isolinux.cfg
|           vesamenu.c32

In the /multiboot/menu directory is android.cfg

default vesamenu.c32
timeout 600
menu background android-x86.png
menu title Android-x86 CD 4.2.2-20130228

menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffff00 #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ffffff00 #ff000000
menu color hotkey 7 #ffffff00 #00000000
 
label livem
    menu label Android x86 (JB 4.2.2) Live CD
    kernel /multiboot/androidx86/kernel
    append initrd=/multiboot/androidx86/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode quiet SRC=/multiboot/androidx86/ DATA=
 
label vesa
    menu label Android x86 Live CD - ^VESA mode
    kernel /multiboot/androidx86/kernel
    append initrd=/multiboot/androidx86/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode quiet vga=791 SRC=/multiboot/androidx86/ DATA=
 
label debug
    menu label Android x86 Live CD - ^Debug mode
    kernel /multiboot/androidx86/kernel
    append initrd=/multiboot/androidx86/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode vga=788 DEBUG=1 SRC=/multiboot/androidx86/ DATA=
 
label install
    menu label Installation - ^Install Android-x86 to harddisk
    kernel /multiboot/androidx86/kernel
    append initrd=/multiboot/androidx86/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode INSTALL=1 DEBUG=

I will be updating the 2013 Gooplusplus multiboot collection soon with added bittorrent distribution


lexblaze

unread,
Jun 28, 2013, 3:47:51 AM6/28/13
to andro...@googlegroups.com
 
I think INSTALL should be


label install
    menu label Installation - ^Install Android-x86 to harddisk
    kernel /multiboot/androidx86/kernel
    append initrd=/multiboot/androidx86/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 acpi_sleep=s3_bios,s3_mode SRC=/multiboot/androidx86/ INSTALL=1 DEBUG=

But better not to use this option since it will change the boot process in the Master Boot Record (mbr). I have a multiboot os system (Windows, Ubuntu, Androidx86),
I'm using Ubuntu 12.10.

Example
On the Android partition(ext3) [Ubuntu 12.10(ext4), Windows 7(ntfs)]
Crete a folder androidjb and copy the contents of the android iso

+androidjb
--initrd.img
--kernel
--ramdisk.img
--system.sfs

on this folder use gnome-commander root enabled and pull up terminal, use the command

unsquashfs system.sfs

If your ubuntu sys dont have squashfs-tools it will show you to "apt-get squshfs-tools"

It will extract the compressed system.sfs to a folder and you will get system.img

Use disk utility in to mount system.img thus you will get the contents of the system folder

Create a data and system folder on androidjb

+androidjb
--+data
--+system
--initrd.img
--kernel
--ramdisk.img
--system.sfs
--system.img

put the contents of the system.img to the system folder then unmount and delete system.sfs and system.img

Now you have the complete android files you just need to boot it.

+androidjb
--+data
--+system
--initrd.img
--kernel
--ramdisk.img

to boot it again use gnome-commander root enabled go to (linux partition)"etc folder then to the grub.d folder" to change  40_custom file to add using gedit
add this to 40_custom

Example

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Android x86 4.0.4"  --class android --class linux --class os {
set root='(hd1,2)'
linux /androidics/kernel quiet root=/dev/ram0 androidboot.hardware=gen_x86 video=-16 quiet vga=791 acpi_sleep=s3_bios,s3_mode SRC=/androidics
initrd /androidics/initrd.img
}

menuentry "Android x86 4.0.4 debug mode" --class android --class linux --class os {
set root="(hd1,2)"
linux /androidics/kernel root=/dev/ram0 androidboot.hardware=gen_x86 video=-16 quiet vga=791 acpi_sleep=s3_bios,s3 SRC=/androidics DEBUG=1
initrd /androidics/initrd.img
}

menuentry "Android x86 4.2"  --class android --class linux --class os {
set root='(hd1,2)'
linux /android021327/kernel root=/dev/ram0 androidboot.hardware=android_x86 video=-16 quiet vga=791 acpi_sleep=s3_bios,s3_mode SRC=/android021327
initrd /android021327/initrd.img
}

menuentry "Android x86 4.2 latest build"  --class android --class linux --class os {
set root='(hd1,2)'
linux /androidjb/kernel root=/dev/ram0 androidboot.hardware=android_x86 video=-16 quiet vga=866 acpi_sleep=s3_bios,s3_mode SRC=/androidjb
initrd /androidjb/initrd.img
}

menuentry "Android x86 4.2 vesa latest build"  --class android --class linux --class os {
set root='(hd1,2)'
linux /androidjb/kernel root=/dev/ram0 androidboot.hardware=android_x86 video=-16 quiet vga=791 acpi_sleep=s3_bios,s3_mode SRC=/androidjb
initrd /androidjb/initrd.img
}

menuentry "Android x86 4.2 latest build debug mode" --class android --class linux --class os {
set root="(hd1,2)"
linux /androidjb/kernel root=/dev/ram0 androidboot.hardware=android_x86 video=-16 quiet vga=791 acpi_sleep=s3_bios,s3 SRC=/androidjb DEBUG=1
initrd /androidjb/initrd.img
}

"set root=" is the location of your android partition

after saving it, and use (root)terminal to update-grub or sudo update-grub to add it to the ubuntu boot menu

Using this process you can have use multi android iso's in a single ext3 partition just like in yumi multiboot
Reply all
Reply to author
Forward
0 new messages