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
http://code.campware.org/projects/campcaster/wiki/DevelopmentEnvironment
Installing on Ubuntu Dapper
doc/installUbuntu.html
Installing on Other Platforms
Installing on other platforms
doc/install.html
Campcaster HomePage
Campcaster home page
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
Installing on Other Platforms
doc/install.html
Developing on other platforms
doc/gettingStarted.html
User Documentation
http://code.campware.org/manuals/campcaster/1.0/
User manual
http://code.campware.org/manuals/campcaster/1.1/
Developer Documentation
doc/index.html
Campcaster HomePage
Campcaster home page
http://campcaster.campware.org/

View File

@ -144,14 +144,6 @@ doc_tmpdir=$ls_tmpdir/doc
etc_tmpdir=$ls_tmpdir/etc
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_version=cppunit-1.10.2
cxxunit_tmpdir=$tools_tmpdir/cppunit
@ -164,30 +156,10 @@ xmlrpcxx_dir=$toolsdir/xmlrpc++
xmlrpcxx_version=xmlrpc++-20040713
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_version=gstreamer-0.8.12
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_version=taglib-1.4
taglib_tmpdir=$tools_tmpdir/taglib
@ -264,20 +236,9 @@ mkdir -p $ls_tmpdir
mkdir -p $tools_tmpdir
#-------------------------------------------------------------------------------
# Copy needed files to the temporary directory
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# 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
cp -pPR $cxxunit_dir/$cxxunit_version $cxxunit_tmpdir
@ -287,24 +248,9 @@ cp -pPR $libodbcxx_dir/$libodbcxx_version $libodbcxx_tmpdir
mkdir -p $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
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
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 " [default: Campcaster]";
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 " by apache [default: /var/www]";
echo " -s, --dbserver The name of the database server host.";
@ -145,7 +145,7 @@ if [ "x$dbpassword" == "x" ]; then
fi
if [ "x$apache_group" == "x" ]; then
apache_group=www-data;
apache_group=apache;
fi
if [ "x$postgresql_dir" == "x" ]; then
@ -269,70 +269,17 @@ ${postgresql_init_script} start
#-------------------------------------------------------------------------------
# Create the necessary database user and database itself
#-------------------------------------------------------------------------------
echo "Creating database and database user...";
# FIXME: the below might not work for remote databases
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
${install_bin}/createDatabase.sh --database=${ls_database} \
--dbuser=${ls_dbuser} \
--dbpassword=${ls_dbpassword} \
--dbserver=${ls_dbserver}
#-------------------------------------------------------------------------------
# Create the ODBC data source and driver
#-------------------------------------------------------------------------------
echo "Creating ODBC data source and driver...";
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;
${install_bin}/createOdbcDataSource.sh --database=${ls_database} \
--dbserver=${ls_dbserver}
#-------------------------------------------------------------------------------

View File

@ -169,7 +169,7 @@ ls_scheduler_host=$hostname
ls_scheduler_port=$scheduler_port
ls_scheduler_urlPrefix=
ls_scheduler_xmlRpcPrefix=RC2
ls_tmp_dir=$tmpdir
ls_tmp_dir=$installdir/tmp
ls_scheduler_daemon_command="$scheduler_bin_dir/scheduler_devenv.sh"
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>Location: $URL$</li>
</ul>
<h1>Scope</h1>
This document lists the development tools that are expected to be on a
system that intends to compile and develop Campcaster.<br>
<h1>Introduction</h1>
Campcaster expects a generic development environment on the system to
be built, which is basically a generic install of a POSIX-compliant
operating system, with a set of GNU development tools and some
utilities.<br>
<h1>Tools</h1>
The following tools are expected on the development system:<br>
<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>
</ul>
<h1>Libraries</h1>
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
libpng, you might need to install the <code>libpng</code> and
<code>libpng-dev</code> packages. The package names vary by distribution.)
<br>
<h2>Required libraries<br>
</h2>
The following development libraries are expected on the development
<p>The following development libraries are expected on the development
system:<br>
<ul>
<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>
</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>
</html>

