https://i2.wp.com/www.technobol.com/wp-content/uploads/2013/03/Install-Wine-on-Linux.png

En esta entrada de blog vamos a ver como jugar a los juegos de Windows en GNU/Linux en el cual también se incluyen los de Steam. A día de hoy SteamOS no permite el poder instalarle los programas necesarios para ello por lo tanto usaremos Ubuntu 14.04. Recuerda que desde hace un par de años, Steam existe en versión Linux como sus juegos para Ubuntu lo cual podrás jugarlos hasta que SteamOS esté completamente terminado. Ya se ha comentado esto en algunas entradas del blog por lo tanto no voy a insistir en ello. ¿Cuándo usaremos WINE? WINE lo usaremos cuando tengamos la garantía de que el programa que queremos usar NO EXISTA VERSIÓN PARA LINUX. Más adelante veremos un ejemplo.

Nota importante: Para esta entrada de blog he usado una máquina virtual (resolución 4:3) para explicar los pasos de instalación y ejecución básica y un ordenador real (resolución 16:9) donde ya lo tengo todo instalado para comprobar que es lo que realmente sucede ya que al trabajar sobre máquina virtual aun es menos predecible lo que puede llegar a ocurrir. También he dividido la entrada en dos partes para que no se haga demasiado extensa. La parte 1 está dedicada a WINE en solitario y la segunda a PlayOnLinux.

INTRODUCCIÓN A WINE

WINE es el acrónimo recesivo que significa

WINE
Is
Not an
Emulator

Que traducido al español quiere decir WINE no es un emulador. Esto tiene que quedar claro. WINE no es un emulador porque no es un programa que se nos abre para poder ejecutar juegos que se han diseñado para una plataforma (por ejemplo consola portátil, máquina arcade) en el ordenador (u otro dispositivo). Tampoco es un simulador porque WINE no quiere hacer una imitación de lo que ocurriría si el programa funcionase de la manera que le indicásemos. Por supuesto que para rematar no es una virtualización porque WINE no instala dentro de él un Sistema Operativo para experimentar con él o montar servidores virtuales como tampoco es capaz de integrarse en el propio SO para que funcionase como uno solo. (Como Windows Virtual PC para ejecutar el Modo XP en ciertas versiones de Windows 7 o Hyper-V de Windows 8/8.1 para algunas versiones). Entonces ¿Qué hace WINE? Pues WINE lo que hace es permitir ejecutar en Linux de forma nativa los programas diseñados para Windows como si estuvieras en dicho Sistema Operativo. Esto no es nada novedoso, normalmente los Sistemas Operativos a la hora de su desarrollo se diseñan por partes que se relacionan entre sí (a parte del modo usuario-modo núcleo) en la cual una de esas partes se le denomina subsistema. Un Subsistema es la parte del SO, una de sus diferentes capas de las que está formado, en la cual están los archivos necesarios para poder ejecutar un programa que se ha diseñado para otro Sistema Operativo. En Windows por ejemplo, lo normal es que tenga subsistema Win32 para poder ejecutar los programas del propio Windows en 32 bits, un subsistema para poder ejecutar programas del antiguo OS/2 que donde decimos ese decimos NT 4.0, subsistema Win16 para los programas de 16 bits, subsistema DOS para los programas MS-DOS a través de la línea de comandos que está incluida en XP hacia adelante, y en todas las ediciones NT de Windows, y un subsistema UNIX para poder ejecutar archivos de Linux/UNIX, subsistema para poder ejecutar archivos de Windows 7,etc… Pero esto no significa que en un principio pueda ejecutar programas de un SO diferente YA. El SO está preparado pero hay que instalarle las herramientas adecuadas. En el caso de Windows, el propio Windows ya instala lo necesario para poder ejecutar la compatibilidad con 32 bits, 16 bits, XP, 7 bla bla bla porque va incluido con el propio SO. Con Linux, pasa igual aunque tenga el SO otra arquitectura, está preparado para poder ejecutar archivos de otro SO pero hay que instalarle las herramientas adecuadas para poder configurar esa capa y que en ella se carguen los programas de Windows. El Sistema de capas es para que todo lo que suceda en esa capa no dañe a otras y si ocurre algo malo, que en un principio solo afecte a esa capa y el SO no se vaya a la mierda… Hay que tener en cuenta una cosa importante y es que aunque un SO pueda permitir ejecutar archivos diseñados para otro no se garantiza que vayan a funcionar al 100%. Es lógico, Linux se ha construido de una manera y Windows de otra, así que si le pedimos a Linux que abra un programa para Windows usando los mecanismos que trae Linux el resultado no será el mismo que si el programa diseñado para Windows se abre usando los mecanismos que trae Windows. No obstante, te puedo asegurar que juegos como Counter Strike: Source jugados bajo WINE el lag cuando creas un servidor pega un bajón increíble y ya no te digo nada su versión para Linux. Risa También tienes que tener en cuenta que Windows es un sistema privado por lo tanto habrá ciertos componentes como fuentes, dlls que no podrás obtener lo que se traduce en desconocido si se podrá jugar bien o no.

