7 releases
0.3.0 | Mar 28, 2025 |
---|---|
0.2.8 | Feb 16, 2025 |
0.2.7 | Jan 29, 2025 |
0.2.5 | Jul 26, 2024 |
0.2.3 | Jun 20, 2022 |
#120 in GUI
129 downloads per month
200KB
2K
SLoC
Arexibo
Arexibo is an unofficial alternate Digital Signage Player for Xibo, implemented mostly in Rust but making use of Qt GUI components, for Linux platforms.
It is currently still incomplete. Don't expect more complex features to work unless tested.
Installation
Currently, no binary builds are provided.
To build from source, you need:
-
The Rust toolchain, version >= 1.75. Refer to https://rustup.rs/ for the easiest way to install, if the Linux distribution provided package is too old.
-
CMake and a C++ compiler.
-
Qt 6 with the QtWebEngine component and its development headers.
-
Development headers for
dbus
(>= 1.6),zeromq
(>= 4.1) as well aspkg-config
.
To build, run:
$ cargo build --release
The binary is placed in target/release/arexibo
and can be run from there.
To install, run:
$ cargo install --path . --root /usr
The will install the binary to /usr/bin/arexibo
. It requires no other files
at runtime, except for the system libraries it is linked against.
Builds have been tested with the available dependency library versions on Fedora
41, RHEL 9 with EPEL and Ubuntu 24.04. Note that in order to play some media
like mp4 videos, you will require a ffmpeg
package that includes some codecs
that RHEL/Fedora don't include in their packages, e.g. from rpmfusion.org.
For RHEL derived distributions, install cmake gcc-c++ cargo dbus-devel zeromq-devel qt6-qtwebengine-devel
. For Debian derived, install cmake g++ cargo libdbus-1-dev libzmq3-dev qt6-webengine-dev
.
Usage
Create a new directory where Arexibo can store configuration and media files. Then, at first start, use the following command line to configure the player:
arexibo --host <https://my.cms/> --key <key> <dir>
Further configuration options are --display-id
(which is normally
auto-generated from machine characteristics) and --proxy
(if needed).
Arexibo will cache the configuration in the directory, so that in the future you only need to start with
arexibo <dir>
Log messages are printed to stdout. The GUI window will only show up once the display is authorized.
Standalone setup with X server
The following example systemd service file shows how to to start an X server with Arexibo and no DPMS/screensaver:
[Unit]
Description=Start X with Arexibo player
After=network-online.target
Requires=network-online.target
[Service]
Type=simple
ExecStart=/usr/bin/xinit /usr/bin/arexibo /home/xibo/env -- :0 vt2 -s 0 -v -dpms
User=xibo
Restart=always
RestartSec=60
Environment=NO_AT_BRIDGE=1
[Install]
WantedBy=multi-user.target
Dependencies
~24–34MB
~649K SLoC