Difference between revisions of "Freeside:2.1:Documentation:InstallingOnDebian5"

From Freeside
Jump to: navigation, search
(New page: == Introduction == These instructions document installation of the integrated internal RT ticketing system. There is also support for running this integration against an external RT in...)
 
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Introduction ==
+
= Notes =
  
These instructions document installation of the integrated internal RT ticketing system.
+
Note: All of the commands on this page must be run as root.
  
There is also support for running this integration against an external RT installation, but it is not (yet) documented.
+
== Operating System ==
 +
* Basic Debian 5.0 "lenny" install - You will not need the desktop applications group.
  
Documentation contributions are welcome.
+
== Set the System Locale ==
 +
The locale needs to be set correctly for the database.  It is easiest to set it at the beginning of the installation.
  
== Prerequisites ==
+
*  Set the locale correctly -
 +
** For the US, generate both en_US and en_US.UTF-8, but (IMPORTANT) pick en_US as the default...
 +
  dpkg-reconfigure locales
  
* [http://search.cpan.org/dist/Apache-Session Apache::Session]
+
= Prerequisites =
* [http://search.cpan.org/dist/HTML-Tree HTML::TreeBuilder]
 
* [http://search.cpan.org/dist/HTML-Format HTML-Format] (CPAN: "install HTML::FormatText")
 
* [http://search.cpan.org/dist/Test-Inline Test::Inline]
 
* [http://search.cpan.org/dist/Class-ReturnValue Class::ReturnValue]
 
* [http://search.cpan.org/dist/DBIx-SearchBuilder DBIx::SearchBuilder]
 
* [http://search.cpan.org/dist/Log-Dispatch Log::Dispatch]
 
* [http://search.cpan.org/dist/Locale-Maketext-Lexicon Locale::Maketext::Lexicon]
 
* [http://search.cpan.org/dist/Locale-Maketext-Fuzzy Locale::Maketext::Fuzzy]
 
* [http://search.cpan.org/dist/Text-Wrapper Text::Wrapper]
 
* [http://search.cpan.org/dist/Time-modules Time-modules] (CPAN: "install Time::ParseDate")
 
* [http://search.cpan.org/dist/TermReadKey Term::ReadKey]
 
* [http://search.cpan.org/dist/Text-Autoformat Text::Autoformat]
 
* [http://search.cpan.org/dist/Text-Quoted Text::Quoted]
 
* [http://search.cpan.org/dist/Regexp-Common Regexp::Common]
 
* [http://search.cpan.org/dist/HTML-Scrubber HTML::Scrubber]
 
* [http://search.cpan.org/dist/Tree-Simple Tree::Simple]
 
* [http://search.cpan.org/dist/Crypt-SSLeay Crypt::SSLeay]
 
* [http://search.cpan.org/dist/GDGraph GD::Graph]
 
* [http://search.cpan.org/dist/UNIVERSAL-Require UNIVERSAL::require]
 
* [http://search.cpan.org/dist/XML-RSS XML::RSS]
 
* [http://search.cpan.org/dist/Calendar-Simple Calendar::Simple]
 
* [http://search.cpan.org/dist/GD-Graph GD::Graph]
 
* [http://search.cpan.org/dist/GD-Text GD::Text]
 
* [http://search.cpan.org/dist/CSS-Squish CSS::Squish]
 
  
== Installation ==
+
== Aptitude & Required Libraries ==
 +
=== Add the freeside repository ===
 +
* Add the following apt source to <code>/etc/apt/sources.list</code> (for Debian 5.0 "lenny"):
  
* Create a new Unix group called 'rt'
 
* Edit the top-level Makefile, set RT_ENABLED to 1 and set the RT_DOMAIN, RT_TIMEZONE, and FREESIDE_URL variables.
 
* <pre><nowiki>$ make configure-rt</nowiki></pre>
 
* If your database is not on the local machine you will need to edit /opt/rt3/etc/RT_SiteConfig.pm and set the DatabaseHost value
 
* <pre><nowiki># make create-rt</nowiki></pre>
 
** ''Authentication errors?''
 
*** ''Edit <code>pg_hba.conf</code>, change "<code>ident sameuser</code>" auth to "<code>trust</code>" for the line starting with "<code>local all all</code>"''
 
*** ''Restart Pg''
 
*** ''Revert the change back and restart Pg after this installation step''
 
* <pre><nowiki>make install-rt</nowiki></pre>
 
* Add the following to your httpd.conf:
 
 
<pre>
 
<pre>
#replace /var/www/freeside with your freeside document root
+
deb http://freeside.biz/~ivan/freeside-lenny/ ./
<Directory /var/www/freeside/rt/NoAuth>
+
</pre>
<Limit GET POST>
 
allow from all
 
Satisfy any 
 
SetHandler perl-script
 
PerlHandler HTML::Mason
 
</Limit>
 
</Directory>
 
  
#replace /var/www/freeside with your freeside document root
+
* Run <code>aptitude update</code>.
<Directory /var/www/freeside/rt/REST/1.0/NoAuth>
 
<Limit GET POST>
 
allow from all
 
Satisfy any 
 
SetHandler perl-script
 
PerlHandler HTML::Mason
 
</Limit>
 
</Directory>
 
  
#replace /var/www/freeside with your freeside document root
+
=== Install the Appropriate Packages ===
<DirectoryMatch "^%/var/www/freeside/rt/.*NoAuth/images">
 
SetHandler None
 
</DirectoryMatch>
 
  
#replace /var/www/freeside with your freeside document root
+
* Run this command to install all prerequisites:
<Directory /var/www/freeside/rt/Ticket/Attachment>
 
SetHandler perl-script
 
PerlHandler HTML::Mason
 
</Directory>
 
  
#replace /var/www/freeside with your freeside document root
+
<pre>
<Directory /var/www/freeside/rt/Search>  
+
aptitude install adduser apache2 apache2-mpm-prefork apache2-utils gcc gnupg ghostscript gsfonts gzip latex-xcolor \
SetHandler perl-script
+
  less libapache-dbi-perl libapache2-mod-perl2 libapache2-request-perl libapache-session-perl \
PerlHandler HTML::Mason
+
  libbusiness-creditcard-perl libcache-cache-perl libcache-simple-timedexpiry-perl libchart-perl \
</Directory>
+
  libclass-container-perl libclass-data-inheritable-perl libclass-returnvalue-perl libcolor-scheme-perl \
</pre>
+
  libcompress-zlib-perl libconvert-binhex-perl libcrypt-passwdmd5-perl libcrypt-ssleay-perl libcss-squish-perl \
 +
  libdate-manip-perl libdbd-mysql-perl libdbd-pg-perl libdbi-perl libdbix-dbschema-perl libdbix-searchbuilder-perl \
 +
  libdevel-stacktrace-perl libdevel-symdump-perl libdigest-sha1-perl liberror-perl libexception-class-perl \
 +
  libfile-counterfile-perl libfile-rsync-perl libfont-afm-perl libfreezethaw-perl libfrontier-rpc-perl \
 +
  libgd-gd2-noxpm-perl libgd-graph-perl libgd2-noxpm libhtml-format-perl libhtml-mason-perl libhtml-parser-perl \
 +
  libhtml-scrubber-perl libhtml-tagset-perl libhtml-tree-perl libhtml-widgets-selectlayers-perl libio-stringy-perl \
 +
  libipc-run-perl libipc-run3-perl libipc-sharelite-perl libjavascript-rpc-perl libjson-perl \
 +
  liblingua-en-inflect-perl liblingua-en-nameparse-perl liblocale-gettext-perl liblocale-maketext-fuzzy-perl \
 +
  liblocale-maketext-lexicon-perl liblocale-subcountry-perl liblog-dispatch-perl libmailtools-perl libmime-perl \
 +
  libmodule-versions-report-perl libnet-daemon-perl libnet-ping-external-perl libnet-scp-perl libnet-ssh-perl \
 +
  libnet-whois-raw-perl libnetaddr-ip-perl libnumber-format-perl libpam-modules libpam-runtime libpaper-utils \
 +
  libparams-validate-perl libparse-recdescent-perl libpcre3 libpg-perl libplrpc-perl libregexp-common-perl \
 +
  libspreadsheet-writeexcel-perl libstring-approx-perl libstring-shellquote-perl libterm-readkey-perl \
 +
  libtest-inline-perl libtext-autoformat-perl libtext-charwidth-perl libtext-csv-perl libtext-iconv-perl \
 +
  libtext-quoted-perl libtext-reform-perl libtext-template-perl libtext-wrapi18n-perl libtext-wrapper-perl \
 +
  libtie-ixhash-perl libtime-duration-perl libtime-modules-perl libtimedate-perl libtree-simple-perl \
 +
  libuniversal-require-perl liburi-perl libwant-perl libwww-perl libxml-parser-perl libyaml-perl lmodern make \
 +
  perl perl-base perl-modules postgresql postgresql-client rsync slidentd openssh-client openssh-server texlive \
 +
  texlive-latex-extra texinfo traceroute ttf-bitstream-vera ttf-dustin ucf zlib1g \
 +
  libdatetime-perl libdatetime-format-strptime-perl libfile-slurp-perl libspreadsheet-parseexcel-perl \
 +
  libauthen-passphrase-perl libnet-domain-tld-perl libbusiness-us-usps-webtools-perl libxml-simple-perl \
 +
  libemail-sender-perl libemail-sender-transport-smtp-tls-perl libemail-sender-perl \
 +
  libemail-sender-transport-smtp-tls-perl libhtml-defang-perl libdatetime-format-natural-perl libcgi-pm-perl \
 +
  libfile-sharedir-perl libmodule-versions-report-perl libtext-wikiformat-perl libnet-server-perl \
 +
  libhttp-server-simple-perl libhtml-rewriteattributes-perl libmime-types-perl libperlio-eol-perl \
 +
  libgnupg-interface-perl libdata-ical-perl libdate-ical-perl libcalendar-simple-perl libdatetime-set-perl \
 +
  libhook-lexwrap-perl libhttp-server-simple-mason-perl libxml-rss-perl libipc-run-safehandles-perl libpoe-perl \
 +
  libsoap-lite-perl libhtml-tableextract-perl libhtml-element-extended-perl libcam-pdf-perl \
 +
libgd-barcode-perl libnet-openssh-perl sam2p psmisc </pre>
  
* Restart Apache (httpd) and log into the Freeside web interface using the username and password you created during the first part of the installation.
+
= Verify the correct locale is set =
  
* Set the '''ticket_system''' configuration value to <code>RT_Internal</code>. (You may also wish to set '''ticket_system-default_queueid''' once you have RT configured.)
+
* Check your /etc/postgresql/8.3/main/postgresql.conf for the lc_ lines.  If they are set to "= 'en_US.UTF-8'"...
 +
* The postgresql cluster will need to be dropped and re-initialized
 +
pg_dropcluster 8.3 main --stop
 +
pg_createcluster --locale en_US 8.3 main
 +
* Don't forget to restart postgresql
 +
/etc/init.d/postgresql-8.3 start
  
=== Bootstrap RT's permissions ===
+
= Installation =
*Click on "Ticketing Main" on the Freeside main menu to auto-create an RT login for your username
 
*From "Billing Main", go to Configuration > Employees > View/Edit employees and add a temporary "root" user.  Note: the user name must be "root" (without the quotes).
 
* Log into your Freeside installation as the "root" user you just created, by closing all of your browser windows, or by using <code><nowiki>https://root@yourmachone/freeside/</nowiki></code> syntax if your browser supports it.
 
* Click on "Ticketing Main" on the Freeside main menu.  Go to Configuration > Ticketing > Ticketing Global, and then "User Rights".  Grant the "SuperUser" right to your normal RT/Freeside login.
 
* Go back to the freeside employee list and disable the temporary "root" user.
 
  
== Futher Reading ==
+
Follow the [[Freeside:1.9:Documentation:Installation#Installation|regular installation instructions]].
* Follow the [http://wiki.bestpractical.com/ regular RT documentation] to configure RT, setup the mailgate, etc.
 

Latest revision as of 08:04, 6 May 2011

Notes

Note: All of the commands on this page must be run as root.

Operating System

  • Basic Debian 5.0 "lenny" install - You will not need the desktop applications group.

Set the System Locale

The locale needs to be set correctly for the database. It is easiest to set it at the beginning of the installation.

  • Set the locale correctly -
    • For the US, generate both en_US and en_US.UTF-8, but (IMPORTANT) pick en_US as the default...
  dpkg-reconfigure locales

Prerequisites

Aptitude & Required Libraries

Add the freeside repository

  • Add the following apt source to /etc/apt/sources.list (for Debian 5.0 "lenny"):
deb http://freeside.biz/~ivan/freeside-lenny/ ./
  • Run aptitude update.

Install the Appropriate Packages

  • Run this command to install all prerequisites:
aptitude install adduser apache2 apache2-mpm-prefork apache2-utils gcc gnupg ghostscript gsfonts gzip latex-xcolor \
  less libapache-dbi-perl libapache2-mod-perl2 libapache2-request-perl libapache-session-perl \
  libbusiness-creditcard-perl libcache-cache-perl libcache-simple-timedexpiry-perl libchart-perl \
  libclass-container-perl libclass-data-inheritable-perl libclass-returnvalue-perl libcolor-scheme-perl \
  libcompress-zlib-perl libconvert-binhex-perl libcrypt-passwdmd5-perl libcrypt-ssleay-perl libcss-squish-perl \
  libdate-manip-perl libdbd-mysql-perl libdbd-pg-perl libdbi-perl libdbix-dbschema-perl libdbix-searchbuilder-perl \
  libdevel-stacktrace-perl libdevel-symdump-perl libdigest-sha1-perl liberror-perl libexception-class-perl \
  libfile-counterfile-perl libfile-rsync-perl libfont-afm-perl libfreezethaw-perl libfrontier-rpc-perl \
  libgd-gd2-noxpm-perl libgd-graph-perl libgd2-noxpm libhtml-format-perl libhtml-mason-perl libhtml-parser-perl \
  libhtml-scrubber-perl libhtml-tagset-perl libhtml-tree-perl libhtml-widgets-selectlayers-perl libio-stringy-perl \
  libipc-run-perl libipc-run3-perl libipc-sharelite-perl libjavascript-rpc-perl libjson-perl \
  liblingua-en-inflect-perl liblingua-en-nameparse-perl liblocale-gettext-perl liblocale-maketext-fuzzy-perl \
  liblocale-maketext-lexicon-perl liblocale-subcountry-perl liblog-dispatch-perl libmailtools-perl libmime-perl \
  libmodule-versions-report-perl libnet-daemon-perl libnet-ping-external-perl libnet-scp-perl libnet-ssh-perl \
  libnet-whois-raw-perl libnetaddr-ip-perl libnumber-format-perl libpam-modules libpam-runtime libpaper-utils \
  libparams-validate-perl libparse-recdescent-perl libpcre3 libpg-perl libplrpc-perl libregexp-common-perl \
  libspreadsheet-writeexcel-perl libstring-approx-perl libstring-shellquote-perl libterm-readkey-perl \
  libtest-inline-perl libtext-autoformat-perl libtext-charwidth-perl libtext-csv-perl libtext-iconv-perl \
  libtext-quoted-perl libtext-reform-perl libtext-template-perl libtext-wrapi18n-perl libtext-wrapper-perl \
  libtie-ixhash-perl libtime-duration-perl libtime-modules-perl libtimedate-perl libtree-simple-perl \
  libuniversal-require-perl liburi-perl libwant-perl libwww-perl libxml-parser-perl libyaml-perl lmodern make \
  perl perl-base perl-modules postgresql postgresql-client rsync slidentd openssh-client openssh-server texlive \
  texlive-latex-extra texinfo traceroute ttf-bitstream-vera ttf-dustin ucf zlib1g \
  libdatetime-perl libdatetime-format-strptime-perl libfile-slurp-perl libspreadsheet-parseexcel-perl \
  libauthen-passphrase-perl libnet-domain-tld-perl libbusiness-us-usps-webtools-perl libxml-simple-perl \
  libemail-sender-perl libemail-sender-transport-smtp-tls-perl libemail-sender-perl \
  libemail-sender-transport-smtp-tls-perl libhtml-defang-perl libdatetime-format-natural-perl libcgi-pm-perl \
  libfile-sharedir-perl libmodule-versions-report-perl libtext-wikiformat-perl libnet-server-perl \
  libhttp-server-simple-perl libhtml-rewriteattributes-perl libmime-types-perl libperlio-eol-perl \
  libgnupg-interface-perl libdata-ical-perl libdate-ical-perl libcalendar-simple-perl libdatetime-set-perl \
  libhook-lexwrap-perl libhttp-server-simple-mason-perl libxml-rss-perl libipc-run-safehandles-perl libpoe-perl \
  libsoap-lite-perl libhtml-tableextract-perl libhtml-element-extended-perl libcam-pdf-perl \
 libgd-barcode-perl libnet-openssh-perl sam2p psmisc 

Verify the correct locale is set

  • Check your /etc/postgresql/8.3/main/postgresql.conf for the lc_ lines. If they are set to "= 'en_US.UTF-8'"...
  • The postgresql cluster will need to be dropped and re-initialized
pg_dropcluster 8.3 main --stop
pg_createcluster --locale en_US 8.3 main
  • Don't forget to restart postgresql
/etc/init.d/postgresql-8.3 start

Installation

Follow the regular installation instructions.