View File

@ -16,214 +16,153 @@ Development Loan Fund</a>, under the GNU <a
<li>Version: $Revision$</li>
<li>Location: $URL$</li>
</ul>
<h1>Scope</h1>
This document describes how to compile and install Campcaster on your
system.<br>
<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.)
system.
<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>
and log in using username: <code>root</code>, password: <code>q</code>.<br>
<br>
Everyone else, please read the lines below carefully.<br>
<h1>Installing required compilation tools</h1>
Make sure that all the <a href="developmentTools.html">required compilation
tools and libraries</a> are installed. You can either install pre-packaged
<h1>Installation instructions</h1>
<h2>1. Install the tools, libraries and services</h2>
First, you need to install the <a href="developmentTools.html">tools,
libraries and services</a> needed to compile and run Campcaster.
You can either install pre-packaged
versions, if they are provided for your distribution; or you can download
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>
Campcaster depends on some external services to be able to run, most
importantly a PHP-capable web server (we assume apache), and a database
server (we assume PostgreSQL). <br>
<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.
<p>If you are using Ubuntu Dapper (or later), then the easiest way of doing this
is to 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.
<h1>Obtaining Campcaster sources</h1>
Campcaster sources come in two different tarballs:<br>
<ul>
<li><code>campcaster-&lt;version&gt;.tar.bz2</code> - the
Campcaster source files<code><br>
</code></li>
<li><code>campcaster-libraries-&lt;version&gt;.tar.bz2</code> -
external libraries used by Campcaster<code><br>
</code></li>
</ul>
Both files can be downloaded from <a
href="http://sourceforge.net/projects/campcaster/"><code>http://sourceforge.net/projects/campcaster/</code></a>.
<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
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>
After downloading the files, untar them in the same directory:<br>
<br>
<pre><code>tar xfj campcaster-&lt;version&gt;.tar.bz2<br>tar xfj campcaster-libraries-&lt;version&gt;.tar.bz2<br></code></pre>
<br>
which will create a <code>campcaster-&lt;version&gt;</code>
directory, with all the required files to compile and install
Campcaster.<br>
<h1>Compiling Campcaster</h1>
To compile Campcaster, enter the Campcaster directory, and execute
the following commands:<br>
<br>
<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>
<br>
Note that you need to have write permissions in the <code>prefix</code> directory
when you run <code>make</code>.
The configure options used above are the options most probably used:<br>
<br>
<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>
The installation directory. Supply the previously
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>
<pre><code><br> --with-apache-group use apache running in the specified group (apache)<br><br></code></pre>
The user group the apache web server daemon runs at (see the section
above on installing apache). Supply the <code>&lt;apache-group&gt;</code>
value here, as mentioned above, which is usually either <code>apache</code>
or <code>www-data</code>.<br>
<br>
<pre> --with-www-docroot deploy Campcaster under the specified docroot<br> (/var/www)<br><br></pre>
The document root of your apache installation (see the section above on
installing apache). Supply the <code>&lt;www-root&gt;</code>
value here, as mentioned above, which is usually <code>/var/www</code>
or <code>/var/www/htdocs</code>
or <code>/var/www/&lt;yourhost&gt;/htdocs.</code>
<span style="font-family: monospace;"><br>
<br>
</span>Compilation will take quite a while, so go have a tea, watch a
movie, relax,
etc.<br>
<br>
If you want the installation script to create the database tables used
by Campcaster, consider using the following configure options:<br>
<br>
<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>
For a full list of options, see <code>./configure --help</code><br>
<h1>Installing Campcaster<br>
</h1>
After a successful compilation, to install Campcaster, you can install
Campcaster by typing:<br>
<br>
<pre><code>make install</code><br></pre>
<br>
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
<code>make install</code> as root.<br>
<br>
<h1>Try it out</h1>
<pre> --with-apache-group specify the group of the apache web server daemon
[default: apache]
</pre>
The group of the apache web server daemon. On Debian-based systems, including
Ubuntu, this is <code>www-data</code>.
<p>There are several more options; type <code>./configure --help</code> to get
a list of them, together with their default values.
<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.
The simplest way is to use the script included with Campcaster:
<pre>./bin/postInstallStation.sh --directory=/opt/campcaster</pre>
You need to run this script as root, too.
<p>You can also set up everything manually; see the
<a href="gettingStarted.html">gettingStarted.html</a>
document about how to do that.
<p><code>postInstallStation.sh</code> takes several arguments;
the most important are the following:
<pre> --directory=PREFIX look for Campcaster files in PREFIX
</pre>
The installation directory, where Campcaster was installed. This argument
is obligatory.
<p><pre> --apache-group specify the group of the apache web server
[default: apache]
</pre>
The group of the apache web server daemon. On Debian-based systems, including
Ubuntu, this is <code>www-data</code>.
<p><pre> --postgresql-dir the PostgreSQL configuration directory
[default: /etc/postgresql]
</pre>
The directory containing the PostgreSQL configuration file
<code>pg_hba.conf</code>. On Ubuntu Dapper and Edgy, this is
<code>/etc/postgresql/8.1/main</code>. On some distributions, it may be
<code>/var/lib/postgres/data/</code>.
<p><pre>
--postgresql-init-script the start/stop command for the PostgreSQL daemon
[default: /etc/init.d/postgresql]
</pre>
The init script used to start and stop the PostgreSQL daemon. On Ubuntu Dapper
and Edgy, this is <code>/etc/init.d/postgresql-8.1</code>.
<p>There are several more options; type
<code>./bin/postInstallStation.sh --help</code>
to get a list of them, together with their default values.
<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 &lt;ls-installdir&gt;/bin/scheduler.sh. To start the scheduler,
simply invoke:<br>
<br>
<pre><code>&lt;ls-installdir&gt;/bin/scheduler.sh start</code><br></pre>
<br>
The only thing left to do is to try out the Campcaster web interface
or the GUI application.<br>
<br>
For the web interface, point your browser to the following URL: <code>http://&lt;yourhost&gt;/campcaster/</code>
.<br>
<br>
The GUI application can be started by issuing the following command:<br>
<br>
<pre><code>&lt;ls-installdir&gt;/bin/campcaster-studio.sh</code><br></pre>
<br>
For your first login, use the following values:<br>
under <code>&lt;installation directory&gt;/bin/scheduler.sh<code>.
To start the scheduler, simply type:
<pre><code>&lt;installation directory&gt;/bin/scheduler.sh start</code></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><code>&lt;installation directory&gt;/bin/campcaster-studio.sh</code></pre>
<p>For your first login, use the following values:
<ul>
<li>username: root</li>
<li>password: q</li>
</ul>
Have fun!<br>
<br>
<br>
<pre><code></code></pre>
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 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>
</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>Location: $URL$</li>
</ul>
<h1>Scope</h1>
This document describes the process of releasing a new version of
Campcaster. Obviously this document is only relevant to people who
have the rights and permissions to make such a release.<br>
<h1>Introduction</h1>
For all the releases of Campcaster to remain consistent, it is
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>
</ul>
<h1>Getting Campcaster sources</h1>
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
@ -52,12 +58,10 @@ control system</li>
<li>there are no generated files in the release</li>
</ul>
To get a fresh copy of the Campcaster repository, execute the
following in an empty directory:<br>
<br>
<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>
following in an empty directory:
<pre><code>svn export svn://code.campware.org/campcaster/trunk/campcaster</code><br></pre>
<h1>Checking the distribution script</h1>
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
@ -92,6 +96,8 @@ manager is quite picky on the format of the changelog file. See <a
<br>
Don't forget to commit the changes made to the changelog into Subversion
before proceeding.<br>
<h1>Creating release tarballs<br>
</h1>
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-libraries-&lt;ls-version&gt;.tar.bz2</code></li>
</ul>
<h1>Testing the tarballs</h1>
Having broken releases is very annoying, thus it is highly recommended
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>
Do not publish tarballs that have not been tested, or are known to be
broken.<br>
<h1>Creating Debian packages</h1>
After the source tarballs have been tested, Debian source and binary
packages can be created. To do so, upload the source tarballs to a
Debian system, and do the following:<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>
The above command will create the Debain source package files next to
the original source tarballs. The script will generate the following
files, making up the Debian source package:<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
build the binaries for the current target platform, provided all the
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
in an empty directory as follows:<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>
<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><code></code><code></code></pre>
<pre>campcaster-libs_&lt;ls-version&gt;-1_&lt;arch&gt;.deb
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>
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,
issue the following command:<br>
<br>
<pre><code>svn copy svn+ssh://&lt;username&gt;@code.campware.org/home/svn/repo/campcaster/trunk/ \
svn+ssh://&lt;username&gt;@code.campware.org/home/svn/repo/campcaster/tags/campcaster-&lt;ls-version&gt;<br></code></pre>
<pre><code>svn copy svn://code.campware.org/campcaster/trunk \
svn://code.campware.org/campcaster/tags/campcaster-&lt;ls-version&gt;
</code></pre>
<br>
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>
<h1>Updating Trac</h1>
Add the new version number to the Version pull-down menu in Trac by
executing
<pre><code>trac-admin /usr/local/trac-projects/campcaster version add &lt;ls-version&gt;</code></pre>
on <code>code.campware.org</code>.
<h1>Publishing the tarballs</h1>
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

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
----------------------

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
#
installdir=/opt/livesupport
installdir=/opt/campcaster
case "$1" in
configure)
# 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
cp -f $installdir/bin/livesupport-station /etc/init.d
update-rc.d livesupport-station defaults 92 || true
/etc/init.d/livesupport-station start || true
cp -f $installdir/bin/campcaster-scheduler /etc/init.d
update-rc.d campcaster-scheduler defaults 92 || true
/etc/init.d/campcaster-scheduler start || true
;;
abort-upgrade|abort-remove|abort-deconfigure)

