This guide will walk you through installing Linux on your Wii using the official ArchPOWER image
Requirements
- A Wii modified to run apps with BootMii
- A SD card (>=2 GB, SD or SDHC)
- USB storage device to hold the root partition(optional)
- We also assume you are comfortable with technical tasks like partitioning media and installing packages.
Running the Installer
- Download the installer,
run git clone https://github.com/Wii-Linux/pc-installer - Run the installer,
cd pc-installer; sudo ./installer.sh - Select what disk you would like to use by it's number listed in the brackets
- Pick whether or not you would like to store the root filesystem on a different device (for example, USB storage, You should follow the manual installation process then).
- If yes, you must have followed the partitioning steps from the manual installation section.
- If yes, you will be prompted to select your root device shortly.
- If you didn't chose yes above, you'll be asked if you want to do an Automatic or Manual install, It is recommended to use Automatic
- Automatic will partition and format your SD Card for you
- Manual will assume that you've partitioned your SD Card already, and will format the partitions you specify if you haven't already.
- After the card has been partitioned, the necessary files will be downloaded and installed for you.
- You will need to answer a few configuration questions.
- Success! Continue to boot your freshly prepared install!
Manual installation
- From the Wii Linux downloads page, download "Latest build's ArchPOWER rootfs (.tar.gz)" and "Latest build's ArchPOWER SD Card files".
- Partition the media. You will need a FAT32 partition on your SD card, and will need an ext4 partition on either the SD card or USB storage.
- The SD card files take up around 34 megabytes of space. To ensure plenty of space for updating, we recommend at least 256MB for the FAT partition.
- If you plan to use other Wii homebrew from your SD Card, you probably want to have more space, likely at least 1GB
- If you are using USB storage for the root, you don't need to partition the SD card.
- The SD card files take up around 34 megabytes of space. To ensure plenty of space for updating, we recommend at least 256MB for the FAT partition.
- Format the root partition as ext4.
sudo mkfs.ext4 -L 'arch' /dev/[root block device here]
- Extract the SD card files to the SD card's FAT32 partition.
sudo mount /dev/[SD card block device here] /mntcd /mnttar -xzvf [/path/to/boot_files.tgz]cd; sudo umount /mnt
- Extract the rootfs.
sudo mount /dev/[root block device here] /mntcd /mnttar -xvP --acls --xattrs --same-owner --same-permissions --numeric-owner --sparse -f [/path/to/rootfs.tar.gz]- You must use these flags to extract the rootfs properly
sync; cd; sudo umount /mnt
- Remove the SD card (and root device if you have a dedicated one) from the Linux machine.
Booting
- Insert your already formatted SD cards into the Wii
- Enter BootMii
- if you were able to install BootMii as boot2, your Wii will automatically go into it
- If you have PriiLoader installed, hold reset as you turn on your Wii and select “BootMii IOS” option
- alternatively you can open BootMii from the homebrew channel, press A button on a Wiimote or START on a gamecube controller then choose launch BootMii
- Wait for gumboot to load the kernel
- You can navigate the gumboot menu using the power and reset buttons on the Wii or the D-Pad on a gamecube controller, But that isn’t required for the first boot
- At the Wii Linux boot menu, Choose ArchPOWER or wait a few seconds
- Watch the systemd boot log and wait for the Log In prompt
Post boot
Enter the default root password on the login prompt, and will help you run Helpmiiand configmiiTo help setting up your system, Helpmii will show a guide on your Wii that will help you setup important stuff like networking and how to add swap space
Hardware support
What works and works well:
- Booting
- Booting properly to a getty or display-manager
- Booting from the MINI firmware replacement for the Starlet co-processor
- Hardware
- Using a portion of MEM2 to boost the total usable memory count from 24MB to ~78MB
- Internal Broadcom 4318 Wi-Fi
- Internal Broadcom 2045A Bluetooth using bluez
- USB ports, hubs, and devices
- SD Cards
- USB Gecko (serial console in GameCube memory card ports)
- Graphics output, in either 480i or 480p, using either the Linux VT, or anything that writes to
/dev/fb0(e.g. Xorg) - Swapping to SD Card or USB device
- App support
- Most applications that you would want to use — anything in ArchPOWER officially, including handpicked extras on the project repo.
What works if you ignore the obvious problems:
- Anything that uses Java (memory issues, and incredibly slow)
- The DVD driver (can see discs, can't do much with them)
- The SDGecko (SD over memory card) driver (can read and write cards, nearly unusably slow due to EXI limitations)
- gamecube_defconfig on GameCube (nearly unusably slow due to the requirement of SDGecko for storage and swap)
What doesn't work at all:
- Wayland support (requires a Direct Rendering Manager / "DRM" driver for the Wii's GPU)
- KGDB — Linux kernel debugger; works over USB Gecko
- Running under the vWii (
- Booting from HBC (Homebrew Channel) under IOS