So I've managed to get Archlinux running in a chroot environment on my A200.
THIS IS ONLY FOR ROOTED DEVICES - MUST HAVE BUSYBOX AND SUPERUSER
credits: crimsonredmk @ archlinuxarm.org forum,
JoshAshby » Arch-droid, and some miscellaneous others...
The following gets you command line only Arch Linux installation only.
There are several errors that come up and I would apreciate any help with them. (from the scripts)
I'll edit this later with getting LXDE running via vnc.
The following works on the Acer Iconia A200:
1) download and start a SSH server app (I use SSHdroid)
2) get SSH client for your PC
3) connect to tablet using SSH client
or open terminal emulator
$this->bbcode_second_pass_code('', '
#these commands get typed in to create your arch install - run first time only
su
cd /sdcard
dd if=/dev/zero of=archarm.img seek=1750000000 bs=1 count=1 #create empty 1.6gb image file
mke2fs -F archarm.img
mknod /dev/loop256 b 7 256
losetup /dev/loop256 archarm.img
mount -t ext2 /dev/loop256 arch/
cd arch
wget http://archlinuxarm.org/os/ArchLinuxARM-trimslice-latest.tar.gz #this is for our A200, it is Tegra2 Arm7
tar xzf ArchLinuxARM*.tar.gz
rm ArchLinuxARM*.tar.gz
mount -o bind /dev/ /sdcard/arch/dev
mkdir media/sdcard #for mounting sdcard
mkdir media/external_sd #for mounting external_sd
mount -o /sdcard/ /sdcard/arch/media/sdcard #mount the sdcard
mount -o /mnt/external_sd/ /sdcard/arch/media/external_sd #mount the internal storage
chroot . /bin/bash #enter the chroot, your now in the Arch install.
#next we need to set some stuff up to make sure everything works well:
echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "export TERM=xterm" >> /etc/profile
echo "export HOME=/root" >> /etc/profile
mount -t proc proc /proc
mount -t sysfs sysfs /sys
source /etc/profile
mount /dev/pts
pacman -Syu
')
Before you leave the chroot for the first time, create this file called "start" in "/" of the chroot:
$this->bbcode_second_pass_code('', '
#http://joshashby.com/2011/08/arch-droid/
#quick hack to start up everything for the chrooted Arch
if [ "mount | grep proc" ]; then
echo "Proc already mounted, skipping..."
else
mount -t proc proc /proc
fi
if [ "mount | grep sysfs" ]; then
echo "Sysfs already mounted, skipping..."
else
mount -t sysfs sysfs /sys
fi
if [ "mount | grep devpts" ]; then
echo "Sysfs already mounted, skipping..."
else
mount /dev/pts
fi
')
Then
$this->bbcode_second_pass_code('', '
chmod 755 start
')
When you are done, type exit to exit the chroot.
(Unfortunately this leaves the processes open, I'm not really sure how to stop them.)
Next is a script called "startarch" you can create in /sdcard to start the chroot next time.
$this->bbcode_second_pass_code('', '
#http://joshashby.com/2011/08/arch-droid/
#quick hack to mount and start the chroot...
if [ "mount | grep arch" ]; then
cd /sdcard/arch/
chroot . /bin/bash
else
mknod /dev/loop256 b 7 256
losetup /dev/loop256 /sdcard/archarm.img
mount -t ext2 /dev/block/loop256 /sdcard/arch/
cd /sdcard/arch/
mount -o bind /dev/ /sdcard/arch/dev
chroot . /bin/bash
fi
')
Then
$this->bbcode_second_pass_code('', '
chmod 755 startarch
')
So here is the final result:
Connect to the tablet with SSH (or terminal emulator)
$this->bbcode_second_pass_code('', '
su #at command prompt
cd /sdcard
sh startarch #enters arch chroot
source /etc/profile
./start
')
I have been rebooting the tablet after exiting to clear things up...
Any and all suggestions are welcome!