WiiToo!

Gentoo Linux ~ppc Stage4 precompilado para tu Wii.

Tabla de contenidos

1. Introducción
2. Características
3. Requisitos
4. Descarga
5. Instalación desde un sistema Linux
6. Instalación desde un sistema Windows
7. Pasos finales
8. Arrancando
9. Configurando tu sistema
10. Enlaces y agradecimientos
11. Dona
12. Paquetes incluidos
13. Sobre screen
14. Sobre irssi
15. Sobre rtorrent
16. Sobre sshfs
17. Sobre alsa
18. Sobre bluetooth

1. Introducción

WiiToo es un stage4 minimo y precompilado con el objetivo de hacer funcionar Gentoo ~ppc en tu Wii usando MIKE y mini. Proporciona todo el software básico requerido para compilar e instalar nuevos programas en él, y otro software listo para ser usado. El kernel utilizado es vanilla-sources con los parches de wii-linux, tu wifi funcionará sin muchos ajustes ;).

2. Características

3. Requisitos

Para utilizar WiiToo! necesias:

4. Descarga

Obteniendo el stage4

Un stage4 es simplemente un archivo tar comprimido que contiene todos los archivos necesarios que necesitas. Puedes obtener este archivo en nuestra página de descargas.

5. Instalación desde un sistema Linux

Particionando tu tarjeta SD

El esquema recomendado de particionado es el de whiite-linux, en caso de que quieras usar otro tendrás que editar /etc/fstab y los parámetros de arranque del kernel con un editor hexadecimal.

Antes de empezar haz una copia de todos tus datos en la tarjeta SD, o los perderás!

Ahora pon tu tarjeta SD en el lector, encuentra el dispositivo en /dev, el mio es /dev/mmcblk0, (Truco: puedes mirar la salida del comando dmesg si estas usando linux) y desmonta cualquier partición que pueda estar montada (comprueba con df). Ahora puedes usar fdisk para crear una partición fat16 primaria (Esta será nuestra partición de arranque), 30M deberían ser suficientes para las imagenes del kernel de WiiToo! y bootmii, pero si vas a utilizar otras aplicaciones, o guardar otros datos, hazla mayor. Finalmente crea la partición para el sistema de ficheros raiz (Mentras mas grande mejor :D), sal de fdisk, y desconecta la tarjeta SD.

Convirtiendote en super usuario

$ su

una alternativa es usar sudo, tendrás que poner sudo al inicio de todos los comandos que empiecen con #, los comandos que empiecen con $ pueden ser ejecutados como tu usuario normal.

Creando los sistemas de ficheros

# /sbin/mkfs.vfat -n boot /dev/mmcblk0p1
# /sbin/mkfs.ext3 -L whiite /dev/mmcblk0p2

Crendo los puntos de montaje y montando los sistemas de archivos

# mkdir /mnt/wiiroot /mnt/wiiboot
# mount /dev/mmcblk0p1 /mnt/wiiboot
# mount /dev/mmcblk0p2 /mnt/wiiroot

Instalando WiiToo! en la tarjeta SD

para descomprimir necesitarás las xz-utils:

$ xz -d /path/to/wiitoo.tar.xz
# tar xpf /path/to/wiitoo.tar -C /mnt/wiiroot/

6. Instalación desde un sistema Windows

Tal vez puedes probar con cygwin, o mejor si usas un livecd de GNU/Linux como sysrescuecd.

7. Pasos finales

Vamos a configurar algunas opciones de openrc y la red.

Configurando openrc

Openrc es el sistema de inicio usado en Gentoo, vamos a configurar la hora y otras opciones.

Configurando el reloj

Para configurar la hora tienes que copiar el archivo correspondiente a tu zona horaria, por ejemplo:

cp /mnt/wiiroot/usr/share/zoneinfo/America/New_York /etc/localtime

Puedes ver todas las zonas horarios disponibles explorando /mnt/wiiroot/usr/share/zoneinfo.

Configurando la red

WiiToo! incluye todo el software necesario para hacer funcionar tu conexión wifi desde el primer arranque sin necesidad de instalar mas software, incluye el firmware necesario para hacer funcionar la tarjeta wifi interna, pero tendrás que configurar wpa_supplicant para que se ajuste a las necesidades de tu red.

Para configurar wpa_supplicant debes editar /etc/wpa_supplicant.conf, puedes encontrar un monton de documentación sobre como hacerlo en google, en cualquier caso aqui tienes un ejemplo:

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel

