When done, submit here.

1


2

Troubleshoot

[appname] can't be opened becuase it is from an unidentified developer.

Control-click on the file and choose 'Open', and you'll get an additional 'Open' option when the window pops up.


3


4


5


6


7


8


9


10


11


12


13

Hints

What is ~/?

In Unix, ~/ is your home directory.


14

Video

Troubleshoot

The video's not playing

Make sure you're in Google Chrome or Safari. IE and Firefox don't support HTML5 video with .mov files.


15

Video


16

Video

Code

➜  Desktop  cd ~/Documents/introHCI 
➜  introHCI  ls
LICENSE            Vagrantfile
introHCI-extras.sh README.md
cookbooks          lab1
➜  introHCI

17


18


19

Video

Code

➜  Desktop  cd ~/Documents/introHCI
➜  introHCI ✗ git clone https://github.com/yourgithubusername/lab1.git
Cloning into 'lab1'...
remote: Counting objects: 537, done.
remote: Compressing objects: 100% (408/408), done.
remote: Total 537 (delta 92), reused 537 (delta 92)
Receiving objects: 100% (537/537), 3.66 MiB | 1.76 MiB/s, done.
Resolving deltas: 100% (92/92), done.
Checking connectivity... done
➜  introHCI git:(master) ✗

Troubleshoot

OS X:

xcode-select: note: no developer tools were found at '/Applications/XCode.app', requesting install. Choose an option in the dialog to download the command line developer tools.

Then a popup asks you to choose 'get Xcode', 'Not Now', or 'Install'. Choose 'Install'. Once the install is done, try again.

OS X:

Agreeing to the XCode/iOS license requires admin priveleges, please re-run as root via sudo.

As it suggests, add sudo to the front:

sudo git clone https://github.com/yourgithubusername/lab1.git
Scroll through the license, and agree at the bottom. Another path would be to open Xcode and agree to the license there.

Windows: how do I paste into Git Bash?

Click on the terminal icon in the upper left of the window: Edit, Paste. For a shortcut: Alt-spacebar, then e, then p. If that seems needlessly complicated, you can also enable QuickEdit mode by clicking on the terminal icon in the upper left of the window: Defaults(or Properties). Go to the Options tab and enable "QuickEdit Mode". Now you may paste by right-clicking in the terminal.


20


21

Video

Code

<!doctype html>

<html>
<head>
  <meta charset="utf-8">
  <title>HCI Project Portfolio</title>
</head>

<body>
  <!-- this is a comment in HTML -->
  <h1>Scott Klemmer</h1> <!-- h1 through h5 are headers. The higher the number, the smaller the header -->
  <h4>Project Portfolio</h4>

  <!-- p means paragraph -->
  <p>Scott Klemmer is an associate professor of Cognitive Science and Computer Science & Engineering at UC San Diego.</p>

  <h4>Projects</h4>
  <ol>
    <li>Waiting in line</li>
    <li>Needfinding</li>
    <li>Prototyping</li>
    <li>...</li>
  </ol>
</body>
</html>

22


23


24

Code

# No response means it succeeded. 
git config --global user.name "Your Name"
git config --global user.email "youremail@university.edu"
git config --global push.default simple

Video


25


26

Video

Code

➜  lab1 git:(master) ✗ git status
# On branch master
# Changes not staged for commit:
#   (use "git add ..." to update what will be committed)
#   (use "git checkout -- ..." to discard changes in working directory)
#
#    modified:   static/index.html
#
no changes added to commit (use "git add" and/or "git commit -a")
➜  lab1 git:(master) ✗ git add static/index.html 
➜  lab1 git:(master) ✗ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD ..." to unstage)
#
# modified:   static/index.html
#
➜  lab1 git:(master) ✗

Troubleshoot

fatal: Not a git repository (or any of the parent directories)

Make sure that you're in the lab1 directory --- this command only works within a directory that is a git repository


27

Video

Code

➜  lab1 git:(master) ✗ git commit -m "Replaced default information in web page"
[master f283015] Replaced default information in web page
 1 file changed, 2 insertions(+), 2 deletions(-)
➜  lab1 git:(master) git pull
Already up-to-date.
➜  lab1 git:(master) git push
Counting objects: 7, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 485 bytes | 0 bytes/s, done.
Total 4 (delta 2), reused 0 (delta 0)
To https://github.com/mbernst/lab1.git
   1180cca..f283015  master -> master 

Troubleshoot

Git asks me for my password but it's not showing up

Command line terminals typically don't show your password or any ****s while you're typing it. Don't worry, just keep going and press enter at the end. Likewise, if you paste the password into the terminal, you won't see anything. Don't worry, the terminal got the message.

git-credential-osxkeychain died of signal 11

If you're willing to enter your password every time you push to git, you can run sudo rm /usr/local/git/etc/gitconfig. That's a pretty huge sledgehammer for this problem, though. StackOverflow has more solutions.

When running git commit, git says:

On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
modified: static/index.html

no changes added to commit

Make sure you've done the git add step from the previous slide.


28

Troubleshoot

Your submission URL will be of the form:

https://github.com/{YOUR_USER_NAME}/lab1


29


30


31


32

Video

Code

➜  lab1 git:(master) git remote add conflict https://github.com/IntroHCI/lab1conflict.git
➜  lab1 git:(master) git pull conflict master
 remote: Counting objects: 11, done.
 remote: Compressing objects: 100% (6/6), done.
 remote: Total 8 (delta 4), reused 0 (delta 0)
 Unpacking objects: 100% (8/8), done.
 From https://github.com/IntroHCI/lab1conflict
  * branch            master     -> FETCH_HEAD
 Auto-merging static/index.html
 CONFLICT (content): Merge conflict in static/index.html
 Automatic merge failed; fix conflicts and then commit the result.