PROGRAMAS PARA LINUX

Vale, ya sabemos que WINE no es un emulador, que lo que hace es permitir ejecutar archivos de una versión de Windows en Linux de forma nativa en el propio Linux. ¿Qué programas hay que usar? Básicamente hay dos.

  1. WINE: El programa estándar que se encarga de configurar el SO y dejarlo preparado para operar en esa capa de subsistema. Simplemente se instala y le indicas que versión de Windows quieres. El problema es que no es apto para jugar a juegos de alta calidad gráfica. Más bien son para juegos al estilo Half-Life 1, Counter Strike 1.6, Quake III y programas autoejecutables. El juego Ace Ventura por ejemplo, no funciona a día de hoy pero sí puedes jugar a las versiones retail WON de Half-Life e incluso agregarle las expansiones Blue Shift y Oppossing Force. Los bugs que tienen son mínimos pero no influyen para nada en el juego, más bien son a la hora de guardar y salir. Una variante de este programa es PlayonLinux que lo recomiendo y es el que usaremos ya que este programa permite modificar el WINE original para poder descargar algunas dlls privadas que ha podido obtener de Microsoft o fuentes. Steam está incluido. Este programa es 100% gratuito y libre.
  2. CEDEGA: Este programa es de pago. Mitad WINE y mitad propio permitiendo una alta calidad de jugabilidad ya que obtiene acceso a la mayor parte de los archivos de Windows privativos por lo tanto es el recomendado para los juegos ya que requieran gráficos potentes al estilo Far Cry 3.

Recuerda que a pesar de ello, no significa que vayas a obtener un rendimiento como si lo jugases en Windows o un rendimiento mucho mejor.

INSTALACIÓN DE PLAYONLINUX Y WINE POR SEPARADO

Lo que vamos ha hacer es instalar WINE y PlayOnLinux. ¿Para qué? Muy sencillo, aunque hacer estas dos instalaciones va a implicar a tener instalado dos veces WINE la razón es la siguiente:

  • Cuando queramos usar juegos de gráficos al estilo Half-Life e inferiores más archivos exe autoejecutables, usaremos WINE asecas.
  • Cuando queramos usar juegos de gráficos al estilo Half-Life y superiores usaremos PlayOnLinux.

Opcionalmente, una vez que hayas aprendido a manejar este programa, si lo deseas puedes comprar CEDEGA para probar a jugar a juegos que como mínimo tengan un motor gráfico a lo Far Cry a ver que tal responden.

Nota: Antes de proceder a la instalación vuelvo a recomendar que las pruebas de juegos se deben de realizar con un ordenador real donde ya tengas instalado Ubuntu. Puedes hacer pruebas en una máquina virtual instalando las VMWare Tools o las GuestAdditions,dependiendo del programa de virtualización que uses, antes de ir a la máquina real pero insisto, el verdadero rendimiento se obtiene en máquinas reales. Lo mismo que ya comenté en las entradas anteriores dedicadas a SteamOS Beta.

INSTALAR WINE