eapol_version=1
ap_scan=1
fast_reauth=1
country=ES
network={
   ssid="ExampleSSID"
   key_mgmt=WPA-PSK
   psk="YouWillNeverKnowTheSecretThatIdontShow"
}

Ahora configura /etc/conf.d/net para usar dhcp:

config_wlan0=( "dhcp" )

o una ip estática:

config_wlan0="192.168.1.37 netmask 255.255.255.0 brd 192.168.1.255"
routes_wlan0="default via 192.168.1.100"
   

Hostname

El hostname por defecto del sistema es "Wii", puedes cambiarlo haciendo:

# nano -w /etc/conf.d/hostname

procura poner un nombre original como "Hermenegildo" :D.

keymaps

Gentoo utiliza /etc/conf.d/keymaps para manejar la configuración del teclado. Editalo para configurarlo.

# nano -w /etc/conf.d/keymaps

8. Arrancando

Instala bootmi beta3 o superior

Bootmi será usado como el "bootloader" asi que necesitas instalarlo en tu Wii. Hay información suficiente en la página hackmii para completar esta tarea por tu cuenta.

Edita los parametros del kernel

Debes elegir los parametros del kernel de acuerdo a tu televisión (PAL/NTSC/480/576).

Para ello debes abrir el archivo 2.6.*-zImage.elf que se encuentra en /boot/ y editar los parámetros del kernel, puedes buscar la cadena "lovers" y luego algo como "video:gcnfb...", para ver que es lo que tienes que poner busca en esta misma página "framebuffer". Una vez este todo hecho copia el kernel a la partición fat de tu tarjeta SD y arrancalo con bootmii, te saldrá algo como esto:

Shows a system booting

Entrando en el sistema

Puedes hacer login en tu sistema con ssh:

ssh -l wii dirección.ip.de.wii

o simplemente utiliza un teclado usb.

El usuario por defecto del sistema es wii con contraseña wii, el super usuario es root y la contraseña es root, muy dificil ;). Cambia tus contraseñas despues de entrar en el sistema por primera vez, lee la siguiente sección.

9. Configurando tu sistema

Después de arrancar tu sistema, puedes configurar algunas cosas:

Cambiando la contraseña de root

DEBES cambiar la contraseña de root si quieres un sistema seguro, para cambiarla haz:

# passwd root

y sigue las instrucciones.

Cambiar la contraseña del usuario wii o añadir otro usuario

Ejecuta:

$ passwd wii

Si prefieres añadir un nuevo usuario ejecuta:

# userdel wii

para borrar el usario por defecto, y luego ejecuta:

# useradd -m -G users,wheel,audio -s /bin/bash john
# passwd john

para añadir un usuario llamado john.

glibc locales

Con esta opción puedes controlar el idioma de tu sistema, no la toques sino sabes lo que haces. Para editar las locales ejecuta:

# nano -w /etc/locale.gen

y cuando este hecho ejecuta:

# locale-gen

Recuerda que debes actualizar las variables de entorno, puedes ver la guia de localización de Gentoo para ver mas información acerca del tema.

10. Enlaces y agradecimientos

Agradecimientos

Gracias a toda la gente que ha contribuido en el proyecto, gracias al equipo ppc de Gentoo, a Team Twiizers y a isobel sin ellos nada sería posible.

Gracias a Berta por arreglar algunas faltas.

WiiToo! es empaquetado por VQuickSilver.

Aquí puedes encontrar algunos enlaces interesantes:

Gentoo Linux Distribution

Team Twiizers

openfwwf

bootmii

About Wii wifi

About the framebuffer

About the kernel

Si te gusta WiiToo! o si te resulta util, o quieres que haga algo especial, puedes donar dinero con este botón:

Support This Project

Tengo que pagar mis facturas, comer, y esas cosas :P.

12. Paquetes incluidos

Timestamp of tree: Fri, 10 Dec 2010 10:30:01 +0000