Troubleshoot

I made a mistake typing in the address for

git remote add conflict https://github.com/IntroHCI/lab1conflict.git
Now when I try to git remote add conflict again it says
fatal: remote conflict already exists

run git remote rm conflict to remove the bad address


33

Video

Code

<html>
<head>
  <meta charset="utf-8">
  <title>HCI Project Portfolio</title>
</head>

<body>
  <!-- this is a comment in HTML -->
  <h1>Scott Klemmer and John Hennessy</h1> <!-- h1 through h5 are headers. The higher the number, the smaller the header -->
  <h4>Project Portfolio</h4>

  <!-- p means paragraph -->
  <p>Scott Klemmer is an associate professor of Cognitive Science and Computer Science & Engineering at UC San Diego. John Hennessy is president of Stanford University and enjoys taking HCI classes in his spare time.</p>

  <h4>Projects</h4>
  <ol>
    <li>Waiting in line</li>
    <li>Needfinding</li>
    <li>Prototyping</li>
    <li>...</li>
  </ol>
</body>
</html>

34

Video

Code

➜  lab1 git:(master) ✗ git add static/index.html 
➜  lab1 git:(master) ✗ git commit -m "fixing merge conflict"
[master 766d49f] fixing merge conflict
➜  lab1 git:(master) git pull
Already up-to-date.
➜  lab1 git:(master) git push
Counting objects: 22, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (16/16), 1.45 KiB | 0 bytes/s, done.
Total 16 (delta 8), reused 0 (delta 0)
To https://github.com/mbernst/lab1.git
   f283015..766d49f  master -> master

Submit your lab 1 here after you finished slides above, if you still have time, move on to the following slides


35


36


37

Video

Code

➜  introHCI   vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Installed the plugin 'vagrant-vbguest (0.10.0)'!

38

Video

Code

➜  introHCI git:(master) ✗ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
[default] Box 'precise32' was not found. Fetching box from specified URL for
the provider 'virtualbox'. Note that if the URL does not have
a box for this provider, you should interrupt Vagrant now and add
the box yourself. Otherwise Vagrant will attempt to download the
full box prior to discovering this error.
Downloading box from URL: http://files.vagrantup.com/precise32.box
Extracting box...te: 1361k/s, Estimated time remaining: 0:00:01)
Successfully added box 'precise32' with provider 'virtualbox'!
[default] Importing base box 'precise32'...
[default] Matching MAC address for NAT networking...
[default] Setting the name of the VM...
[default] Clearing any previously set forwarded ports...
[default] Clearing any previously set network interfaces...
[default] Preparing network interfaces based on configuration...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] -- 3000 => 3000 (adapter 1)
[default] Booting VM...
[default] Waiting for machine to boot. This may take a few minutes...
[default] Machine booted and ready!
[default] The guest additions on this VM do not match the installed version of
VirtualBox! In most cases this is fine, but in rare cases it can
cause things such as shared folders to not work properly. If you see
shared folder errors, please make sure the guest additions within the
virtual machine match the version of VirtualBox you have installed on
your host and reload your VM.

