Skip to content
This repository has been archived by the owner on May 2, 2018. It is now read-only.

Installation instructions

holtzermann17 edited this page Sep 29, 2012 · 27 revisions

INSTALL PLANETARY ✓

git clone git://github.com/cdavid/drupal_planetary.git
ln -s /home/planetary/drupal_planetary /var/www/drupal
cd drupal_planetary
chmod a+w sites/default/files
cp sites/default/default.settings.php sites/default/settings.php
chmod a+w sites/default/settings.php

INSTALL DRUSH ✓

git clone --branch 7.x-5.x http://git.drupal.org/project/drush.git
ln -s /home/planetary/drush/drush /usr/local/bin/drush

CREATE DATABASE ✓

mysql -u root -p

CREATE DATABASE planetary;
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON planetary.*
TO 'planetary'@'localhost' IDENTIFIED BY 'make-something-up';

CONFIGURE APACHE ✓

<VirtualHost *:80>
  ServerAdmin xxxxxxxxx@gmail.com
  ServerName xxx.yyy.zzz
  DocumentRoot /var/www/drupal/
  <Directory /var/www/drupal/>
      AllowOverride All
      Order allow,deny
      allow from all
  </Directory>
  ErrorLog /var/log/apache2/a.log
  CustomLog /var/log/apache2/a.log combined
</VirtualHost>

INSTALL REQUIRED MODULES ✓

drush -y dl migrate views features reroute_email references \
 pathauto profile2 subform token relation \
 relation_select  legal recaptcha userpoints userpoints_nc \
 privatemsg content_access ctools delete_all devel backup_migrate commentrss \
 nodeaccess wysiwyg views_php sparql filefield_paths date dhtml_menu

drush -y dl og-7.x-2.x-dev entityreference-7.x-1.x-dev entity-7.x-1.x-dev \
 views_bulk_operations-7.x-3.x-dev captcha-7.x-1.x-dev efq_views-7.x-1.x-dev \
 watcher-7.x-1.x-dev rdfx-7.x-2.x-dev

Look through the main installation instructions to make sure you have all the necessary configuration steps sorted out.

INSTALL LATEXML ✓

svn co https://svn.mathweb.org/repos/LaTeXML/branches/arXMLiv

apt-get install perlmagick libxml2 libxml2-dev libxslt1.1 libxslt1-dev \
libxml-libxml-perl libclone-perl libdata-compare-perl libio-prompt-perl \
libparse-recdescent-perl libxml-libxslt-perl libdb5.1 libdb5.1-dev \
libgdbm-dev libarchive-zip-perl unzip

perl -MCPAN -e shell
install Parse::RecDescent XML::LibXSLT DB_File Mojolicious::Lite Data::Compare
quit

perl Makefile.PL
make
make install

CONFIGURE LATEXML TO RUN UNDER APACHE ✓

sudo apt-get install libapache2-mod-perl2 libplack-perl

sudo chgrp -R www-data /path/to/LaTeXML/webapp
sudo chmod -R g+w /path/to/LaTeXML/webapp

