merging the temporary-2466 branch back to the trunk;

the branch is now dead
This commit is contained in:
fgerlits 2006-11-19 17:22:58 +00:00
parent d763a35cf6
commit 32aec7a7ac
42 changed files with 719 additions and 613 deletions

View File

@ -27,12 +27,12 @@
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
Installing on Ubuntu Dapper and Debian Installing on Ubuntu Dapper
http://code.campware.org/projects/campcaster/wiki/DevelopmentEnvironment doc/installUbuntu.html
Installing on Other Platforms Installing on other platforms
doc/install.html doc/install.html
Campcaster HomePage Campcaster home page
http://campcaster.campware.org/ http://campcaster.campware.org/

View File

@ -27,18 +27,20 @@
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
Building on Ubuntu Dapper or Debian Installing on Ubuntu Dapper
doc/installUbuntu.html
Installing on other platforms
doc/install.html
Developing on Ubuntu Dapper
http://code.campware.org/projects/campcaster/wiki/DevelopmentEnvironment http://code.campware.org/projects/campcaster/wiki/DevelopmentEnvironment
Installing on Other Platforms Developing on other platforms
doc/install.html
doc/gettingStarted.html doc/gettingStarted.html
User Documentation User manual
http://code.campware.org/manuals/campcaster/1.0/ http://code.campware.org/manuals/campcaster/1.1/
Developer Documentation Campcaster home page
doc/index.html
Campcaster HomePage
http://campcaster.campware.org/ http://campcaster.campware.org/

View File

@ -144,14 +144,6 @@ doc_tmpdir=$ls_tmpdir/doc
etc_tmpdir=$ls_tmpdir/etc etc_tmpdir=$ls_tmpdir/etc
tmp_tmpdir=$ls_tmpdir/tmp tmp_tmpdir=$ls_tmpdir/tmp
boost_dir=$toolsdir/boost
boost_version=boost-1.33.1
boost_tmpdir=$tools_tmpdir/boost
libxmlxx_dir=$toolsdir/libxml++
libxmlxx_version=libxml++-2.8.1
libxmlxx_tmpdir=$tools_tmpdir/libxml++
cxxunit_dir=$toolsdir/cppunit cxxunit_dir=$toolsdir/cppunit
cxxunit_version=cppunit-1.10.2 cxxunit_version=cppunit-1.10.2
cxxunit_tmpdir=$tools_tmpdir/cppunit cxxunit_tmpdir=$tools_tmpdir/cppunit
@ -164,30 +156,10 @@ xmlrpcxx_dir=$toolsdir/xmlrpc++
xmlrpcxx_version=xmlrpc++-20040713 xmlrpcxx_version=xmlrpc++-20040713
xmlrpcxx_tmpdir=$tools_tmpdir/xmlrpc++ xmlrpcxx_tmpdir=$tools_tmpdir/xmlrpc++
lcov_dir=$toolsdir/lcov
lcov_version=lcov-1.3
lcov_tmpdir=$tools_tmpdir/lcov
gtk_dir=$toolsdir/gtk+
gtk_version=gtk+-2.6.10
gtk_tmpdir=$tools_tmpdir/gtk+
gtkmm_dir=$toolsdir/gtkmm
gtkmm_version=gtkmm-2.6.5
gtkmm_tmpdir=$tools_tmpdir/gtkmm
gstreamer_dir=$toolsdir/gstreamer gstreamer_dir=$toolsdir/gstreamer
gstreamer_version=gstreamer-0.8.12 gstreamer_version=gstreamer-0.8.12
gstreamer_tmpdir=$tools_tmpdir/gstreamer gstreamer_tmpdir=$tools_tmpdir/gstreamer
icu_dir=$toolsdir/icu
icu_version=icu-3.0
icu_tmpdir=$tools_tmpdir/icu
curl_dir=$toolsdir/curl
curl_version=curl-7.12.3
curl_tmpdir=$tools_tmpdir/curl
taglib_dir=$toolsdir/taglib taglib_dir=$toolsdir/taglib
taglib_version=taglib-1.4 taglib_version=taglib-1.4
taglib_tmpdir=$tools_tmpdir/taglib taglib_tmpdir=$tools_tmpdir/taglib
@ -264,20 +236,9 @@ mkdir -p $ls_tmpdir
mkdir -p $tools_tmpdir mkdir -p $tools_tmpdir
#-------------------------------------------------------------------------------
# Copy needed files to the temporary directory
#-------------------------------------------------------------------------------
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
# Copy the tools sources # Copy the tools sources
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
mkdir -p $boost_tmpdir
cp -pPR $boost_dir/$boost_version $boost_tmpdir
mkdir -p $libxmlxx_tmpdir
cp -pPR $libxmlxx_dir/$libxmlxx_version $libxmlxx_tmpdir
mkdir -p $cxxunit_tmpdir mkdir -p $cxxunit_tmpdir
cp -pPR $cxxunit_dir/$cxxunit_version $cxxunit_tmpdir cp -pPR $cxxunit_dir/$cxxunit_version $cxxunit_tmpdir
@ -287,24 +248,9 @@ cp -pPR $libodbcxx_dir/$libodbcxx_version $libodbcxx_tmpdir
mkdir -p $xmlrpcxx_tmpdir mkdir -p $xmlrpcxx_tmpdir
cp -pPR $xmlrpcxx_dir/$xmlrpcxx_version $xmlrpcxx_tmpdir cp -pPR $xmlrpcxx_dir/$xmlrpcxx_version $xmlrpcxx_tmpdir
mkdir -p $lcov_tmpdir
cp -pPR $lcov_dir/$lcov_version $lcov_tmpdir
mkdir -p $gtk_tmpdir
cp -pPR $gtk_dir/$gtk_version $gtk_tmpdir
mkdir -p $gtkmm_tmpdir
cp -pPR $gtkmm_dir/$gtkmm_version $gtkmm_tmpdir
mkdir -p $gstreamer_tmpdir mkdir -p $gstreamer_tmpdir
cp -pPR $gstreamer_dir/$gstreamer_version $gstreamer_tmpdir cp -pPR $gstreamer_dir/$gstreamer_version $gstreamer_tmpdir
mkdir -p $icu_tmpdir
cp -pPR $icu_dir/$icu_version $icu_tmpdir
mkdir -p $curl_tmpdir
cp -pPR $curl_dir/$curl_version $curl_tmpdir
mkdir -p $taglib_tmpdir mkdir -p $taglib_tmpdir
cp -pPR $taglib_dir/$taglib_version $taglib_tmpdir cp -pPR $taglib_dir/$taglib_version $taglib_tmpdir

View File

@ -55,7 +55,7 @@ printUsage()
echo " -D, --database The name of the Campcaster database."; echo " -D, --database The name of the Campcaster database.";
echo " [default: Campcaster]"; echo " [default: Campcaster]";
echo " -g, --apache-group The group the apache daemon runs as."; echo " -g, --apache-group The group the apache daemon runs as.";
echo " [default: www-data]"; echo " [default: apache]";
echo " -r, --www-root The root directory for web documents served"; echo " -r, --www-root The root directory for web documents served";
echo " by apache [default: /var/www]"; echo " by apache [default: /var/www]";
echo " -s, --dbserver The name of the database server host."; echo " -s, --dbserver The name of the database server host.";
@ -145,7 +145,7 @@ if [ "x$dbpassword" == "x" ]; then
fi fi
if [ "x$apache_group" == "x" ]; then if [ "x$apache_group" == "x" ]; then
apache_group=www-data; apache_group=apache;
fi fi
if [ "x$postgresql_dir" == "x" ]; then if [ "x$postgresql_dir" == "x" ]; then
@ -269,70 +269,17 @@ ${postgresql_init_script} start
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
# Create the necessary database user and database itself # Create the necessary database user and database itself
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
echo "Creating database and database user..."; ${install_bin}/createDatabase.sh --database=${ls_database} \
--dbuser=${ls_dbuser} \
# FIXME: the below might not work for remote databases --dbpassword=${ls_dbpassword} \
--dbserver=${ls_dbserver}
if [ "x$ls_dbserver" == "xlocalhost" ]; then
su - $postgres_user -c "echo \"CREATE USER $ls_dbuser \
ENCRYPTED PASSWORD '$ls_dbpassword' \
CREATEDB NOCREATEUSER;\" \
| psql template1" \
|| echo "Couldn't create database user $ls_dbuser.";
su - $postgres_user -c "echo \"CREATE DATABASE \\\"$ls_database\\\" \
OWNER $ls_dbuser ENCODING 'utf-8';\" \
| psql template1" \
|| echo "Couldn't create database $ls_database.";
else
echo "Unable to automatically create database user and table for";
echo "remote database $ls_dbserver.";
echo "Make sure to create database user $ls_dbuser with password";
echo "$ls_dbpassword on database server at $ls_dbserver.";
echo "Also create a database called $ls_database, owned by this user.";
echo "";
echo "The easiest way to achieve this is by issuing the following SQL";
echo "commands to PostgreSQL:";
echo "CREATE USER $ls_dbuser";
echo " ENCRYPTED PASSWORD '$ls_dbpassword'";
echo " CREATEDB NOCREATEUSER;";
echo "CREATE DATABASE \"$ls_database\"";
echo " OWNER $ls_dbuser ENCODING 'utf-8';";
fi
# TODO: check for the success of these operations somehow
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
# Create the ODBC data source and driver # Create the ODBC data source and driver
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
echo "Creating ODBC data source and driver..."; ${install_bin}/createOdbcDataSource.sh --database=${ls_database} \
--dbserver=${ls_dbserver}
if [ -f /usr/lib/libodbcpsql.so ]; then
odbcinst_template=$install_etc/odbcinst_template
elif [ -f /usr/lib/odbc/psqlodbc.so ]; then
odbcinst_template=$install_etc/odbcinst_old_debian_template
elif [ -f /usr/lib/odbc/psqlodbcw.so ]; then
odbcinst_template=$install_etc/odbcinst_new_debian_template
else
echo "###############################"
echo "Postgresql driver for unixODBC not found;"
echo "please register the PostgreSQL ODBC driver manually."
echo "###############################"
fi
odbc_template=$install_etc/odbc_template
odbc_template_tmp=/tmp/odbc_template.$$
# check for an existing PostgreSQL ODBC driver, and only install if necessary
odbcinst_res=`odbcinst -q -d | grep "\[PostgreSQL\]"`
if [ "x$odbcinst_template" != "x" ] && [ "x$odbcinst_res" == "x" ]; then
echo "Registering ODBC PostgreSQL driver...";
odbcinst -i -d -v -f $odbcinst_template || exit 1;
fi
echo "Registering Campcaster ODBC data source...";
odbcinst -i -s -l -f $odbc_template || exit 1;
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------

View File

@ -169,7 +169,7 @@ ls_scheduler_host=$hostname
ls_scheduler_port=$scheduler_port ls_scheduler_port=$scheduler_port
ls_scheduler_urlPrefix= ls_scheduler_urlPrefix=
ls_scheduler_xmlRpcPrefix=RC2 ls_scheduler_xmlRpcPrefix=RC2
ls_tmp_dir=$tmpdir ls_tmp_dir=$installdir/tmp
ls_scheduler_daemon_command="$scheduler_bin_dir/scheduler_devenv.sh" ls_scheduler_daemon_command="$scheduler_bin_dir/scheduler_devenv.sh"
ls_audio_output_device=$output_device ls_audio_output_device=$output_device

View File