De WINE es siempre mejor tener la última versión. Actualmente puedes elegir entre la beta 1.7 (incluida la 1.7.28) o la última versión estable (1.6). Con WINE separado nos arriesgaremos a bajar la 1.7.28. Con PlayOnLinux también usaremos esa pero es lo que menos debe de preocuparte porque este programa te permitirá indicarle que versión de WINE quieres usar y si no te convence la 1.7.28 puedes ir a una anterior estable hasta que la 1.7 esté definitivamente realizada. Recuerda que WINE por separado lo haremos para ejecutar programas autoejecutables o instaladores de programas de poco consumo por lo tanto nos basta y aunque en esta última versión ya no tenemos compatibilidad con Windows Me/98/95 podemos usar la compatibilidad con XP o bien siempre que quieras puedes instalar la versión 1.6. Dicho esto empecemos. En los repositorios de Ubuntu viene la versión 1.6. Nosotros instalaremos la versión 1.7.28.

  1. Abre un terminal pulsando CTRL+ALT+T y teclea
    sudo add-apt-repository ppa:ubuntu-wine/ppa

    Ubuntu 64-bit WINE-2014-10-15-13-49-44

  2. Acto seguido teclea
    sudo apt-get update

    Ubuntu 64-bit WINE-2014-10-15-13-57-05

  3. Por ultimo teclea esto y aprieta la tecla S cuando el terminal de lo pida
    sudo apt-get install wine1.7

    Ubuntu 64-bit WINE-2014-10-15-13-57-29

    Ubuntu 64-bit WINE-2014-10-15-13-57-59

    (Nota: Tendrás que teclear tu contraseña de acceso a Ubuntu para poder continuar)

Durante el proceso de instalación, si WINE dispone de fuentes de Microsoft tendremos que apretar las teclas TAB y Enter para aceptar los términos de la licencia EULA ya que sino no podremos instalarlas. Los juegos para Windows entre otras fuentes, usan algunas de las que van incluidas en Windows que al igual que el SO son privadas.

Ubuntu 64-bit WINE-2014-10-15-14-01-46

Ubuntu 64-bit WINE-2014-10-15-14-01-58

Una vez aceptados los términos de la licencia (EULA), la instalación continuará hasta el final. Cuando eso ocurra ya podemos cerrar el terminal escribiendo exit y aprentado enter las veces que haga falta. (En este momento con una vez que pongas exit y aprietes Enter será suficiente). Para abrir WINE da un clic en el logotipo de Ubuntu, escribe WINE y da clic en Configurar WINE. Pasado un rato aparecerá la ventana de configuración en la cual si damos clic en Acerca de podemos comprobar la versión.

Ubuntu 64-bit WINE-2014-10-15-14-06-10

image

Ubuntu 64-bit WINE-2014-10-15-14-06-47

USO BÁSICO DE WINE

Como hemos dicho, vamos a usar WINE para programas de poco consumo,calidad gráfica y sobretodo para programas autoejecutables. Un buen ejemplo son los emuladores, algunos hay para Linux otros no. Como ejemplo vamos a usar el emulador para Sega Megadrive II (Sega Genésis en EEUU). Supongamos que queremos jugar al juego The Lost World – Jurassic Park en Ubuntu. Lo primero que tenemos que hacer es configurar WINE para indicarle con que versión de Windows funcionaba bien este emulador. El emulador Gens funciona con Windows 98/ME pero con XP también por lo tanto el Sistema Operativo a elegir será Windows XP. Los pasos a seguir son los siguientes.

  1. Abrir la configuración WINE como hemos visto antes.
  2. Ir a la pestaña Aplicaciones
  3. Asegurarse que en la pestaña “Versión a Imitar” esté en Windows XP. (Cuidado, no es imitar por ser un simulador sino para decir cómo se tiene que comportar. Esa frase puede ocasionar confusión).
  4. Aceptar los cambios.

Ubuntu 64-bit WINE-2014-10-15-14-16-34

Ahora localizamos el archivo gens.exe y le damos un doble clic. (Sino carga, da un clic con el botón derecho y luego en Abrir con WINE cargador de programas).

Ubuntu 64-bit WINE-2014-10-15-14-48-56

Ahora la pregunta es ¿Funciona o se ve algo como esto?

Ubuntu 64-bit WINE-2014-10-15-14-50-08

Este tipo de resultados pueden ser dos cosas:

  • No nos es posible ejecutarlo con WINE
  • Nos faltan complementos
  • Tenemos que configurar el emulador
  • Estamos usando el controlador privativo adecuado. (Para comprar esto yo lo que hago es instalar el juego TORCS desde el terminal con sudo apt-get install torcs y si funciona bien es que tengo el driver correcto sino, hay que cambiarlo o instalar el adecuado).

No vamos a detenernos más porque el emulador GENS tiene su propia versión para Linux. Los emuladores populares al estilos GENS, VisualBoy Advance, VICE (Commodore 64) tienen su propia versión para Linux pudiéndose instalar en algunos casos desde el Centro de Software de Ubuntu.

