Caso 1: Usuario de Linux necesita ejecutar una aplicación para Windows. Usuario de Linux tiene a Wine. Wine es cada vez más compatible y estable. Caso 2: Usuario de Linux necesita ejecutar aplicaciones de OS X. Virtualizar OS X fuera de hardware Apple está prohibido. Solución: Crear una capa de emulación para ejecutar las aplicaciones directamente, o en otras palabras, un equivalente a Wine. Su nombre, es Darling.
Uno se pregunta por qué ha pasado tanto tiempo para encontrar un proyecto de esta categoría. Después de todo, OS X es un derivado de Unix, y la relación entre Unix y Linux no es “lejana” por así decirlo. Sin embargo, los desafíos técnicos asociados a crear una capa de emulación que sea compatible con aplicaciones para Darwin (sistema operativo open source de Apple en el que se basan los componentes principales de OS X y iOS) y el propio OS X son enormes, sin mencionar que también son necesarias herramientas adicionales para asistir, entre otras cosas, con el proceso de instalación de cada aplicación. El desarrollo de Darling comenzó hace un año, y todavía se encuentra en pañales. La lista de software compatible está reducida a algunos programas que se ejecutan desde la consola, debido a que como lo explica su desarrollador Luboš Doležel, están entre los más “sencillos” a la hora de hacerlos funcionar.
Aún así, hay esperanza. El hecho de que OS X sea familiar de Unix convierte a un proyecto casi imposible en complicado, y con “complicado” se puede trabajar. Doležel agrega que en vez de implementar todos los APIs de sistema, fue suficiente con crear “envoltorios” alrededor de los que ya están disponibles para Linux. El factor open source también es muy positivo: Mientras que el desarrollo de Wine debe luchar con los candados que impone Redmond en materia de licencias, varios de los componentes de bajo nivel en OS X son de código abierto. Esto resalta el detalle de que en Darling no hay ni una pizca de ingeniería inversa, ya que además de provocar la ira de Cupertino, no sería tan útil para el desarrollo general de Darling. Claro que, el problema de fondo permanece: La compatibilidad de Darling debe madurar una aplicación a la vez, y probablemente pasen varios años antes de que veamos una versión completamente funcional, pero hay que comenzar en alguna parte…