XDSL HOWTO
From Xbox-Linux
| Table of contents |
Introduction
XDSL is a xbox-linux distribution based on Damn Small Linux (http://damnsmalllinux.org). It weighs in at less than 50MBs with a nearly complete desktop, and many command line tools. The small size of bundled programs make it very suited to the Xbox's limited 64 mb memory. It can be run as a livecd or installed to your Xbox hard drive.
Preparing the Xbox
A standard Xbox will only run code authorized by Microsoft, i.e. all executables must be signed with Microsoft's private key. To run X-DSL it is necessay to "mod" your Xbox to circumvent this restriction. There are two types of modification available.
- Hardware modification - You can flash Cromwell, a free and legal BIOS replacement, to your Xbox's TSOP or to a modchip. Cromwell is capable of loading Linux from the Xbox's Hard Disk or from the DVD drive. More infomation is available in the Hardware Method HOWTO.
- Software modification - By exploiting bugs in the Xbox dashboard and/or the save routines in some Xbox games it is possible to run Linux without making any hardware alterations. Any software modification which allows the running of unsigned Xbox executables should let you run X-DSL. X-DSL is not compatible with the Mechinstaller save game package since it's bootloader has not been signed with the Mechinstaller private key.
Download
XDSL is available to download from the xbox-linux sourceforge page (http://sourceforge.net/project/showfiles.php?group_id=54192&package_id=151661)
Burning the CD
Write the image to reliable recordable media which you know works in your Xbox DVD-ROM drive without any problems. Failure to do this will result in weird I/O errors and flaky installation problems, or you may not be able to boot XDSL livecd at all. See the boot CD HOWTO for details.
| Missing image Icon-admonition-note.png Note | you are not supposed to burn an .iso image as a single file on the CD. Instead, there should be a separate option in your CD authoring application that is specifically designed for burning CD images and not regular files. Use it. When burning is done, you should see several files on the disc - not just a single file. |
|---|
Usage
Pop the XDSL CD you've just made into your Xbox and allow it to boot. You should be presented a choice of video modes (640x480, 800x600, 480p, 720p). 480p and 720p require your Xbox to be connected with component cables to a HDTV. Once you have choosen a video mode XDSL will boot and you'll automatically be logged into X as the user 'dsl'.
You can interact with XDSL by using a Xbox controller to move the mouse pointer. To launch programs right click on the desktop (B on the controller) to bring up the fluxbox menu. If you need to enter any text a virtual keyboard is available from the fluxbox menu under Apps. Alternatively you can use a USB Keyboard/Mouse with a USB adapter.
The default passwords in XDSL are as follows:
user:dsl password:dsl
user:root password:xbox
Installation
If you are happy running XDSL from a livecd you can skip this section. However if you want XDSL to run from your hard drive you have three options:
- Frugal install - The XDSL compressed filesystem is copied to E:\KNOPPIX\KNOPPIX. This takes up the least diskspace (50Mbs). Since the filesystem is heavily compressed it is mounted read-only so this is just like running the livecd, except all the files reside on your hard disk
- Loopback install - The XDSL filesystem is installed onto a loopback file (either E:\xdslfs or F:\xdslfs). This requires a loopback file of at least 200MBs (you can choose a size upto 2GBs).
- Native install - XDSL will be installed onto a linux partion in the extra space on the Xbox HDD for those with hard disks bigger that 8GBs. This will keep the standard Xbox partitions (C,E,X,Y,Z) intact but will wipe all data on the F partition if it exists.
To perform one of these installations open the fluxbox menu and select the appropriate option under Apps, Tools. You will then be guided through the install process.
myDSL extensions
If you are running from the livecd or a frugal install you can load addition programs using myDSL extensions. XDSL should be fully compatible with extensions made for Damn Small Linux. Extensions are available from http://distro.ibiblio.org/pub/linux/distributions/damnsmall/mydsl/ or via the myDSL icon on the desktop. They should be copied to E:\ to load them when XDSL boots or E:\optional\ to give you the option of loading them via the fluxbox menu. Since each extension is loaded into the ramdisk it is recommend that you use E:\optional\ if possible to save on memory usage.
Backing up your settings
When using the frugal install/booting from a livecd it is not possible to write any changes to the XDSL filesystem. To get around this your settings can be saved in a seperate file called backup.tar.gz. Go to System, Backup/Restore in the desktop menu, type in hda50 and hit backup if you wish to make this file on your E drive. Once made your settings will be automatically saved on shutdown and restored on boot. To change what files are saved edit /home/dsl/.filetool.lst (was /home/dsl/.filetool.lst prior to X-DSL v0.3). None of this is necessary with Native/Loopback install methods since the root filesystem can be written to.
Enabling apt
If you are running from a loopback or native install you'll probably want to re-enable the debian package utility apt to allow you to install a huge range of programs from the debian repository. It is also recommended you restore the GNU Core Utilities. Both of these tasks can be done from the Desktop menu.
Once this is complete you can then install programs via the command apt-get install myprogram. You may wish to edit your /etc/apt/sources.list beforehand to point it to the debian testing repositary (comment out the existing lines with # and uncomment the testing lines). apt-get update updates the list of available programs and apt-cache search myprogram searches for a 'myprogram' in the debian repository. For more infomation on apt take a look at the apt howto (http://www.debian.org/doc/manuals/apt-howto/)
FTP Install
If you don't wish burn XDSL onto a cd and have the ability to ftp to you Xbox, it is possible to simply copy across the required files. Create a directory E:\KNOPPIX on your Xbox. Extract linux24, minirt24.gz and the KNOPPIX file (found in the KNOPPIX subdirectory) from the iso and copy them into this directory. You should be left with the following files:
E:\KNOPPIX\KNOPPIX E:\KNOPPIX\linux24 E:\KNOPPIX\minirt24.gz
| Missing image Icon-admonition-warning.png Caution | There should be no subdirectories in E:\KNOPPIX. The filenames are case sensitive. |
|---|
Now create a file E:\linuxboot.cfg with the following content:
title XDSL kernel KNOPPIX/linux24 initrd KNOPPIX/minirt24.gz append root=/dev/ram0 init=/etc/init rw video=xbox:640x480 frugal quiet kbd-reset
Finally if you are not using the Cromwell BIOS copy default.xbe somewhere where you can run it from your Xbox. Then run Cromwell/default.xbe to boot XDSL. If you then want to peform a loopback/native install simply select your desired option in the Apps, Tools menu.
Links
http://x-dsl.org - XDSL homepage

