Skip to content

Latest commit

 

History

History
108 lines (66 loc) · 4.18 KB

README.md

File metadata and controls

108 lines (66 loc) · 4.18 KB

A tool to transform your ubuntu/debian into a billboard

Donwload .DEB Package

View in my blog


Execution

In order execute the application call xbillboard-start on a terminal


The boot __main__.py

The boot is used to start the application, initialize the Gtk window and build the interface.

Each screen is a gtk.gtkgl.DrawingArea in opengl mode or a gtk.DrawingArea

The boot also allows to initialize the threads for round Robin screens as well as those for synchronization


Screen Manager Screen.py

Allows you to load the cached files and make a Robin round on the list of compatible files.
the list of compatible file types is PDF JPEG JPG PNG GIF.

Each screen will be displayed during a waiting time defined in the configuration file except for gifs that last the duration of the animation. do not confuse screen and file. a file to contain a set of screens clearly for PDFs: each page is a screen and remains on screen for the time defined in the configuration file.

In case of error on a file (corrupted for example) the logo of xbillboard will be displayed instead for the duration of the waiting time


Sync & cache Sync.py

Each instance will call wget every Delay seconds to check if the file has changed or not. if yes, it will be re-downloaded.


Configuration xbillboard.conf

The configuration file is duplicated during the installation and at each launch of the application if it does not exist.

There is a default configuration file /etc/xbillboard/xbillboard.conf [default config]

The configuration file to handle is $HOME/.xbillboard/xbillboard.conf

General
Sync_Delay The waiting time between each synchronization attempt in seconds
Screen_Delay The wait time at each screen second
Sync_Directory The synchronization directory
OpenGL Use of openGl
Values : YES / NO
LayoutX Number of screens in horizontal
LayoutY Number of screens in vertical
Screen_List The list of active screens, separated by a carriage return.
The screens must be listed in the following order
| 1 | 2 | 3 |
| 4 | 5 | 6 |
Screen_Main Identifier if the main screen
Screen_Rotation Number of rotation before switching screen
Screen_Alignement Align to inside container
Format : VERTICAL::HORIZENTAL
VERTICAL Values : TOP / DOWN / CENTER
HORIZENTAL Values : LEFT / RIGHT / CENTER
Screen_Ratio Screen ratio either to FIT or to STRETCH
Values : FIT / STRETCH
ScreenX
FileList The list of files to display on the screen.
the list is separated by carriage returns
Delay This parameter is an overload of General::Screen_Delay
The wait time on the screen in question in seconds
CopyOf Allows to make a copy of another screen
Rotation This parameter is an overload of General::Screen_Rotation
Number of rotation before switching screen
Alignement This parameter is an overload of General::Screen_Alignement
Align to inside container
Format : VERTICAL::HORIZENTAL
VERTICAL Values : TOP / DOWN / CENTER
HORIZENTAL Values : LEFT / RIGHT / CENTER
Ratio This parameter is an overload of General::Screen_RatioScreen
Screen ratio either to FIT or to STRETCH
Values : FIT / STRETCH

Source and PPA Repository :

Launchpad

For Ubuntu add xbillboard daily build ppa :

Install :

sudo add-apt-repository ppa:samirkherraz/xbillboard-stable
sudo apt-get update
sudo apt-get install xbillboard

Run :

xbillboard-start

For others debian based distros you need to add this line into your sources.list file :

deb http://ppa.launchpad.net/samirkherraz/xbillboard-stable/ubuntu <code> main

replace <code> with ubuntu equivalent of your debian

Debian Ubuntu
buster bionic
stretch xenial
jessie trusty
wheezy precise