diff options
| -rwxr-xr-x | install-pixelated.sh | 139 | ||||
| -rwxr-xr-x | service/go | 7 | ||||
| -rw-r--r-- | try.alice.ini | 7 | ||||
| -rw-r--r-- | try.bob.ini | 7 | 
4 files changed, 160 insertions, 0 deletions
| diff --git a/install-pixelated.sh b/install-pixelated.sh new file mode 100755 index 00000000..7008063e --- /dev/null +++ b/install-pixelated.sh @@ -0,0 +1,139 @@ +#!/bin/bash +# +# Copyright (c) 2014 ThoughtWorks, Inc. +# +# Pixelated is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pixelated is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with Pixelated. If not, see <http://www.gnu.org/licenses/>. + +# test dependencies + +set -e +export NODE_PATH='/home/vagrant/boxed_node_modules/node_modules/' + +if [ ! $USERNAME ] +then +  export USERNAME=`whoami` +fi + +usage() { echo "Usage: $0 [-v <virtualenv path>] [-n <custom node modules directory>]" 1>&2; exit 1; } + +VIRTUALENV_PATH=".virtualenv" +CUSTOM_NODE_MODULES_LOCATION="" +while getopts "n:v:" OPT; do +    case "${OPT}" in +        v) +            VIRTUALENV_PATH=${OPTARG} +            ;; +        n) # custom node_modules installation +            CUSTOM_NODE_MODULES_LOCATION=${OPTARG} +            ;; +        *) +            usage +            ;; +    esac +done +shift $((OPTIND-1)) + +function check_installed() { +        set +e +        which $1 +        if [ $? -ne 0 ]; then +                echo "## You must have ${1} installed and in the PATH to run Pixelated-User-Agent" +                echo "## Check our wiki for more information on dependencies:" +                echo "## https://github.com/pixelated-project/pixelated-user-agent/wiki/Installing-dependencies" +                echo "## exiting..." +                exit 1 +        fi +        set -e +} + + +# The below is necessary to allow node to use enough memory +# so that installing phantomjs won't fail +mkdir -p /home/vagrant/bin +cat > /home/vagrant/bin/node <<EOF +#!/usr/bin/env bash + +/usr/bin/node --max_old_space_size=2000 "\$@" +EOF +chmod +x /home/vagrant/bin/node +export PATH=/home/vagrant/bin:$PATH + + +function install_node_modules_at_custom_location() { +  local LOCATION="$1" +  local WEBUI_DIR=$(pwd) + +  if [ -e "$WEBUI_DIR/node_modules" ] ; then +    echo "It seems there is already a node_modules folder" 1>&2 +    return +  fi + +  if [ ! -e "$LOCATION" ] ; then +    mkdir "$LOCATION" +    pushd "$LOCATION" + +    ln -s "$WEBUI_DIR/package.json" package.json +    npm install + +    popd +  fi + +  if [ ! -h "node_modules" ] ; then +    rm -Rf "node_modules" +    ln -s "$LOCATION/node_modules" node_modules +  fi +} + +for dependency in node npm ruby virtualenv git gpg compass; do +        check_installed $dependency +done + +# install web-ui dependencies +cd web-ui +UIPATH=`pwd` + +if [ -z "$CUSTOM_NODE_MODULES_LOCATION" ] ; then +  npm install +else +  install_node_modules_at_custom_location "$CUSTOM_NODE_MODULES_LOCATION" +fi + +node_modules/bower/bin/bower -V install --config.interactive=false --allow-root +LC_ALL=en_US.UTF-8 ./go build + +# install service dependencies +cd .. +rm -rf "$VIRTUALENV_PATH" +virtualenv "$VIRTUALENV_PATH" +source "$VIRTUALENV_PATH/bin/activate" +# they can't be on the same command because it breaks pip upgrade +pip install --upgrade pip +pip install --upgrade setuptools +make setup +pip uninstall -y enum34 && pip install enum34 +pip uninstall -y pysqlcipher && pip install pysqlcipher # this is needed so pysqlcipher gets recompiled with the right version of glibc + +# print usage +cat <<EOF + +############### + +## You will need an account in a LEAP provider with mail support. +## Once you are done, activate your virtual environment by running: +## source $VIRTUALENV_PATH/bin/activate + +## The User agent will be available on http://localhost:3333 after running: +##     pixelated-user-agent + +EOF diff --git a/service/go b/service/go new file mode 100755 index 00000000..25661508 --- /dev/null +++ b/service/go @@ -0,0 +1,7 @@ +#!/bin/bash + +type -t deactivate && deactivate +set -e +pushd .. +make $* +popd diff --git a/try.alice.ini b/try.alice.ini new file mode 100644 index 00000000..57ef892c --- /dev/null +++ b/try.alice.ini @@ -0,0 +1,7 @@ +[pixelated] +HOST=0.0.0.0 +PORT=8080 +LEAP_SERVER_NAME=try.pixelated-project.org +LEAP_USERNAME=alice +LEAP_PASSWORD=WuSh3ohse4 + diff --git a/try.bob.ini b/try.bob.ini new file mode 100644 index 00000000..4c169c04 --- /dev/null +++ b/try.bob.ini @@ -0,0 +1,7 @@ +[pixelated] +HOST=0.0.0.0 +PORT=8080 +LEAP_SERVER_NAME=try.pixelated-project.org +LEAP_USERNAME=bob +LEAP_PASSWORD=quuojoo1Su + | 
