viernes, 20 de mayo de 2011

Dell Inspiron 9400 y Snow Leopard



Voy a escribir este post para ayudar a aquellos que quieran iniciarse en esto de instalar un MacOSX Snow Leopard en un equipo no Apple. Este post está enfocado a hacerlo sobre un Dell Inspiron 9400, pero estoy seguro que algunos de los consejos serán de mucha ayuda para otro tipo de equipos.

Lo primero es conocer bien el hardware. Si algo tiene de malo esto es que la autodetección de hardware va muy mal o directamente no funciona. Por eso es crucial conocer el hardware de nuestro equipo. Investiga y apunta bien antes de empezar. De base he instalado la distribución iATKOS S3 V2. Importante que sea versión 2. Probé la V1 antes consiguiendo un estupendo kernel panic antes si quiera de llegar a la ventana de instalación.

Un consejo de oro: no instales de mas. Si no tienes claro el hardware es mejor seleccionar de menos que de mas en la personalización de la instalación. Generalmente si se selecciona de mas se tiende a favorecer el conflicto de hardware y llegar con mayor facilidad al temido kernel panic. Si una vez instalado falta detección de hardware no te preocupes, lo solucionaremos a posteriori.

Para la instalación base de mi Inspiron 9400 seguí como indicaciones de selección en la personalización lo descrito en esta página. De lo expuesto modifiqué aquellos puntos que afectaban directamente al hardware de mi equipo:

  • Añadí el apartado Laptop hardware
  • En VGA añadí la entrada NVenabler para el soporte de mi tarjeta gráfica nVIDIA GeForce Go 7900 GS. Con esto conseguimos soporte completo, incluida aceleración 3D.
  • En Wired Network eliminé toda selección salvo la que activa la tarjeta de red de mi Dell, la extensión BCM440X
  • En Wireless Network no seleccioné nada. La tarjeta wifi del Inspiron 9400 (Intel PRO/Wireless 3945ABG/BG) no está soportada salvo en modo BETA, muy limitado y nada funcional.

Una vez hechas las personalizaciones cruzamos los dedos y pulsamos a instalar. Se lleva sobre 30-40 minutos en completar el proceso. Una vez instalado reiniciará el ordenador. A mi, después de esto, me dio un magnifico kernel panic. Debemos estar preparados para esta situación ya que cambiando extensiones del kernel (kext) es probable que metamos la pata y lleguemos a la temible pantalla negra de la muerte. Si pasa esto, tendremos que modificar el sistema a bajo nivel. Para eso debemos estar familiarizados con los terminales Unix (bash). Si no lo estás, mala suerte, te aconsejo que estudies un poco al respecto. Meteis de nuevo el DVD de instalación y justo cuando aparece la ventana gráfica en la barra superior nos vamos al menu de herramientas para seleccionar abrir el Terminal. Esto os permitirá llegar al disco duro instalado y eliminar la extensión que os está provocando el fallo. Al recibir el error, fijaros en la traza que suele indicar qué extensión esta probocando el conflicto. En mi caso la extensión ElliottForceLegacyRTC.kext me estaba tirando el sistema. ¿Qué hice? Entrar con el terminal y mover (no os recomiendo borrar, nunca sabes cuando puede hacer falta) del directorio donde se encontraba (las extensiones de kernel estan localizadas en /Extra/Extensions ó /System/Library/Extensions) a un directorio que creé llamado SAVE:

# mkdir RAIZ_HD/Extra/SAVE
# mv RAIZ_HD/Extra/Extensions/ElliottForceLegacyRTC.kext RAIZ_HD/Extra/SAVE


Donde RAIZ_HD es el directorio donde os haya montado el DVD instalador el raiz de vuestro disco duro. El comando de creación del directorio obviamente sólo se debe realizar en la primera ocasión. Una vez eliminada la extension problematica, reiniciar. A mi con esto ya me arrancó correctamente. Os recomiendo tener a mano un raton y teclado USB, por si no os reconoce el del portátil pincharlo y poder salir del apuro. Una vez iniciado el MacOSX os recomiendo mirar las trazas del fichero /var/log/system.log. Si algun módulo o extensión de kernel no ha cargado correctamente o hay conflictos, ahí encontrareis trazas. Yo depuré el sistema con ayuda de esto. Revisé todos los errores y conflictos para ir arreglandolos manualmente poco a poco. Seguramente algunas extensiones de kernel os den problemas y otras os falten. Para eliminar extensiones, seguid el procedimiento descrito anteriormente (con mucho cariño) y para añadir extensiones os recomiendo usar el programa Kext Helper. Os quitareis de problemas de permisos y propietarios al mover la extensión al disco duro ya que automatiza el proceso. Para usarlo solo tenéis que descargar la extensión de kernel necesaria (fichero con terminación kext), arrastrarlo a la ventana, soltarlo, introducir la contraseña de administración y pulsar el botón EASY INSTALL.

