8000 GitHub - 99plus2/haskell-pair: Haskell pair programming server via Vagrant
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

99plus2/haskell-pair

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Installation

on a local virtualbox

  1. Clone this repo
  2. Install Vagrant and VirtualBox
  3. vagrant up
  4. vagrant ssh

This will create a clean dev environment with the newest GHC and Cabal. It also includes haskell-vim-now, a vim configured to be a Haskell IDE.

on a public pair programming server

  1. Clone this repo
  2. Install Vagrant
  3. Sign up at DigitalOcean
  4. Fill out your DigitalOcean client ID and API key in Vagrantfile
  5. vagrant plugin install vagrant-digitalocean
  6. vagrant box add digital_ocean https://github.com/smdahlen/vagrant-digitalocean/raw/master/box/digital_ocean.box
  7. vagrant up --provider=digital_ocean
  8. vagrant ssh

You'll be logged in to a newly created DigitalOcean "droplet."

ps: for some reason I had to create a ssh key with a password otherwise I could not get ssh access to the box

Included software

  1. Ubuntu 14.04
  2. New GHC via Stack
  3. haskell-vim-now
  4. SixArm git config
  5. Firewall, hardened OpenSSH, Fail2ban
  6. Oh My ZSH, Tmux/wemux

Pairing

To pair program with someone you can give them login access by running

pair github_name

They connect to your server by ssh-add'ing their Github SSH key and running ssh friend@[your-server-ip].

When you're done working with them, run

unpair

Tmux Keybindings

C-a |Split vertically
C-a _Split horizontally
C-hMove to leftward pane
C-lMove to rightward pane
C-jMove to downward pane
C-kMove to upward pane
C-a [Detach cursor to scroll (ENTER stops)
C-a cCreate new window
C-a [0-9]Switch to numbered window

SSH agent forwarding

To access your github repos on the pairing server while keeping your credentials safe on your lacal machine use agent forwarding.

Edit your local ~/.ssh/config file and add an entry for your pair server host.

Host [ip address]
  ForwardAgent yes

Before ssh'ing into the pairing server run

ssh-add ~/.ssh/[keyname]

and it will be available remotely. To test agent forwarding run this remotely

ssh -T git@github.com

About

Haskell pair programming server via Vagrant

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%
0