[] [] [] []
Next: Configuring the UBS Up: Unattended Broadcasting System User Previous: Introduction   Contents

Installing the UBS

Currently, the UBS is only distributed as a source tarball, which means that the target system must have the standard set of development tools (gcc, make, ld) to build software by hand. The basic installation process for the UBS is as such:
  1. ./configure
  2. make
  3. make install
  4. Optionally build and install extra modules in the contrib directory of the source tree (see the file contrib/README in the source distribution about available modules).
  5. Create and edit the ubs.conf configuration file
Although binary distributions of the UBS are planned in the future, they will probably not be available until the codebase has reached a greater level of maturity. By default, the UBS is installed into /usr/local/ubs. If a different installation path is desired, specify this by passing --prefix=PATH to the configure script.
After building the UBS, install the executables by running make install. This will create the UBS prefix directory, as well as several subdirectories. By default, the following directories are created underneath the prefix directory:
bin
Where the actual UBS binaries go. By default, the main UBS control program is simply called "ubs", and any daemons are in the format "ubs-name", where "name" describes the function of the module. If custom modules are being used, it is important that they follow this convention so they are visible to the main UBS control program.
etc
Location for configuration files. Upon a default installation, two files are placed in this directory: ubs.conf.default and help.conf. Do not edit help.conf, as it is used by the UBS shell for its help system. However, a syntactically correct copy of ubs.conf must be found in this directory in order for the UBS to start. It is recommended to copy the default file to ubs.conf and edit the file according to the particular site configuration (see chapter "Configuring the UBS").
include
Directory for UBS header files. Only needed for building UBS modules (see chapter "Writing UBS Modules" for more information).
lib
Place for the UBS libraries, which are currently built as statically linked files. Although it is not essential for these libraries to be installed in the system, they are necessary for building any extra modules using the UBS API.
log
Where the UBS logs all activities. By default, only two logging targets are specified, one for songs played on the error, and another for debugging information. However, daemons are not confined to logging to these files, and their logging locations will generally be specified in the ubs.conf file. It is advised to keep all log files in this directory so that the UBS shell has access to their contents.
tmp
Storage location for temporary files, such as cached data, and other scratch files created by UBS daemons.
var
Information about the UBS daemons is stored here, such as the queue, the process ID's of the running daemons and their respective status, and the song currently being played on the air.
Note that actual music directories are not accounted for here. The UBS is capable of serving music from any location on the system, as long as it has read permissions to these files. However, it is not necessary to place music files for the UBS underneath the installation tree.
The UBS source distribution also comes with other daemons or event modules (used by the ubs-event daemon) that may be handy in setting up the UBS. While these modules are not essential to the operation and setup of the UBS, they may be useful to some users. These events are not built by default with the make command, and must be built by hand. This can be done by entering the contrib directory of the UBS source tree, and running make there. Currently, the list of contributed modules includes:
Daemons
ubs-monitor
Checks to see if the UBS daemons have crashed or malfunctioned, and sends alerts via pager or email.
Events
pick_song
Picks a random filename from a directory of music files. Useful for station ID or similar events.
Also, the UBS comes with a variety of graphical frontends that help control the various daemon processes. While the UBS comes with a command-line interface capable of controlling the daemons (see chapter "Running the UBS"), graphical user interfaces may be easier to operate for many users. Also, some interfaces may help the UBS to be accessible via the web, for easy remote access. These frontends are not built by default, and are stored in the frontends directory of the UBS source tree. Currently included frontends are:
php
A set of PHP functions that allow the UBS to be controlled from a remote web browser.
Future frontends that are planned include:
ncurses
A console based replacement for the shell, with a bit more interactivity.
gtk
X-based GTK client
cocoa
OS X client


[] [] [] []
Next: Configuring the UBS Up: Unattended Broadcasting System User Previous: Introduction   Contents
2003-10-30