Guest Additions Version: 4.2.0
VirtualBox Version: 4.3
[default] Mounting shared folders...
[default] -- /vagrant
[default] -- /home/vagrant
[default] -- /tmp/vagrant-chef-1/chef-solo-1/cookbooks
[default] Running provisioner: chef_solo...
Generating chef JSON and uploading...
Running chef-solo...
stdin: is not a tty
[2014-01-01T16:03:39+00:00] INFO: *** Chef 10.14.2 ***
[2014-01-01T16:03:39+00:00] INFO: Setting the run_list to ["recipe[build-essential]", "recipe[apt]", "recipe[yum]", "recipe[git]", "recipe[nodejs]", "recipe[emacs]"] from JSON
[2014-01-01T16:03:39+00:00] INFO: Run List is [recipe[build-essential], recipe[apt], recipe[yum], recipe[git], recipe[nodejs], recipe[emacs]]
[2014-01-01T16:03:39+00:00] INFO: Run List expands to [build-essential, apt, yum, git, nodejs, emacs]
[2014-01-01T16:03:39+00:00] INFO: Starting Chef Run for precise32
[2014-01-01T16:03:39+00:00] INFO: Running start handlers
[2014-01-01T16:03:39+00:00] INFO: Start handlers complete.
[2014-01-01T16:04:00+00:00] INFO: execute[apt-get-update] ran successfully
[2014-01-01T16:04:02+00:00] INFO: package[update-notifier-common] sending run action to execute[apt-get-update] (immediate)
[2014-01-01T16:04:05+00:00] INFO: execute[apt-get-update] ran successfully
[2014-01-01T16:04:05+00:00] INFO: directory[/var/cache/local] created directory /var/cache/local
[2014-01-01T16:04:05+00:00] INFO: directory[/var/cache/local] owner changed to 0
[2014-01-01T16:04:05+00:00] INFO: directory[/var/cache/local] group changed to 0
[2014-01-01T16:04:05+00:00] INFO: directory[/var/cache/local] mode changed to 755
[2014-01-01T16:04:05+00:00] INFO: directory[/var/cache/local/preseeding] created directory /var/cache/local/preseeding
[2014-01-01T16:04:05+00:00] INFO: directory[/var/cache/local/preseeding] owner changed to 0
[2014-01-01T16:04:05+00:00] INFO: directory[/var/cache/local/preseeding] group changed to 0
[2014-01-01T16:04:05+00:00] INFO: directory[/var/cache/local/preseeding] mode changed to 755
[2014-01-01T16:04:05+00:00] INFO: template[/etc/yum.conf] updated content
[2014-01-01T16:04:05+00:00] INFO: template[/etc/yum.conf] mode changed to 644
[2014-01-01T16:04:15+00:00] INFO: remote_file[/usr/local/src/node-v0.10.24.tar.gz] updated
[2014-01-01T16:04:15+00:00] INFO: remote_file[/usr/local/src/node-v0.10.24.tar.gz] mode changed to 644
[2014-01-01T16:04:15+00:00] INFO: execute[tar --no-same-owner -zxf node-v0.10.24.tar.gz] ran successfully
[2014-01-01T16:08:26+00:00] INFO: bash[compile node.js (on 1 cpu)] ran successfully
[2014-01-01T16:08:27+00:00] INFO: execute[nodejs make install] ran successfully
[2014-01-01T16:08:37+00:00] INFO: Chef Run complete in 297.8912 seconds
[2014-01-01T16:08:37+00:00] INFO: Running report handlers
[2014-01-01T16:08:37+00:00] INFO: Report handlers complete
[default] Running provisioner: shell...
[default] Running: /var/folders/s8/zzmx776n0mj5nf7n7wl9k4bm0000gn/T/vagrant-shell20140101-20828-urraqd
stdin: is not a tty
Installing MongoDB...
mkdir: cannot create directory `/data/db': No such file or directory
chown: cannot access `/data/db': No such file or directory
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.CED83pz2a7 --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: key 7F0CEB10: public key "Richard Kreuter " imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen
Ign http://downloads-distro.mongodb.org dist InRelease
Ign http://security.ubuntu.com precise-security InRelease
Ign http://us.archive.ubuntu.com precise InRelease
Ign http://us.archive.ubuntu.com precise-updates InRelease
Ign http://us.archive.ubuntu.com precise-backports InRelease
Hit http://security.ubuntu.com precise-security Release.gpg
Hit http://us.archive.ubuntu.com precise Release.gpg
Get:1 http://downloads-distro.mongodb.org dist Release.gpg [490 B]
Hit http://security.ubuntu.com precise-security Release
Hit http://us.archive.ubuntu.com precise-updates Release.gpg
Hit http://us.archive.ubuntu.com precise-backports Release.gpg
Hit http://security.ubuntu.com precise-security/main Sources
Get:2 http://downloads-distro.mongodb.org dist Release [2,032 B]
Hit http://us.archive.ubuntu.com precise Release
Hit http://security.ubuntu.com precise-security/restricted Sources
Hit http://security.ubuntu.com precise-security/universe Sources
Hit http://security.ubuntu.com precise-security/multiverse Sources
Hit http://security.ubuntu.com precise-security/main i386 Packages
Hit http://security.ubuntu.com precise-security/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise-updates Release
Hit http://security.ubuntu.com precise-security/universe i386 Packages
Hit http://security.ubuntu.com precise-security/multiverse i386 Packages
Hit http://security.ubuntu.com precise-security/main TranslationIndex
Hit http://security.ubuntu.com precise-security/multiverse TranslationIndex
Hit http://security.ubuntu.com precise-security/restricted TranslationIndex
Hit http://security.ubuntu.com precise-security/universe TranslationIndex
Get:3 http://downloads-distro.mongodb.org dist/10gen i386 Packages [9,044 B]
Hit http://us.archive.ubuntu.com precise-backports Release
Hit http://us.archive.ubuntu.com precise/main Sources
Hit http://us.archive.ubuntu.com precise/restricted Sources
Hit http://us.archive.ubuntu.com precise/universe Sources
Hit http://us.archive.ubuntu.com precise/multiverse Sources
Hit http://us.archive.ubuntu.com precise/main i386 Packages
Hit http://us.archive.ubuntu.com precise/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise/universe i386 Packages
Hit http://us.archive.ubuntu.com precise/multiverse i386 Packages
Hit http://us.archive.ubuntu.com precise/main TranslationIndex
Hit http://us.archive.ubuntu.com precise/multiverse TranslationIndex
Hit http://security.ubuntu.com precise-security/main Translation-en
Hit http://security.ubuntu.com precise-security/multiverse Translation-en
Hit http://security.ubuntu.com precise-security/restricted Translation-en
Hit http://us.archive.ubuntu.com precise/restricted TranslationIndex
Hit http://us.archive.ubuntu.com precise/universe TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/main Sources
Hit http://us.archive.ubuntu.com precise-updates/restricted Sources
Hit http://us.archive.ubuntu.com precise-updates/universe Sources
Hit http://security.ubuntu.com precise-security/universe Translation-en
Ign http://downloads-distro.mongodb.org dist/10gen TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/multiverse Sources
Hit http://us.archive.ubuntu.com precise-updates/main i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/universe i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/multiverse i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/main TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/multiverse TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/restricted TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/universe TranslationIndex
Hit http://us.archive.ubuntu.com precise-backports/main Sources
Hit http://us.archive.ubuntu.com precise-backports/restricted Sources
Hit http://us.archive.ubuntu.com precise-backports/universe Sources
Hit http://us.archive.ubuntu.com precise-backports/multiverse Sources
Hit http://us.archive.ubuntu.com precise-backports/main i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/universe i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/multiverse i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/main TranslationIndex
Hit http://us.archive.ubuntu.com precise-backports/multiverse TranslationIndex
Hit http://us.archive.ubuntu.com precise-backports/restricted TranslationIndex
Hit http://us.archive.ubuntu.com precise-backports/universe TranslationIndex
Hit http://us.archive.ubuntu.com precise/main Translation-en
Hit http://us.archive.ubuntu.com precise/multiverse Translation-en
Hit http://us.archive.ubuntu.com precise/restricted Translation-en
Hit http://us.archive.ubuntu.com precise/universe Translation-en
Hit http://us.archive.ubuntu.com precise-updates/main Translation-en
Hit http://us.archive.ubuntu.com precise-updates/multiverse Translation-en
Hit http://us.archive.ubuntu.com precise-updates/restricted Translation-en
Hit http://us.archive.ubuntu.com precise-updates/universe Translation-en
Hit http://us.archive.ubuntu.com precise-backports/main Translation-en
Hit http://us.archive.ubuntu.com precise-backports/multiverse Translation-en
Hit http://us.archive.ubuntu.com precise-backports/restricted Translation-en
Hit http://us.archive.ubuntu.com precise-backports/universe Translation-en
Ign http://downloads-distro.mongodb.org dist/10gen Translation-en_US
Ign http://downloads-distro.mongodb.org dist/10gen Translation-en
Fetched 11.6 kB in 2s (4,635 B/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
The following NEW packages will be installed:
  mongodb-10gen
0 upgraded, 1 newly installed, 0 to remove and 159 not upgraded.
Need to get 87.1 MB of archives.
After this operation, 221 MB of additional disk space will be used.
Get:1 http://downloads-distro.mongodb.org/repo/ubuntu-upstart/ dist/10gen mongodb-10gen i386 2.4.8 [87.1 MB]
dpkg-preconfigure: unable to re-open stdin: No such file or directory
Fetched 87.1 MB in 29s (3,003 kB/s)
Selecting previously unselected package mongodb-10gen.
(Reading database ... 34308 files and directories currently installed.)
Unpacking mongodb-10gen (from .../mongodb-10gen_2.4.8_i386.deb) ...
Processing triggers for man-db ...
Processing triggers for ureadahead ...
ureadahead will be reprofiled on next reboot
Setting up mongodb-10gen (2.4.8) ...
Adding system user `mongodb' (UID 106) ...
Adding new user `mongodb' (UID 106) with group `nogroup' ...
Not creating home directory `/home/mongodb'.
Adding group `mongodb' (GID 111) ...
Done.
Adding user `mongodb' to group `mongodb' ...
Adding user mongodb to group mongodb
Done.
mongodb start/running, process 26805
Installing Heroku Toolbelt...
This script requires superuser access to install apt packages.
You will be prompted for your password by sudo.
--2014-01-01 16:09:17--  https://toolbelt.heroku.com/apt/release.key
Resolving toolbelt.heroku.com (toolbelt.heroku.com)... 54.243.82.181, 54.225.184.218, 174.129.247.167
Connecting to toolbelt.heroku.com (toolbelt.heroku.com)|54.243.82.181|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1737 (1.7K) [application/octet-stream]
Saving to: `STDOUT'

     0K .                                                     100% 2.37M=0.001s

2014-01-01 16:09:18 (2.37 MB/s) - written to stdout [1737/1737]

OK
Ign http://downloads-distro.mongodb.org dist InRelease
Ign http://security.ubuntu.com precise-security InRelease
Ign http://us.archive.ubuntu.com precise InRelease
Ign http://us.archive.ubuntu.com precise-updates InRelease
Ign http://us.archive.ubuntu.com precise-backports InRelease
Hit http://security.ubuntu.com precise-security Release.gpg
Hit http://us.archive.ubuntu.com precise Release.gpg
Hit http://downloads-distro.mongodb.org dist Release.gpg
Hit http://us.archive.ubuntu.com precise-updates Release.gpg
Hit http://security.ubuntu.com precise-security Release
Ign http://toolbelt.heroku.com ./ InRelease
Hit http://us.archive.ubuntu.com precise-backports Release.gpg
Hit http://security.ubuntu.com precise-security/main Sources
Hit http://downloads-distro.mongodb.org dist Release
Hit http://us.archive.ubuntu.com precise Release
Hit http://security.ubuntu.com precise-security/restricted Sources
Hit http://security.ubuntu.com precise-security/universe Sources
Hit http://security.ubuntu.com precise-security/multiverse Sources
Hit http://security.ubuntu.com precise-security/main i386 Packages
Hit http://security.ubuntu.com precise-security/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise-updates Release
Hit http://security.ubuntu.com precise-security/universe i386 Packages
Hit http://security.ubuntu.com precise-security/multiverse i386 Packages
Hit http://security.ubuntu.com precise-security/main TranslationIndex
Hit http://security.ubuntu.com precise-security/multiverse TranslationIndex
Hit http://security.ubuntu.com precise-security/restricted TranslationIndex
Hit http://downloads-distro.mongodb.org dist/10gen i386 Packages
Hit http://us.archive.ubuntu.com precise-backports Release
Hit http://us.archive.ubuntu.com precise/main Sources
Hit http://us.archive.ubuntu.com precise/restricted Sources
Hit http://us.archive.ubuntu.com precise/universe Sources
Hit http://us.archive.ubuntu.com precise/multiverse Sources
Hit http://us.archive.ubuntu.com precise/main i386 Packages
Hit http://security.ubuntu.com precise-security/universe TranslationIndex
Hit http://us.archive.ubuntu.com precise/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise/universe i386 Packages
Hit http://us.archive.ubuntu.com precise/multiverse i386 Packages
Hit http://us.archive.ubuntu.com precise/main TranslationIndex
Hit http://us.archive.ubuntu.com precise/multiverse TranslationIndex
Hit http://security.ubuntu.com precise-security/main Translation-en
Hit http://security.ubuntu.com precise-security/multiverse Translation-en
Ign http://downloads-distro.mongodb.org dist/10gen TranslationIndex
Hit http://us.archive.ubuntu.com precise/restricted TranslationIndex
Hit http://us.archive.ubuntu.com precise/universe TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/main Sources
Hit http://us.archive.ubuntu.com precise-updates/restricted Sources
Hit http://us.archive.ubuntu.com precise-updates/universe Sources
Hit http://security.ubuntu.com precise-security/restricted Translation-en
Hit http://us.archive.ubuntu.com precise-updates/multiverse Sources
Hit http://us.archive.ubuntu.com precise-updates/main i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/universe i386 Packages
Hit http://us.archive.ubuntu.com precise-updates/multiverse i386 Packages
Hit http://security.ubuntu.com precise-security/universe Translation-en
Hit http://us.archive.ubuntu.com precise-updates/main TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/multiverse TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/restricted TranslationIndex
Hit http://us.archive.ubuntu.com precise-updates/universe TranslationIndex
Hit http://us.archive.ubuntu.com precise-backports/main Sources
Hit http://us.archive.ubuntu.com precise-backports/restricted Sources
Hit http://us.archive.ubuntu.com precise-backports/universe Sources
Hit http://us.archive.ubuntu.com precise-backports/multiverse Sources
Hit http://us.archive.ubuntu.com precise-backports/main i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/restricted i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/universe i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/multiverse i386 Packages
Hit http://us.archive.ubuntu.com precise-backports/main TranslationIndex
Hit http://us.archive.ubuntu.com precise-backports/multiverse TranslationIndex
Hit http://us.archive.ubuntu.com precise-backports/restricted TranslationIndex
Hit http://us.archive.ubuntu.com precise-backports/universe TranslationIndex
Hit http://us.archive.ubuntu.com precise/main Translation-en
Hit http://us.archive.ubuntu.com precise/multiverse Translation-en
Hit http://us.archive.ubuntu.com precise/restricted Translation-en
Hit http://us.archive.ubuntu.com precise/universe Translation-en
Hit http://us.archive.ubuntu.com precise-updates/main Translation-en
Hit http://us.archive.ubuntu.com precise-updates/multiverse Translation-en
Hit http://us.archive.ubuntu.com precise-updates/restricted Translation-en
Hit http://us.archive.ubuntu.com precise-updates/universe Translation-en
Hit http://us.archive.ubuntu.com precise-backports/main Translation-en
Hit http://us.archive.ubuntu.com precise-backports/multiverse Translation-en
Hit http://us.archive.ubuntu.com precise-backports/restricted Translation-en
Hit http://us.archive.ubuntu.com precise-backports/universe Translation-en
Get:1 http://toolbelt.heroku.com ./ Release.gpg [490 B]
Get:2 http://toolbelt.heroku.com ./ Release [1,673 B]
Ign http://downloads-distro.mongodb.org dist/10gen Translation-en_US
Ign http://downloads-distro.mongodb.org dist/10gen Translation-en
Get:3 http://toolbelt.heroku.com ./ Packages [1,051 B]
Ign http://toolbelt.heroku.com ./ Translation-en_US
Ign http://toolbelt.heroku.com ./ Translation-en
Fetched 3,214 B in 8s (365 B/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  foreman heroku libruby1.9.1 libyaml-0-2 ruby1.9.1
Suggested packages:
  ruby1.9.1-examples ri1.9.1 graphviz ruby1.9.1-dev
The following NEW packages will be installed:
  foreman heroku heroku-toolbelt libruby1.9.1 libyaml-0-2 ruby1.9.1
0 upgraded, 6 newly installed, 0 to remove and 159 not upgraded.
Need to get 5,064 kB of archives.
After this operation, 13.3 MB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/main libyaml-0-2 i386 0.1.4-2 [56.9 kB]
Get:2 http://toolbelt.heroku.com/ubuntu/ ./ foreman 0.60.0 [89.5 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main libruby1.9.1 i386 1.9.3.0-1ubuntu2.8 [4,210 kB]
Get:4 http://toolbelt.heroku.com/ubuntu/ ./ heroku 3.2.0 [670 kB]
Get:5 http://toolbelt.heroku.com/ubuntu/ ./ heroku-toolbelt 3.2.0 [630 B]
Get:6 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main ruby1.9.1 i386 1.9.3.0-1ubuntu2.8 [37.0 kB]
dpkg-preconfigure: unable to re-open stdin: No such file or directory
Fetched 5,064 kB in 5s (862 kB/s)
Selecting previously unselected package libyaml-0-2.
(Reading database ... 34343 files and directories currently installed.)
Unpacking libyaml-0-2 (from .../libyaml-0-2_0.1.4-2_i386.deb) ...
Selecting previously unselected package libruby1.9.1.
Unpacking libruby1.9.1 (from .../libruby1.9.1_1.9.3.0-1ubuntu2.8_i386.deb) ...
Selecting previously unselected package ruby1.9.1.
Unpacking ruby1.9.1 (from .../ruby1.9.1_1.9.3.0-1ubuntu2.8_i386.deb) ...
Selecting previously unselected package foreman.
Unpacking foreman (from .../foreman_0.60.0_all.deb) ...
Selecting previously unselected package heroku.
Unpacking heroku (from .../archives/heroku_3.2.0_all.deb) ...
Selecting previously unselected package heroku-toolbelt.
Unpacking heroku-toolbelt (from .../heroku-toolbelt_3.2.0_all.deb) ...
Processing triggers for man-db ...
Setting up libyaml-0-2 (0.1.4-2) ...
Setting up libruby1.9.1 (1.9.3.0-1ubuntu2.8) ...
Setting up ruby1.9.1 (1.9.3.0-1ubuntu2.8) ...
update-alternatives: using /usr/bin/gem1.9.1 to provide /usr/bin/gem (gem) in auto mode.
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in auto mode.
Setting up foreman (0.60.0) ...
Setting up heroku (3.2.0) ...
Setting up heroku-toolbelt (3.2.0) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Installing node packages...
npm http GET https://registry.npmjs.org/express
npm http 200 https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/express/-/express-3.4.7.tgz
npm http 200 https://registry.npmjs.org/express/-/express-3.4.7.tgz
npm http GET https://registry.npmjs.org/range-parser/0.0.4
npm http GET https://registry.npmjs.org/mkdirp/0.3.5
npm http GET https://registry.npmjs.org/cookie/0.1.0
npm http GET https://registry.npmjs.org/buffer-crc32/0.2.1
npm http GET https://registry.npmjs.org/fresh/0.2.0
npm http GET https://registry.npmjs.org/methods/0.1.0
npm http GET https://registry.npmjs.org/send/0.1.4
npm http GET https://registry.npmjs.org/cookie-signature/1.0.1
npm http GET https://registry.npmjs.org/merge-descriptors/0.0.1
npm http GET https://registry.npmjs.org/debug
npm http GET https://registry.npmjs.org/connect/2.12.0
npm http GET https://registry.npmjs.org/commander/1.3.2
npm http 200 https://registry.npmjs.org/mkdirp/0.3.5
npm http 200 https://registry.npmjs.org/cookie/0.1.0
npm http 200 https://registry.npmjs.org/buffer-crc32/0.2.1
npm http 200 https://registry.npmjs.org/range-parser/0.0.4
npm http GET https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz
npm http GET https://registry.npmjs.org/cookie/-/cookie-0.1.0.tgz
npm http GET https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.1.tgz
npm http GET https://registry.npmjs.org/range-parser/-/range-parser-0.0.4.tgz
npm http 200 https://registry.npmjs.org/methods/0.1.0
npm http 200 https://registry.npmjs.org/fresh/0.2.0
npm http 200 https://registry.npmjs.org/send/0.1.4
npm http 200 https://registry.npmjs.org/cookie-signature/1.0.1
npm http 200 https://registry.npmjs.org/merge-descriptors/0.0.1
npm http GET https://registry.npmjs.org/methods/-/methods-0.1.0.tgz
npm http GET https://registry.npmjs.org/fresh/-/fresh-0.2.0.tgz
npm http GET https://registry.npmjs.org/send/-/send-0.1.4.tgz
npm http GET https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.1.tgz
npm http GET https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.1.tgz
npm http 200 https://registry.npmjs.org/connect/2.12.0
npm http 200 https://registry.npmjs.org/commander/1.3.2
npm http 200 https://registry.npmjs.org/debug
npm http GET https://registry.npmjs.org/connect/-/connect-2.12.0.tgz
npm http GET https://registry.npmjs.org/commander/-/commander-1.3.2.tgz
npm http GET https://registry.npmjs.org/debug/-/debug-0.7.4.tgz
npm http 200 https://registry.npmjs.org/range-parser/-/range-parser-0.0.4.tgz
npm http 200 https://registry.npmjs.org/cookie/-/cookie-0.1.0.tgz
npm http 200 https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz
npm http 200 https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.1.tgz
npm http 200 https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.1.tgz
npm http 200 https://registry.npmjs.org/fresh/-/fresh-0.2.0.tgz
npm http 200 https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.1.tgz
npm http 200 https://registry.npmjs.org/send/-/send-0.1.4.tgz
npm http 200 https://registry.npmjs.org/connect/-/connect-2.12.0.tgz
npm http 200 https://registry.npmjs.org/commander/-/commander-1.3.2.tgz
npm http 200 https://registry.npmjs.org/debug/-/debug-0.7.4.tgz
npm http 200 https://registry.npmjs.org/methods/-/methods-0.1.0.tgz
npm http GET https://registry.npmjs.org/mime
npm http GET https://registry.npmjs.org/keypress
npm http GET https://registry.npmjs.org/batch/0.5.0
npm http GET https://registry.npmjs.org/qs/0.6.6
npm http GET https://registry.npmjs.org/bytes/0.2.1
npm http GET https://registry.npmjs.org/pause/0.0.1
npm http GET https://registry.npmjs.org/uid2/0.0.3
npm http GET https://registry.npmjs.org/raw-body/1.1.2
npm http GET https://registry.npmjs.org/negotiator/0.3.0
npm http GET https://registry.npmjs.org/multiparty/2.2.0
npm http 200 https://registry.npmjs.org/mime
npm http GET https://registry.npmjs.org/mime/-/mime-1.2.11.tgz
npm http 200 https://registry.npmjs.org/qs/0.6.6
npm http GET https://registry.npmjs.org/qs/-/qs-0.6.6.tgz
npm http 200 https://registry.npmjs.org/batch/0.5.0
npm http GET https://registry.npmjs.org/batch/-/batch-0.5.0.tgz
npm http 200 https://registry.npmjs.org/keypress
npm http GET https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz
npm http 200 https://registry.npmjs.org/pause/0.0.1
npm http GET https://registry.npmjs.org/pause/-/pause-0.0.1.tgz
npm http 200 https://registry.npmjs.org/bytes/0.2.1
npm http 200 https://registry.npmjs.org/uid2/0.0.3
npm http 200 https://registry.npmjs.org/raw-body/1.1.2
npm http 200 https://registry.npmjs.org/negotiator/0.3.0
npm http GET https://registry.npmjs.org/bytes/-/bytes-0.2.1.tgz
npm http GET https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz
npm http GET https://registry.npmjs.org/raw-body/-/raw-body-1.1.2.tgz
npm http GET https://registry.npmjs.org/negotiator/-/negotiator-0.3.0.tgz
npm http 200 https://registry.npmjs.org/multiparty/2.2.0
npm http GET https://registry.npmjs.org/multiparty/-/multiparty-2.2.0.tgz
npm http 200 https://registry.npmjs.org/mime/-/mime-1.2.11.tgz
npm http 200 https://registry.npmjs.org/batch/-/batch-0.5.0.tgz
npm http 200 https://registry.npmjs.org/qs/-/qs-0.6.6.tgz
npm http 200 https://registry.npmjs.org/pause/-/pause-0.0.1.tgz
npm http 200 https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz
npm http 200 https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz
npm http 200 https://registry.npmjs.org/bytes/-/bytes-0.2.1.tgz
npm http 200 https://registry.npmjs.org/negotiator/-/negotiator-0.3.0.tgz
npm http 200 https://registry.npmjs.org/multiparty/-/multiparty-2.2.0.tgz
npm http 200 https://registry.npmjs.org/raw-body/-/raw-body-1.1.2.tgz
npm http GET https://registry.npmjs.org/stream-counter
npm http GET https://registry.npmjs.org/readable-stream
npm http 200 https://registry.npmjs.org/stream-counter
npm http GET https://registry.npmjs.org/stream-counter/-/stream-counter-0.2.0.tgz
npm http 200 https://registry.npmjs.org/readable-stream
npm http GET https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.9.tgz
npm http 200 https://registry.npmjs.org/stream-counter/-/stream-counter-0.2.0.tgz
npm http 200 https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.9.tgz
npm http GET https://registry.npmjs.org/core-util-is
npm http GET https://registry.npmjs.org/debuglog/0.0.2
npm http 200 https://registry.npmjs.org/core-util-is
npm http GET https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.0.tgz
npm http 200 https://registry.npmjs.org/debuglog/0.0.2
npm http GET https://registry.npmjs.org/debuglog/-/debuglog-0.0.2.tgz
npm http 200 https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.0.tgz
npm http 200 https://registry.npmjs.org/debuglog/-/debuglog-0.0.2.tgz
express@3.4.7 /usr/local/lib/node_modules/express
├── methods@0.1.0
├── merge-descriptors@0.0.1
├── cookie-signature@1.0.1
├── range-parser@0.0.4
├── fresh@0.2.0
├── debug@0.7.4
├── buffer-crc32@0.2.1
├── cookie@0.1.0
├── mkdirp@0.3.5
├── commander@1.3.2 (keypress@0.1.0)
├── send@0.1.4 (mime@1.2.11)
└── connect@2.12.0 (uid2@0.0.3, pause@0.0.1, qs@0.6.6, bytes@0.2.1, raw-body@1.1.2, batch@0.5.0, negotiator@0.3.0, multiparty@2.2.0)
npm http GET https://registry.npmjs.org/mongoose
npm http 200 https://registry.npmjs.org/mongoose
npm http GET https://registry.npmjs.org/mongoose/-/mongoose-3.8.3.tgz
npm http 200 https://registry.npmjs.org/mongoose/-/mongoose-3.8.3.tgz
npm http GET https://registry.npmjs.org/ms/0.1.0
npm http GET https://registry.npmjs.org/hooks/0.2.1
npm http GET https://registry.npmjs.org/mongodb/1.3.19
npm http GET https://registry.npmjs.org/sliced/0.0.5
npm http GET https://registry.npmjs.org/muri/0.3.1
npm http GET https://registry.npmjs.org/mpromise/0.3.0
npm http GET https://registry.npmjs.org/regexp-clone/0.0.1
npm http GET https://registry.npmjs.org/mpath/0.1.1
npm http GET https://registry.npmjs.org/mquery/0.3.2
npm http 200 https://registry.npmjs.org/ms/0.1.0
npm http GET https://registry.npmjs.org/ms/-/ms-0.1.0.tgz
npm http 200 https://registry.npmjs.org/sliced/0.0.5
npm http 200 https://registry.npmjs.org/hooks/0.2.1
npm http 200 https://registry.npmjs.org/mongodb/1.3.19
npm http GET https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz
npm http GET https://registry.npmjs.org/hooks/-/hooks-0.2.1.tgz
npm http GET https://registry.npmjs.org/mongodb/-/mongodb-1.3.19.tgz
npm http 200 https://registry.npmjs.org/regexp-clone/0.0.1
npm http GET https://registry.npmjs.org/regexp-clone/-/regexp-clone-0.0.1.tgz
npm http 200 https://registry.npmjs.org/mpath/0.1.1
npm http 200 https://registry.npmjs.org/muri/0.3.1
npm http 200 https://registry.npmjs.org/mpromise/0.3.0
npm http GET https://registry.npmjs.org/mpath/-/mpath-0.1.1.tgz
npm http GET https://registry.npmjs.org/muri/-/muri-0.3.1.tgz
npm http GET https://registry.npmjs.org/mpromise/-/mpromise-0.3.0.tgz
npm http 200 https://registry.npmjs.org/ms/-/ms-0.1.0.tgz
npm http 200 https://registry.npmjs.org/mquery/0.3.2
npm http GET https://registry.npmjs.org/mquery/-/mquery-0.3.2.tgz
npm http 200 https://registry.npmjs.org/hooks/-/hooks-0.2.1.tgz
npm http 200 https://registry.npmjs.org/mongodb/-/mongodb-1.3.19.tgz
npm http 200 https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz
npm http 200 https://registry.npmjs.org/mpath/-/mpath-0.1.1.tgz
npm http 200 https://registry.npmjs.org/muri/-/muri-0.3.1.tgz
npm http 200 https://registry.npmjs.org/regexp-clone/-/regexp-clone-0.0.1.tgz
npm http 200 https://registry.npmjs.org/mpromise/-/mpromise-0.3.0.tgz
npm http 200 https://registry.npmjs.org/mquery/-/mquery-0.3.2.tgz
npm http GET https://registry.npmjs.org/debug/0.7.0
npm http GET https://registry.npmjs.org/bson/0.2.2
npm http GET https://registry.npmjs.org/kerberos/0.0.3
npm http 200 https://registry.npmjs.org/kerberos/0.0.3
npm http GET https://registry.npmjs.org/kerberos/-/kerberos-0.0.3.tgz
npm http 200 https://registry.npmjs.org/bson/0.2.2
npm http 200 https://registry.npmjs.org/debug/0.7.0
npm http GET https://registry.npmjs.org/debug/-/debug-0.7.0.tgz
npm http GET https://registry.npmjs.org/bson/-/bson-0.2.2.tgz
npm http 200 https://registry.npmjs.org/kerberos/-/kerberos-0.0.3.tgz
npm http 200 https://registry.npmjs.org/debug/-/debug-0.7.0.tgz
npm http 200 https://registry.npmjs.org/bson/-/bson-0.2.2.tgz

> kerberos@0.0.3 install /usr/local/lib/node_modules/mongoose/node_modules/mongodb/node_modules/kerberos
> (node-gyp rebuild 2> builderror.log) || (exit 0)

make: Entering directory `/usr/local/lib/node_modules/mongoose/node_modules/mongodb/node_modules/kerberos/build'
  SOLINK_MODULE(target) Release/obj.target/kerberos.node
  SOLINK_MODULE(target) Release/obj.target/kerberos.node: Finished
  COPY Release/kerberos.node
make: Leaving directory `/usr/local/lib/node_modules/mongoose/node_modules/mongodb/node_modules/kerberos/build'

> bson@0.2.2 install /usr/local/lib/node_modules/mongoose/node_modules/mongodb/node_modules/bson
> (node-gyp rebuild 2> builderror.log) || (exit 0)

make: Entering directory `/usr/local/lib/node_modules/mongoose/node_modules/mongodb/node_modules/bson/build'
  CXX(target) Release/obj.target/bson/ext/bson.o
  SOLINK_MODULE(target) Release/obj.target/bson.node
  SOLINK_MODULE(target) Release/obj.target/bson.node: Finished
  COPY Release/bson.node
make: Leaving directory `/usr/local/lib/node_modules/mongoose/node_modules/mongodb/node_modules/bson/build'
mongoose@3.8.3 /usr/local/lib/node_modules/mongoose
├── regexp-clone@0.0.1
├── sliced@0.0.5
├── muri@0.3.1
├── mpromise@0.3.0
├── hooks@0.2.1
├── mpath@0.1.1
├── ms@0.1.0
├── mquery@0.3.2 (debug@0.7.0)
└── mongodb@1.3.19 (kerberos@0.0.3, bson@0.2.2)
Done!
➜  introHCI git:(master) ✗ 

Troubleshoot

GuestAdditions versions […] do not match

Don't worry: vbguest fixes this for you.

An error occurred during installation of 
VirtualBox Guest Additions

Don't worry; this is for XWindows; we don’t use it.

dpkg-preconfigure: unable to re-open stdin

Don't worry, this is because it's running as a script and thus has no stdin.

There is a long wait after

execute[tar --no-same-owner -zxf node-v0.10.24.tar.gz]

That's fine; it's compiling node.js, and that can take some time.

SSH connection was refused!

Do what it suggests and try vagrant reload, or if that doesn't work, vagrant destroy followed by vagrant up.

Vagrant cannot forward the specified ports on this VM, since they would collide with some other application that is already listening on these ports. The forwarded port to 3000 is already in use on the host machine.

You might have another application open that's using port 3000. The command lsof -i | grep LISTEN might tell you which one, and you can kill it. A restart might clear the port too. In the worst case, you can go into the Vagrantfile and change the line config.vm.forward_port 3000, 3000 to config.vm.forward_port 3000, 3001 and load the page at http://localhost:3001 instead.


39


40

Troubleshoot

How do I verify that Vagrant is up and running?

type vagrant ssh to log into the virtual machine. If that doesn't work, then try vagrant halt followed by vagrant up again, and then retry vagrant ssh. If that all doesn't work, then try to restart your machine. (Did you restart after installing Vagrant and Virtual Box?)


41


When done, submit here.