El emulador Gens lo bajaremos de esta página http://segaretro.org/Gens/GS seleccionando la opción Gens/GS Release 7 (Ubuntu 8.04+, i386). Descárgalo, ábrelo, dale clic en Instalar y teclea la contraseña de acceso a Ubuntu si la pide. Al cabo de un rato lo tendrás instalado pudiendo jugar al juego que quieras. Si al buscarlo en tus aplicaciones no aparece, ve al centro de software de ubuntu y escribe genesis e instala el emulador tal y como muestra la imagen.

Ubuntu 64-bit WINE-2014-10-15-16-29-38

Lo tendrás todo listo para jugar

Ubuntu 64-bit WINE-2014-10-15-16-31-00

Si en el centro de software de Ubuntu escribes emuladores te aparecerán los más populares aunque te recomiendo que visites de vez en cuando http://www.emulatronia.com

Ubuntu 64-bit WINE-2014-10-15-16-36-31

Vamos a probar a instalar la demo de Age of Empires II The Age of Kings a ver que pasa. Lo primero abre WINE y dile que queremos usar Windows XP. Por cierto, donde pone configuración por defecto es como se ejecutará WINE para todos los programas que abramos. Si deseamos que ciertos programas tengan su propia ejecución (uno para Windows XP, otro para 7, otro para Vista…) debemos de agregar el programa desde el botón Añadir Aplicación. Cuando el programa esté agregado, le damos un clic y todo lo que toquemos en WINE se aplicará solo a ese programa seleccionado. (Al que le hemos dado clic). Si deseamos volver a configurar WINE de forma general (salvo los programas de la lista que haya debajo de “Configuración por defecto”, da un clic en ese mismo texto).

Ubuntu 64-bit WINE-2014-10-15-20-59-16

Una vez instalado tendremos su acceso directo en el escritorio si le hemos dicho que sí cuando lo instalamos.

image

Abre el juego con un doble clic. ¿Funciona? ¿Bien,mal regular? Probablemente la resolución se haya modificado debido a que estos juegos trabajaban en 800×600 y las resoluciones mayores solo estaban disponibles para el juego completo y no para la demo que es este caso.