@ -16,14 +16,17 @@ Development Loan Fund</a>, under the GNU <a
<li>Version: $Revision$</li> <li>Version: $Revision$</li>
<li>Location: $URL$</li> <li>Location: $URL$</li>
</ul> </ul>
<h1>Scope</h1> <h1>Scope</h1>
This document lists the development tools that are expected to be on a This document lists the development tools that are expected to be on a
system that intends to compile and develop Campcaster.<br> system that intends to compile and develop Campcaster.<br>
<h1>Introduction</h1> <h1>Introduction</h1>
Campcaster expects a generic development environment on the system to Campcaster expects a generic development environment on the system to
be built, which is basically a generic install of a POSIX-compliant be built, which is basically a generic install of a POSIX-compliant
operating system, with a set of GNU development tools and some operating system, with a set of GNU development tools and some
utilities.<br> utilities.<br>
<h1>Tools</h1> <h1>Tools</h1>
The following tools are expected on the development system:<br> The following tools are expected on the development system:<br>
<ul> <ul>
@ -58,15 +61,15 @@ environment variable WANT_AUTOCONF_2_5="1" before compiling the tools.)</li>
<li><a href="http://ltp.sourceforge.net/coverage/lcov.php">lcov</a> &gt;= 1.4</li> <li><a href="http://ltp.sourceforge.net/coverage/lcov.php">lcov</a> &gt;= 1.4</li>
</li> </li>
</ul> </ul>
<h1>Libraries</h1> <h1>Libraries</h1>
Note that if you are installing these libraries as binary packages, then you Note that if you are installing these libraries as binary packages, then you
will need to install the "development" package, as well. (For example, for will need to install the "development" package, as well. (For example, for
libpng, you might need to install the <code>libpng</code> and libpng, you might need to install the <code>libpng</code> and
<code>libpng-dev</code> packages. The package names vary by distribution.) <code>libpng-dev</code> packages. The package names vary by distribution.)
<br>
<h2>Required libraries<br> <p>The following development libraries are expected on the development
</h2>
The following development libraries are expected on the development
system:<br> system:<br>
<ul> <ul>
<li><a href="http://www.unixodbc.org/">unixODBC</a> &gt;= 2.2</li> <li><a href="http://www.unixodbc.org/">unixODBC</a> &gt;= 2.2</li>
@ -100,5 +103,20 @@ system:<br>
<li><a href="http://www.feep.net/libtar/">libtar</a> &gt;= 1.2.11</li> <li><a href="http://www.feep.net/libtar/">libtar</a> &gt;= 1.2.11</li>
</ul> </ul>
<h1>External services</h1>
The following external services are expected on the system:<br>
<ul>
<li>a <a href="http://www.postgresql.org/">PostgreSQL</a> database,
version 8.1 or higher</li>
<li><a href="http://httpd.apache.org/">Apache</a> httpd server,
version 2.0 or higher</li>
<li><a href="http://www.php.net/">PHP</a> interpreter</li>
<li><a href="http://www.php.net/">PHP</a> apache module</li>
<li><a href="http://www.php.net/domxml">DOMXML</a> PHP extension
- an XMLv2 module for PHP</li>
<li><a href="http://www.postgresql.org/">PostgreSQL</a> support in PHP</li>
<li><a href="http://pear.php.net/">PEAR</a></li></body>
</body> </body>
</html> </html>

View File

@ -16,214 +16,153 @@ Development Loan Fund</a>, under the GNU <a
<li>Version: $Revision$</li> <li>Version: $Revision$</li>
<li>Location: $URL$</li> <li>Location: $URL$</li>
</ul> </ul>
<h1>Scope</h1> <h1>Scope</h1>
This document describes how to compile and install Campcaster on your This document describes how to compile and install Campcaster on your
system.<br> system.
<h1>Introduction</h1>
Campcaster has an installation procedure to make sure Campcaster will
work properly on your system. This procedure consists of the following
steps:<br>
<ul>
<li>installing required compilation tools</li>
<li>installing and configuring required external services</li>
<li>obtaining Campcaster sources</li>
<li>compiling Campcaster</li>
<li>installing Campcaster</li>
<li>try it out</li>
</ul>
<h2>For the impatient</h2>
Those who think they know everything, the quick steps to install
Campcaster are the following. (To run <code>make</code>, you need write
permissions in the <code>prefix</code> directory; to run
<code>make install</code> and <code>postInstallStation.sh</code>,
you need to be root.)
<pre><code>
wget http://switch.dl.sourceforge.net/sourceforge/campcaster/campcaster-&lt;version&gt;.tar.bz2
wget http://switch.dl.sourceforge.net/sourceforge/campcaster/campcaster-libraries-&lt;version&gt;.tar.bz2
tar xfj campcaster-&lt;version&gt;.tar.bz2
tar xfj campcaster-libraries-&lt;version&gt;.tar.bz2
cd campcaster-&lt;version&gt;
./configure --prefix=/usr/local/campcaster --with-apache-group=apache --with-www-docroot=/var/www
make
make install
./bin/postInstallStation.sh -d /usr/local/campcaster -g apache -r /var/www
/usr/local/campcaster/bin/scheduler.sh start
<br></code></pre>
Then try the URL <code>http://localhost/campcaster/</code> <h1>Installation instructions</h1>
and log in using username: <code>root</code>, password: <code>q</code>.<br>
<br>
Everyone else, please read the lines below carefully.<br> <h2>1. Install the tools, libraries and services</h2>
<h1>Installing required compilation tools</h1> First, you need to install the <a href="developmentTools.html">tools,
Make sure that all the <a href="developmentTools.html">required compilation libraries and services</a> needed to compile and run Campcaster.
tools and libraries</a> are installed. You can either install pre-packaged You can either install pre-packaged
versions, if they are provided for your distribution; or you can download versions, if they are provided for your distribution; or you can download
them from the URLs listed, and compile them yourself (follow the instructions them from the URLs listed, and compile them yourself (follow the instructions
included with each tool and library).<br> included with each tool and library).
<h1>Installing and configuring required external services</h1> <p>If you are using Ubuntu Dapper (or later), then the easiest way of doing this
Campcaster depends on some external services to be able to run, most is to run the
importantly a PHP-capable web server (we assume apache), and a database <a href="http://code.campware.org/projects/campcaster/wiki/DevelopmentEnvironment#a1.Installpackages">
server (we assume PostgreSQL). <br> <code>apt-get install</code> command</a> given on our wiki page.
<h2>Database</h2>
Campcaster expects a <a href="http://www.postgresql.org/">PostgreSQL</a>
database, version 7.4 or later, to be installed on your system. You will
also need a postgresql driver for unixODBC; this may be in the unixODBC
package, or may need to be installed separately.<br>
<br>
The database will be accessed through TCP/IP, usually via the localhost
interface. To achieve this, make sure to make the following changes to
the PostgreSQL configuration files.<br>
<br>
Edit <code>postgresql.conf</code>
(usually <code>/var/lib/postgres/data/postgresql.conf</code>), to have
to following line:<br>
<br>
<pre><code>tcpip_socket = true</code></pre>
<br>
and also edit <code>pg_hba.conf</code> (usually <code>/var/lib/postgres/data/pg_hba.conf</code>)
to include the following line, before any other lines starting with "host":<br>
<br>
<pre><code>host&nbsp;&nbsp;&nbsp; all&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; all&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 127.0.0.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 255.255.255.255&nbsp;&nbsp; password<br><br></code></pre>
These changes will make sure that the PostgreSQL database is accessible
via TCP/IP from localhost.<br>
<h2>Web server</h2>
Campcaster expects an apache web server with PHP and some additional
PHP modules installed. In particular:
<ul>
<li><a href="http://httpd.apache.org/">Apache</a> httpd server,
either version 1.x or 2.x<br>
</li>
<li><a href="http://www.php.net/">PHP</a> interpreter</li>
<li><a href="http://www.php.net/">PHP</a> apache module</li>
<li><a href="http://www.php.net/domxml">DOMXML</a> PHP extension - an
XMLv2 module for PHP<br>
</li>
<li><a href="http://www.postgresql.org/">PostgreSQL</a> support in PHP</li>
<li><a href="http://pear.php.net/">PEAR</a></li>
</ul>
Check php.ini file if "upload_max_filesize" fits the needs of an radio-station. On our experience, soundfiles can be up to 100MB.
If you changed this setting, increase "post_max_size" to something bigger than "upload_max_filesize".
<br><br>
Please note the user group your apache daemon is running as (usually <code>apache</code>
or <code>www-data</code>), you will need this information later. Later
on in this document, this group will be referred to as <code>&lt;apache-group&gt;</code>. For the automatic install scripts to work, the user
running them must either be <code>root</code>, or belong to
<code>&lt;apache-group&gt;</code>.<br>
<br>
Also note the document root directory for your apache installation
(usually <code>/var/www</code> or <code>/var/www/htdocs</code>
or <code>/var/www/&lt;yourhost&gt;/htdocs</code>). Later on in this
document, this directory will be referred to as <code>&lt;www-root&gt;</code>.<br>
<h2>ALSA</h2>
Please check if ALSA is installed and configured properly.
File /proc/asound/cards should contain entry(s) for your soundcard(s).
<br>
If not, maybe you do not have suitable ALSA module for your soundcard on the system. Search you package manager for "alsa-modules" and figure out which are suitable for your kernel version and architecture.
or one other from <a href="http://packages.debian.org/cgi-bin/search_packages.pl?version=stable&subword=1&exact=&arch=any&releases=all&case=insensitive&keywords=alsa-modules&searchon=names" target="_blank">http://packages.debian.org/cgi-bin/search_packages.pl...</a>.
<br>
Then run "alsaconf" and check /proc/asound/cards again.
<h1>Obtaining Campcaster sources</h1> <h2>2. Obtain the Campcaster sources</h2>
Campcaster sources come in two different tarballs:<br> If you are reading this, you probably already have the sources, so you can
<ul> skip to the next step.
<li><code>campcaster-&lt;version&gt;.tar.bz2</code> - the
Campcaster source files<code><br> <p>If you do not have the sources yet, you need to get the tarballs named
</code></li> <code>campcaster-&lt;version&gt;.tar.bz2</code> and
<li><code>campcaster-libraries-&lt;version&gt;.tar.bz2</code> - <code>campcaster-libraries-&lt;version&gt;.tar.bz2</code>.
external libraries used by Campcaster<code><br> Both can be downloaded from
</code></li> <a href="http://sourceforge.net/projects/campcaster/">
</ul> <code>http://sourceforge.net/projects/campcaster/</code></a>.
Both files can be downloaded from <a
href="http://sourceforge.net/projects/campcaster/"><code>http://sourceforge.net/projects/campcaster/</code></a>.
<h2>3. Compile and install Campcaster</h2>
To install Campcaster in /opt/campcaster, do the following:
<pre>tar xfj campcaster-&lt;version&gt;.tar.bz2
tar xfj campcaster-libraries-&lt;version&gt;.tar.bz2
cd campcaster-&lt;version&gt;
./configure --prefix=/opt/campcaster
make install
</pre>
To run <code>make install</code>, you need to be able to write the
installation directory. Run it as root (change to the root user, or
write <code>sudo</code> before it).
<p>The <code>configure</code> command takes several arguments,
the most important are the following:
<pre> --prefix=PREFIX install the files of the application in PREFIX
[default: /usr/local]
</pre>
The installation directory. This is where Campcaster will be installed.
<br> <br>
<br> <pre> --with-apache-group specify the group of the apache web server daemon
After downloading the files, untar them in the same directory:<br> [default: apache]
<br> </pre>
<pre><code>tar xfj campcaster-&lt;version&gt;.tar.bz2<br>tar xfj campcaster-libraries-&lt;version&gt;.tar.bz2<br></code></pre> The group of the apache web server daemon. On Debian-based systems, including
<br> Ubuntu, this is <code>www-data</code>.
which will create a <code>campcaster-&lt;version&gt;</code>
directory, with all the required files to compile and install <p>There are several more options; type <code>./configure --help</code> to get
Campcaster.<br> a list of them, together with their default values.
<h1>Compiling Campcaster</h1>
To compile Campcaster, enter the Campcaster directory, and execute
the following commands:<br> <h2>4. Configure the external services</h2>
<br> Before you can use Campcaster, you need to set up and configure the web server
<pre><code>cd campcaster-&lt;version&gt;<br>./configure </code><code>--prefix=/usr/local/campcaster --with-apache-group=apache --with-www-docroot=/var/www<br></code><code>make<br></code></pre> and the database that Campcaster uses to store its data.
<br> The simplest way is to use the script included with Campcaster:
Note that you need to have write permissions in the <code>prefix</code> directory <pre>./bin/postInstallStation.sh --directory=/opt/campcaster</pre>
when you run <code>make</code>. You need to run this script as root, too.
The configure options used above are the options most probably used:<br>
<br> <p>You can also set up everything manually; see the
<pre><code>&nbsp; --prefix=PREFIX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; install architecture-independent files in PREFIX<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/usr/local]</code></pre> <a href="gettingStarted.html">gettingStarted.html</a>
The installation directory. Supply the previously document about how to do that.
decided Campcaster installation directory here, <code>&lt;ls-installdir&gt;</code>
(as mentioned above). A sensible value to use here is <code>/usr/local/campcaster</code>.<br> <p><code>postInstallStation.sh</code> takes several arguments;
<pre><code><br> --with-apache-group use apache running in the specified group (apache)<br><br></code></pre> the most important are the following:
The user group the apache web server daemon runs at (see the section <pre> --directory=PREFIX look for Campcaster files in PREFIX
above on installing apache). Supply the <code>&lt;apache-group&gt;</code> </pre>
value here, as mentioned above, which is usually either <code>apache</code> The installation directory, where Campcaster was installed. This argument
or <code>www-data</code>.<br> is obligatory.
<br>
<pre> --with-www-docroot deploy Campcaster under the specified docroot<br> (/var/www)<br><br></pre> <p><pre> --apache-group specify the group of the apache web server
The document root of your apache installation (see the section above on [default: apache]
installing apache). Supply the <code>&lt;www-root&gt;</code> </pre>
value here, as mentioned above, which is usually <code>/var/www</code> The group of the apache web server daemon. On Debian-based systems, including
or <code>/var/www/htdocs</code> Ubuntu, this is <code>www-data</code>.
or <code>/var/www/&lt;yourhost&gt;/htdocs.</code>
<span style="font-family: monospace;"><br> <p><pre> --postgresql-dir the PostgreSQL configuration directory
<br> [default: /etc/postgresql]
</span>Compilation will take quite a while, so go have a tea, watch a </pre>
movie, relax, The directory containing the PostgreSQL configuration file
etc.<br> <code>pg_hba.conf</code>. On Ubuntu Dapper and Edgy, this is
<br> <code>/etc/postgresql/8.1/main</code>. On some distributions, it may be
If you want the installation script to create the database tables used <code>/var/lib/postgres/data/</code>.
by Campcaster, consider using the following configure options:<br>
<br> <p><pre>
<pre> --with-create-database specify whether the Campcaster database and database<br> user should be created (no)<br> --with-create-odbc-data-source<br> specify whether the ODBC data source for Campcaster<br> should be created (no)<br> --with-init-database specify whether the Campcaster database tables<br> should be initialized (no)<br> --with-configure-apache specify whether apache should be configured for<br> Campcaster through its conf.d directory (no)<br><br><br></pre> --postgresql-init-script the start/stop command for the PostgreSQL daemon
For a full list of options, see <code>./configure --help</code><br> [default: /etc/init.d/postgresql]
<h1>Installing Campcaster<br> </pre>
</h1> The init script used to start and stop the PostgreSQL daemon. On Ubuntu Dapper
After a successful compilation, to install Campcaster, you can install and Edgy, this is <code>/etc/init.d/postgresql-8.1</code>.
Campcaster by typing:<br>
<br> <p>There are several more options; type
<pre><code>make install</code><br></pre> <code>./bin/postInstallStation.sh --help</code>
<br> to get a list of them, together with their default values.
This will install Campcaster into the directory specified to the
configure script. It will also create necessary database tables,
depending on the invocation of the configure script. You need to run <h2>5. Start Campcaster</h2>
<code>make install</code> as root.<br>
<br>
<h1>Try it out</h1>
After a successful installation, the Campcaster scheduler has to be After a successful installation, the Campcaster scheduler has to be
started. The scheduler has a System V runlevel-style startup script, started. The scheduler has a System V runlevel-style startup script,
under &lt;ls-installdir&gt;/bin/scheduler.sh. To start the scheduler, under <code>&lt;installation directory&gt;/bin/scheduler.sh<code>.
simply invoke:<br> To start the scheduler, simply type:
<br> <pre><code>&lt;installation directory&gt;/bin/scheduler.sh start</code></pre>
<pre><code>&lt;ls-installdir&gt;/bin/scheduler.sh start</code><br></pre>
<br> <p>To use the the web interface, point your browser to
The only thing left to do is to try out the Campcaster web interface <code>http://localhost/campcaster</code>. You can also use the web interface
or the GUI application.<br> from other computers; simply put the name or IP number of the computer where
<br> Campcaster was installed in place of <code>localhost</code>.
For the web interface, point your browser to the following URL: <code>http://&lt;yourhost&gt;/campcaster/</code>
.<br> <p>To start Campcaster Studio, type the following:
<br> <pre><code>&lt;installation directory&gt;/bin/campcaster-studio.sh</code></pre>
The GUI application can be started by issuing the following command:<br>
<br> <p>For your first login, use the following values:
<pre><code>&lt;ls-installdir&gt;/bin/campcaster-studio.sh</code><br></pre>
<br>
For your first login, use the following values:<br>
<ul> <ul>
<li>username: root</li> <li>username: root</li>
<li>password: q</li> <li>password: q</li>
</ul> </ul>
Have fun!<br> Later you can change the password, and add more users, from the web interface.
<br>
<br> <p>You can make the scheduler start automatically when the system boots up,
<pre><code></code></pre> by installing the &lt;installation directory&gt;/bin/campcaster-scheduler
init script. In Debian-based systems, this is done by
typing
<pre>cp &lt;installation directory&gt;/bin/campcaster-scheduler /etc/init.d/
update-rc.d campcaster-scheduler defaults 92
</pre>
as root. Note: in the init script, the variable <code>CAMPCASTER_DIR</code>
is hard-coded to <code>/opt/campcaster</code>. You will need to edit it and
change it to your installation directory if it is different.
<p>You can quickly fill your Campcaster storage with audio files using the
mass import script <code>&lt;installation directory&gt;/bin/import.sh</code>.
Use the <code>--help</code> option to learn how to use it. You will need
write permissions to the installation directory (i.e., typically you will
need to run the script as root).
<p>Have fun!
</body> </body>
</html> </html>