app-admin/eselect-1.2.13
app-admin/eselect-python-20100321
app-admin/gam-server-0.1.10
app-admin/gamin-0.1.10
app-admin/localepurge-0.5.3.3
app-admin/perl-cleaner-2.8
app-admin/python-updater-0.8
app-arch/bzip2-1.0.6-r1
app-arch/cpio-2.11
app-arch/gzip-1.4
app-arch/tar-1.25
app-arch/unzip-6.0-r1
app-arch/xz-utils-5.0.0
app-editors/nano-2.2.5
app-misc/ca-certificates-20090709
app-misc/mime-types-8
app-misc/pax-utils-0.2.2
app-misc/realpath-1.15-r3
app-misc/screen-4.0.3-r4
app-portage/gentoolkit-0.3.0_rc11-r3
app-portage/portage-utils-0.4
app-shells/bash-4.1_p9
app-text/build-docbook-catalog-1.5
app-text/docbook-xml-dtd-4.3-r1
app-text/docbook-xsl-stylesheets-1.76.0
app-text/sgml-common-0.6.3-r5
dev-lang/perl-5.12.2-r4
dev-lang/python-2.7.1
dev-lang/python-3.1.3
dev-libs/expat-2.0.1-r3
dev-libs/glib-2.26.1
dev-libs/gmp-5.0.1
dev-libs/libevent-1.4.14b-r1
dev-libs/libffi-3.0.9
dev-libs/libgamin-0.1.10-r2
dev-libs/libgcrypt-1.4.6
dev-libs/libgpg-error-1.7
dev-libs/libnl-1.1-r2
dev-libs/libpcre-8.02
dev-libs/libsigc++-2.2.7
dev-libs/libxml2-2.7.7
dev-libs/libxslt-1.1.26
dev-libs/mpc-0.8.2
dev-libs/mpfr-3.0.0_p3
dev-libs/openssl-1.0.0c
dev-libs/popt-1.16
dev-perl/Authen-SASL-2.15
dev-perl/Digest-HMAC-1.02
dev-perl/Digest-SHA1-2.13
dev-perl/Error-0.17.016
dev-perl/IO-Socket-SSL-1.35
dev-perl/Locale-gettext-1.05-r1
dev-perl/Net-SMTP-SSL-1.01
dev-perl/Net-SSLeay-1.36
dev-perl/YAML-Tiny-1.44
dev-python/argparse-1.1
dev-python/setuptools-0.6.14
dev-util/dialog-1.1.20100428
dev-util/gtk-doc-am-1.15
dev-util/pkgconfig-0.25-r2
dev-vcs/git-1.7.3.3
media-libs/alsa-lib-1.0.23
media-sound/alsa-headers-1.0.23
media-sound/alsa-utils-1.0.23-r1
net-irc/irssi-0.8.15
net-libs/libtorrent-0.12.6
net-misc/curl-7.21.2
net-misc/iputils-20100418-r1
net-misc/openssh-5.6_p1-r2
net-misc/rsync-3.0.7
net-misc/tor-0.2.1.27
net-misc/wget-1.12-r3
net-p2p/rtorrent-0.8.6-r1
net-proxy/privoxy-3.0.17
net-proxy/tsocks-1.8_beta5-r5
net-wireless/wireless-tools-29
net-wireless/wpa_supplicant-0.7.3-r1
perl-core/Archive-Tar-1.72
perl-core/Compress-Raw-Bzip2-2.030
perl-core/Compress-Raw-Zlib-2.030
perl-core/Digest-MD5-2.51
perl-core/ExtUtils-CBuilder-0.27.03
perl-core/ExtUtils-ParseXS-2.22.06
perl-core/IO-Compress-2.030
perl-core/Module-Build-0.36.07
perl-core/Scalar-List-Utils-1.23
perl-core/Test-Harness-3.22
sys-apps/acl-2.2.49
sys-apps/attr-2.4.44
sys-apps/baselayout-2.0.1-r1
sys-apps/busybox-1.17.4
sys-apps/coreutils-8.7
sys-apps/debianutils-3.4.2
sys-apps/diffutils-3.0
sys-apps/file-5.04
sys-apps/findutils-4.5.9
sys-apps/gawk-3.1.8
sys-apps/grep-2.7
sys-apps/groff-1.20.1-r3
sys-apps/help2man-1.38.2
sys-apps/kbd-1.15.2-r1
sys-apps/less-436
sys-apps/man-1.6f-r5
sys-apps/man-pages-3.32
sys-apps/man-pages-posix-2003a
sys-apps/module-init-tools-3.12-r1
sys-apps/net-tools-1.60_p20100815160931
sys-apps/openrc-0.6.8
sys-apps/portage-2.1.9.25
sys-apps/sandbox-2.4
sys-apps/sed-4.2.1-r1
sys-apps/shadow-4.1.4.2-r6
sys-apps/sysvinit-2.88-r1
sys-apps/tcp-wrappers-7.6-r8
sys-apps/texinfo-4.13
sys-apps/util-linux-2.18-r1
sys-apps/which-2.20
sys-auth/pambase-20101024
sys-devel/autoconf-2.68
sys-devel/autoconf-wrapper-10-r1
sys-devel/automake-1.11.1
sys-devel/automake-wrapper-5
sys-devel/binutils-2.21
sys-devel/binutils-config-2-r1
sys-devel/bison-2.4.3
sys-devel/flex-2.5.35_p10
sys-devel/gcc-4.5.1-r1
sys-devel/gcc-config-1.4.1
sys-devel/gdb-7.2
sys-devel/gettext-0.18.1.1-r1
sys-devel/gnuconfig-20100924
sys-devel/libperl-5.10.1
sys-devel/libtool-2.4-r1
sys-devel/m4-1.4.15
sys-devel/make-3.82
sys-devel/patch-2.6.1
sys-fs/e2fsprogs-1.41.12-r1
sys-fs/fuse-2.8.5
sys-fs/hfsplusutils-1.0.4-r1
sys-fs/hfsutils-3.2.6-r5
sys-fs/ntfs3g-2010.10.2
sys-fs/squashfs-tools-4.1
sys-fs/sshfs-fuse-2.2
sys-fs/sysfsutils-2.1.0
sys-fs/udev-164
sys-kernel/linux-headers-2.6.36.1
sys-libs/cracklib-2.8.18
sys-libs/db-4.8.30
sys-libs/e2fsprogs-libs-1.41.12
sys-libs/gdbm-1.8.3-r4
sys-libs/glibc-2.12.1-r3
sys-libs/gpm-1.20.6
sys-libs/ncurses-5.7-r6
sys-libs/pam-1.1.3
sys-libs/readline-6.1_p2
sys-libs/timezone-data-2010o
sys-libs/zlib-1.2.5-r2
sys-process/procps-3.2.8-r2
sys-process/psmisc-22.13
virtual/acl-0
virtual/editor-0
virtual/init-0
virtual/libffi-0
virtual/libiconv-0
virtual/libintl-0
virtual/pager-0
virtual/perl-Archive-Tar-1.72
virtual/perl-Compress-Raw-Bzip2-2.030
virtual/perl-Compress-Raw-Zlib-2.030
virtual/perl-Digest-MD5-2.51
virtual/perl-ExtUtils-CBuilder-0.27.03
virtual/perl-ExtUtils-ParseXS-2.22.06
virtual/perl-IO-Compress-2.030
virtual/perl-IO-Zlib-1.10
virtual/perl-Module-Build-0.36.07
virtual/perl-Package-Constants-0.02
virtual/perl-Scalar-List-Utils-1.23
virtual/perl-Test-Harness-3.22
virtual/perl-digest-base-1.16
virtual/perl-libnet-1.22
www-client/lynx-2.8.8_pre5

