[[https://www.xenocara.org/|Xenocara]] brinda una estructura para 'alojar' modificaciones de OPENBSD y automatizar la construcción modular de componentes X.Org, incluyendo paquetes 'terceros' o extensiones, y software mantenido por los desarrolladores de OpenBSD
Incluye una modificación de X.Org, que utiliza un usuario _x11 **dedicado para que, predeterminadamente, se pueda realizar un separado de privilegios, y poder 'soltar' los privilegios cuando sea necesario,** brindando más seguridad. Esto también entra en el acuerdo de política de privilegios de OpenBSD.
Xenocara incluye varios otros proyectos, como por ejemplo [[https://www.hyperbola.info/packages/?name=xenocara-cwm|cwm]], **un manejador de ventanas para el entorno gráfico.**
===== Instalación =====
Para la instalación de Xenocara, se debe de referir a el paquete [[https://www.hyperbola.info/packages/?name=xenocara-server|xenocara-server]].
# pacman -S xenocara-server
Adicionalmente a la instalación algunos paquetes en el grupo [[https://www.hyperbola.info/groups/x86_64/xenocara-apps/|xenocara-apps]] son necesarios para ciertas labores de configuración, dichas configuraciones están mencionadas en secciones relevantes.
Finalmente, un grupo [[https://www.hyperbola.info/groups/x86_64/xenocara/|xenocara]]está disponible, el cual contiene todos los paquetes de el servidor Xenocara, y paquetes de [[https://www.hyperbola.info/groups/x86_64/xenocara-apps/|xenocara-apps]], además de fuentes, por lo que se puede considerar como una instalación más 'completa'
Por lo general desearás instalar un [[en:system:userspace:application:window_managers|window manager]] o un [[en:system:userspace:application:desktop_environments|desktop environment]] para 'usar' Xenocara.
==== Instalación de Drivers ====
El kernel de Linux-libre incluye drivers de video libres, y soporte para aceleración de hardware. Sin embargo, el usuario querra también soporte para OpenGL y aceleración 2D, la cual puede ser obtenida de esta manera:
Primero que nada, identifica tu tarjeta de video:
$ lspci | grep -e VGA -e 3D
Luego de esto y de una investigación, obtendras el paquete para tu tarjeta de video, para esto se puede utilizar un comando para revisar drivers de video libres:
$ pacman -Ss xenocara-video $$ pacman -Ss xorg-video
Xenocara busta automáticamente por los drivers instalados:
* Si no puede encontrar un driver en específico para el hardware, busca por fbdev ([[https://www.hyperbola.info/packages/?name=xorg-video-fbdev|xorg-video-fbdev]]) como predeterminado.
* Si no puede encontrarlo, busca por vesa ([[https://www.hyperbola.info/packages/?name=xenocara-video-vesa|xenocara-video-vesa]]), el driver genérico, el cual maneja un gran numero de chipsets (tarjetas de vídeo), pero no incluye acceleración 2D ni 3D, por lo que es lo más básico.
* Si vesa no puede ser encontrado, Xenocara recurrirá a el 'mode setting' de el kernel, el cual incluye acceleración GLAMOR.
Para que la aceleración de video funtione, y para que múltiples funcionalidades de el GPU funcionen, es necesario instalar un driver de video:
{| border="1" style="sortable; text-align: center; width: 100%; border-collapse:collapse; color:#262627; background-color:#f8f9fa;"
! style="background-color:#eaecf0" |Marca
! style="background-color:#eaecf0" |Driver
! style="background-color:#eaecf0" |OpenGL
! style="background-color:#eaecf0" |OpenGL (multilib)
|-
! rowspan="3" style="background-color:#eaecf0" |AMD/ATI
|-
| [[https://www.hyperbola.info/packages/?name=xorg-video-amdgpu|xorg-video-amdgpu]]
| rowspan="4" | [[https://www.hyperbola.info/packages/?name=mesa|mesa]]
| rowspan="4" | [[https://www.hyperbola.info/packages/?name=lib32-mesa|lib32-mesa]]
|-
| [[https://www.hyperbola.info/packages/?name=xenocara-video-ati|xenocara-video-ati]]
|-
! style="background-color:#eaecf0" | Intel
| [[https://www.hyperbola.info/packages/?name=xorg-video-intel|xorg-video-intel]]
|-
! style="background-color:#eaecf0" | NVIDIA
| [[https://www.hyperbola.info/packages/?name=xorg-video-nouveau|xorg-video-nouveau]]
|}
La cuarta generación de GPUs de Intel (GMA 3000 desde 2006 y adelante) quisieran usar el driver predeterminado de Xenocara, en lugar de instalar el paquete [[https://www.hyperbola.info/packages/?name=xorg-video-intel|xorg-video-intel]]. Para más información de esto, véase [[https://man.openbsd.org/OpenBSD-6.5/modesetting.4|modesetting(4)]].
Para los usuarios con GPUs de NVIDIA, Deben de encontrar el [[https://nouveau.freedesktop.org/wiki/CodeNames/|code name]] (Nombre código) de su tarjeta, y compararlo con lo que brinda [[https://nouveau.freedesktop.org/wiki/FeatureMatrix/|feature matrix]] , así verificando soporte.
Usuarios con GPUs de AMD (Tercera generación GCN desde 2014 en adelante) deben de usar el paquete [[https://www.hyperbola.info/packages/?name=xorg-video-amdgpu|xorg-video-amdgpu]], en lugar de instalar [[https://www.hyperbola.info/packages/?name=xenocara-video-ati|xenocara-video-ati]], el cual es un paquete dedicado solo para viejos GPUs de AMD ATI
Otro tipo de drivers puede ser encontrado en el grupo [[https://www.hyperbola.info/groups/x86_64/xenocara-drivers/|xenocara-drivers]].
Xenocara debe de rendir muy bien con drivers libres. Las excepciones a esta regla son GPUs recientes (especialmente GPUs de NVIDIA), los cuales no están repaldadas. Si este es el caso, se debe de utilizar el driver predeterminado de Xenocara, el cual incluye aceleración GLAMOR (véase [[https://man.openbsd.org/OpenBSD-6.5/modesetting.4|modesetting(4)]]).
=== Utilización ===
El comando Xorg no se corre directamente, el servidor es iniciado o, con un display manager o con xinit.
== Xinit ==
Xinit es un programa que le permite a el usuario iniciar el servidor Xenocara directamente. [[https://man.openbsd.org/OpenBSD-6.5/startx.1|startx(1)]] es un script front-end de [[https://man.openbsd.org/OpenBSD-6.5/xinit.1|xinit(1)]].
Xinit tipicamente es usado para iniciar Entornos de escritorio o Manejadores de ventanas.
== Instalación ==
Se debe de instalar el paquete 'xenocara-xinit'
# pacman -S xenocara-xinit