View File

@ -0,0 +1,105 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="content-type">
<title>Campcaster installation documentation for Ubuntu</title>
<meta content="$Author$" name="author">
</head>
<body>
<h1>Preface</h1>
This document is part of the <a href="http://campcaster.campware.org/">Campcaster</a>
project, Copyright © 2004 <a href="http://www.mdlf.org/">Media
Development Loan Fund</a>, under the GNU <a
href="http://www.gnu.org/licenses/gpl.html">GPL</a>.<br>
<ul>
<li>Author: $Author$</li>
<li>Version: $Revision$</li>
<li>Location: $URL$</li>
</ul>
<h1>Scope</h1>
This document describes how to compile and install Campcaster on an Ubuntu
Dapper system. It will probably work, with at most small modifications,
on other Ubuntu or Debian systems. For other Linux distributions, please
see the <a href="install.html">general instructions</a>.
<h1>Installation instructions</h1>
<h2>1. Install the tools, libraries and services</h2>
Run the
<a href="http://code.campware.org/projects/campcaster/wiki/DevelopmentEnvironment#a1.Installpackages">
<code>apt-get install</code> command</a> given on our wiki page.
<h2>2. Obtain the Campcaster sources</h2>
If you are reading this, you probably already have the sources, so you can
skip to the next step.
<p>If you do not have the sources yet, you need to get the tarballs named
<code>campcaster-&lt;version&gt;.tar.bz2</code> and
<code>campcaster-libraries-&lt;version&gt;.tar.bz2</code>.
Both can be downloaded from
<a href="http://sourceforge.net/projects/campcaster/">
<code>http://sourceforge.net/projects/campcaster/</code></a>.
<h2>3. Compile and install Campcaster</h2>
To install Campcaster in /opt/campcaster, do the following:
<pre>tar xfj campcaster-&lt;version&gt;.tar.bz2
tar xfj campcaster-libraries-&lt;version&gt;.tar.bz2
cd campcaster-&lt;version&gt;
./configure --prefix=/opt/campcaster --with-apache-group=www-data
sudo make install
</pre>
<h2>4. Configure the external services</h2>
Before you can use Campcaster, you need to set up and configure the web server
and the database that Campcaster uses to store its data. Type the following:
<pre>sudo ./bin/postInstallStation.sh --directory=/opt/campcaster \
--apache-group=www-data \
--postgresql-dir=/etc/postgresql/8.1/main \
--postgresql-init-script=/etc/init.d/postgresql-8.1
</pre>
<h2>5. Start Campcaster</h2>
After a successful installation, the Campcaster scheduler has to be
started. The scheduler has a System V runlevel-style startup script,
under <code>/opt/campcaster/bin/scheduler.sh<code>. To start the scheduler,
simply type:
<pre>/opt/campcaster/bin/scheduler.sh start</pre>
<p>To use the the web interface, point your browser to
<code>http://localhost/campcaster</code>. You can also use the web interface
from other computers; simply put the name or IP number of the computer where
Campcaster was installed in place of <code>localhost</code>.
<p>To start Campcaster Studio, type the following:
<pre>/opt/campcaster/bin/campcaster-studio.sh</pre>
<p>For your first login, use the following values:
<ul>
<li>username: root</li>
<li>password: q</li>
</ul>
Later you can change the password, and add more users, from the web interface.
<p>You can make the scheduler start automatically when the system boots up,
by doing the following:
<pre>sudo cp /opt/livesupport/bin/campcaster-scheduler /etc/init.d/
sudo update-rc.d campcaster-scheduler defaults 92
</pre>
<p>You can quickly fill your Campcaster storage with audio files using the
mass import script:
<pre>sudo /opt/campcaster/bin/import.sh --directory=&lt;some directory&gt;
</pre>
<p>Have fun!
</body>
</html>

View File

