RDF cataloging interface.
A coarse overview of the system architecture
Eventually, a debian package will be provided, but for now, you must manually set up your environment.
The instructions will probably work with any Debian/Ubuntu-flavoured distro. My development setup is Ubuntu 64-bit version 14.04.
Ideally, any RDF quad-store with full SPARQL 1.1 support should do the trick, but Armillaria is developed and tested against Virtuoso 7, so that is what we recommend.
There are no binary distribution of Virtuoso 7, so it must be compiled from source:
# fetch build dependencies
sudo apt-get install libssl-dev gawk gperf flex build-essential automake autoconf bison libtool
# fetch virtuoso source tree
git clone https://github.com/openlink/virtuoso-opensource.git
git checkout develop/7
# bootstrap build
CFLAGS="-O2 -m64" ./autogen.sh
# build (substitute your destination)
CFLAGS="-O2 -m64" ./configure --prefix=/your/install/destination --disable-dbpedia-vad --disable-demo-vad --disable-fct-vad --disable-isparql-vad --disable-ods-vad --disable-rdfmappers-vad --disable-rdb2rdf-vad --disable-sparqldemo-vad --disable-syncml-vad --disable-tutorial-vad --disable-bpel-vad --with-port=1111
Test your installation by running virtuoso in the foreground. You need to give it a configuration file like this:
/your/install/destination/bin/virtuoso-t -f -c /my/db/destination/virtuoso.ini
You may use our minimal virtuoso.ini as a starting point.
For a more robust deployment, you may want to run virtuoso as an upstart service: example virtuoso.conf
I recommend installing a package from the official repostitories:
wget -O - http://packages.elasticsearch.org/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb http://packages.elasticsearch.org/elasticsearch/1.1/debian stable main" | sudo tee -a /etc/apt/sources.list
sudo apt-get update && sudo apt-get install elasticsearch
sudo service elasticsearch start
The (very limited) server backend is coded in Go.
There are pacakges for Ubuntu which are usually fairly up to date if you are running an updated distro:
sudo apt-get install golang
The minimum required version is version 1.2. If you want the latest and greatest I recommend the official binary distributions:
wget https://storage.googleapis.com/golang/go1.3.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.3.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
Either way, you must make sure to set your GOPATH
environment variable. This tells Go where to install dependencies locally. After installing Go, type go env
to check if GOPATH
is set, otherwise do it yourself:
export GOPATH=/home/<your username>/go # for example
Of course, you should add the above export
-statements to your .bashrc
, .profile
or similar, to avoid having to enter it every time you open a new shell.
If you want to know more about using the Go tools, please consult its exellent documentation.
Armellaria has a configuration file where you must fill out a few things:
mv data/config_example.json data/config.json
editor data/config.json
Fetch dependencies and setup indexes (expects Elasticsearch to be running on localhost:9200):
make deps
make indexes && make mappings
To start the server type:
make run