Para revisar la lista de compatibilidad de hardware y extensiones necesarias para el Inspiron 9400 os recomiendo este enlace. Podréis encontrar por esa Wiki la misma descripción para una gran cantidad de equipos portátiles. Aplicado a mi instalación esquemáticamente os diré que:

  • Sonido: VoodooHDA
  • Tarjetas SD: VoodooSDHC
  • Teclado y trackpad: VoodooPS2Controller
  • Indicador de bateria: VoodooBattery
  • Información de CPU y solucion problema Dual Core: VoodooTSCSync
  • Problema de hibernación: SleepEnabler
  • USB 2.0: IOUSBFamily-378

Hay un problema molesto y es que si la pantalla se apaga no vuelve a encenderse. Como workaround os aconsejo:

  • Panel de control -> ahorro de energia -> apagar monitor -> nunca
  • Crear una carpeta de nombre 'Negro' y añadirle dentro una pequeña imagen completamente negra
  • Panel de control -> Salvapantallas -> Añadir carpeta 'Negro' -> Opciones (eliminar todas)

De esta forma cuando se active el Salvapantallas os mostrará una imagen en negro, que es equivalente a apagar el monitor (a mi, si le bajo el nivel de brillo al mínimo, me causa el mismo efecto que apagarla). Y del salvapantallas se recupera sin problemas.

La tarjeta de red (Broadcom 440x 10/100) tiene problemas de estabilidad detectados y mientras se soluciona la única opción para poder conectar sin problemas usándola es limitar la memoria del sistema a 1GB. Para ello en el arranque pulsar cualquier tecla y escribir:

maxmem=1024

Cualquier parámetro de arranque puede indicarse para que se aplique de forma automática editando el fichero /Library/Preferences/SystemConfiguration/com.apple.Boot.plist y buscando la cadena Kernel Flag para incluir entre las etiquetas string que hay en la linea siguiente los parámetros personalizados deseados (en este caso, maxmem=1024):



Si tienes mas de 1GB (como yo) es un fastidio tener que aplicar este cambio, ya que se pierde RAM porque si. De todas formas la solución de red definitiva pasa por instalarle una Wifi USB compatible y económica (ver lista de compatibilidad para la versión de OSX).

Pues listo, con esto deberíamos tener un MacOSX bastante completo y estable. A disfrutarlo. Como experiencia os diré que:

  • Cuando pasé de Windows XP a 7 el sistema mejoró en 2x
  • Al pasar de 7 a Snow Leopard ha mejorado en 4x

Programas como Lightroom vuelan, literalmente. Os animo a todos a probarlo. Por último, os dejo una lista de los módulos de kernel que tengo instalados ahora mismo. Con ello tengo funcionalidad completa del equipo (es decir, todo menos la wifi):



Y aquí tenéis el resultado final: Snow Leopard funcionando estable sobre un portátil Dell Inspiron 9400:

3 comentarios:

Sylvia Ginsburg dijo...

Hola, he instalado varios hackintosh en mi Dell 9400, pero el Snow no lo he podido hacer funcionar bien, lo instalo y funciona, pero la pantalla se queda en negro, y solo la puedo ver en un monitor externo, lo que busco es que se vea en la pantalla de mi portable, pues eso de cargar con un monitor aparte seria de dar risa, puedes ayudarme mi tarjeta de video es: Placa de video Mobile Intel(R) 945 Express Chipset Family (Microsoft Corporation - WDDM 1.0) (256 MB) Y la Aceleradora 3: Intel GMA 950 me gusta el Snow porque es la ultima version que mueve las aplucaciones antiguas de PowerPC, y tambien las intel, para mi es el ideal por el momento. Saludos y Gracias.

Javier Sianes dijo...

Hola, perdona que tardara en responder pero no vi tu comentario. Tu versión de laptop usa una tarjeta gráfica diferente al mío por lo que deberás adaptar las extensiones de kernel (kext) necesarias. Buscando referencias a tu gráfica y para hackintosh de Snow Leopard he encontrado en el siguiente enlace la descripción de extensiones necesarias para hacer funcionar tu tarjeta:

http://www.hackintoshosx.com/files/file/2558-gma950-945-kexts/

Espero te sirva de ayuda. Un saludo.

Sylvia Ginsburg dijo...

Ya habia dejado ese proyecto a un lado, pero me acaba de caer otra del igual, y voy a comenzar de nuevo, Gracias por tu amabilidad y disposición, si se me atora la instalación te volveré a dar lata, Saludos.