View File

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

View File

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

View File

@ -20,8 +20,8 @@ set -e
case "$1" in
remove|upgrade|deconfigure)
# stop the livesupport scheduler daemon
/etc/init.d/livesupport-station stop || true
/etc/init.d/livesupport-station kill || true
/etc/init.d/campcaster-scheduler stop || true
/etc/init.d/campcaster-scheduler kill || true
;;
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
#
installdir=/opt/livesupport
installdir=/opt/campcaster
apache_group=www-data
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
* 1.1 beta release

View File

@ -1,4 +1,4 @@
Source: livesupport
Source: campcaster
Section: sound
Priority: optional
Maintainer: ls_maintainer
@ -6,45 +6,85 @@ Build-Depends: debhelper (>= 4.0.0),
binutils (>= 2.13),
gcc (>= 3.3),
g++ (>= 3.3),
make (>= 3.80).
automake1.7,
libc6-dev,
make (>= 3.80),
automake1.8,
autoconf (>= 2.59),
libtool,
pkgconfig (>= 0.15),
pkg-config (>= 0.15),
patch (>= 2.5.9),
doxygen,
tar,
gzip,
unzip,
bzip2,
curl,
bison (>= 1.35),
flex,
graphviz,
xsltproc,
unixodbc-dev (>= 2.2),
xlibs-dev (>= 4.1.0),
odbc-postgresql,
fontconfig,
libfontconfig1-dev,
libpng12-dev,
libjpeg62-dev,
openssl,
libssl-dev,
libxml2-dev,
libpopt-dev,
alsa-base,
libasound2-dev,
libid3tag0-dev,
libmad0-dev,
libogg-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),
bison (>= 1.35),
flex
libgtk2.0-dev (>= 2.6.10),
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
Package: livesupport-libs
Package: campcaster-libs
Architecture: any
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),
xlibs (>= 4.1.0),
odbc-postgresql,
libfontconfig1,
libpng12-0,
libjpeg62,
libssl0.9.7,
libssl0.9.8,
libxml2,
libpopt0,
libasound2,
@ -52,32 +92,48 @@ Depends: ${shlibs:Depends},
libmad0,
libogg0,
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.
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
Depends: ${shlibs:Depends},
livesupport-libs (>= ${dpkg:Version}),
campcaster-libs (>= ${dpkg:Version}),
sed,
unixodbc (>= 2.2),
odbc-postgresql,
apache | apache2,
php4,
php4-domxml,
php4-pear,
php4-pgsql,
libapache-mod-php4 | libapache2-mod-php4,
postgresql (>= 7.4),
postgresql-client (>=7.4)
libfontconfig1,
libpng12-0,
libjpeg62,
libssl0.9.8,
libxml2,
libpopt0,
libasound2,
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.
This package contains the server components of LiveSupport.
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.
This package contains the GUI client component of Campcaster.

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

