Linux on Palm TX Binary Install How-To
Home | Status | Hardware | Downloads | How-To | Binary Install How-To | Bootloader
Disclaimer
This HOWTO courtesy of
mem0
you can find the last up to date version on his
website
General Notes
1. A lot of the TX's hardware is not yet supported. Drivers are currently being developed to for devices such as wifi and bluetooth. Linux does boot and function without these devices, however it can not yet be used to replace Palm OS on your device.
2. Data can be erased. Though I have not personally expierienced it, there is a possibility that the data on your handheld (apps,docs,etc.) can be erased. Make sure you back up your device before booting linux. The only person responsible if you lose data is you, neither myself nor any other developer claims any responsibility for possible data loss as a result of using any software on this site.
3. The files described in this tutorial are not available from this site. Links will be posted for all files needed in this tutorial.
Requirements For Running Linux On Your TX
1. A Palm TX Though the process may be almost identical on other palms, I am concentrating on the TX because i own one and can verify that the process described here will work
2. An SD card An SD card is required to hold a root filesystem for linux that contains (among other things) the modules, filesystem and UI for linux.
3. Some means of transfering files to the SD card
Card Export II by Softick (what I use) Or An SD reader/writer Or Anything else that will allow you to write to an SD card Basically you need to be able to put a root filesystem image in the root of the SD card (and maybe some config files).
Installation Files
1. Garux.prc Garux is the bootloader, kernel, and initrd all compiled into 1 palm executable.
Download it from:
-
linuxtogo project page (usually most up-to-date)
boot-bundle release (this includes bootloader,linux.boot.cfg,and a kernel image)
-
hack&dev's last
garux release
-
mem0's last
garux release
2. Root Filesystem Image The main filesystem for linux.
Download it from:
-
hack&dev's
sourceforge site
-
mem0's
website
3. (Optional) Swap File Basically an empty file to be used as a swap. I'm not currently using one, but here is a quick way to make one: (in linux of course)
# dd if=/dev/zero of=swap.fs bs=1k count=32k # mkswap swap.fs
ignore the following if you know what the command above does.
dd is the linux command to convert and copy a file if is the input file (file to copy from we use /dev/zero) /dev/zero is a psuedo file that produces binary 0(zeros) of is the output file (in our case a new file called swap.fs) bs is block size count is number of blocks so: the command is copying binary 0(zeros) to a file called swap.fs creating 32k 1k blocks. In other words a 32 meg empty file.
mkswap does what it says it makes a swap
4. Boot Configuration File Create a blank text file named: linux.boot.cfg
Windows Users Note: You need to use a text editor that can write Unix line endings (line feed character only) windows line endings (carriage return then line feed) gives the sh script that picks your root filesystem problems and will not work!!! (thanks Rick at HND forums)
Let's Get Started Already!
Ok, now open your linux.boot.cfg in your favorite text editor.
1. Editing Linux.boot.cfg
1.1a Opie users add the following line to linux.boot.cfg: ROOT_DEV=/mnt/mmc/opie-image-v0.8.3-palmtx-0.0.1-rootfs.ext2 (replace file name with your rootfs image name)
1.1b GPE users add the following line to linux.boot.cfg: ROOT_DEV=/mnt/mmc/gpe-image-v0.8.3-palmtx-0.0.1-rootfs.ext2 (replace file name with your rootfs image name)
1.1.c If you are using the swap.fs file add the following line to linux.boot.cfg: SWAP_DEV=/mnt/mmc/swap.fs
Save your linux.boot.cfg file, it's done.
2. Copying Files To The Palm
2.1. Copy using card export 2 2.1.1. Put SD card in palm
2.1.2. Connect your palm to computer using your hotsync cable
2.1.3. Start Card Export II
2.1.4. Tap "Connect To Desktop"
2.1.5a Linux Users
2.1.5a.1 Create a directory to mount the card. # mkdir /mnt/sdcard
2.1.5a.2 Mount the card (the actual device may differ mine shows up as sda, a scsi device) # mount /dev/sda1 /mnt/sdcard
Note: you need fat filesystem support for this to work.
2.1.5a.3 Extract and copy the root filesystem of your choice to the root of the card # gunzip opie-image-v0.8.3-palmtx-0.0.1-rootfs.ext2.gz # cp opie-image-v0.8.3-palmtx-0.0.1-rootfs.ext2 /mnt/sdcard OR #gunzip gpe-image-v0.8.3-palmtx-0.0.1-rootfs.ext2.gz # cp gpe-image-v0.8.3-palmtx-0.0.1-rootfs.ext2 /mnt/sdcard
2.1.5a.4 Copy the linux.boot.cfg file to the root of the card cp linux.boot.cfg /mnt/sdcard
2.1.5a.5 Extract garux and copy to card # tar zxvf garux-tx-20060505.tar.gz garux.prc #cp garux.prc /mnt/sdcard/Palm/Launcher
--(optional) Copy the swap.fs file if you made the swap.fs file, and added it to the config copy it to the root of the card too. # cp ~/swap.fs /mnt/sdcard
2.1.5a.6 Unmount the card # cd / # umount /mnt/sdcard
2.1.5.a.7 Tap "Disconnect" in Card Export once the unmount command has completed. DO NOT Disconnect until the card is done unmounting. It takes a minute or two sometimes, so just let it finish.
2.1.5b Windows XP Users
Note: You ned an unzipping program that supports bzip and tar. If you dont have zip a tool that supports bzip and tar get Zip Genius it's Free
2.1.5b.1 An explorer window should open automatically and display the card's contents, if it doesn't go to My Computer and find it.
2.1.5b.2 Copy the root filesystem file to the root of the card opie-image-v0.8.3-palmtx-0.0.1-rootfs.ext2 OR gpe-image-v0.8.3-palmtx-0.0.1-rootfs.ext2
2.1.5b.2 Copy the linux.boot.cfg file to the root of the card linux.boot.cfg
2.1.5b.3 Extract and copy garux.prc to Palm\Launcher in the card.
2.1.5b.4 Tap the "Disconnect" button in Card Explorer
Booting Linux
Back up your palm
Just do it, i don't want to hear complaints if you mess up your data.
Tap the garux icon (make sure the SD card is plugged in)
Garux will prompt to ask you if you did a back up
If you backed up click "I did a backup"
You will see the garux screen with the boot parameters.
Don't change the parameters, they are correct. Just click "Start Linux"
Note: Some attempts to boot cause the device to reset. If this happens try launching garux again before giving up.
Have fun using linux on your palm!