Primeros pasos con LineXinBar: Arch, Debian, Ubuntu, Fedora, NixOS
Pruébelo en una ventana
No hace falta salir de su escritorio para verlo. Con Rust 1.89 o posterior y las dependencias de compilación instaladas, un solo script compila LineXinBar y lo abre como una ventana dentro de la sesión que ya tiene.
git clone https://github.com/Petexy/LineXinBar.git
cd LineXinBar
./scripts/run-nested.sh
El escritorio anidado tiene su propio bus de sesión, así que las aplicaciones que abra dentro se quedan dentro. Al cerrar la ventana, termina. ./scripts/run-nested.sh 3 abre tres pantallas virtuales en lugar de una, para probar el lado de las varias pantallas.
Dependencias de compilación, para cada distribución:
sudo pacman -S --needed rust pkgconf clang wayland libinput seatd systemd-libs libdrm \
mesa libxkbcommon libglvnd libx11 libxcb libxcursor libxi libxkbcommon-x11 \
alsa-lib ffmpeg libpipewire
sudo apt install build-essential pkg-config cargo clang libwayland-dev libinput-dev \
libseat-dev libudev-dev libdrm-dev libgbm-dev libxkbcommon-dev \
libegl1-mesa-dev libx11-dev libxcb1-dev libxcursor-dev libxi-dev \
libxkbcommon-x11-dev libasound2-dev libavcodec-dev libavformat-dev \
libavutil-dev libswscale-dev libpipewire-0.3-dev
En Debian 13, instale Rust con rustup: el de la distribución es más antiguo de lo que necesita la compilación.
sudo dnf install cargo pkgconf-pkg-config clang wayland-devel libinput-devel \
libseat-devel systemd-devel libdrm-devel mesa-libgbm-devel \
libxkbcommon-devel mesa-libEGL-devel libX11-devel libxcb-devel \
libXcursor-devel libXi-devel libxkbcommon-x11-devel alsa-lib-devel \
ffmpeg-free-devel pipewire-devel
Instalar un paquete
Cada versión publicada en GitHub lleva adjuntos paquetes listos para Arch, Debian y Ubuntu, y Fedora. O compílelos usted desde el repositorio: las recetas están en él.
./packaging/build.sh arch -- --syncdeps
Genera un PKGBUILD para el repositorio y ejecuta makepkg; los paquetes quedan en packaging/out/arch/.
sudo apt install dpkg-dev build-essential pkg-config clang rustup \
libasound2-dev libgbm-dev libavcodec-dev libavformat-dev libavutil-dev \
libswscale-dev libinput-dev libpipewire-0.3-dev libseat-dev libudev-dev \
libxkbcommon-dev
./packaging/build.sh debian
El compilador lo comprueba todo primero y, si falta algo, lo nombra en una sola línea de apt install.
sudo dnf install rpm-build dnf5-plugins git-core
sudo dnf builddep packaging/fedora/lxb-desktop.spec
./packaging/build.sh fedora
Los RPM binarios y de código fuente se copian en packaging/out/fedora/. Basta con un contenedor fedora-toolbox para compilar.
nix build path:.#linexinbar # the whole desktop, as one derivation
nix build path:.#lxb-compositor # the compositor alone
El repositorio es un flake fijado, y nix-build packaging/nix funciona sin flakes.
Instale lxb-compositor y lxb-desktop: el compositor, y el shell con su portal, su coordinador de actualizaciones y la entrada de sesión.
Iniciar la sesión
Una vez instalados los paquetes, elija LineXinBar en la lista de sesiones de su pantalla de inicio de sesión, como cualquier otro escritorio.
Desde una consola de texto, lxb --shell lo arranca todo; al salir del shell se cierra la sesión en lugar de quedarse una pantalla vacía. La pantalla de inicio de sesión Console Experience está hecha para acompañarlo y pasa al shell como una sola imagen continua.
La configuración vive en ~/.config/lxb/: la escribe sobre todo la propia columna de Ajustes del shell, y todo se puede leer y editar a mano.
Paquetes opcionales
Tres integraciones son paquetes aparte, para que un equipo que nunca emula una consola no cargue con nada de ello. Instale uno con la sesión en marcha y su fila aparece en unos segundos.
lxb-retroarchSus propios juegos de consola con RetroArch, y los núcleos y las portadas se descargan solos.
lxb-heroicSu biblioteca de Epic Games a través del Flatpak de Heroic Games Launcher.
lxb-rpcs3Juegos de PlayStation 3 con RPCS3, con sus vídeos, su música y sus trofeos.
Cada uno va ligado a la versión del shell con la que se compiló. Steam no necesita un paquete propio, solo el cliente de Steam de Valve.
Lo que necesita
- Linux, con un controlador gráfico capaz de manejar las pantallas (DRM/KMS) y un controlador OpenGL ES que funcione; si hay un controlador Vulkan, se usa.
- systemd-logind o seatd, que entrega a la sesión sus pantallas y dispositivos de entrada.
- udev, para enterarse de cuándo se conectan pantallas y mandos.
- Opcional: Xwayland para los programas X11, PipeWire para el sonido y la pantalla compartida, Flatpak para las integraciones, ddcutil para el brillo de los monitores externos.
Todo el hardware se descubre sobre la marcha —cada pantalla, cada modo y cada GPU—, así que no hay que configurar nada para su equipo de antemano.
Hardware
LineXinBar está en desarrollo temprano. Hasta ahora se ha probado sobre todo en una tarjeta gráfica AMD con dos pantallas, además de en sesiones anidadas.
Nada está atado a ese hardware —la vía para varias GPU existe—, pero otros fabricantes de gráficos, los portátiles de juego y los equipos con varias GPU necesitan más gente que los pruebe. Si lo usa en algo nuevo, un informe de lo que funcionó y lo que no es una de las cosas más útiles que puede enviar.