->
Actualización: A partir de la versión 2.6.21 han desactivado el módulo appleir, luego para que os vaya el apple remote o apple frontrow, debéis seguir este tutorial y habilitar en el archivo .config del kernel las opciones: CONFIG_INPUT_EVDEV y CONFIG_USB_HIDDEV
Usar una compilación de las últimas versiones del kernel y aplicando los parches últimos de mactel-linux llevan a tener un sistema más rápido, potente, con más dispositivos soportados y funcionando perfectamente y a una bajada de la temperatura y ahorro de energía y mayor duración de las baterías y a poder usar la suspensión e hibernación a la primera, pero todo esto es posible sí y sólo si el archivo .config es el correcto o lo hacemos bien, y si el kernel no da problemas, cosa que siempre sucederá. Hasta la versión 2.6.22 ha habido problemas con la iSight y varios dispositivos más, así que cuidado ante todo y recordad que esto no tiene porque ser la panacea, pero puede llegar a serlo.
El tutorial es válido para cualquier versión de GNU/Linux y para cualquier macbook, sea pro o normal. Lo realizo para Ubuntu y un macbook Core2Duo.
Usaremos la última versión estable publicada hace nada que es la 2.6.22.1Siempre el tutorial será igual, salvo porque deberemos configurar el archivo .config y cada versión y revisión tiene muchas mejoras.Antes de bajar el último kernel estable en su versión completa (tiene que ocupar más de 40 MB, porque sino no es válido) tendremos que mirar en mactel-linux la última versión soportada por los parches de mactel y ésta será la versión del kernel que bajaremos u otra anterior.
- Bajamos los parches de mactel y las utilidades: sudo -s cd /usr/src mkdir mactel cd mactel sudo aptitude install kernel-package build-essential gcc libncurses5-dev fakeroot curl bzip2 subversion svn co http://mactel-linux.svn.sourceforge.net/svnroot/mactel-linux/trunk/kernel/ mactel-linux-kernel svn co http://mactel-linux.svn.sourceforge.net/svnroot/mactel-linux/trunk/tools/ mactel-linux-tools
- Bajamos el kernel.
Navegando por el directorio mactel-linux-kernel vemos que el último config-* está en la carpeta mactel-patches-2.6.19 luego éste debería ser el kernel exacto (sin ninguna revisión) que nos deberíamos bajar, pero he modificado y tocado mucho el .config del 2.6.22.1 para que vaya perfectamente, por lo que bajaremos esta versión.
sudo -s cd /usr/src/ curl -O http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.1.tar.bz2 tar xvpfj linux-2.6.22.1.tar.bz2 unlink linux ln -s -d linux-2.6.22.1/ linux
Comprobamos que no haya errores en lo último. Si hay errores probar otra versión, ya que los parches no están del todo bien y ahí no os puedo ayudar demasiado.
sudo -s cd /usr/src/mactel curl -O http://magarto.com/tmp/lirc-config.tar.gz tar xvvfz lirc-config.tar.gz mv lirc lirc-magarto cd lirc-magarto cp config-2.6.22 /usr/src/linux/.config
sudo -s cd /usr/src/mactel/mactel-linux-kernel/mactel-patches-2.6.22/ ./apply /usr/src/linux cd /usr/src/linux make oldconfig make menuconfig
En el make oldconfig nos aparecen muchas opciones que no estaban configuradas en el .config al usar una versión de este anterior. Si no sabéis que os preguntan cada vez, aceptad todo. Es muy importante que, en la pantalla que os aparece, vayáis abajo y déis a “Load…” os aparecerá para que carguéis el .config y como le tenéis copiado, pues perfecto. Ahora después, si no queréis modificar nada, dad a “Save…” y aceptad. Comprobad el archivo .config ahora para comprobar que marca la nueva versión.
sudo -s cd /usr/src/linux fakeroot make-kpkg --initrd kernel-image kernel-headers modules-image Si no os va cambiar el comando anterior a, por ejemplo: sudo fakeroot make-kpkg --initrd --append-to-version=-2.6.22.1-mactel kernel-image kernel-headers modules-image
En la misma terminal ejecutamos:
cd .. sudo dpkg -i linux-image-*.deb sudo dpkg -i linux-headers-*.deb
Nota: Si cuando carguemos grub nos da el error: Kernel panic - not syncing : VFS . Unable to mount root fs on unknown-block(0,0) tendremos que cargar el kernel anterior y editar el /boot/grub/menu.lst para deshabilitar los parámetros de afinamiento del disco duro y poner la ruta clásica mediante /dev/
sudo nano /boot/grub/menu.lst
Y donde cargue el kernel nuevo de mactel, cambiamos los UUID=lo_que_sea a /dev/sda3 donde /dev/sda3 es la ruta hacia la partición de arranque de GNU/Linux
Hay ciertos tutoriales que os pueden ayudar si algo no va: 1, 2, 3, 4 y 5.
…Esto es todo amigos…
el 31 Julio 2007 a las 15:55
2 Septiembre 2007 a las 08:29
Estan borrando los comentarios??
2 Septiembre 2007 a las 10:40
Nooooo, nadie ha borrado nada, sólo que en esta entrada nadie se había aventurado a escribir
5 Septiembre 2007 a las 23:54
Yo me aventuro¡¡ Habia escrito ke segui los pasos pero no me funciona el WIFI ni el control remoto¡¡ por favor una ayudita. estoy usando el antiguo kernel.
Al compilar Madwifi salta un error en la 3 linea¡¡¡
6 Septiembre 2007 a las 05:09
Para el wifi usa ndiswrapper o madwifi-hal
Para el control remoto publiqué dos tutoriales en el wiki. Si usas una versión posterior a la 2.6.21 sólo te funcionará uno, el de sin configurar LIRC no, el otro.
9 Septiembre 2007 a las 21:43
POr eso¡¡ el Madwifi-hal es el ke uso, y no compila, y el tutorial de lric para kernel compilado tambien lo segui con exito. pero ni comila el madwifi, ni funciona el control.
Existe algun benchmark para medir el rendimiento de los dos kernels?? la verdad no veo mucha diferencia entre el generic y el compilado.
9 Septiembre 2007 a las 22:29
La diferencia la notarás en carga de CPU y en otras cosas que apenas se aprecian: micrófono, mayor seguridad, batería más tiempo…
Esperate que desde que Intel publicase powertop en futuras versiones de GNU/Linux vamos a flipar con el aumento de vida de las baterías…
9 Septiembre 2007 a las 22:29
No sé por qué no puedes compilar :S
Si dieras errores que recibes… de todos modos mira si tienes el build-essentials instalado
10 Septiembre 2007 a las 21:54
Este es el error:
make -C /lib/modules/2.6.22.1-mactel/build SUBDIRS=/home/ger/madwifi/madwifi-hal-0.9.30.13 modules
make[1]: Entering directory `/usr/src/linux-2.6.22.1′
CC [M] /home/ger/madwifi/madwifi-hal-0.9.30.13/ath/if_ath.o
CC [M] /home/ger/madwifi/madwifi-hal-0.9.30.13/ath/if_ath_pci.o
cc1: warnings being treated as errors
/home/ger/madwifi/madwifi-hal-0.9.30.13/ath/if_ath_pci.c: In function ‘ath_pci_probe’:
/home/ger/madwifi/madwifi-hal-0.9.30.13/ath/if_ath_pci.c:212: warning: ‘deprecated_irq_flag’ is deprecated (declared at include/linux/interrupt.h:66)
make[3]: *** [/home/ger/madwifi/madwifi-hal-0.9.30.13/ath/if_ath_pci.o] Error 1
make[2]: *** [/home/ger/madwifi/madwifi-hal-0.9.30.13/ath] Error 2
make[1]: *** [_module_/home/ger/madwifi/madwifi-hal-0.9.30.13] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.22.1′
make: *** [modules] Error 2
10 Septiembre 2007 a las 22:21
Mira con otra version de las snapshots de madwifi-hal
Qué versión de MB tienes y de qué fecha fue la compra?
El error que tienes está en: warning: ‘deprecated_irq_flag’ is deprecated (declared at include/linux/interrupt.h:66)
Mira a ver en la linea 66 de: includes/linux/interrupt.h a ver si das con el error.
De todos modos es posible que haya algo mal puesto en el .config del kernel que has compilado o que simplemente el kernel esté mal.
Puedes probar también a compilarlo dentro de los kernel preconfigurados de ubuntu, a ver si el fallo es común.
Por otro lado, siempre antes de volver a compilar, elimina todo lo que has compilado haciendo, en la carpeta donde hagas el make:
sudo make uninstall
sudo make clean
8 Noviembre 2007 a las 01:20
yo queria saber si con esto funciona el microfono integrado o no porque hice algo parecido y todo me funciona a la perfeccion pero solo me falta el microfono asique me gustaria saberlo para ahorrarme el tener que volver a compilar el kernel. gracias
8 Noviembre 2007 a las 01:39
por cierto el link de http://magarto.com/tmp/lirc-config.tar.gz no funciona
8 Noviembre 2007 a las 07:37
Gracias ekhtor, luego lo corregiré.
El micrófono funciona en el kernel 2.6.22.1 al menos que es el que probé pero supongo que también en el resto de 2.6.22
8 Noviembre 2007 a las 21:39
estoy esperandote magarto xDD, si me haces el favor y tienes un rato mandamelo al email el archivo de configuracion del kernel. gracias
9 Noviembre 2007 a las 08:40
Pues vas a tener que darme algo de tiempo, porque borré sin querer el archivo y no le tengo en mi ordenador. Le volveré a hacer y le subiré, pero dame tiempo (intentaré hacerlo hoy)
9 Noviembre 2007 a las 08:42
Ya lo tienes.
9 Noviembre 2007 a las 13:08
muchas gracias!!!