You are here
I've been looking for a pastebin solution to be used internally by our organization (school). I settled on hastebin before I really explored every option. Hastebin was the most daunting because I'm utterly unfamiliar with node.js; moreover, moreover, the documentation is not meant for my type of noob; moreover, nodejs and npm are in the repos for neither squeeze nor lucid.
With all that in mind, I'll be attaching either two patches or four patches:
hastebin for core lucid and squeeze;
nodejs with npm for core lucid and squeeze.
We have failed to make hastebin run as a service. We've tried an inithook, init.d, and local.rc. I'd love some support on this once I post the patch, so I can revise for utility.
hastebin exemplar: http://hastebin.com/
haste-server and documentation: https://github.com/seejohnrun/haste-server
Many thanks to students Nelson and Delonte, both juniors at Chelsea School and who helped more than they realize.
Patch is intended for TurnKey Linux Core 11.3 (Ubuntu Lucid) or 12.2RC (Debian Squeeze).
After applying the patch and booting:
Access command prompt your favorite way (drop out of confconsole, access via webmin, or access via ssh):
npm start /var/haste-server/
or
npm start /var/haste-server/ & #to keep hastebin in the background.
Here's the conf script:
#! /bin/bash -ex ####Overlay#### #/var/haste-server/config.js - no, moving from overlay/tmp #/etc/confconsole/services.txt # Set Hostname HOSTNAME=hastebin echo "$HOSTNAME" > /etc/hostname sed -i "s|127.0.1.1 \(.*\)|127.0.1.1 $HOSTNAME|" /etc/hosts # install dependencies ######################################################### apt-get update DEBIAN_FRONTEND=noninteractive apt-get -y \ -o DPkg::Options::=--force-confdef \ -o DPkg::Options::=--force-confold \ install \ git-core \ build-essential \ curl \ wget \ openssl \ redis-server #Clone nodejs git clone http://github.com/ry/node.git #Build node js from source cd node ./configure make make install cd .. #download and run install script for npm curl http://npmjs.org/install.sh|sh #Download and move hastebin-server git clone https://github.com/seejohnrun/haste-server.git mv haste-server/ /var/haste-server #npm install hastebin-server cd /var/haste-server npm install #install redis npm install redis mv /tmp/config.js /var/haste-server/
Done over again for Core 13RC. The new patch uses apache2 for a proxy. I can't justify this yet, and the more I read the more I think it's a bad idea. I haven't come any distance in my understanding of node; my gut suggested there's more flexibility, security, speed with Apache as a proxy. I'm reading that performance will most certainly take some hit. In any event, I've attached to new patch for this pastebin actalike below.
gem install haste to use the client from the command line. Look into haste-client for configuraion. Patch is on github here: https://github.com/ghoulmann/haste-server-tklpatch.
Working great in production
Using patched 11.3 Core on Lucid for a dedicated Haste-server on ESXi. Working phenomenally for students, whether composing or coding. Using in my lab with haste client. ISO available at our emerging new site: http://www.23eyes.org/9while9/ .
New Patch Attached
Working on Core 13.0 RC. A great group of students put this together at Chelsea School: Paul led it up with support from David and Alex. More support from TJ and Lucas.
https://github.com/ghoulmann/haste-server-tklpatch
Add new comment