FullCircle/Basissystem/Installation

Aus C3MAWiki

Ubuntu 12.04

Diese beschreibung bezieht sich auf Ubuntu 12.04 LTS mit Stand 21.10.12. Ziel ist es den player vollständig einzurichten. Klassische Installtion mit c3ma als User.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install aptitude git vim screen openssh-server shtool
sudo aptitude install libqt4-dev protobuf-compiler libprotobuf-dev libboost1.48-all-dev cmake build-essential libhiredis-dev libcppunit-dev libcppunit-1.12-1 uuid-dev pkg-config libncurses5-dev libtool autoconf automake  g++ libmicrohttpd-dev libmicrohttpd protobuf-c-compiler libprotobuf-lite7 python-protobuf libprotobuf-dev zlib1g-dev bison flex make libftdi-dev  libftdi1 libusb-1.0-0-dev redis-server libhiredis-dev portmap nfs-common nfs-kernel-server

echo 'include /usr/local/lib' > /etc/ld.so.conf.d/local.conf
sudo ldconfig

mkdir -p /home/c3ma/Development
cd /home/c3ma/Development
git clone https://github.com/C3MA/fullcircle.git
git clone https://code.google.com/p/linux-lighting/ ola
cd ola/
autoreconf -i
./configure --enable-python-libs
make
make check
sudo make install
make distclean
cd ../fullcircle
make
sudo make install
make distclean
git checkout -b remotes/origin/sp-player
make
sudo make install
make distclean
cd /etc/redis/
# bind auskommentieren um im Netzwerk verfügbar zu sein.
sudo vim redis.conf
sudo service redis-server restart
sudo mkdir -p /srv/nfs
sudo chown c3ma:c3ma /srv/nfs/
mkdir -p /srv/nfs/input/
mkdir -p /srv/nfs/output/
mkdir -p /srv/nfs/priority/
mkdir -p /srv/nfs/fallback/
mkdir -p /srv/nfs/config
chmod a+w /srv/nfs/input/
# portmap: ALL eintragen mit
sudo vim /etc/hosts.allow
# /srv/nfs	10.23.42.0/255.255.255.0(rw,async,no_subtree_check) eintragen mit
sudo vim /etc/exports
sudo service nfs-kernel-server restart
# /home/c3ma/.fullcirclerc erstellen

FullCircle/Aufbau Als Beispiel

Ubuntu 12.10

Diese beschreibung bezieht sich auf Ubuntu 12.10 LTS mit Stand 07.04.2013. Ziel ist es den player vollständig einzurichten. Klassische Installtion mit c3ma als User.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install aptitude git vim screen openssh-server shtool
sudo aptitude install libqt4-dev protobuf-compiler libprotobuf-dev libboost1.50-all-dev cmake build-essential libhiredis-dev libcppunit-dev libcppunit-1.12-1 uuid-dev pkg-config libncurses5-dev libtool autoconf automake  g++ libmicrohttpd-dev libmicrohttpd10 protobuf-c-compiler libprotobuf-lite7 python-protobuf libprotobuf-dev zlib1g-dev bison flex make libftdi-dev  libftdi1 libusb-1.0-0-dev redis-server libhiredis-dev portmap nfs-common nfs-kernel-server

echo 'include /usr/local/lib' > /etc/ld.so.conf.d/local.conf
sudo ldconfig

mkdir -p /home/c3ma/Development
cd /home/c3ma/Development
git clone https://github.com/C3MA/fullcircle.git
cd ../Downloads
wget http://open-lighting.googlecode.com/files/ola-0.8.27.tar.gz
tar -xf ola-0.8.27.tar.gz
cp -r ola-0.8.27 ../Development/ola/
cd ../Development/ola/
autoreconf -i
./configure --enable-python-libs
make
make check
sudo make install
make distclean
cd ../fullcirlce
make
sudo make install
make distclean
git checkout -b remotes/origin/sp-player
make
sudo make install
make distclean
cd /etc/redis/
# bind auskommentieren um im Netzwerk verfügbar zu sein.
sudo vim redis.conf
sudo service redis-server restart
sudo mkdir -p /srv/nfs
sudo chown c3ma:c3ma /srv/nfs/
mkdir -p /srv/nfs/input/
mkdir -p /srv/nfs/output/
mkdir -p /srv/nfs/priority/
mkdir -p /srv/nfs/fallback/
mkdir -p /srv/nfs/config
chmod a+w /srv/nfs/input/
# portmap: ALL eintragen mit
sudo vim /etc/hosts.allow
# /srv/nfs	10.23.42.0/255.255.255.0(rw,async,no_subtree_check) eintragen mit
sudo vim /etc/exports
sudo service nfs-kernel-server restart
# /home/c3ma/.fullcirclerc erstellen

Olad

Nachdem Olad gestartet wurde, muss noch das verwendete Universum aktiviert werden. http://<IP des Rechners>:9090/ Dort ein neue Gerät anlegen.

Autostart

Ab der Ubuntu version 12.04 wird Upstart als Init-system verwendet.

fc-player

Für den Fullcircle-Player ist folgendes Script zu verwenden:

# file: /etc/init/fc-player.conf
#
# This configuration starts multiple instances of fc-player using different ARTNET universes.
# So one PC can control two different wall installations.
start on (net-device-up IFACE!=lo
	  and started ola
         and local-filesystems
         and runlevel [2345])
stop on runlevel [016]

setuid c3ma

expect fork

script
/usr/local/bin/fc-player -d -c /home/c3ma/.fullcirclerc 2>&1 > /var/log/fc-player/wand.log &
/usr/local/bin/fc-player -d -c /home/c3ma/.fullcirclerc_decke 2>&1 > /var/log/fc-player/decke.log &
# /home/c3ma/Development/fullcircle/build/src/fc-player -c /home/c3ma/.fullcirclerc --port 24567 &
end script

pre-stop script
killall fc-player
end script

Ort für die Log-Dateien bereit stellen:

sudo mkdir -p /var/log/fc-player
sudo chown c3ma:c3ma /var/log/fc-player

Die aktuellste Version ist unter https://github.com/C3MA/fc_config zu finden.

olad

Folgende Abhängigkeit muss auch aufgelöst werden:

# config-file: /etc/init/ola.conf
start on (net-device-up IFACE!=lo
          and local-filesystems
          and runlevel [2345])
stop on runlevel [016]

respawn
exec su -s /bin/sh -c 'exec "$0" "$@"' c3ma -- \
  /usr/local/bin/olad