Editing Dashing - dashboard framework

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
== Dashing - A Dashboard for TVs/Displays ==  
== Dashing ==  
http://shopify.github.io/dashing/


URL: http://shopify.github.io/dashing/
It's a pretty slick dashboard... wish it was perl... but who creates fluff in perl
== Requirements ==
* Tested on Debian GNU/Linux 6.0 - Squeeze (dreamplug)
* NodeJS
* Ruby 1.9
* Git




Line 30: Line 21:




==== Ruby additional steps ====
=== Other steps ===
* Install bundler gem ( I didn't have it, safe to run if you aleady have it)
<source>
<source<
ln -s /var/lib/gems/1.9.1/bin/dashing /usr/bin/
gem install bundler
</source>
</source>
* Link all the binaries. We shouldn't have to do this since we used apt-get to install.. but whatever.
: This will allow you to run ruby, bundle, dashing, etc.. '''anytime you install a NEW gem, you might want to run this'''
<source>
<source>
for f in /var/lib/gems/1.9.1/bin/*
gem install bundler
do
ln -s /var/lib/gems/1.9.1/bin/dashing /usr/bin/
filename=$(basename $f);
if [ -e $filename ]
then echo "$filename already exits";
else sudo ln -s $f $filename;
fi
done
</source>
</source>




=== Install NodeJS ===
=== Install NodeJS ===
; INSTALL from apt-get
<source>
apt-get install nodejs
</source>
* none of the source/compiling worked for me...
<strike>
<source>
<source>
sudo apt-get update && apt-get install git-core curl build-essential openssl libssl-dev
sudo apt-get update && apt-get install git-core curl build-essential openssl libssl-dev
Line 75: Line 41:
   
   
# 'git tag' shows all available versions: select the latest stable.
# 'git tag' shows all available versions: select the latest stable.
git checkout v0.9.5
git checkout v0.6.8
</source>
 
; This is a step normally not documented, but required for the arm7 (dreamplug)
 
* modify file: '''node-vx.x/deps/v8/SConstruct'''
* You need to add '''-march=armv7-a'''
 
<source>
# You need to edit this file and modify
# line # 84 it should look like this:
'gcc': {
    'all': {
      'CCFLAGS':      ['$DIALECTFLAGS', '$WARNINGFLAGS', '-march=armv7-a'],
      'CXXFLAGS':    ['-fno-rtti', '-fno-exceptions'],
    },
</source>
 
 
* Finish the compiling and install
 
<source>
# Configure seems not to find libssl by default so we give it an explicit pointer.
# Configure seems not to find libssl by default so we give it an explicit pointer.
./configure --openssl-libpath=/usr/lib/ssl
./configure --openssl-libpath=/usr/lib/ssl
make
make
# prepare to wait FOREVER...
make test
make test
sudo make install
sudo make install
Line 107: Line 51:
</source>
</source>


</strike>
=== Install ===
 
* Install the gem from the command line. Make sure you have Ruby 1.9
=== Install Dashing ===
 
; you must of followed the previous steps above.
 
* This was mainly pulled from http://shopify.github.io/dashing/  -- so look there for updates. (2013-05-31)
 
* Install the gem from the command line. Make sure you have Ruby 1.9 (yep.. we do)
<source>
<source>
gem install dashing
gem install dashing
</source>
</source>
* '''remeber the script before''' -- we need to link the new installed gem '''dashing''' into /usr/bin/
<source>
for f in /var/lib/gems/1.9.1/bin/*
do
filename=$(basename $f);
if [ -e $filename ]
then echo "$filename already exits";
else sudo ln -s $f $filename;
fi
done
</source>


* Generate a new project
* Generate a new project
Line 138: Line 62:
dashing new sweet_dashboard_project
dashing new sweet_dashboard_project
</source>
</source>


* Change your directory to sweet_dashboard_project and bundle gems
* Change your directory to sweet_dashboard_project and bundle gems
Line 145: Line 68:
bundle
bundle
</source>
</source>


* Start the server!
* Start the server!
Line 153: Line 75:
</source>
</source>


 
* Point your browser at localhost:3030 and have fun!
 
 
==== Upgrade JSON Gem ====
 
* edit <your_new_dashboard>/GemFile
<source>
# append
gem 'json', '~> 1.7.7'
</source>
<source>
bundle install
 
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/..
Resolving dependencies....
Using backports (3.3.1)
Using coffee-script-source (1.6.2)
Using multi_json (1.7.4)
Using execjs (1.4.0)
Using coffee-script (2.2.0)
Using daemons (1.1.9)
Using rack (1.5.2)
Using tzinfo (0.3.37)
Using rufus-scheduler (2.0.19)
Using sass (3.2.9)
Using rack-protection (1.5.0)
Using tilt (1.4.1)
Using sinatra (1.4.2)
Using eventmachine (1.0.3)
Using rack-test (0.6.2)
Using sinatra-contrib (1.4.0)
Using hike (1.2.2)
Using sprockets (2.10.0)
Using thin (1.5.1)
Using thor (0.18.1)
Using dashing (1.0.5)
Installing json (1.7.7)
Using bundler (1.3.5)
Your bundle is complete!
Use `bundle show [gemname]` to see where a bundled gem is installed.
</source>
 
 
* '''Point your browser at localhost:3030 and have fun!''''
 
 
=== Dashing Options ===
 
 
==== Server Port ====
* Dashing runs on Thin behind the scenes. That means that any config for running thin works. Example:
<source>
dashing start -p 5000 -e production
</source>
 
 
* Run in the background
<source>
dashing start -d
</source>
 
 
==== Scripts to run dashing as a Service ====
 
* https://gist.github.com/gregology/5313326
 
<source>
#!/bin/bash
# Dashing service
# Add this file to /etc/init.d/
# $ sudo cp dashboard /etc/init.d/
# Update variables DASHING_DIR, GEM_HOME, & PATH to suit your installation
# $ sudo nano /etc/init.d/dashboard
# Make executable
# $ sudo chmod 755 /etc/init.d/dashboard
# Update rc.d
# $ sudo update-rc.d dashboard defaults
# Dashboard will start at boot. Check out the boot log for trouble shooting "/var/log/boot.log"
# USAGE: start|stop|status|logs
 
### BEGIN INIT INFO
# Provides:          dashboard
# Required-Start:    $remote_fs $syslog
# Required-Stop:    $remote_fs $syslog
# Default-Start:    2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:      Enable service provided by daemon.
### END INIT INFO
 
# Gregology <greg@gho.st>
# https://gist.github.com/gregology/5313326
# Based on  Faraz Haider's LifeRay Startup Service script
# https://gist.github.com/haiderfaraz/2773431
 
DASHING_DIR=/path/to/dashboard/
GEM_HOME=/usr/local/lib/ruby/gems/1.9.1
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
 
case "$1" in
start)
echo "Starting Dashing."
cd $DASHING_DIR; dashing start -d
;;
stop)
echo "Stopping Dashing."
killall thin
;;
logs)
echo "See the logs of the Dashing."
tail -f $DASHING_DIR'log/thin.log'
;;
status)
# Check to see if the process is running
ps aux|grep -i dashing
;;
*)
echo “Dashing”
echo $”Usage: $0 {start|stop|status|logs}”
exit 1
esac
exit 0
</source>


[[Category:How-to]]
[[Category:How-to]]
Please note that all contributions to RARForge may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see RARForge:Copyrights for details). Do not submit copyrighted work without permission!
Cancel Editing help (opens in new window)