AVISO: Este tutorial está obsoleto. En su lugar te invitamos a seguir estos pasos, que son más recientes y más sencillos de seguir.
Hace tiempo que la versión de Steam para Ubuntu Linux fue liberada, pero no todas las distribuciones lo ponen fácil para hacer funcionar nuestros juegos compatibles de la famosa plataforma de videojuegos de Valve. Fedora es una de ellas y voy a dedicar este tutorial para que sus usuarios aprendan a configurar esta distribución de forma que el blob privativo de nVidia no se queje.
Como aviso, quiero decir que no he podido repasar el tutorial debido a que no tengo una máquina secundaria para probarlo, ya que mi actual máquina de producción no puede ser formateada por falta de tiempo y debido a la gran cantidad de aplicaciones y servicios que tendría que reinstalar. Así que si tenéis algún problema no dudéis en describirlo en los comentarios y os ayudaré. Yo creo que no falta nada, pero nunca se sabe.
Requisitos
Estos son los requisitos a nivel sistema y de hardware para seguir este tutorial. ¡OJO! No son los requisitos de Steam para Fedora, sino los requisitos para poder seguir correctamente este tutorial, ya que todo se ha centrado en el hardware reciente de nVidia.
Los requisitos son los siguientes:
- Fedora x86_64 versión 17 o superior.
- Tarjeta nVidia de la serie 8000 o superior, ya que a partir de esa gama las placas están soportadas por la versión actual del controlador privativo.
- Un procesador de arquitectura x86_64.
- Repositorios de RPMFusion.
El resto de requisitos dependerán de qué juegos queréis ejecutar.
Yum Extender
Tanto PackageKit (GNOME) como Apper (KDE) no muestran los paquetes de 32 bits para el soporte multiarquitectura de Fedora para 64 bits, así que para hacer un poco más ameno el proceso recomiendo instalar el gestor de paquetes Yum Extender, que se instala a través del paquete yumex.
Yum Extender muestra tanto los paquetes de 32 bits como los de 64, ya que necesitamos instalar paquetes de ambas arquitecturas debido a que Steam para Fedora todavía no tiene versión para 64 bits, todo esto sin contar que a día de hoy buena parte del mundo de los videojuegos todavía funciona compilando para 32 bits.
Wine
Aparte de todo lo expuesto hasta ahora, este tutorial nos permitirá tener aceleración 3D sobre el blob privativo en Wine, lo que nos permitirá ejecutar algunos juegos de Windows.
Por ejemplo he conseguido poder ejecutar el Deus Ex original sin tener que tirar de PlayOnLinux, aunque tengo que confesar que también me funcionaba con el driver libre para tarjetas AMD en mi difunta HD3870.
Repositorios necesarios
En primer lugar y para instalar el driver privativo de nVidia tendremos que instalar los repositorios de RPMFusion, ya que por cuestiones de licencias este driver no puede estar presente en los repositorios oficiales de Fedora.
Para instalar los repositorio de RPMFusion según su documentación tendréis que ejecutar la siguiente línea de comando:
su -c 'yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm'
Después de instalar los repositorios free y nonfree de RPMFusion, toca instalar Steam. Ya dijimos hace unos días que Steam había llegado a RPMFusion, sin embargo puede que todavía no esté en la rama estable de estos, así que si no os aparece podéis instalar otro repositorio externo a través de Fedora People, una serie de repositorios externos mantenido por voluntarios.
Para instalar el repositorio de Fedora People podéis recurrir a la siguiente línea de comando con permisos de root.
wget http://spot.fedorapeople.org/steam/steam.repo -O /etc/yum.repos.d/steam.repo
Si no funciona la línea de comandos, os digo que solo tenéis que coger el fichero steam.repo del enlace y colocarlo con el mismo nombre en la subcarpeta del sistema /etc/yum.repos.d/.
Paquetes a instalar
Después de unas explicaciones e instalar los repositorios, toca instalar los paquetes necesarios para el correcto funcionamiento de Steam sobre Fedora. Como ya conté al principio y para hacer más amenas las instalaciones, podéis tirar del gestor de paquetes Yum Extender, aunque el comando Yum os servirá igualmente.
Fedora no es una distribución muy cómoda a la hora de ser mantenida con drivers externos debido a los constantes cambios de kernel, ya que al contrario de otras distribuciones populares como openSuse, Debian Stable o Ubuntu, la distribución de Red Hat no parchea una versión fija del kernel para toda la vida de la versión, sino que van introduciendo una de las últimas versiones del kernel con el fin probarlo y parchearlo. Todo esto hace que los drivers de VirtualBox, nVidia, AMD y Broadcom necesiten regenerar sus módulos con cada versión del kernel.
RPMFusion ofrece dos soluciones para solventar y facilitar el mantenimiento de esos blobs privativos, tan incómodos en esta distribución:
Kmod
Kmod es la forma menos automatizada para tener los módulos de los blobs privativos actualizados. Con Kmod los chicos de RPMFusion generan un módulo que se traduce en una paquete por cada versión del kernel.
La ventaja de Kmod es que el paquete generado está probado y seguro que funcionará, pero tiene la desventaja de que cada vez que actualicemos Fedora habrá fijarse muy bien en los paquetes, ya que si se actualiza el kernel y no aparecen los correspondientes Kmods los dispositivos y aplicaciones instaladas a través de ellos dejarán de funcionar.
Si os pasa esto, solo tendréis que esperar unas horas y volver a actualizar si el sistema arranca y os deja iniciar sesión al menos a través de consola.
Akmod
Es la forma más automatizada de mantener los drivers privativos sobre Fedora y lo bueno que tiene es que genera el módulo automáticamente cada vez que hay un kernel nuevo, sin que se tenga esperar a la aparición de un paquete nuevo y adaptado.
La ventaja de Akmod es que ofrece un mantenimiento más desatendido, lo malo es que los módulos que genera a veces fallan e instala un montón de paquetes extras para poder generar los módulos de forma automática, cosa que podría no gustar a muchos.
Podéis usar tanto Kmod como Akmod, aunque personalmente prefiero el primero porque me transmite más confianza ya que en teoría el módulo generado tendría que estar probado, aunque hay mucha gente que prefiere Akmod.
Lo más recomendable es prescindir tanto de Kmod como de Akmod y tirar de los drivers libres, ya que hace el mantenimiento de Fedora mucho más fácil, pero a veces es necesario una potencia extra para disfrutar de una experiencia plena como es el caso que estamos tratando o bien porque nuestro ordenador usa una tarjeta de red Broadcom.
Para más información sobre cómo instalar kmod-nvidia y akmod-nvidia podéis visitar esta web en inglés.
Instalación
Aquí vamos a indicar los paquetes a instalar para hacer funcionar Steam sobre Fedora. Como ya he comentado tendremos que instalar paquetes de 32 y 64 bits y si la consola os resulta poco amigable podéis tirar del ya mencionado Yum Extender.
Los listados a seguir (debéis elegir uno) son los siguientes:
Listado 1, con Kmod
- kmod-nvidia
- xorg-x11-drv-nvidia-libs
- xorg-x11-drv-nvidia-libs.i686
- vdpauinfo
- libva-vdpau-driver
- libva-vdpau-driver.i686
- libva-utils
- steam.i686
- wine
Listado 2, con Akmod
- akmod-nvidia
- xorg-x11-drv-nvidia-libs
- xorg-x11-drv-nvidia-libs.i686
- vdpauinfo
- libva-vdpau-driver
- libva-vdpau-driver.i686
- libva-utils
- steam.i686
- wine
A muchos les sorprenderá la aparición de Wine, ¿por qué lo meto?, es simplemente una manera de matar moscas a cañonazos e introducir todo lo necesario para la aceleración 3D en la aplicaciones de 32bits, ya sean nativas o de Windows.
Si hacéis la instalación desde Yum Extender, recordad que no tenéis que buscar los paquetes terminados en i686. Solo poniendo el nombre del paquete ya os sale para las dos arquitecturas, aparte que los paquetes i686 no aparecen en las búsquedas de Yum.
Si usáis la versión de 32 bits de Fedora no tenéis que instalar los paquetes duplicados, ya que solo manejáis una única arquitectura en vuestro sistema y que no se os olvide a los que usáis un kernel PAE instalar kmod-nvidia-PAE ó akmod-nvidia-PAE en lugar de los paquetes mencionados anteriormente.
Después de haber instalado todos los paquetes, opcionalmente podemos generar el fichero Xorg para el driver privativo de nVidia a través de la siguiente línea de comando.
nvidia-xconfig
Colocar el usuario en el grupo vídeo
Otra cosa importante que no hay que olvidar es la de colocar nuestro usuario personal en el grupo video. Cosa que se puede hacer a través de la gestión gráfica de usuarios o también a través del comando con permisos de root.
usermod -a -G video tuusuario
Fin de la instalación e inicio de Steam
Después de todo este proceso de instalación toca reiniciar para que todos los cambios que hemos hecho surtan efecto.
Una vez hecho esto e iniciada la sesión ya tendríamos que poder ejecutar nuestros juegos de Steam compatibles con Linux sin problemas.
Para más información podéis mirar la documentación de RPMFusion.