El siguiente post
continúa la entrada que publiqué sobre
cómo instalar una distribución de Ubuntu Linux en un MacBook Pro.
La información que publico no es más que una recopilación (traducida y personalizada) del material que aparece disponible en la
documentación oficial de
Ubuntu referente a la instalación de Ubuntu en un
MacBook.
En concreto, en el siguiente tutorial explico los pasos que he seguido tras la instalación de una distribución
Ubuntu 9.04 Jaunty Jackalope en mi
MacBook Pro 5,5, para activar todas las características y funciones que hacen que el sistema funcione y se integre decentemente con el equipo.
En primer lugar es necesario saber el
modelo exacto de MacBook Pro que tenemos. Para ello, abrimos una terminal y escribimos:
sudo dmidecode -s system-product-name
En mi caso me dice que tengo el
modelo 5,5. Así que a partir de aquí
la información que publico es válida únicamente si tienes este mismo modelo o el
5,4 (que es prácticamente equivalente). Si tienes un modelo distinto de
MacBook o quieres instalar una versión de
Ubuntu diferente a la
9.04 te recomiendo que visites la
documentación oficial y busques la información relativa a tu sistema.
Manos a la obra.
En teoría las siguientes funciones deben funcionar sin problemas tras la instalación:
- Suspender e hibernar
- Lectura y escritura de CD/DVD
- Bluetooth
- Wireless (Airport)
- iSight
Sin embargo vamos a tener que pelear un poco para conseguir que el
sonido, el
touchpad, la
aceleración 3D y el
teclado funcionen "casi" tan bien como en
Leopard.
La función Reiniciar no funciona con el kernel actual en el MacBook Pro. Si le damos a reiniciar el sistema llega hasta una pantalla negra que dice "Restarting system" y ahí se queda indefinidamente, por lo que toca apagar el sistema a mano. Es por eso que es recomendable darle a apagar en lugar de a reiniciar el sistema cuando trabajemos con Ubuntu. Se espera que este punto negro sea subsanado en las próximas versiones del kernel.
1. Repositorios, módulos y paquetes necesarios
Lo primero que hacemos es añadir a nuestro
sources.list los repositorios de Mac Intel para Jaunty. Para ello abrimos una terminal y escribimos:
sudo gedit /etc/apt/sources.list
En el documento que se nos abre copiamos al final las siguientes líneas:
deb http://ppa.launchpad.net/mactel-support/ubuntu jaunty main
deb-src http://ppa.launchpad.net/mactel-support/ubuntu jaunty mainGuardamos los cambios, cerramos y abrimos de nuevo una terminal para actualizar los repositorios:
sudo apt-get update
Una vez hecho esto, y de nuevo desde una terminal ejecutamos las siguiente órdenes:
sudo apt-get install nvidia-bl-dkms applesmc-dkms hal-applesmc bcm5974-dkms pommed
Con ello instalaremos todos los paquetes que necesitamos.
Nota: en el caso de que tu modelo de MacBook sea el 5,4 en lugar de el 5,5 tendrás que cambiar en la línea de comandos de arriba el paquete nvidia-bl-dkms por el paquete mbp-nvidia-bl-dkms. Es lo único diferente que en principio hay que hacer. El resto del tutorial es completamente equivalente.
Una vez completada la instalación de los paquetes, abrimos una nueva terminal y escribimos:
gksudo gedit /etc/modules
Y añadimos al final del documento que se abre las siguientes líneas:
nvidia_bl shift=2
coretemp
applesmc
bcm5974
usbhid
Guardamos y cerramos.
2. Haciendo que el sonido funcione
Para que funcione el sonido hay que hacer paso a paso lo siguiente.
Abrimos una terminal y escribimos:
wget ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/snapshot/alsa-driver-snapshot.tar.gz
Con eso descargamos el paquete
alsa-driver-snapshot.tar.gz. Una vez descargado vamos a nuestro directorio personal (o donde se haya descargado el archivo) y lo descomprimimos. Hecho esto, nos situamos desde la consola en el directorio que hemos descomprimido con la orden:
cd alsa-driver
Y sin salirnos de la terminal vamos escribiendo y ejecutando las siguientes órdenes:
sudo ./configure --enable-dynamic-minors --without-oss --with-cards="hda-intel"
sudo make
sudo make install
Cuando finalice reiniciamos (o mejor dicho, apagamos y encendemos el equipo (os recuerdo que la función reiniciar no funciona)), pinchamos en el botón del sonido de la barra de tareas y quitamos la casilla de silenciar altavoces que habrá activada.
Por último vamos a Preferencias > Sonido y cambiamos todas las opciones a ALSA - Advanced Linux Sound Architecture. Deberemos tener ya sonido en el sistema.
3. Activando las funciones y luces del teclado
Abrimos una terminal y escribimos y ejecutamos las siguientes líneas:
echo 255 | sudo tee -a /sys/class/leds/smc::kbd_backlight/brightness
aptitude remove mouseemu
Reiniciamos (¿¿¿???) [...] vaaale, es la costumbre... apagamos e iniciamos el equipo :) . Las funciones del teclado y la luz deberían funcionar sin problemas.
4. Configurar el touchpad
Aunque el movimiento del cursor y el click izquierdo funciona sin problemas es necesario configurar un par de cosillas para activar el click derecho y el desplazamiento vertical con 2 dedos.
Como ya hemos agregado los módulos necesarios en el primer paso, simplemente abrimos una terminal y escribimos:
gksudo gedit /etc/modprobe.d/blacklist
Y al final del documento añadimos la siguiente línea:
blacklist usbhidHecho esto, abrimos de nuevo una terminal y escribimos:
sudo gedit /etc/hal/fdi/policy/x11-synaptics-bcm5974.fdi
En el documento que acabamos de crear hay que especificar los parámetros de configuración del touchpad. Copio y pego el documento que facilitan en la documentación de Ubuntu que además es el que yo estoy utilizando y funciona de maravilla. Simplemente copiamos y pegamos en el nuevo documento lo siguiente:
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.touchpad">
<match key="info.product" contains="bcm5974">
<merge key="appledevice" type="bool">true</merge>
</match>
<match key="appledevice" bool="true">
<merge key="input.x11_driver" type="string">synaptics</merge>
<merge key="input.x11_options.SHMConfig" type="string">1</merge>
<merge key="input.x11_options.FingerLow" type="string">40</merge>
<merge key="input.x11_options.FingerHigh" type="string">70</merge>
<merge key="input.x11_options.ClickFinger1" type="string">1</merge>
<merge key="input.x11_options.ClickFinger2" type="string">3</merge>
<merge key="input.x11_options.ClickFinger3" type="string">2</merge>
<merge key="input.x11_options.TapButton1" type="string">0</merge>
<merge key="input.x11_options.TapButton2" type="string">0</merge>
<merge key="input.x11_options.TapButton3" type="string">0</merge>
<merge key="input.x11_options.VertEdgeScroll" type="string">false</merge>
<merge key="input.x11_options.HorizEdgeScroll" type="string">false</merge>
<merge key="input.x11_options.VertTwoFingerScroll" type="string">1</merge>
<merge key="input.x11_options.HorizTwoFingerScroll" type="string">1</merge>
<merge key="input.x11_options.MinSpeed" type="string">0.5</merge>
<merge key="input.x11_options.MaxSpeed" type="string">2.5</merge>
<merge key="input.x11_options.AccelFactor" type="string">0.15</merge>
<merge key="input.x11_options.PalmDetect" type="string">0</merge>
<merge key="input.x11_options.PalmMinWidth" type="string">25</merge>
<merge key="input.x11_options.PalmMinZ" type="string">250</merge>
</match>
</match>
</device>
</deviceinfo>
Guardamos y cerramos. Al "reinciar" el equipo el
touchpad debería funcionar sin problemas. Si alguien quiere saber más sobre las diferentes opciones de configuración y los parámetros que podemos modificar, se puede pasar por la
documentación oficial.
5. Activar la aceleración 3D
Para activar la
aceleración 3D del sistema, hemos de hacer lo propio con los drivers restrictivos de
NVIDIA. Afortunadamente es algo tan sencillo como ir a Sistema > Administración > Controladores de Hardware y seleccionar y activar el controlador de NVIDIA que queramos.
Si queremos usar
Compiz, os recomiendo activar el controlador
NVIDIA 173, ya que los efectos de Compiz funcionan fenomenal con éste (doy fe), mientras que parece ser que da problemas con el
NVIDIA 180.
Y eso es todo. Ya tenemos nuestro Ubuntu optimizado para trabajar a las mil maravillas en nuestro
MacBook Pro.