Si la resolución del ordenador ha cambiado ve a Configuración del Sistema/Monitores y en el apartado resolución elige la tuya. (Si el driver privativo está correctamente instalado, aparecerá). Una vez hecho da clic en aplicar y luego en “Mantener esta configuración” para que cambie. (Si pasa un rato y no das clic en nada, el SO por defecto dejará la resolución anterior”.

Para evitar que las resoluciones del ordenador se alteren, WINE permite crear una especie de escritorio virtual de tal manera que cuando instalemos un programa de Windows en Ubuntu, actue como si lo hiciéramos en ese escritorio. Abre WINE y ve a la pestaña gráficos para dejarlo así:

image

Activa la última opción. Las dimensiones podemos cambiarlas. De momento vamos a dejarlo así. La resolución en ppp es para hacer más grande o más pequeña la ventana. Abre de nuevo Age of Empires, verás que se carga un escritorio azul y acto seguido el juego. Ahora tu PC ya no corre peligro porque todos los cambios afectarán a ese escritorio virtual. Por supuesto que ese escritorio se puede personalizar a gusto, para ello se usa la pestaña Integración de escritorio en la configuración de WINE. (Verás que el propio WINE se abre dentro de ese escritorio) ¿Mejor así?

Captura de pantalla de 2014-10-15 21_20_50

Nota importante: Asegúrate de que en la configuración gráfica de WINE indicas resoluciones acordes al juego porque de lo contrario no se garantiza el resultado que puedas obtener. Como he indicado, estos juegos solian tener de resolución 640×480, 800×600 y 1280×1024. Prueba si quieres a ponerle la misma resolución que la que tiene tu PC a ver como se comporta el juego. El escritorio no tendrá ningún problema pero ¿El juego? Todo depende. Recuerda que precisamente Age of Empires HD de Steam se dio compatibilidad con las resoluciones panorámicas grandes entre otras cosas. Recuerda esto para cuando usemos PlayOnLinux en la segunda parte de esta entrada de blog dedicada a WINE.

Si aun no te convence que no te extrañe, pues recuerdo una vez más que estamos ejecutando programas de forma nativa que se han diseñado para un determinado SO en otro que es totalmente diferente. Una solución es instalar las librerías necesarias a ver como se comporta. Las librerías están en la pestaña que tiene ese nombre. (Recuerda que a excepción de OpenGL y otras, la mayor parte de las librerías son software privado por lo tanto está entre poco y nada conseguirlas para que funcionen bien dentro un sistema que tiene otro tipo de renderizado. Esto se traduce en que no siempre obtendremos el resultado deseado aun metiendo las librerías correctas)

image

Para instalar la librearía se selecciona una y se da clic en Añadir. Para eliminarla se selecciona de la lista de abajo llamada Sustituciones existentes y clic en Eliminar. El botón editar vamos a obviarlo.

El problema es que no tenemos ni idea cuales serán las correctas. Seguramente las que tengan algo que ver con DirectX (Direct3D = d3d, DirectDraw, DirectPlay, DirectMusic, Dxdiag…) ya que son las librearías de Microsoft creadas para los juegos.

Para hacer las pruebas con las librerías aconsejo usar winetricks que es una aplicación que podemos ver mejor todo lo que se refiere a la configuración de WINE.  Cuando en el buscador escribes WINE aparece.

image

Te aconsejo que lo pruebes por tu cuenta. La primera vez que lo abras te pedirá si deseas enviar información anónima para mejorar el programa. Ante la duda dile que NO. Te llevará a una ventana como esta en la que algunas opciones pueden variar.

image

  • View Help: Ver ayuda
  • Install an app: Permite descargar un programa (normalmente de los gratis de poco tamaño o Demo)
  • Install a benchmark: Igual que el anterior pero para programas dedicados al benchmark (Programas para medir el rendimiento del PC)
  • Install a game: Lo mismo que las dos anteriores pero para juegos.
  • Select the default wineprefix: Configurar WINE. Entraremos en esta.
  • Enable silent install: Permite realizar una instalación desatendida (que un programa se instale mediante un archivo en el cual se le dice al instalador como tiene que realizar la instalación del programa).
  • Show broken apps: Muestra los programas que han dado error o hay conflicto como por ejemplos aquellos que tienen sistema de protección DRM impidiendo la reproducción de ciertos vídeos.

(Nota, he puesto las opciones que winetricks trae por defecto. La de 3dmark03 viene debido a una DLL de prueba que instalé).

La opción que nos interesa es como se ha dicho Select the dafult wineprefix por lo que daremos un clic y luego en Aceptar.

image

  • Install a Windows DLL or component: Instalar algunas librerías.
  • Install a font: Instalar algunas fuentes.
  • Change settings: Permite configurar WINE como hemos visto más otras opciones extra que el propio WINE no trae. Otra opción interesante que deberías de mirar.
  • Run winecfg: Carga WINE como hemos visto
  • Run regedit: Abre el editor de registro de Windows que trae WINE
  • Run taskmgt: Abre el Administrador de tareas equivalente al CTRL+ALT+Supr dependiendo de la versión de Windows usada
  • Run a commandline shell (for debugging) abre un terminal a modo cmd para poder realizar operaciones de depuración de errores
  • Browse files: Abrimos la carpeta .wine que es donde tenemos todos los programas instalados Es útil porque tendremos que buscar la carpeta creada para el programa y eliminarla para desinstalarlo.
  • Delete ALL DATA AN APPLICATIONS INSIDE THIS WINEPREFIX. Borrará todo lo que hayamos instalado en WINE (Todo lo que hay en la carpeta oculta .wine)

Demos un clic a la primera opción y en aceptar. Tendremos algo parecido a esto:

image

Por lo menos en Title, aunque sea en inglés, ya tenemos una idea de las librerías que vamos a instalar para no ir a ciegas. Se trata de probar e ir instalando a ver si mejora, empeora o se mantiene igual el rendimiento del programa para decir definitivamente que ese programa NO SIRVE PARA WINE.

Aunque winetricks permite seleccionar muchos archivos a la vez, es mejor instalarlo de uno en uno. La razón es que si algún archivo no se puede descargar o da error porque la configuración de WINE no es adecuada, tendrás que volver a seleccionar todos los archivos que quieres instalar. Instalando de uno en uno para saber cual se instala bien y cual falla para continuar en el siguiente.

No puedo decir más, es probar y probar. ¿No hay alguna manera de que WINE recomiende que hay que instalar? SÍ, para eso es PlayOnLinux que vamos a instalar a continuación en la parte 2.