Difference between revisions of "Freeside:2.1:Documentation:Installation"
Line 64: | Line 64: | ||
Apache2 etc | Apache2 etc | ||
<pre> | <pre> | ||
− | apt-get install apache2 libapache2-mod-perl2 postgresql-8.4 build-essential | + | apt-get install apache2 libapache2-mod-perl2 postgresql-8.4 build-essential texlive-base |
</pre> | </pre> | ||
Line 74: | Line 74: | ||
apt-get install libhtml-mason-perl libmailtools-perl libmail-mboxparser-perl libnetaddr-ip-perl libnet-ping-external-perl | apt-get install libhtml-mason-perl libmailtools-perl libmail-mboxparser-perl libnetaddr-ip-perl libnet-ping-external-perl | ||
apt-get install libnumber-format-perl libnumber-format-perl libspreadsheet-writeexcel-perl libstring-approx-perl libtext-csv-xs-perl | apt-get install libnumber-format-perl libnumber-format-perl libspreadsheet-writeexcel-perl libstring-approx-perl libtext-csv-xs-perl | ||
− | apt-get install libtext-template-perl libnet-ping-external-perl libterm-readkey-perl | + | apt-get install libtext-template-perl libnet-ping-external-perl libterm-readkey-perl libnet-ssleay-perl |
</pre> | </pre> | ||
Additional Perl Packages | Additional Perl Packages | ||
<pre> | <pre> | ||
− | apt-get install | + | apt-get install libfile-counterfile-perl libfile-policy-perl libipc-run-perl libipc-run3-perl libjson-perl |
apt-get install liblingua-en-nameparse-perl liblingua-en-inflect-perl libnet-domain-tld-perl libnet-ssh2-perl | apt-get install liblingua-en-nameparse-perl liblingua-en-inflect-perl libnet-domain-tld-perl libnet-ssh2-perl | ||
apt-get install libnet-whois-raw-perl libtime-duration-perl | apt-get install libnet-whois-raw-perl libtime-duration-perl | ||
Line 85: | Line 85: | ||
<pre> | <pre> | ||
cpan Authen::Passphrase Business::CreditCard Business::US::USPS::WebTools Color::Scheme Crypt::PasswdMD5 Frontier::RPC2 HTML::Defang | cpan Authen::Passphrase Business::CreditCard Business::US::USPS::WebTools Color::Scheme Crypt::PasswdMD5 Frontier::RPC2 HTML::Defang | ||
− | cpan HTML::Widgets::SelectLayers String::ShellQuote Tie::IxHash Apache::DBI | + | cpan HTML::Widgets::SelectLayers String::ShellQuote Tie::IxHash Apache::DBI Email::Sender::Transport::SMTP::TLS DBIx::DBSchema |
</pre> | </pre> | ||
Line 133: | Line 133: | ||
nano /etc/apache2/httpd.conf | nano /etc/apache2/httpd.conf | ||
</pre> | </pre> | ||
− | Add | + | *Add |
<pre> | <pre> | ||
User freeside | User freeside | ||
Line 159: | Line 159: | ||
make install-texmf | make install-texmf | ||
</pre> | </pre> | ||
+ | |||
+ | Install the Web Interface | ||
+ | <pre> | ||
+ | make install-docs | ||
+ | </pre> | ||
+ | |||
+ | Install Apache Config | ||
+ | <pre> | ||
+ | make install-apache | ||
+ | </pre> | ||
+ | |||
+ | Drop back to freeside permissions | ||
+ | <pre> | ||
+ | su freeside | ||
+ | </pre> | ||
+ | |||
+ | Initialize Data | ||
+ | <pre> | ||
+ | freeside-setup -d example.com | ||
+ | </pre> | ||
+ | |||
+ | Stay as freeside user and add additional users | ||
+ | <pre> | ||
+ | freeside-adduser -g 1 fs_queue | ||
+ | freeside-adduser -g 1 fs_daily | ||
+ | freeside-adduser -g 1 fs_selfservice | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | == Trouble Shooting == | ||
+ | * If freeside-setup fails its often due to a missing perl module - google the .pm filename and find and install the module | ||
+ | * If you are non us the database encoding might not be compatible - set the client encoding to LATIN1 and create the Database as Unicode |
Revision as of 19:48, 10 December 2010
Contents
1. Install the base system
- Only select the OpenSSH Package
2. Configure the network
Change the server to static IP
nano /etc/network/interfaces
Replace the below settings with you own ip addresses etc
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1
Set the hostname correctly
nano /etc/hosts
127.0.0.1 localhost.localdomain localhost 192.168.0.100 server1.example.com server1 # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
echo server1.example.com > /etc/hostname /etc/init.d/hostname restart
3. Update the system
apt-get update apt-get upgrade
4. Install core packages
Keep the system time correct
apt-get install ntp ntpdate
Apache2 etc
apt-get install apache2 libapache2-mod-perl2 postgresql-8.4 build-essential texlive-base
Common Perl Packages - Packages are much faster to install
apt-get install libwww-perl liburi-perl libhtml-tagset-perl libhtml-parser-perl libdbd-pg-perl libtimedate-perl libdate-manip-perl libchart-perl apt-get install libcache-cache-perl libdatetime-perl libdatetime-format-strptime-perl libdatetime-format-natural-perl libemail-sender-perl apt-get install libhtml-mason-perl libmailtools-perl libmail-mboxparser-perl libnetaddr-ip-perl libnet-ping-external-perl apt-get install libnumber-format-perl libnumber-format-perl libspreadsheet-writeexcel-perl libstring-approx-perl libtext-csv-xs-perl apt-get install libtext-template-perl libnet-ping-external-perl libterm-readkey-perl libnet-ssleay-perl
Additional Perl Packages
apt-get install libfile-counterfile-perl libfile-policy-perl libipc-run-perl libipc-run3-perl libjson-perl apt-get install liblingua-en-nameparse-perl liblingua-en-inflect-perl libnet-domain-tld-perl libnet-ssh2-perl apt-get install libnet-whois-raw-perl libtime-duration-perl
Modules not available as packages - Allow cpan to prepend any dependencies
cpan Authen::Passphrase Business::CreditCard Business::US::USPS::WebTools Color::Scheme Crypt::PasswdMD5 Frontier::RPC2 HTML::Defang cpan HTML::Widgets::SelectLayers String::ShellQuote Tie::IxHash Apache::DBI Email::Sender::Transport::SMTP::TLS DBIx::DBSchema
5. Prepare the system
Download latest freeside tar and extract
mkdir /freesidesource cd /freesidesource wget http://www.freeside.biz/freeside/freeside-2.1.1.tar.gz tar -zxvf freeside-2.1.1.tar.gz
Add the freeside user
adduser freeside
Grant permissions to freeside in postgresql
#su freeside $createuser -P freeside Enter password for new role: Enter it again: Shall the new role be a superuser? (y/n) n Shall the new role be allowed to create databases? (y/n) y Shall the new role be allowed to create more new roles? (y/n) n $exit
Edit the Makefile Set DB_PASSWORD to the freeside database user's password.
cd /freesidesource/freeside-2.1.1 nano Makefile
Add the database
#su freeside $createdb -E LATIN1 freeside
Configure Apache
- Set user to freeside
nano /etc/apache2/httpd.conf
- Add
User freeside Group Freeside
6. Install freeside
Build and Install the Perl modules - stay as freeside user
cd /freeside/freeside-2.1.1 make perl-modules su make install-perl-modules
Create config files
make create-config
Invoice Typesetting
make install-texmf
Install the Web Interface
make install-docs
Install Apache Config
make install-apache
Drop back to freeside permissions
su freeside
Initialize Data
freeside-setup -d example.com
Stay as freeside user and add additional users
freeside-adduser -g 1 fs_queue freeside-adduser -g 1 fs_daily freeside-adduser -g 1 fs_selfservice
Trouble Shooting
- If freeside-setup fails its often due to a missing perl module - google the .pm filename and find and install the module
- If you are non us the database encoding might not be compatible - set the client encoding to LATIN1 and create the Database as Unicode