@ -16,10 +16,14 @@ Development Loan Fund</a>, under the GNU <a
<li>Version: $Revision$</li> <li>Version: $Revision$</li>
<li>Location: $URL$</li> <li>Location: $URL$</li>
</ul> </ul>
<h1>Scope</h1> <h1>Scope</h1>
This document describes the process of releasing a new version of This document describes the process of releasing a new version of
Campcaster. Obviously this document is only relevant to people who Campcaster. Obviously this document is only relevant to people who
have the rights and permissions to make such a release.<br> have the rights and permissions to make such a release.<br>
<h1>Introduction</h1> <h1>Introduction</h1>
For all the releases of Campcaster to remain consistent, it is For all the releases of Campcaster to remain consistent, it is
preferable to have a repeatable release process, which will be followed preferable to have a repeatable release process, which will be followed
@ -41,6 +45,8 @@ The release process boils down to the following steps:<br>
<li>announcing the release<br> <li>announcing the release<br>
</li> </li>
</ul> </ul>
<h1>Getting Campcaster sources</h1> <h1>Getting Campcaster sources</h1>
It is assumed that the person doing the release has a read/write access It is assumed that the person doing the release has a read/write access
to the Campcaster version control system. As a first step of the to the Campcaster version control system. As a first step of the
@ -52,12 +58,10 @@ control system</li>
<li>there are no generated files in the release</li> <li>there are no generated files in the release</li>
</ul> </ul>
To get a fresh copy of the Campcaster repository, execute the To get a fresh copy of the Campcaster repository, execute the
following in an empty directory:<br> following in an empty directory:
<br> <pre><code>svn export svn://code.campware.org/campcaster/trunk/campcaster</code><br></pre>
<pre><code>svn export svn+ssh://&lt;username&gt;@code.campware.org/home/svn/repo/campcaster/trunk/campcaster</code><br></pre>
<br>
Where <code>&lt;username&gt;</code> is the user name for accessing the
repository of the person making the release.<br>
<h1>Checking the distribution script</h1> <h1>Checking the distribution script</h1>
It is advisable to check the installation script <code>bin/dist.sh</code>, It is advisable to check the installation script <code>bin/dist.sh</code>,
to make sure it refers to up-to-date information from the development to make sure it refers to up-to-date information from the development
@ -92,6 +96,8 @@ manager is quite picky on the format of the changelog file. See <a
<br> <br>
Don't forget to commit the changes made to the changelog into Subversion Don't forget to commit the changes made to the changelog into Subversion
before proceeding.<br> before proceeding.<br>
<h1>Creating release tarballs<br> <h1>Creating release tarballs<br>
</h1> </h1>
To create the release tarballs, invoke the distribution script <code>bin/dist.sh</code>, To create the release tarballs, invoke the distribution script <code>bin/dist.sh</code>,
@ -104,6 +110,8 @@ This will create two tarballs in the current directory:<br>
<li><code>campcaster-&lt;ls-version&gt;.tar.bz2</code></li> <li><code>campcaster-&lt;ls-version&gt;.tar.bz2</code></li>
<li><code>campcaster-libraries-&lt;ls-version&gt;.tar.bz2</code></li> <li><code>campcaster-libraries-&lt;ls-version&gt;.tar.bz2</code></li>
</ul> </ul>
<h1>Testing the tarballs</h1> <h1>Testing the tarballs</h1>
Having broken releases is very annoying, thus it is highly recommended Having broken releases is very annoying, thus it is highly recommended
that the release tarballs are tested on a plain vanilla system. To test that the release tarballs are tested on a plain vanilla system. To test
@ -112,18 +120,28 @@ the tarballs, follow the procedure described in the Campcaster <a
<br> <br>
Do not publish tarballs that have not been tested, or are known to be Do not publish tarballs that have not been tested, or are known to be
broken.<br> broken.<br>
<h1>Creating Debian packages</h1> <h1>Creating Debian packages</h1>
After the source tarballs have been tested, Debian source and binary After the source tarballs have been tested, Debian source and binary
packages can be created. To do so, upload the source tarballs to a packages can be created. To do so, upload the source tarballs to a
Debian system, and do the following:<br> Debian system, and do the following:<br>
<br> <br>
<pre><code>tar xfj campcaster-&lt;ls-version&gt;.tar.bz2<br>tar xfj campcaster-libraries-&lt;ls-version&gt;.tar.bz2<br>cd campcaster-&lt;ls-version&gt;<br>./bin/createDebianPackages.sh -d .. -v &lt;ls-version&gt; -m "Package Maintainer &lt;maintainer@foo.bar&gt;" -o ..<br>cd ..<br></code></pre> <pre>tar xfj campcaster-&lt;ls-version&gt;.tar.bz2
tar xfj campcaster-libraries-&lt;ls-version&gt;.tar.bz2
cd campcaster-&lt;ls-version&gt;
./bin/createDebianPackages.sh -d .. -v &lt;ls-version&gt; -m "Package Maintainer &lt;maintainer@foo.bar&gt;" -o ..
cd ..
</pre>
<br> <br>
The above command will create the Debain source package files next to The above command will create the Debain source package files next to
the original source tarballs. The script will generate the following the original source tarballs. The script will generate the following
files, making up the Debian source package:<br> files, making up the Debian source package:<br>
<br> <br>
<pre><code>campcaster_&lt;ls-version&gt;-1.dsc<br></code><code>campcaster_&lt;ls-version&gt;-1.diff.gz<br></code><code>campcaster_&lt;ls-version&gt;.orig.tar.gz<br><br></code></pre> <pre>campcaster_&lt;ls-version&gt;-1.dsc
campcaster_&lt;ls-version&gt;-1.diff.gz
campcaster_&lt;ls-version&gt;.orig.tar.gz
</pre>
Based on the source packages, the Debian package management system can Based on the source packages, the Debian package management system can
build the binaries for the current target platform, provided all the build the binaries for the current target platform, provided all the
necessary packages required to build are installed on the system. For a necessary packages required to build are installed on the system. For a
@ -132,11 +150,25 @@ in extracted debianized source tree generated below.<br>
Building is best done Building is best done
in an empty directory as follows:<br> in an empty directory as follows:<br>
<br> <br>
<pre><code>rm -rf /opt/campcaster<br>rm -rf debian_build<br>mkdir debian_build<br>cd debian_build<br></code>dpkg-source -x ../campcaster_&lt;ls_version&gt;-1.dsc<br>cd campcaster-&lt;ls-version&gt;<br>dpkg-buildpackage -rfakeroot<br>cd ../..<br><br></pre> <pre>rm -rf /opt/campcaster
rm -rf debian_build
mkdir debian_build
cd debian_build
dpkg-source -x ../campcaster_&lt;ls_version&gt;-1.dsc
cd campcaster-&lt;ls-version&gt;
sudo dpkg-buildpackage
cd ../..
</pre>
<!-- "dpkg-buildpackage -rfakeroot" would be better instead of
"sudo dpkg-buildpackage", but it does not work because of the strange
-libraries package -->
The above commands will result in the following debian packages:<br> The above commands will result in the following debian packages:<br>
<br> <br>
<pre><code>campcaster-libs_&lt;ls-version&gt;-1_&lt;arch&gt;.deb<br></code><code>campcaster-station_&lt;ls-version&gt;-1_&lt;arch&gt;.deb<br></code><code>campcaster-studio_&lt;ls-version&gt;-1_&lt;arch&gt;.deb</code><br></pre> <pre>campcaster-libs_&lt;ls-version&gt;-1_&lt;arch&gt;.deb
<pre><code></code><code></code></pre> campcaster-station_&lt;ls-version&gt;-1_&lt;arch&gt;.deb
campcaster-studio_&lt;ls-version&gt;-1_&lt;arch&gt;.deb
</pre>
<h1>Tagging the sources</h1> <h1>Tagging the sources</h1>
After the tarballs have been tested, the release can be finalized. As a After the tarballs have been tested, the release can be finalized. As a
@ -145,18 +177,21 @@ repository has to be tagged, so that the the very versions in the
release can be retrieved at any later date. To tag the repository, release can be retrieved at any later date. To tag the repository,
issue the following command:<br> issue the following command:<br>
<br> <br>
<pre><code>svn copy svn+ssh://&lt;username&gt;@code.campware.org/home/svn/repo/campcaster/trunk/ \ <pre><code>svn copy svn://code.campware.org/campcaster/trunk \
svn+ssh://&lt;username&gt;@code.campware.org/home/svn/repo/campcaster/tags/campcaster-&lt;ls-version&gt;<br></code></pre> svn://code.campware.org/campcaster/tags/campcaster-&lt;ls-version&gt;
</code></pre>
<br> <br>
This will tag the current state of the repository with the tag <code>campcaster-&lt;ls-version&gt;</code>, This will tag the current state of the repository with the tag <code>campcaster-&lt;ls-version&gt;</code>,
enabling later retrieval of this specific state.<br> enabling later retrieval of this specific state.<br>
<h1>Updating Trac</h1> <h1>Updating Trac</h1>
Add the new version number to the Version pull-down menu in Trac by Add the new version number to the Version pull-down menu in Trac by
executing executing
<pre><code>trac-admin /usr/local/trac-projects/campcaster version add &lt;ls-version&gt;</code></pre> <pre><code>trac-admin /usr/local/trac-projects/campcaster version add &lt;ls-version&gt;</code></pre>
on <code>code.campware.org</code>. on <code>code.campware.org</code>.
<h1>Publishing the tarballs</h1> <h1>Publishing the tarballs</h1>
To make the release available to the public, the created tarballs have To make the release available to the public, the created tarballs have
to be published. This is done by making the files accessible under the to be published. This is done by making the files accessible under the

View File

@ -1,3 +1,12 @@
campcaster for Ubuntu
---------------------
LiveSupport has been renamed to Campcaster, and the target distribution
is now Ubuntu.
-- Ferenc Gerlits <fgerlits@campware.org>, Thu, 16 Nov 2006 12:00:27 +0100
livesupport for Debian livesupport for Debian
---------------------- ----------------------

View File

@ -0,0 +1,3 @@
/opt/campcaster/var/Campcaster/storageServer/var/conf.php
/opt/campcaster/var/Campcaster/archiveServer/var/conf.php
/opt/campcaster/etc/scheduler.xml

View File

@ -17,17 +17,20 @@ set -e
# the debian-policy package # the debian-policy package
# #
installdir=/opt/livesupport installdir=/opt/campcaster
case "$1" in case "$1" in
configure) configure)
# do post-installation configuration # do post-installation configuration
$installdir/bin/postInstallStation.sh --directory $installdir $installdir/bin/postInstallStation.sh --directory=$installdir \
--apache-group=www-data \
--postgresql-dir=/etc/postgresql/8.1/main \
--postgresql-init-script=/etc/init.d/postgresql-8.1
# register and start the livesupport scheduler daemon # register and start the livesupport scheduler daemon
cp -f $installdir/bin/livesupport-station /etc/init.d cp -f $installdir/bin/campcaster-scheduler /etc/init.d
update-rc.d livesupport-station defaults 92 || true update-rc.d campcaster-scheduler defaults 92 || true
/etc/init.d/livesupport-station start || true /etc/init.d/campcaster-scheduler start || true
;; ;;
abort-upgrade|abort-remove|abort-deconfigure) abort-upgrade|abort-remove|abort-deconfigure)

View File

@ -21,6 +21,8 @@ installdir=/opt/campcaster
apache_docroot=/var/www apache_docroot=/var/www
postgres_user=postgres postgres_user=postgres
postgresql_dir=/etc/postgresql/8.1/main
postgresql_init_script=/etc/init.d/postgresql-8.1
ls_dbserver=localhost ls_dbserver=localhost
ls_database=Campcaster ls_database=Campcaster
@ -47,19 +49,19 @@ check_exe() {
case "$1" in case "$1" in
remove|upgrade|failed-upgrade|abort-install|abort-upgrade) remove|upgrade|failed-upgrade|abort-install|abort-upgrade)
# remove the init script # remove the init script
rm -f /etc/init.d/campcaster-station rm -f /etc/init.d/campcaster-scheduler
update-rc.d campcaster-station remove update-rc.d campcaster-scheduler remove
# remove the symlink to the campcaster web pages # remove the symlink to the campcaster web pages
rm -f $apache_docroot/campcaster rm -f $apache_docroot/campcaster
# restore the old pg_hba.conf file # restore the old pg_hba.conf file
if [ -f /etc/postgresql/pg_hba.conf ] \ if [ -f $postgresql_dir/pg_hba.conf ] \
&& [ -f /etc/postgresql/pg_hba.conf.before-campcaster ] ; then && [ -f $postgresql_dir/pg_hba.conf.before-campcaster ] ; then
mv -f /etc/postgresql/pg_hba.conf \ mv -f $postgresql_dir/pg_hba.conf \
/etc/postgresql/pg_hba.conf.campcaster ; $postgresql_dir/pg_hba.conf.campcaster ;
mv -f /etc/postgresql/pg_hba.conf.before-campcaster \ mv -f $postgresql_dir/pg_hba.conf.before-campcaster \
/etc/postgresql/pg_hba.conf ; $postgresql_dir/pg_hba.conf ;
fi fi
;; ;;
@ -87,14 +89,15 @@ case "$1" in
echo "Removing ODBC data source and driver..."; echo "Removing ODBC data source and driver...";
# kill active connections to LiveSuport database # kill active connections to database
/etc/init.d/postgresql restart $postgresql_init_script stop
$postgresql_init_script start
echo "Removing Campcaster ODBC data source..."; echo "Removing Campcaster ODBC data source...";
odbcinst -u -s -l -n $ls_database || exit 1; odbcinst -u -s -l -n $ls_database || exit 1;
echo "De-registering ODBC PostgreSQL driver..."; echo "De-registering ODBC PostgreSQL driver...";
odbcinst -u -d -v -n PostgreSQL || exit 1; odbcinst -u -d -n PostgreSQL_Campcaster || exit 1;
echo "Removing database and database user..."; echo "Removing database and database user...";

View File

@ -92,8 +92,8 @@ case "$1" in
check_group_permission $apache_group || exit 1; check_group_permission $apache_group || exit 1;
if [ "$1" = "upgrade" ]; then if [ "$1" = "upgrade" ]; then
/etc/init.d/livesupport-station stop || true /etc/init.d/campcaster-scheduler stop || true
/etc/init.d/livesupport-station kill || true /etc/init.d/campcaster-scheduler kill || true
fi fi
;; ;;

View File

@ -20,8 +20,8 @@ set -e
case "$1" in case "$1" in
remove|upgrade|deconfigure) remove|upgrade|deconfigure)
# stop the livesupport scheduler daemon # stop the livesupport scheduler daemon
/etc/init.d/livesupport-station stop || true /etc/init.d/campcaster-scheduler stop || true
/etc/init.d/livesupport-station kill || true /etc/init.d/campcaster-scheduler kill || true
;; ;;
failed-upgrade) failed-upgrade)

View File

@ -0,0 +1 @@
/opt/campcaster/etc/campcaster-studio.xml

View File

@ -0,0 +1,14 @@
[Desktop Entry]
Encoding=UTF-8
Name=Campcaster-Studio
GenericName=Campcaster Studio GUI Client
Comment=
Icon=/opt/campcaster/var/Campcaster/campcaster.png
Type=Application
Categories=Application;AudioVideo;Audio;
Exec=/opt/campcaster/bin/campcaster-studio.sh
Terminal=false

