Newsagent/Installing

From Computer Science Wiki
Revision as of 13:14, 22 January 2015 by Mbasscp2 (talk | contribs)
Jump to navigation Jump to search
Newsagent
Author Chris Page
Contact Support
Repository github
Issue tracker github
OS Neutral (web based)
Will not work with IE8 or older
URL Newsagent
Navigation

Installing

Step 1

Before attempting to install Newsagent, ensure that your server meets the requirements listed under Environment requirements and that all the Perl modules listed under Perl modules required are installed.

Step 2

Next download the "Full Package" version of the latest release of CKEditor from the CKEditor site. For example:

cd /var/www/localhost
wget 'http://download.cksource.com/CKEditor/CKEditor/CKEditor%204.4.6/ckeditor_4.4.6_full.zip'
unzip ckeditor_4.4.6_full.zip

This will create a ckeditor directory in /var/www/localhost

Step 3

Once the software environment is prepared, you need to clone all the required repositories and set up links. The paths used are not important and are given for example only; if you use different paths, remember to adjust the instructions accordingly:

cd /var/www
git clone https://github.com/TheWatcher/webperl.git
cd /var/www/localhost
git clone https://github.com/UoMCS/newsagent.git
git clone https://github.com/TheWatcher/MultiSelect.git
git clone https://github.com/TheWatcher/mootools-datepicker.git
git clone https://github.com/twitter/twitter-text.git
cd /var/www/localhost/newsagent/templates/default/js
ln -s ../../../../MultiSelect .
ln -s ../../../../ckeditor .
ln -s ../../../../mootools-datepicker/Source datepicker
ln -s ../../../../twitter-text/js/twitter-text.js .

Step 4

Now you need to create a MySQL user, an empty database, and grant all privileges on that database to the new user. The following assumes that the new user and database are both called 'newsagent':

cd /var/www/localhost/newsagent/config
mysql -u newsagent -p newsagent < basic_db.sql

If the database is on a remote system, be sure to specify the -h and possibly -p options

Requirements

Where specified, version numbers are the minimum versions of packages that Newsagent has been tested with. Later versions should work provided no breaking changes have been made.

Environment requirements

  • Linux. Windows may work, but has not been tested.
  • MySQL 5.6. Some features are MySQL specific at this time.
  • Apache 2. mod_perl is optional but strongly recommended. Other web servers may work, but have not been tested.
  • Perl 5.12
  • ImageMagick 6.9
  • TidyP (see [1])

Git projects required

Perl modules required

The following required modules are often found in Linux distro repositories and should be installed from there:

  • CGI
  • Class::Accessor
  • Class::Mix
  • Compress::Bzip2
  • Date-Calc
  • DBI
  • Email::MIME
  • Email::Sender::Simple (in Email-Sender)
  • Email::Sender::Transport::SMTP (in Email-Sender)
  • Email::Sender::Transport::SMTP::Persistent (in Email-Sender)
  • Email::Valid
  • Expect (Only required if the Webperl::AuthMethod::SSH auth method is used)
  • File::Type
  • HTML::Entities (in HTML::Parser)
  • HTML::Scrubber
  • HTML::TokeParser::Simple
  • JSON
  • Net::LDAPS (perl-ldap) (Only required if the Webperl::AuthMethod::LDAP OR LDAPS auth methods are used)
  • Params::Classify
  • Try::Tiny (installed with Email-Sender)
  • WWW::Mechanize
  • XML::Simple

The following are usually not in repositories and will need to be installed via CPAN if not in your distro's repository:

  • experimental
  • DateTime::Event::Cron
  • Email::MIME::CreateHTML
  • HTML::FormatText
  • HTML::Tidy (Requires tidyp from http://tidyp.com/ )
  • Net::Twitter::Lite
  • HTML::WikiConverter::Markdown
  • WebService::Validator::HTML::W3C
  • Crypt::Eksblowfish::Bcrypt (Only required if the Webperl::AuthMethod::Database auth method is used)
  • Net::SSH::Expect (Only required if the Webperl::AuthMethod::SSH auth method is used)
  • CGI::Compress::Gzip
  • Lingua::EN::Sentence