View File

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

View File

@ -200,33 +200,34 @@ install: all
${CP} ${INCLUDE_DIR}/LiveSupport/Widgets/*.h \
${USR_INCLUDE_DIR}/LiveSupport/Widgets
${CP} ${WIDGETS_LIB_FILE} ${USR_LIB_DIR}
${MKDIR} ${USR_VAR_DIR}/LiveSupport/Widgets/blueBin \
${USR_VAR_DIR}/LiveSupport/Widgets/button \
${USR_VAR_DIR}/LiveSupport/Widgets/combo \
${USR_VAR_DIR}/LiveSupport/Widgets/darkBlueBin \
${USR_VAR_DIR}/LiveSupport/Widgets/entryBin \
${USR_VAR_DIR}/LiveSupport/Widgets/icons \
${USR_VAR_DIR}/LiveSupport/Widgets/imageButton \
${USR_VAR_DIR}/LiveSupport/Widgets/tabButton \
${USR_VAR_DIR}/LiveSupport/Widgets/whiteWindow
${MKDIR} ${USR_VAR_DIR}/Campcaster/Widgets
${MKDIR} ${USR_VAR_DIR}/Campcaster/Widgets/blueBin \
${USR_VAR_DIR}/Campcaster/Widgets/button \
${USR_VAR_DIR}/Campcaster/Widgets/combo \
${USR_VAR_DIR}/Campcaster/Widgets/darkBlueBin \
${USR_VAR_DIR}/Campcaster/Widgets/entryBin \
${USR_VAR_DIR}/Campcaster/Widgets/icons \
${USR_VAR_DIR}/Campcaster/Widgets/imageButton \
${USR_VAR_DIR}/Campcaster/Widgets/tabButton \
${USR_VAR_DIR}/Campcaster/Widgets/whiteWindow
${CP} ${VAR_DIR}/blueBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/blueBin
${USR_VAR_DIR}/Campcaster/Widgets/blueBin
${CP} ${VAR_DIR}/button/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/button
${USR_VAR_DIR}/Campcaster/Widgets/button
${CP} ${VAR_DIR}/combo/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/combo
${USR_VAR_DIR}/Campcaster/Widgets/combo
${CP} ${VAR_DIR}/darkBlueBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/darkBlueBin
${USR_VAR_DIR}/Campcaster/Widgets/darkBlueBin
${CP} ${VAR_DIR}/entryBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/entryBin
${USR_VAR_DIR}/Campcaster/Widgets/entryBin
${CP} ${VAR_DIR}/icons/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/icons
${USR_VAR_DIR}/Campcaster/Widgets/icons
${CP} ${VAR_DIR}/imageButton/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/imageButton
${USR_VAR_DIR}/Campcaster/Widgets/imageButton
${CP} ${VAR_DIR}/tabButton/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/tabButton
${USR_VAR_DIR}/Campcaster/Widgets/tabButton
${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;
if (!(image = Gdk::Pixbuf::create_from_file(path + imageName))) {
throw std::invalid_argument("Missing " + image);
bool success = true;
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;

View File

@ -120,13 +120,18 @@ CornerImages :: loadImage(const std::string path,
{
Glib::RefPtr<Gdk::Pixbuf> image;
if (!(image = Gdk::Pixbuf::create_from_file(path + imageName))) {
throw std::invalid_argument("Missing " + image);
bool success = true;
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)
// but it doesn't seem to work :(
// image->add_alpha(false, 0, 0, 0);
if (!success || !image) {
throw std::invalid_argument("Missing " + imageName);
}
return image;
}

View File

@ -66,6 +66,7 @@ USR_ETC_DIR = ${USR_DIR}/etc
USR_INCLUDE_DIR = ${USR_DIR}/include
USR_LIB_DIR = ${USR_DIR}/lib
USR_VAR_DIR = ${USR_DIR}/var
STORAGE_TMP_DIR = "/tmp"
HOSTNAME = @HOSTNAME@
WWW_PORT = @WWW_PORT@
@ -83,12 +84,16 @@ SCHEDULER_XML_RPC_PREFIX=RC2
SCHEDULER_DAEMON_COMMAND="sudo ${USR_BIN_DIR}/scheduler.sh"
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")
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_CUE_S=$(shell ${ECHO} ${AUDIO_CUE} | ${SED} -e "s/\//\\\\\\\\\//g")
SCHEDULER_DAEMON_COMMAND_S=$(shell ${ECHO} ${SCHEDULER_DAEMON_COMMAND} \
| ${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")
STORAGE_TMP_DIR_S=$(shell ${ECHO} ${STORAGE_TMP_DIR} | \
${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}/; \
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_port/${WWW_PORT}/; \
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_cue_device/${AUDIO_CUE_S}/; \
s/ls_scheduler_host/${HOSTNAME}/; \

View File

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

View File

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

View File

@ -143,7 +143,7 @@
</authenticationClientFactory>
<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"
path="/ls_php_urlPrefix/storageServer/var/ls_alib_xmlRpcPrefix"/>
</webStorage>

View File

@ -338,8 +338,14 @@ GLiveSupport :: configure(const xmlpp::Element & element)
->get_value();
try {
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) {
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

View File

@ -95,9 +95,13 @@ TaskbarIcons :: configure(const xmlpp::Element & element)
image = Gdk::Pixbuf::create_from_file(path);
taskbarIconList.push_back(image);
} catch (Gdk::PixbufError &e) {
} catch (Glib::FileError &e) {
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);
}
} else {

View File

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

View File

@ -64,6 +64,7 @@ USR_ETC_DIR = ${USR_DIR}/etc
USR_INCLUDE_DIR = ${USR_DIR}/include
USR_LIB_DIR = ${USR_DIR}/lib
USR_TMP_DIR = ${USR_DIR}/tmp
STORAGE_TMP_DIR = "/tmp"
HOSTNAME = @HOSTNAME@
WWW_PORT = @WWW_PORT@
@ -79,9 +80,12 @@ ALIB_XML_RPC_PREFIX=xmlrpc/xrLocStor.php
POSTGRES_USER=postgres
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")
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")
STORAGE_TMP_DIR_S=$(shell ${ECHO} ${STORAGE_TMP_DIR} | \
${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")
@ -94,7 +98,7 @@ REPLACE_SED_STRING="s/ls_lib_dir/${USR_LIB_DIR_S}/; \
s/ls_php_host/${HOSTNAME}/; \
s/ls_php_port/${WWW_PORT}/; \
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_scheduler_host/${HOSTNAME}/; \
s/ls_scheduler_port/${SCHEDULER_PORT}/;"
@ -356,6 +360,8 @@ copy_files:
${CP} ${ETC_DIR}/odbcinst_old_debian_template \
${ETC_DIR}/odbcinst_new_debian_template \
${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} \
> ${USR_ETC_DIR}/odbc_template
${CAT} ${ETC_DIR}/scheduler.xml.template | ${SED} -e ${REPLACE_SED_STRING} \

View File

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

View File

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

View File

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