View File

@ -0,0 +1,4 @@
?package(campcaster-studio):needs="X11" section="Apps/Sound" \
title="Campcaster-Studio" command="/opt/campcaster/bin/campcaster-studio.sh" \
comment="Control your radio station" \
icon="/opt/campcaster/var/Campcaster/campcaster.png"

View File

@ -17,7 +17,7 @@ set -e
# the debian-policy package # the debian-policy package
# #
installdir=/opt/livesupport installdir=/opt/campcaster
apache_group=www-data apache_group=www-data
apache_docroot=/var/www apache_docroot=/var/www

View File

@ -1,3 +1,10 @@
campcaster (1.1.0rc1-1) unstable; urgency=low
* 1.1.0 first release candidate
-- Ferenc Gerlits <fgerlits@campware.org> Thu, 16 Nov 2006 12:00:27 +0100
livesupport (1.1b1-1) unstable; urgency=low livesupport (1.1b1-1) unstable; urgency=low
* 1.1 beta release * 1.1 beta release

View File

@ -1,4 +1,4 @@
Source: livesupport Source: campcaster
Section: sound Section: sound
Priority: optional Priority: optional
Maintainer: ls_maintainer Maintainer: ls_maintainer
@ -6,45 +6,85 @@ Build-Depends: debhelper (>= 4.0.0),
binutils (>= 2.13), binutils (>= 2.13),
gcc (>= 3.3), gcc (>= 3.3),
g++ (>= 3.3), g++ (>= 3.3),
make (>= 3.80). libc6-dev,
automake1.7, make (>= 3.80),
automake1.8,
autoconf (>= 2.59), autoconf (>= 2.59),
libtool, libtool,
pkgconfig (>= 0.15), pkg-config (>= 0.15),
patch (>= 2.5.9), patch (>= 2.5.9),
doxygen, doxygen,
tar, tar,
gzip, gzip,
unzip,
bzip2, bzip2,
curl, curl,
bison (>= 1.35),
flex,
graphviz,
xsltproc,
unixodbc-dev (>= 2.2), unixodbc-dev (>= 2.2),
xlibs-dev (>= 4.1.0), odbc-postgresql,
fontconfig,
libfontconfig1-dev, libfontconfig1-dev,
libpng12-dev, libpng12-dev,
libjpeg62-dev, libjpeg62-dev,
openssl,
libssl-dev, libssl-dev,
libxml2-dev, libxml2-dev,
libpopt-dev, libpopt-dev,
alsa-base,
libasound2-dev, libasound2-dev,
libid3tag0-dev, libid3tag0-dev,
libmad0-dev, libmad0-dev,
libogg-dev, libogg-dev,
libvorbis-dev, libvorbis-dev,
libboost-dev (>= 1.33.1), libbz2-dev,
libtar-dev (>= 1.2.11),
libcurl3-dev (>= 7.12.3),
libboost-date-time-dev (>= 1.33.1), libboost-date-time-dev (>= 1.33.1),
bison (>= 1.35), libgtk2.0-dev (>= 2.6.10),
flex libgtkmm-2.4-dev (>= 2.6.5),
libxml++2.6-dev (>= 2.8.1),
libicu34-dev,
apache2,
php5-pgsql,
libapache2-mod-php5,
php-pear,
php5-gd,
postgresql-8.1,
postgresql-client-8.1
Standards-Version: 3.6.1 Standards-Version: 3.6.1
Package: livesupport-libs Package: campcaster-libs
Architecture: any Architecture: any
Depends: ${shlibs:Depends}, Depends: ${shlibs:Depends},
libc6 (>= 2.3.4-1),
libgcc1 (>= 1:4.0.2),
libstdc++6 (>= 4.0.2-4),
libglib2.0-0 (>= 2.9.3),
libpopt0 (>= 1.7),
libxml2 (>= 2.6.23),
zlib1g (>= 1:1.2.1),
libasound2 (>> 1.0.10),
libid3tag0 (>= 0.15.1b),
libmad0 (>= 0.15.1b),
libogg0 (>= 1.1.3),
libvorbis0a (>= 1.1.2)
Description: A radio program automation and support tool.
This package contains the libraries used by Campcaster.
Package: campcaster-station
Architecture: any
Depends: ${shlibs:Depends},
campcaster-libs (>= ${dpkg:Version}),
sed,
unixodbc (>= 2.2), unixodbc (>= 2.2),
xlibs (>= 4.1.0), odbc-postgresql,
libfontconfig1, libfontconfig1,
libpng12-0, libpng12-0,
libjpeg62, libjpeg62,
libssl0.9.7, libssl0.9.8,
libxml2, libxml2,
libpopt0, libpopt0,
libasound2, libasound2,
@ -52,32 +92,48 @@ Depends: ${shlibs:Depends},
libmad0, libmad0,
libogg0, libogg0,
libvorbis0a, libvorbis0a,
libboost-date-time1.33.0 | libboost-date-time1.33.1 libbz2-1.0,
libtar (>= 1.2.11),
libcurl3,
libboost-date-time1.33.1,
libxml++2.6c2a (>= 2.8.1),
libicu34,
apache2,
php5-pgsql,
libapache2-mod-php5,
php-pear,
php5-gd,
postgresql-8.1,
postgresql-client-8.1
Description: A radio program automation and support tool. Description: A radio program automation and support tool.
This package contains the libraries used by LiveSupport. This package contains the server components of Campcaster.
This includes a storage server, a scheduler daemon, and a web interface.
Package: livesupport-station Package: campcaster-studio
Architecture: any Architecture: any
Depends: ${shlibs:Depends}, Depends: ${shlibs:Depends},
livesupport-libs (>= ${dpkg:Version}), campcaster-libs (>= ${dpkg:Version}),
sed, sed,
unixodbc (>= 2.2),
odbc-postgresql, odbc-postgresql,
apache | apache2, libfontconfig1,
php4, libpng12-0,
php4-domxml, libjpeg62,
php4-pear, libssl0.9.8,
php4-pgsql, libxml2,
libapache-mod-php4 | libapache2-mod-php4, libpopt0,
postgresql (>= 7.4), libasound2,
postgresql-client (>=7.4) libid3tag0,
libmad0,
libogg0,
libvorbis0a,
libbz2-1.0,
libtar (>= 1.2.11),
libcurl3 (>= 7.12.3),
libboost-date-time1.33.1,
libxml++2.6c2a (>= 2.8.1),
libicu34,
libgtk2.0-0 (>= 2.6.10),
libgtkmm-2.4-1c2a (>= 2.6.5)
Description: A radio program automation and support tool. Description: A radio program automation and support tool.
This package contains the server components of LiveSupport. This package contains the GUI client component of Campcaster.
This includes a scheluer deamon, and web-based server components.
Package: livesupport-studio
Architecture: any
Depends: ${shlibs:Depends},
livesupport-station (>= ${dpkg:Version}),
sed
Description: A radio program automation and support tool.
This package contains the GUI client components of LiveSupport.

View File

@ -1 +1 @@
opt/livesupport opt/campcaster

View File

@ -1,3 +0,0 @@
/opt/livesupport/var/LiveSupport/storageServer/var/conf.php
/opt/livesupport/var/LiveSupport/archiveServer/var/conf.php
/opt/livesupport/etc/scheduler.xml

View File

@ -1 +0,0 @@
/opt/livesupport/etc/gLiveSupport.xml

View File

@ -1,14 +0,0 @@
[Desktop Entry]
Encoding=UTF-8
Name=LiveSupport-Studio
GenericName=LiveSupport Studio GUI Client
Comment=
Icon=/opt/livesupport/var/LiveSupport/livesupport.png
Type=Application
Categories=Application;AudioVideo;Audio;
Exec=/opt/livesupport/bin/gLiveSupport.sh
Terminal=false

View File

@ -1,3 +0,0 @@
?package(livesupport-studio):needs="X11" section="Apps/Sound" \
title="LiveSupport-Studio" command="/opt/livesupport/bin/gLiveSupport.sh" \
icon="/opt/livesupport/var/LiveSupport/livesupport.png"

View File