Create a "latexml" file in ``/etc/apache2/sites-available``` like this:

<VirtualHost *:80>
    ServerName latexml.example.com 
    DocumentRoot /path/to/LaTeXML/webapp
    Header set Access-Control-Allow-Origin * 
    <Perl>
      $ENV{PLACK_ENV} = 'production';
      $ENV{MOJO_HOME} = '/path/to/LaTeXML/webapp';
    </Perl>

    <Location />
      SetHandler perl-script
      PerlHandler Plack::Handler::Apache2
      PerlSetVar psgi_app /path/to/LaTeXML/webapp/ltxmojo
    </Location>

    ErrorLog /var/log/apache2/latexml.error.log
    LogLevel warn
    CustomLog /var/log/apache2/latexml.access.log combined
</VirtualHost>

and turn it on.

SET UP VIRTUOSO ✓

drush dl libraries rdfx sparql_views
drush -y en libraries
drush -y en rdfx sparql_views views_ui rdfui
sudo aptitude install dpkg-dev build-essential autoconf automake \
 libtool flex bison gperf gawk m4 make odbcinst libxml2-dev libssl-dev \
 libreadline-dev

wget http://downloads.sourceforge.net/project/virtuoso/virtuoso/6.1.5/virtuoso-opensource-6.1.5.tar.gz
tar -zxvf virtuoso-opensource-6.1.5.tar.gz
cd virtuoso-opensource-6.1.5

./configure --prefix=/usr/local/ --with-readline --program-transform-name="s/isql/isql-v/"
nice make
sudo make install

Invoke via screen

/usr/local/bin/virtuoso-t +configfile /usr/local/var/lib/virtuoso/db/virtuoso.ini -fd

SET UP PYRDFA ✓

First of all, if you're going to use our pyrdfa module, don't forget that you'll have to patch the Drupal core (see full instructions for details)!

git clone git://github.com/RDFLib/PyRDFa.git
cd PyRDFa
sudo python setup.py install

The relevant executable is in ./scripts/localRDFa.py. You can test it by pulling down some RDFa enhanced webpage and running

python /path/to/PyRDFa/scripts/localRDFa.py -x in.html > out.xml

If you run into trouble it may be because you don't have the right versions of required libraries installed. I solved these problems with the following commands (obtaining rdflib version 3.4.0-dev and html5lib version 0.95) and then rebuilt/reinstalled PyRDFa as above.

sudo pip install markdown
git clone git://github.com/RDFLib/rdflib.git
cd rdflib && sudo python setup.py install

(Further note: ideally this would be set up to run as a web service, similar to LaTeXML and so on, but that will take a moment to set up.)

GET THE ACE EDITOR, AND PUT IT IN YOUR LIBRARIES DIRECTORY ✓

git clone git://github.com/ajaxorg/ace.git
cd ace
npm install
node Makefile.dryice.js full

GET THE SHAREJS REPOSITORY ✓

git clone git://github.com/jucovschi/ShareJS.git
cd ShareJS
git checkout ace_services
sudo apt-get install redis-server coffeescript

Or grab the latest coffeescript if you're on an older system: http://coffeescript.org/

npm install redis
npm link
cake.coffeescript build
cake.coffeescript webclient

(Alternatively, just cake depending on how you installed coffeescript.)

RUN THE SHAREJS SERVER (E.G. WITHIN GNU SCREEN) VIA ✓

bin/exampleserver

INSTALL APACHE SOLR ✓

wget http://mirror.ox.ac.uk/sites/rsync.apache.org/lucene/solr/3.6.1/apache-solr-3.6.1-src.tgz
tar -zxvf apache-solr-3.6.1-src.tgz
cd apache-solr-3.6.1
sudo apt-get install ant

ant ivy-bootstrap

If you don't have the JDK installed you can do something like this (or just sudo apt-get install openjdk-6-jdk):

sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install sun-java6-jdk
ant compile

mv solr/example/solr/conf/schema.xml solr/example/solr/conf/schema.bak
mv solr/example/solr/conf/solrconfig.xml solr/example/solr/conf/solrconfig.bak
mv solr/example/solr/conf/protwords.txt solr/example/solr/conf/protwords.bak

cd ../drupal_planetary
drush dl apachesolr

cp sites/all/modules/apachesolr/solr-conf/schema-solr3x.xml \
 ../apache-solr-3.6.1/solr/example/solr/conf/schema.xml
cp sites/all/modules/apachesolr/solr-conf/solrconfig.xml \
 ../apache-solr-3.6.1/solr/example/solr/conf/solrconfig.xml
cp sites/all/modules/apachesolr/solr-conf/protwords.txt \
 ../apache-solr-3.6.1/solr/example/solr/conf/protwords.txt

The following step is important to get the relevant webapp to build.

cd ../apache-solr-3.6.1/solr/
ant example
lynx http://localhost:8983/solr/admin/

Finally:

drush -y en apachesolr apachesolr_search

Now you can visit admin/config/search/apachesolr to check out the configuration and control re-indexing. You can check out the details of your index at admin/reports/apachesolr/solr. In order to set Apache Solr as the default search engine (resp. hide the other search engines) you need to change the relevant radio button (resp. tick box) at admin/config/search/settings.

To set up faceted search, install facetapi:

drush -y dl facetapi-7.x-1.x-dev
drush -y en facetapi

and configure at admin/config/search/apachesolr/settings/solr/facets.

Some further information (YMMV) at http://drupalcode.org/project/apachesolr.git/blob_plain/refs/heads/7.x-1.x:/README.txt

If you want to search user pages, you should install

drush -y dl apachesolr_user
drush -y en apachesolr_user

and visit admin/config/search/apachesolr to tick the box selecting User as an indexable type.

There are some additional plugins but details on those will follow later. See this ticket #141 for some further notes.

LATEX INTEGRATION TO GENERATE PDFs ✓

This is handled by the planetmath_view_pdf module: make sure the PDFLaTeX command is correct for your system (/usr/bin/pdflatex) and create the output directory at sites/default/files/texpdf/.

INSTALL NNEXUS ✘

git clone git@github.com:dginev/nnexus.git
wget http://li101-104.members.linode.com/nnexus.sql.gz
gunzip nnexus.sql.gz

mysql> grant all on nnexusdb.* to 'nnexususer'@localhost identified by 'PASSWORD';
mysql> create database nnexusdb;

mysql -u nnexususer --password=PASSWORD nnexusdb < nnexus.sql

Now edit baseconf.xml so that dbname, dbuser, and dbpass match the values you specified above.

... The rest of the installation instructions are similar to those for LaTeXML, will follow those later.