13. Sobre screen

Screen esta preconfigurado para funcionar correctamente, si no te gusta la configuración por defecto, borrala

 $ rm ~/.screenrc

Puedes encontar un montón de información de screen en google.

14. Sobre irssi

irssi esta preconfigurado, siguiendo esta guia.

15. Sobre rtorrent

rtorrent es un cliente de bittorrent que utiliza ncurses.

para arrancar rtorrent ejecuta como usuario normal:

$ rtorrent

para descargar un torrent simplemente pon el archivo torrent en ~/rtorrent/watch/ y empezará a descargarlo automaticamente. Puedes ver mas información acerca de rtorrent en google y en su página.

16. Sobre sshfs

Se incluye sshfs, si tienes sshd funcionando en tu ordenador, puedes utilizarlo para acceder al contenido del disco duro desde tu wii. Recuerda cargar el module fuse.

17. Sobre alsa

Alsa se incluye desde la versión del 28-oct-2009, el sonido debería funcionar sin requerir cambios por parte del usuario. Para probarlo puedes ejecutar:

$ speaker-test -c 2 -twav

Si no lo necesitas, bloquea el initscript y la carga de los modulos, te ayudará a guardar memoria.

18. Sobre bluetooth

Las Bluez utils se incluyen desde la version del 28-oct-2009, estan deshabilitadas en el arranque por defecto, ya que debes de configurarlas antes siguiendo la guia de Gentoo que puede ser encontrada aquí. Cuano acabes puedes arrancar el bluetooth ejecutando:

# /etc/init.d/bluetooth start

NOTA: en la version del 19-Dec-2010 no se incluye bluez, lo tendrás que instalar tu mismo.