@ -31,12 +31,12 @@ config.status: configure
dh_testdir dh_testdir
CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) \ CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) \
--build=$(DEB_BUILD_GNU_TYPE) \ --build=$(DEB_BUILD_GNU_TYPE) \
--prefix=/opt/livesupport \ --prefix=/opt/campcaster \
--with-www-docroot=/var/www \ --with-www-docroot=/var/www \
--with-apache-group=www-data \ --with-apache-group=www-data \
--with-station-audio-out=/dev/dsp \ --with-station-audio-out=hw:0,0 \
--with-studio-audio-out=/dev/dsp1 \ --with-studio-audio-out=hw:1,0 \
--with-studio-audio-cue=/dev/dsp2 \ --with-studio-audio-cue=hw:2,0 \
--with-hostname=localhost --with-hostname=localhost
build: build-arch build: build-arch
@ -64,89 +64,87 @@ install-arch:
dh_clean -k -s dh_clean -k -s
dh_installdirs -s dh_installdirs -s
# this will install everything into /opt/livesupport/usr # this will install everything into /opt/campcaster/usr
$(MAKE) install $(MAKE) install
# move the installation to debian/livesupport # move the installation to debian/campcaster
mkdir -p $(CURDIR)/debian/livesupport/opt mkdir -p $(CURDIR)/debian/campcaster/opt
mv /opt/livesupport $(CURDIR)/debian/livesupport/opt mv /opt/campcaster $(CURDIR)/debian/campcaster/opt
# now separate the libraries into debian/livesupport-libs # now separate the libraries into debian/campcaster-libs
mkdir -p $(CURDIR)/debian/livesupport-libs mkdir -p $(CURDIR)/debian/campcaster-libs
mkdir -p $(CURDIR)/debian/livesupport-libs/opt/livesupport mkdir -p $(CURDIR)/debian/campcaster-libs/opt/campcaster
mkdir -p $(CURDIR)/debian/livesupport-libs/opt/livesupport/bin mkdir -p $(CURDIR)/debian/campcaster-libs/opt/campcaster/bin
mkdir -p $(CURDIR)/debian/livesupport-libs/opt/livesupport/etc/pango mkdir -p $(CURDIR)/debian/campcaster-libs/opt/campcaster/tmp
mkdir -p $(CURDIR)/debian/livesupport-libs/opt/livesupport/tmp mkdir -p $(CURDIR)/debian/campcaster-libs/opt/campcaster/usr/lib
mkdir -p $(CURDIR)/debian/livesupport-libs/opt/livesupport/usr/lib mv -f $(CURDIR)/debian/campcaster/opt/campcaster/lib \
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/lib \ $(CURDIR)/debian/campcaster-libs/opt/campcaster
$(CURDIR)/debian/livesupport-libs/opt/livesupport mv -f $(CURDIR)/debian/campcaster/opt/campcaster/bin/gst-* \
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/bin/gst-* \ $(CURDIR)/debian/campcaster-libs/opt/campcaster/bin
$(CURDIR)/debian/livesupport-libs/opt/livesupport/bin mv -f $(CURDIR)/debian/campcaster/opt/campcaster/usr/lib/pear \
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/usr/lib/pear \ $(CURDIR)/debian/campcaster-libs/opt/campcaster/usr/lib
$(CURDIR)/debian/livesupport-libs/opt/livesupport/usr/lib
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/etc/pango/* \
$(CURDIR)/debian/livesupport-libs/opt/livesupport/etc/pango
# now separate the station (server) files into debian/livesupport-station # now separate the station (server) files into debian/campcaster-station
mkdir -p $(CURDIR)/debian/livesupport-station mkdir -p $(CURDIR)/debian/campcaster-station
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport mkdir -p $(CURDIR)/debian/campcaster-station/opt/campcaster
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport/bin mkdir -p $(CURDIR)/debian/campcaster-station/opt/campcaster/bin
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport/etc mkdir -p $(CURDIR)/debian/campcaster-station/opt/campcaster/etc
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport/tmp mkdir -p $(CURDIR)/debian/campcaster-station/opt/campcaster/tmp
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport/var/LiveSupport mkdir -p $(CURDIR)/debian/campcaster-station/opt/campcaster/var/Campcaster
mkdir -p $(CURDIR)/debian/livesupport-station/opt/livesupport/usr/lib mkdir -p $(CURDIR)/debian/campcaster-station/opt/campcaster/usr/lib
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/bin/scheduler \ mv -f $(CURDIR)/debian/campcaster/opt/campcaster/bin/scheduler \
$(CURDIR)/debian/livesupport/opt/livesupport/bin/scheduler.sh \ $(CURDIR)/debian/campcaster/opt/campcaster/bin/scheduler.sh \
$(CURDIR)/debian/livesupport/opt/livesupport/bin/postInstallStation.sh \ $(CURDIR)/debian/campcaster/opt/campcaster/bin/postInstallStation.sh \
$(CURDIR)/debian/livesupport/opt/livesupport/bin/livesupport-station \ $(CURDIR)/debian/campcaster/opt/campcaster/bin/campcaster-scheduler \
$(CURDIR)/debian/livesupport-station/opt/livesupport/bin $(CURDIR)/debian/campcaster/opt/campcaster/bin/createDatabase.sh \
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/etc/scheduler.xml* \ $(CURDIR)/debian/campcaster/opt/campcaster/bin/createOdbcDataSource.sh \
$(CURDIR)/debian/livesupport/opt/livesupport/etc/odbc* \ $(CURDIR)/debian/campcaster-station/opt/campcaster/bin
$(CURDIR)/debian/livesupport/opt/livesupport/etc/gtk* \ mv -f $(CURDIR)/debian/campcaster/opt/campcaster/etc/scheduler.xml* \
$(CURDIR)/debian/livesupport-station/opt/livesupport/etc $(CURDIR)/debian/campcaster/opt/campcaster/etc/odbc* \
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/alib \ $(CURDIR)/debian/campcaster-station/opt/campcaster/etc
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/archiveServer \ mv -f $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/alib \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/getid3 \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/archiveServer \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/index.php \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/getid3 \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/htmlUI \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/index.php \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/storageServer \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/htmlUI \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/storageAdmin \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/storageServer \
$(CURDIR)/debian/livesupport-station/opt/livesupport/var/LiveSupport $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/storageAdmin \
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/bin/backup.sh \ $(CURDIR)/debian/campcaster-station/opt/campcaster/var/Campcaster
$(CURDIR)/debian/livesupport/opt/livesupport/bin/dumpDbSchema.sh \ mv -f $(CURDIR)/debian/campcaster/opt/campcaster/bin/backup.sh \
$(CURDIR)/debian/livesupport/opt/livesupport/bin/import.sh \ $(CURDIR)/debian/campcaster/opt/campcaster/bin/dumpDbSchema.sh \
$(CURDIR)/debian/livesupport/opt/livesupport/bin/restore.sh \ $(CURDIR)/debian/campcaster/opt/campcaster/bin/import.sh \
$(CURDIR)/debian/livesupport-station/opt/livesupport/bin $(CURDIR)/debian/campcaster/opt/campcaster/bin/restore.sh \
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/var/cache \ $(CURDIR)/debian/campcaster-station/opt/campcaster/bin
$(CURDIR)/debian/livesupport-station/opt/livesupport/var mv -f $(CURDIR)/debian/campcaster/opt/campcaster/var/cache \
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/etc/apache \ $(CURDIR)/debian/campcaster-station/opt/campcaster/var
$(CURDIR)/debian/livesupport/opt/livesupport/etc/pg_hba.conf \ mv -f $(CURDIR)/debian/campcaster/opt/campcaster/etc/apache \
$(CURDIR)/debian/livesupport-station/opt/livesupport/etc $(CURDIR)/debian/campcaster/opt/campcaster/etc/pg_hba.conf \
$(CURDIR)/debian/campcaster-station/opt/campcaster/etc
# now separate the studio (client) files into debian/livesupport-studio # now separate the studio (client) files into debian/campcaster-studio
mkdir -p $(CURDIR)/debian/livesupport-studio mkdir -p $(CURDIR)/debian/campcaster-studio
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport mkdir -p $(CURDIR)/debian/campcaster-studio/opt/campcaster
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport/bin mkdir -p $(CURDIR)/debian/campcaster-studio/opt/campcaster/bin
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport/etc mkdir -p $(CURDIR)/debian/campcaster-studio/opt/campcaster/etc
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport/tmp mkdir -p $(CURDIR)/debian/campcaster-studio/opt/campcaster/tmp
mkdir -p $(CURDIR)/debian/livesupport-studio/opt/livesupport/var/LiveSupport mkdir -p $(CURDIR)/debian/campcaster-studio/opt/campcaster/var/Campcaster
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/bin/gLiveSupport \ mv -f $(CURDIR)/debian/campcaster/opt/campcaster/bin/campcaster-studio \
$(CURDIR)/debian/livesupport/opt/livesupport/bin/gLiveSupport.sh \ $(CURDIR)/debian/campcaster/opt/campcaster/bin/campcaster-studio.sh \
$(CURDIR)/debian/livesupport-studio/opt/livesupport/bin $(CURDIR)/debian/campcaster-studio/opt/campcaster/bin
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/etc/gLiveSupport.xml* \ mv -f $(CURDIR)/debian/campcaster/opt/campcaster/etc/campcaster-studio.xml* \
$(CURDIR)/debian/livesupport-studio/opt/livesupport/etc $(CURDIR)/debian/campcaster-studio/opt/campcaster/etc
mv -f $(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/Widgets \ mv -f $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/Widgets \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/gLiveSupport*.res \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/campcaster-studio_*.res \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/livesupport.png \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/campcaster.png \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/icon*.png \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/icon*.png \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/stationLogo.png \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/stationLogo.png \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/testAudio.ogg \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/testAudio.ogg \
$(CURDIR)/debian/livesupport/opt/livesupport/var/LiveSupport/testAudio.ogg.license \ $(CURDIR)/debian/campcaster/opt/campcaster/var/Campcaster/testAudio.ogg.license \
$(CURDIR)/debian/livesupport-studio/opt/livesupport/var/LiveSupport $(CURDIR)/debian/campcaster-studio/opt/campcaster/var/Campcaster
mkdir -p $(CURDIR)/debian/livesupport-studio/usr/share/applications mkdir -p $(CURDIR)/debian/campcaster-studio/usr/share/applications
cp -a $(CURDIR)/debian/livesupport-studio.desktop \ cp -a $(CURDIR)/debian/campcaster-studio.desktop \
$(CURDIR)/debian/livesupport-studio/usr/share/applications/ $(CURDIR)/debian/campcaster-studio/usr/share/applications/
dh_desktop -plivesupport-studio dh_desktop -pcampcaster-studio
dh_installmenu dh_installmenu
dh_install -s dh_install -s
@ -176,7 +174,7 @@ binary-common:
dh_fixperms dh_fixperms
dh_makeshlibs dh_makeshlibs
dh_installdeb dh_installdeb
dh_shlibdeps -l${CURDIR}/debian/livesupport-libs/opt/livesupport/lib dh_shlibdeps -l${CURDIR}/debian/campcaster-libs/opt/campcaster/lib
dh_gencontrol dh_gencontrol
dh_md5sums dh_md5sums
dh_builddeb dh_builddeb

View File

@ -130,98 +130,98 @@ distclean: clean docclean
check: all check: all
install: configure_apache install: configure_apache
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/html ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/html
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/html/img ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/html/img
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/html/css_img ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/html/css_img
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/html/assets ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/html/assets
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer/icon ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer/icon
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer/includes ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer/includes
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer/lang ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer/lang
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/Smarty ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/Smarty
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/Smarty/libs ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/Smarty/libs
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/Smarty/libs/plugins ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/Smarty/libs/plugins
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/Smarty/libs/internals ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/Smarty/libs/internals
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/formmask ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/formmask
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates_c ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates_c
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/sub ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/sub
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/file ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/file
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/popup ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/popup
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/library ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/library
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/scheduler ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/scheduler
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/scratchpad ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/scratchpad
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/loader ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/loader
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/script ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/script
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/system ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/system
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/playlist ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/playlist
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/subjects ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/subjects
${CP} ${VAR_DIR}/redirect.php ${USR_VAR_DIR}/LiveSupport/index.php ${CP} ${VAR_DIR}/redirect.php ${USR_VAR_DIR}/Campcaster/index.php
${CP} ${VAR_DIR}/redirect.php ${USR_VAR_DIR}/LiveSupport/htmlUI/index.php ${CP} ${VAR_DIR}/redirect.php ${USR_VAR_DIR}/Campcaster/htmlUI/index.php
${CP} ${VAR_DIR}/*.php ${USR_VAR_DIR}/LiveSupport/htmlUI/var ${CP} ${VAR_DIR}/*.php ${USR_VAR_DIR}/Campcaster/htmlUI/var
${CAT} ${VAR_DIR}/ui_conf.php.template | ${SED} -e ${REPLACE_SED_STRING} > ${USR_VAR_DIR}/LiveSupport/htmlUI/var/ui_conf.php ${CAT} ${VAR_DIR}/ui_conf.php.template | ${SED} -e ${REPLACE_SED_STRING} > ${USR_VAR_DIR}/Campcaster/htmlUI/var/ui_conf.php
${CP} ${VAR_DIR}/.htaccess ${USR_VAR_DIR}/LiveSupport/htmlUI/var ${CP} ${VAR_DIR}/.htaccess ${USR_VAR_DIR}/Campcaster/htmlUI/var
${CP} ${VAR_DIR}/localizer/*.php ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer ${CP} ${VAR_DIR}/localizer/*.php ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer
${CP} ${VAR_DIR}/localizer/includes/*.php ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer/includes ${CP} ${VAR_DIR}/localizer/includes/*.php ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer/includes
${CP} ${VAR_DIR}/localizer/icon/*.png ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer/icon ${CP} ${VAR_DIR}/localizer/icon/*.png ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer/icon
${CP} -r ${VAR_DIR}/localizer/lang/* ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer/lang/ ${CP} -r ${VAR_DIR}/localizer/lang/* ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer/lang/
${CP} ${VAR_DIR}/html/*.php ${VAR_DIR}/html/*.css \ ${CP} ${VAR_DIR}/html/*.php ${VAR_DIR}/html/*.css \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/html ${USR_VAR_DIR}/Campcaster/htmlUI/var/html
${CP} ${VAR_DIR}/html/img/*.png ${VAR_DIR}/html/img/*.gif \ ${CP} ${VAR_DIR}/html/img/*.png ${VAR_DIR}/html/img/*.gif \
${VAR_DIR}/html/img/*.swf ${VAR_DIR}/html/img/*.image \ ${VAR_DIR}/html/img/*.swf ${VAR_DIR}/html/img/*.image \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/html/img ${USR_VAR_DIR}/Campcaster/htmlUI/var/html/img
${CP} ${VAR_DIR}/html/assets/*.js \ ${CP} ${VAR_DIR}/html/assets/*.js \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/html/assets ${USR_VAR_DIR}/Campcaster/htmlUI/var/html/assets
${CP} ${VAR_DIR}/html/css_img/*.png \ ${CP} ${VAR_DIR}/html/css_img/*.png \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/html/css_img ${USR_VAR_DIR}/Campcaster/htmlUI/var/html/css_img
${CP} ${VAR_DIR}/formmask/*.php \ ${CP} ${VAR_DIR}/formmask/*.php \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/formmask ${USR_VAR_DIR}/Campcaster/htmlUI/var/formmask
${CP} ${VAR_DIR}/Smarty/libs/*.php \ ${CP} ${VAR_DIR}/Smarty/libs/*.php \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/Smarty/libs/ ${USR_VAR_DIR}/Campcaster/htmlUI/var/Smarty/libs/
${CP} ${VAR_DIR}/Smarty/libs/internals/*.php \ ${CP} ${VAR_DIR}/Smarty/libs/internals/*.php \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/Smarty/libs/internals/ ${USR_VAR_DIR}/Campcaster/htmlUI/var/Smarty/libs/internals/
${CP} ${VAR_DIR}/Smarty/libs/plugins/*.php \ ${CP} ${VAR_DIR}/Smarty/libs/plugins/*.php \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/Smarty/libs/plugins/ ${USR_VAR_DIR}/Campcaster/htmlUI/var/Smarty/libs/plugins/
${CP} ${VAR_DIR}/templates/*.tpl \ ${CP} ${VAR_DIR}/templates/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates
${CP} ${VAR_DIR}/templates/sub/*.tpl \ ${CP} ${VAR_DIR}/templates/sub/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/sub ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/sub
${CP} ${VAR_DIR}/templates/file/*.tpl \ ${CP} ${VAR_DIR}/templates/file/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/file ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/file
${CP} ${VAR_DIR}/templates/popup/*.tpl \ ${CP} ${VAR_DIR}/templates/popup/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/popup ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/popup
${CP} ${VAR_DIR}/templates/library/*.tpl \ ${CP} ${VAR_DIR}/templates/library/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/library ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/library
${CP} ${VAR_DIR}/templates/scheduler/*.tpl \ ${CP} ${VAR_DIR}/templates/scheduler/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/scheduler ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/scheduler
${CP} ${VAR_DIR}/templates/scratchpad/*.tpl \ ${CP} ${VAR_DIR}/templates/scratchpad/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/scratchpad ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/scratchpad
${CP} ${VAR_DIR}/templates/loader/*.tpl \ ${CP} ${VAR_DIR}/templates/loader/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/loader ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/loader
${CP} ${VAR_DIR}/templates/script/*.tpl \ ${CP} ${VAR_DIR}/templates/script/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/script ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/script
${CP} ${VAR_DIR}/templates/system/*.tpl \ ${CP} ${VAR_DIR}/templates/system/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/system ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/system
${CP} ${VAR_DIR}/templates/playlist/*.tpl \ ${CP} ${VAR_DIR}/templates/playlist/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/playlist ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/playlist
${CP} ${VAR_DIR}/templates/subjects/*.tpl \ ${CP} ${VAR_DIR}/templates/subjects/*.tpl \
${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates/subjects ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates/subjects
${MKDIR} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates_c ${MKDIR} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates_c
chgrp ${APACHE_GROUP} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates_c chgrp ${APACHE_GROUP} ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates_c
chgrp ${APACHE_GROUP} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/html/img chgrp ${APACHE_GROUP} ${USR_VAR_DIR}/Campcaster/htmlUI/var/html/img
chgrp -R ${APACHE_GROUP} ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer/lang chgrp -R ${APACHE_GROUP} ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer/lang
chmod g+sw ${USR_VAR_DIR}/LiveSupport/htmlUI/var/templates_c chmod g+sw ${USR_VAR_DIR}/Campcaster/htmlUI/var/templates_c
chmod g+sw ${USR_VAR_DIR}/LiveSupport/htmlUI/var/html/img chmod g+sw ${USR_VAR_DIR}/Campcaster/htmlUI/var/html/img
chmod -R g+sw ${USR_VAR_DIR}/LiveSupport/htmlUI/var/localizer/lang chmod -R g+sw ${USR_VAR_DIR}/Campcaster/htmlUI/var/localizer/lang
${RM} ${WWW_DOCROOT}/livesupport ${RM} ${WWW_DOCROOT}/campcaster
ln -sf ${USR_VAR_DIR}/LiveSupport ${WWW_DOCROOT}/livesupport ln -sf ${USR_VAR_DIR}/Campcaster ${WWW_DOCROOT}/campcaster
configure_apache: configure_apache:
ifeq (@CONFIGURE_APACHE@,yes) ifeq (@CONFIGURE_APACHE@,yes)

View File

@ -200,33 +200,34 @@ install: all
${CP} ${INCLUDE_DIR}/LiveSupport/Widgets/*.h \ ${CP} ${INCLUDE_DIR}/LiveSupport/Widgets/*.h \
${USR_INCLUDE_DIR}/LiveSupport/Widgets ${USR_INCLUDE_DIR}/LiveSupport/Widgets
${CP} ${WIDGETS_LIB_FILE} ${USR_LIB_DIR} ${CP} ${WIDGETS_LIB_FILE} ${USR_LIB_DIR}
${MKDIR} ${USR_VAR_DIR}/LiveSupport/Widgets/blueBin \ ${MKDIR} ${USR_VAR_DIR}/Campcaster/Widgets
${USR_VAR_DIR}/LiveSupport/Widgets/button \ ${MKDIR} ${USR_VAR_DIR}/Campcaster/Widgets/blueBin \
${USR_VAR_DIR}/LiveSupport/Widgets/combo \ ${USR_VAR_DIR}/Campcaster/Widgets/button \
${USR_VAR_DIR}/LiveSupport/Widgets/darkBlueBin \ ${USR_VAR_DIR}/Campcaster/Widgets/combo \
${USR_VAR_DIR}/LiveSupport/Widgets/entryBin \ ${USR_VAR_DIR}/Campcaster/Widgets/darkBlueBin \
${USR_VAR_DIR}/LiveSupport/Widgets/icons \ ${USR_VAR_DIR}/Campcaster/Widgets/entryBin \
${USR_VAR_DIR}/LiveSupport/Widgets/imageButton \ ${USR_VAR_DIR}/Campcaster/Widgets/icons \
${USR_VAR_DIR}/LiveSupport/Widgets/tabButton \ ${USR_VAR_DIR}/Campcaster/Widgets/imageButton \
${USR_VAR_DIR}/LiveSupport/Widgets/whiteWindow ${USR_VAR_DIR}/Campcaster/Widgets/tabButton \
${USR_VAR_DIR}/Campcaster/Widgets/whiteWindow
${CP} ${VAR_DIR}/blueBin/*.png \ ${CP} ${VAR_DIR}/blueBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/blueBin ${USR_VAR_DIR}/Campcaster/Widgets/blueBin
${CP} ${VAR_DIR}/button/*.png \ ${CP} ${VAR_DIR}/button/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/button ${USR_VAR_DIR}/Campcaster/Widgets/button
${CP} ${VAR_DIR}/combo/*.png \ ${CP} ${VAR_DIR}/combo/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/combo ${USR_VAR_DIR}/Campcaster/Widgets/combo
${CP} ${VAR_DIR}/darkBlueBin/*.png \ ${CP} ${VAR_DIR}/darkBlueBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/darkBlueBin ${USR_VAR_DIR}/Campcaster/Widgets/darkBlueBin
${CP} ${VAR_DIR}/entryBin/*.png \ ${CP} ${VAR_DIR}/entryBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/entryBin ${USR_VAR_DIR}/Campcaster/Widgets/entryBin
${CP} ${VAR_DIR}/icons/*.png \ ${CP} ${VAR_DIR}/icons/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/icons ${USR_VAR_DIR}/Campcaster/Widgets/icons
${CP} ${VAR_DIR}/imageButton/*.png \ ${CP} ${VAR_DIR}/imageButton/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/imageButton ${USR_VAR_DIR}/Campcaster/Widgets/imageButton
${CP} ${VAR_DIR}/tabButton/*.png \ ${CP} ${VAR_DIR}/tabButton/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/tabButton ${USR_VAR_DIR}/Campcaster/Widgets/tabButton
${CP} ${VAR_DIR}/whiteWindow/*.png \ ${CP} ${VAR_DIR}/whiteWindow/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/whiteWindow ${USR_VAR_DIR}/Campcaster/Widgets/whiteWindow
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------

View File

@ -144,8 +144,17 @@ ButtonImages :: loadImage(const std::string path,
{ {
Glib::RefPtr<Gdk::Pixbuf> image; Glib::RefPtr<Gdk::Pixbuf> image;
if (!(image = Gdk::Pixbuf::create_from_file(path + imageName))) { bool success = true;
throw std::invalid_argument("Missing " + image); try {
image = Gdk::Pixbuf::create_from_file(path + imageName);
} catch (Glib::FileError &e) {
success = false;
} catch (Gdk::PixbufError &e) {
success = false;
}
if (!success || !image) {
throw std::invalid_argument("Missing " + imageName);
} }
return image; return image;

View File

@ -120,13 +120,18 @@ CornerImages :: loadImage(const std::string path,
{ {
Glib::RefPtr<Gdk::Pixbuf> image; Glib::RefPtr<Gdk::Pixbuf> image;
if (!(image = Gdk::Pixbuf::create_from_file(path + imageName))) { bool success = true;
throw std::invalid_argument("Missing " + image); try {
image = Gdk::Pixbuf::create_from_file(path + imageName);
} catch (Glib::FileError &e) {
success = false;
} catch (Gdk::PixbufError &e) {
success = false;
} }
// activate alpha channel (transparency) if (!success || !image) {
// but it doesn't seem to work :( throw std::invalid_argument("Missing " + imageName);
// image->add_alpha(false, 0, 0, 0); }
return image; return image;
} }

View File

@ -66,6 +66,7 @@ USR_ETC_DIR = ${USR_DIR}/etc
USR_INCLUDE_DIR = ${USR_DIR}/include USR_INCLUDE_DIR = ${USR_DIR}/include
USR_LIB_DIR = ${USR_DIR}/lib USR_LIB_DIR = ${USR_DIR}/lib
USR_VAR_DIR = ${USR_DIR}/var USR_VAR_DIR = ${USR_DIR}/var
STORAGE_TMP_DIR = "/tmp"
HOSTNAME = @HOSTNAME@ HOSTNAME = @HOSTNAME@
WWW_PORT = @WWW_PORT@ WWW_PORT = @WWW_PORT@
@ -83,12 +84,16 @@ SCHEDULER_XML_RPC_PREFIX=RC2
SCHEDULER_DAEMON_COMMAND="sudo ${USR_BIN_DIR}/scheduler.sh" SCHEDULER_DAEMON_COMMAND="sudo ${USR_BIN_DIR}/scheduler.sh"
USR_VAR_DIR_S=$(shell ${ECHO} ${USR_VAR_DIR} | ${SED} -e "s/\//\\\\\\\\\//g") USR_VAR_DIR_S=$(shell ${ECHO} ${USR_VAR_DIR} | ${SED} -e "s/\//\\\\\\\\\//g")
PHP_URL_PREFIX_S=$(shell ${ECHO} ${PHP_URL_PREFIX} | ${SED} -e "s/\//\\\\\\\\\//g") PHP_URL_PREFIX_S=$(shell ${ECHO} ${PHP_URL_PREFIX} | \
ALIB_XML_RPC_PREFIX_S=$(shell ${ECHO} ${ALIB_XML_RPC_PREFIX} | ${SED} -e "s/\//\\\\\\\\\//g") ${SED} -e "s/\//\\\\\\\\\//g")
AUDIO_OUT_S=$(shell ${ECHO} ${AUDIO_OUT} | ${SED} -e "s/\//\\\\\\\\\//g") ALIB_XML_RPC_PREFIX_S=$(shell ${ECHO} ${ALIB_XML_RPC_PREFIX} | \
AUDIO_CUE_S=$(shell ${ECHO} ${AUDIO_CUE} | ${SED} -e "s/\//\\\\\\\\\//g") ${SED} -e "s/\//\\\\\\\\\//g")
SCHEDULER_DAEMON_COMMAND_S=$(shell ${ECHO} ${SCHEDULER_DAEMON_COMMAND} \ STORAGE_TMP_DIR_S=$(shell ${ECHO} ${STORAGE_TMP_DIR} | \
| ${SED} -e "s/\//\\\\\\\\\//g") ${SED} -e "s/\//\\\\\\\\\//g")
AUDIO_OUT_S=$(shell ${ECHO} ${AUDIO_OUT} | ${SED} -e "s/\//\\\\\\\\\//g")
AUDIO_CUE_S=$(shell ${ECHO} ${AUDIO_CUE} | ${SED} -e "s/\//\\\\\\\\\//g")
SCHEDULER_DAEMON_COMMAND_S=$(shell ${ECHO} ${SCHEDULER_DAEMON_COMMAND} | \
${SED} -e "s/\//\\\\\\\\\//g")
REPLACE_SED_STRING="s/ls_var_dir/${USR_VAR_DIR_S}/; \ REPLACE_SED_STRING="s/ls_var_dir/${USR_VAR_DIR_S}/; \
s/ls_dbuser/${DB_USER}/; \ s/ls_dbuser/${DB_USER}/; \
@ -99,6 +104,7 @@ REPLACE_SED_STRING="s/ls_var_dir/${USR_VAR_DIR_S}/; \
s/ls_php_host/${HOSTNAME}/; \ s/ls_php_host/${HOSTNAME}/; \
s/ls_php_port/${WWW_PORT}/; \ s/ls_php_port/${WWW_PORT}/; \
s/ls_alib_xmlRpcPrefix/${ALIB_XML_RPC_PREFIX_S}/; \ s/ls_alib_xmlRpcPrefix/${ALIB_XML_RPC_PREFIX_S}/; \
s/ls_tmp_dir/${STORAGE_TMP_DIR_S}/; \
s/ls_audio_output_device/${AUDIO_OUT_S}/; \ s/ls_audio_output_device/${AUDIO_OUT_S}/; \
s/ls_audio_cue_device/${AUDIO_CUE_S}/; \ s/ls_audio_cue_device/${AUDIO_CUE_S}/; \
s/ls_scheduler_host/${HOSTNAME}/; \ s/ls_scheduler_host/${HOSTNAME}/; \

View File

@ -143,7 +143,7 @@
</authenticationClientFactory> </authenticationClientFactory>
<storageClientFactory> <storageClientFactory>
<webStorage tempFiles="file:///tmp/webStorageClient" > <webStorage tempFiles="file:///tmp/campcasterStudioStorageClient" >
<location server="localhost" port="80" <location server="localhost" port="80"
path="/campcasterStorageServer/xmlrpc/xrLocStor.php" /> path="/campcasterStorageServer/xmlrpc/xrLocStor.php" />
</webStorage> </webStorage>

View File

@ -119,7 +119,7 @@
]> ]>
<gLiveSupport> <gLiveSupport>
<resourceBundle path = "ls_var_dir/LiveSupport/campcaster-studio" <resourceBundle path = "ls_var_dir/Campcaster/campcaster-studio"
locale = "en" locale = "en"
/> />
@ -143,7 +143,7 @@
</authenticationClientFactory> </authenticationClientFactory>
<storageClientFactory> <storageClientFactory>
<webStorage tempFiles="file:///tmp/campcasterStorageClient" > <webStorage tempFiles="file://ls_tmp_dir/campcasterStudioStorageClient">
<location server="ls_php_host" port="ls_php_port" <location server="ls_php_host" port="ls_php_port"
path="/ls_php_urlPrefix/storageServer/var/ls_alib_xmlRpcPrefix"/> path="/ls_php_urlPrefix/storageServer/var/ls_alib_xmlRpcPrefix"/>
</webStorage> </webStorage>

View File

@ -143,7 +143,7 @@
</authenticationClientFactory> </authenticationClientFactory>
<storageClientFactory> <storageClientFactory>
<webStorage tempFiles="file://ls_install_dir/tmp/webStorageClient" > <webStorage tempFiles="file://ls_tmp_dir/campcasterStudioStorageClient">
<location server="ls_php_host" port="ls_php_port" <location server="ls_php_host" port="ls_php_port"
path="/ls_php_urlPrefix/storageServer/var/ls_alib_xmlRpcPrefix"/> path="/ls_php_urlPrefix/storageServer/var/ls_alib_xmlRpcPrefix"/>
</webStorage> </webStorage>

View File

@ -338,8 +338,14 @@ GLiveSupport :: configure(const xmlpp::Element & element)
->get_value(); ->get_value();
try { try {
stationLogoPixbuf = Gdk::Pixbuf::create_from_file(stationLogoFileName); stationLogoPixbuf = Gdk::Pixbuf::create_from_file(stationLogoFileName);
} catch (Glib::FileError &e) {
Glib::ustring errorMsg = "could not open station logo image file: ";
errorMsg += e.what();
throw std::invalid_argument(errorMsg);
} catch (Gdk::PixbufError &e) { } catch (Gdk::PixbufError &e) {
throw std::invalid_argument("could not open station logo image file"); Glib::ustring errorMsg = "could not create station logo image: ";
errorMsg += e.what();
throw std::invalid_argument(errorMsg);
} }
// configure the taskbar icon images // configure the taskbar icon images

View File

@ -95,9 +95,13 @@ TaskbarIcons :: configure(const xmlpp::Element & element)
image = Gdk::Pixbuf::create_from_file(path); image = Gdk::Pixbuf::create_from_file(path);
taskbarIconList.push_back(image); taskbarIconList.push_back(image);
} catch (Gdk::PixbufError &e) { } catch (Glib::FileError &e) {
Glib::ustring errorMsg = "could not open icon image file: "; Glib::ustring errorMsg = "could not open icon image file: ";
errorMsg.append(path); errorMsg += e.what();
throw std::invalid_argument(errorMsg);
} catch (Gdk::PixbufError &e) {
Glib::ustring errorMsg = "could not create icon image: ";
errorMsg += e.what();
throw std::invalid_argument(errorMsg); throw std::invalid_argument(errorMsg);
} }
} else { } else {

View File

@ -163,21 +163,21 @@ int main ( int argc,
const xmlpp::Document * document = parser->get_document(); const xmlpp::Document * document = parser->get_document();
gLiveSupport->configure(*(document->get_root_node())); gLiveSupport->configure(*(document->get_root_node()));
} catch (std::invalid_argument &e) { } catch (std::invalid_argument &e) {
std::cerr << "semantic error in configuration file" << std::endl std::cerr << "error in configuration file: "
<< e.what() << std::endl; << e.what() << std::endl;
return 1; return 1;
} catch (xmlpp::exception &e) { } catch (xmlpp::exception &e) {
std::cerr << "error parsing configuration file" << std::endl std::cerr << "error parsing configuration file: "
<< e.what() << std::endl; << e.what() << std::endl;
return 1; return 1;
} catch (std::logic_error &e) { } catch (std::logic_error &e) {
std::cerr << "error configuring..." << std::endl std::cerr << "error while configuring: "
<< e.what() << std::endl; << e.what() << std::endl;
return 1; return 1;
} }
if (!gLiveSupport->checkConfiguration()) { if (!gLiveSupport->checkConfiguration()) {
std::cerr << "some problem with the configuration" << std::endl; std::cerr << "error; please check your configuration file" << std::endl;
return 1; return 1;
} }

View File

@ -64,6 +64,7 @@ USR_ETC_DIR = ${USR_DIR}/etc
USR_INCLUDE_DIR = ${USR_DIR}/include USR_INCLUDE_DIR = ${USR_DIR}/include
USR_LIB_DIR = ${USR_DIR}/lib USR_LIB_DIR = ${USR_DIR}/lib
USR_TMP_DIR = ${USR_DIR}/tmp USR_TMP_DIR = ${USR_DIR}/tmp
STORAGE_TMP_DIR = "/tmp"
HOSTNAME = @HOSTNAME@ HOSTNAME = @HOSTNAME@
WWW_PORT = @WWW_PORT@ WWW_PORT = @WWW_PORT@
@ -79,9 +80,12 @@ ALIB_XML_RPC_PREFIX=xmlrpc/xrLocStor.php
POSTGRES_USER=postgres POSTGRES_USER=postgres
USR_LIB_DIR_S=$(shell ${ECHO} ${USR_LIB_DIR} | ${SED} -e "s/\//\\\\\\\\\//g") USR_LIB_DIR_S=$(shell ${ECHO} ${USR_LIB_DIR} | ${SED} -e "s/\//\\\\\\\\\//g")
USR_TMP_DIR_S=$(shell ${ECHO} ${USR_TMP_DIR} | ${SED} -e "s/\//\\\\\\\\\//g") STORAGE_TMP_DIR_S=$(shell ${ECHO} ${STORAGE_TMP_DIR} | \
PHP_URL_PREFIX_S=$(shell ${ECHO} ${PHP_URL_PREFIX} | ${SED} -e "s/\//\\\\\\\\\//g") ${SED} -e "s/\//\\\\\\\\\//g")
ALIB_XML_RPC_PREFIX_S=$(shell ${ECHO} ${ALIB_XML_RPC_PREFIX} | ${SED} -e "s/\//\\\\\\\\\//g") PHP_URL_PREFIX_S=$(shell ${ECHO} ${PHP_URL_PREFIX} | \
${SED} -e "s/\//\\\\\\\\\//g")
ALIB_XML_RPC_PREFIX_S=$(shell ${ECHO} ${ALIB_XML_RPC_PREFIX} | \
${SED} -e "s/\//\\\\\\\\\//g")
AUDIO_OUT_S=$(shell ${ECHO} ${AUDIO_OUT} | ${SED} -e "s/\//\\\\\\\\\//g") AUDIO_OUT_S=$(shell ${ECHO} ${AUDIO_OUT} | ${SED} -e "s/\//\\\\\\\\\//g")
@ -94,7 +98,7 @@ REPLACE_SED_STRING="s/ls_lib_dir/${USR_LIB_DIR_S}/; \
s/ls_php_host/${HOSTNAME}/; \ s/ls_php_host/${HOSTNAME}/; \
s/ls_php_port/${WWW_PORT}/; \ s/ls_php_port/${WWW_PORT}/; \
s/ls_alib_xmlRpcPrefix/${ALIB_XML_RPC_PREFIX_S}/; \ s/ls_alib_xmlRpcPrefix/${ALIB_XML_RPC_PREFIX_S}/; \
s/ls_tmp_dir/${USR_TMP_DIR_S}/; \ s/ls_tmp_dir/${STORAGE_TMP_DIR_S}/; \
s/ls_audio_output_device/${AUDIO_OUT_S}/; \ s/ls_audio_output_device/${AUDIO_OUT_S}/; \
s/ls_scheduler_host/${HOSTNAME}/; \ s/ls_scheduler_host/${HOSTNAME}/; \
s/ls_scheduler_port/${SCHEDULER_PORT}/;" s/ls_scheduler_port/${SCHEDULER_PORT}/;"
@ -356,6 +360,8 @@ copy_files:
${CP} ${ETC_DIR}/odbcinst_old_debian_template \ ${CP} ${ETC_DIR}/odbcinst_old_debian_template \
${ETC_DIR}/odbcinst_new_debian_template \ ${ETC_DIR}/odbcinst_new_debian_template \
${ETC_DIR}/odbcinst_template ${USR_ETC_DIR} ${ETC_DIR}/odbcinst_template ${USR_ETC_DIR}
${CP} ${BIN_DIR}/createDatabase.sh \
${BIN_DIR}/createOdbcDataSource.sh ${USR_BIN_DIR}
${CAT} ${ETC_DIR}/odbc_template | ${SED} -e ${REPLACE_SED_STRING} \ ${CAT} ${ETC_DIR}/odbc_template | ${SED} -e ${REPLACE_SED_STRING} \
> ${USR_ETC_DIR}/odbc_template > ${USR_ETC_DIR}/odbc_template
${CAT} ${ETC_DIR}/scheduler.xml.template | ${SED} -e ${REPLACE_SED_STRING} \ ${CAT} ${ETC_DIR}/scheduler.xml.template | ${SED} -e ${REPLACE_SED_STRING} \

View File

@ -96,7 +96,7 @@
</authenticationClientFactory> </authenticationClientFactory>
<storageClientFactory> <storageClientFactory>
<testStorage tempFiles="file:///tmp/tempPlaylist"> <testStorage tempFiles="file:///tmp/campcasterSchedulerStorageClient">
<playlist id="0000000000000001" playlength="01:30:00.000000"> <playlist id="0000000000000001" playlength="01:30:00.000000">
<playlistElement id="0000000000000101" relativeOffset="0" > <playlistElement id="0000000000000101" relativeOffset="0" >
<audioClip id="0000000000010001" <audioClip id="0000000000010001"

View File

@ -100,7 +100,7 @@
</authenticationClientFactory> </authenticationClientFactory>
<storageClientFactory> <storageClientFactory>
<webStorage tempFiles="file:///tmp/webStorageClient" > <webStorage tempFiles="file:///tmp/campcasterSchedulerStorageClient" >
<location server="localhost" port="80" <location server="localhost" port="80"
path="/campcasterStorageServer/xmlrpc/xrLocStor.php" /> path="/campcasterStorageServer/xmlrpc/xrLocStor.php" />
</webStorage> </webStorage>

View File

@ -100,7 +100,7 @@
</authenticationClientFactory> </authenticationClientFactory>
<storageClientFactory> <storageClientFactory>
<webStorage tempFiles="file://ls_tmp_dir/webStorageClient" > <webStorage tempFiles="file://ls_tmp_dir/campcasterSchedulerStorageClient" >
<location server="ls_php_host" port="ls_php_port" <location server="ls_php_host" port="ls_php_port"
path="/ls_php_urlPrefix/storageServer/var/ls_alib_xmlRpcPrefix"/> path="/ls_php_urlPrefix/storageServer/var/ls_alib_xmlRpcPrefix"/>
</webStorage> </webStorage>