Skip to content

Commit 4252af2

Browse files
committed
Move to Indigo/Jekyll
1 parent ba8e545 commit 4252af2

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+773
-502
lines changed
File renamed without changes.
File renamed without changes.

99appendices/index.md

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
title: Installation
3+
---
4+
5+
Installation Instructions
6+
=========================
7+
8+
Introduction
9+
------------
10+
11+
There following appendix gives instructions for installation of the packages
12+
we'll be using during the RITS Autumn 2013 C++ course.
13+
14+
If you have already followed the Software Carpentry instructions, you will have done most of this already.
15+
16+
Operating Systems
17+
-----------------
18+
19+
Linux users should be able to use their package manager to install all software requirements, and should have C++ and a decent editor already.
20+
(if you're using Linux, we assume you won't have any trouble with these requirements).
21+
22+
However note that if you are running an older Linux distribution you may get older versions with different look and features.
23+
A recent Linux distribution is recommended.
24+
25+
Mac and Windows users should follow the instructions to the left.
26+
27+
Working through the install
28+
---------------------------
29+
30+
Give yourself 30 minutes or so to run through this installation process and don't get intimidated!
31+
Please try to install everything well before the bootcamp,
32+
as it is important that we don't waste time during the workshop trying to mend installations.
33+
34+
If you do get stuck, first try searching on the internet (e.g. [stackoverflow.com](http://stackoverflow.com)) for solutions.
35+
Or, try asking a fellow bootcamp attendee for help.
36+
37+
Eduroam
38+
-------
39+
40+
We will be using UCL's [eduroam](http://www.ucl.ac.uk/isd/staff/wireless/eduroam) service to connect to the internet for this work.
41+
So you should ensure you have eduroam installed and working.
42+
43+
Installing Boost
44+
----------------
45+
46+
You will also need, part-way throught the course, to install **Boost**.
47+
48+
If the main instructions are hard to get through, you can leave that till
49+
prompted during the course. Otherwise, [start now](03install_boost)

99appendices/linux.md

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
---
2+
title: Linux
3+
---
4+
5+
Linux Install
6+
=============
7+
8+
Git
9+
---
10+
11+
If git is not already available on your machine
12+
you can try to install it via your distribution package manager (e.g. `apt-get` or `yum`).
13+
14+
On ubuntu or other Debian systems:
15+
16+
sudo apt-get install git
17+
18+
On RedHat based systems:
19+
20+
sudo yum install git
21+
22+
## Subversion ##
23+
24+
Again, install the appropriate package with apt-get or yum (`subversion`)
25+
26+
## CMake ##
27+
28+
Again, install the appropriate package with apt-get or yum (`cmake`)
29+
30+
## Editor and shell ##
31+
32+
Many different text editors suitable for programming are available.
33+
If you don't already have a favourite,
34+
you could look at [Kate](http://kate-editor.org/).
35+
36+
Regardless of which editor you have chosen you should configure git to use it. Executing something like this in a terminal should work:
37+
38+
```
39+
git config --global core.editor NameofYourEditorHere
40+
```
41+
42+
The default shell is usually bash but if not you can get to bash by opening a terminal and typing `bash`.

99appendices/mac.md

+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
---
2+
title: Mac
3+
---
4+
5+
6+
Mac Install
7+
===========
8+
9+
## XCode and command line tools ##
10+
11+
Install [XCode](https://itunes.apple.com/us/app/xcode/id497799835) using the Mac app store.
12+
13+
Then, go to Xcode...Preferences...Downloads... and install the command line tools option
14+
15+
## Git ##
16+
17+
Install Homebrew via typing this at a terminal:
18+
19+
``` Bash
20+
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
21+
```
22+
23+
and then type
24+
25+
``` Bash
26+
brew install git
27+
```
28+
29+
30+
Then install the [GitHub for Mac client](http://mac.github.com). (If you have problems with older versions of OSX, it's safe to skip this.)
31+
32+
## CMake
33+
34+
Just do
35+
36+
``` Bash
37+
brew install cmake
38+
```
39+
40+
## Editor and shell ##
41+
42+
The default text editor on OS X *textedit* should be sufficient for our use. Alternatively
43+
choose from a [list](http://mac.appstorm.net/roundups/office-roundups/top-10-mac-text-editors/) of other good editors.
44+
45+
To setup git to use *textedit* executing the following in a terminal should do.
46+
47+
``` Bash
48+
git config --global core.editor
49+
/Applications/TextEdit.app/Contents/MacOS/TextEdit
50+
```
51+
52+
The default terminal on OSX should also be sufficient. If you want a more advanced terminal [iTerm2](http://www.iterm2.com/) is an alternative.

99appendices/windows.md

+117
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
---
2+
title: Windows
3+
---
4+
5+
Windows Install
6+
===============
7+
8+
## Git ##
9+
10+
Install [msysgit](http://code.google.com/p/msysgit/downloads/list?q=full+installer+official+git)
11+
12+
Then install the [GitHub for Windows client](http://windows.github.com/).
13+
14+
## Subversion
15+
16+
Install [subversion](http://sourceforge.net/projects/win32svn/)
17+
18+
And choose to add it to the path for all users if so prompted.
19+
20+
## CMake
21+
22+
Install [cmake](http://www.cmake.org/cmake/resources/software.html)
23+
24+
And choose to add it to the path for all users if so prompted.
25+
26+
## Editor ##
27+
28+
Unless you already use a specific editor which you are comfortable with we recommend using
29+
[*Notepad++*](http://notepad-plus-plus.org/) on windows.
30+
31+
Using Notepad++ to edit text files including code should be straight forward but in addition you should configure git
32+
to use notepad++ when writing commit messages (We will learn about these in the version controle session).
33+
34+
## Unix tools ##
35+
36+
Install [MinGW](http://sourceforge.net/projects/mingw/) by following the download link.
37+
It should install MinGW's package manager. On the left, select ``Basic Setup``, and on the right select
38+
``mingw32-base``, ``mingw-developer-toolkit,``
39+
``mingw-gcc-g++`` and ``msys-base``. On some systems these package
40+
might be selected from start. Finally, click the installation menu and ``Apply Changes``.
41+
42+
## Locating your install
43+
44+
Now, we need to find out where Git and Notepad++ have been installed, this will be either in
45+
`C:/Program Files (x86)` or in `C:\ProgramFiles`. The former is the norm on more modern versions of windows.
46+
If you have the older version, replace `Program\ Files\ \(x86\)` with `Program\ Files` in the instructions below.
47+
48+
## Telling Shell where to find the tools
49+
50+
We need to tell the new shell installed in this way where git and Notepad++ are.
51+
52+
To do this, use NotePad++ to edit the file at `C:\MinGW\mysys\1.0\etc\profile`
53+
54+
and toward the end, above the line `alias clear=clsb` add the following:
55+
56+
``` Bash
57+
# Path settings from SoftwareCarpentry
58+
export PATH=$PATH:/c/Program\ Files\ \(x86\)/Git/bin
59+
export PATH=$PATH:/c/Program\ Files\ \(x86\)/Notepad++
60+
# End of Software carpentry settings
61+
```
62+
63+
64+
## Finding your terminal
65+
66+
Check this works by opening MinGW shell, with the start menu (Start->All programs->MinGW->MinGW
67+
Shell). This should open a *terminal* window, where commands can be typed in directly.
68+
69+
On windows 8,
70+
there may be no app for MinGW. In that case, open the ``run`` app and type in
71+
72+
``` Bash
73+
C:\MinGW\msys\1.0\msys.bat
74+
```
75+
76+
## Checking which tools you have
77+
78+
Once you have a terminal open, type
79+
80+
``` Bash
81+
which notepad++
82+
```
83+
84+
which should produce readout similar to
85+
86+
```
87+
/c/Program Files (x86)/Notepad++/notepad++.exe`
88+
```
89+
90+
Also try:
91+
92+
``` Bash
93+
which git
94+
```
95+
96+
which should produce
97+
98+
```
99+
/c/Program Files (x86)/Notepad++/notepad++.exe
100+
```
101+
102+
The ``which`` command is used to figure out where a given program is located on disk.
103+
104+
## Tell Git about your editor
105+
106+
Now we need to update the default editor used by Git.
107+
108+
``` Bash
109+
git config --global core.editor "'C:/Program Files (x86)/Notepad++
110+
/notepad++.exe' -multiInst -nosession -noPlugin"
111+
```
112+
113+
Note that it is not obvious how to copy and paste text in a Windows terminal including Git Bash.
114+
Copy and paste can be found by right clicking on the top bar of the window and selecting the
115+
commands from the drop down menu (in a sub menu).
116+
117+
You should now have a working version of git and notepad++, accessible from your shell.

Makefile

+106
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
PANDOC=pandoc
2+
3+
ROOT=""
4+
5+
PANDOCARGS=-t revealjs -s -V theme=night --css=http://lab.hakim.se/reveal-js/css/theme/night.css \
6+
--css=$(ROOT)/css/ucl_reveal.css --css=$(ROOT)/site-styles/reveal.css \
7+
--default-image-extension=png --highlight-style=zenburn --mathjax -V revealjs-url=http://lab.hakim.se/reveal-js
8+
9+
MDS=$(filter-out _site, $(wildcard */*.md ))
10+
11+
TEMPLATED=$(MDS:.md=.tmd)
12+
13+
RELATIVE=$(MDS:.md=.rmd)
14+
15+
SLIDES=$(MDS:.md=-reveal.html)
16+
17+
EXES=$(shell find build -name *.x)
18+
19+
vpath %.x build
20+
21+
OUTS=$(subst build/,,$(EXES:.x=.out))
22+
23+
default: _site
24+
25+
.DELETE_ON_ERROR:
26+
27+
.SUFFIXES:
28+
29+
%.out: %.x Makefile
30+
$< > $@
31+
32+
%-reveal.html: %.rmd Makefile
33+
cat $^ | $(PANDOC) $(PANDOCARGS) -o $@
34+
35+
%.png: %.py Makefile
36+
python $< $@
37+
38+
%.png: %.nto Makefile
39+
neato $< -T png -o $@
40+
41+
%.png: %.dot Makefile
42+
dot $< -T png -o $@
43+
44+
%.png: %.uml Makefile
45+
java -Djava.awt.headless=true -jar plantuml.jar -p < $< > $@
46+
47+
notes.pdf: combined.md Makefile
48+
$(PANDOC) --from markdown combined.md -o notes.pdf
49+
50+
%.tmd: %.md liquify.rb Makefile
51+
ruby liquify.rb $< > $@
52+
53+
%.rmd: %.md liquify.rb Makefile
54+
ruby liquify.rb $< rel > $@
55+
56+
combined.md: $(TEMPLATED)
57+
cat $^ > $@
58+
59+
notes.tex: combined.md Makefile $(OUTS)
60+
$(PANDOC) --from markdown combined.md -o notes.tex
61+
62+
master.zip: Makefile
63+
rm -f master.zip
64+
wget https://github.com/UCL-RITS/indigo-jekyll/archive/master.zip
65+
66+
ready: indigo $(OUTS) notes.pdf $(SLIDES)
67+
68+
indigo-jekyll-master: Makefile master.zip
69+
rm -rf indigo-jekyll-master
70+
unzip master.zip
71+
touch indigo-jekyll-master
72+
73+
indigo: indigo-jekyll-master Makefile
74+
cp -r indigo-jekyll-master/indigo/images .
75+
cp -r indigo-jekyll-master/indigo/js .
76+
cp -r indigo-jekyll-master/indigo/css .
77+
cp -r indigo-jekyll-master/indigo/_includes .
78+
cp -r indigo-jekyll-master/indigo/_layouts .
79+
cp -r indigo-jekyll-master/indigo/favicon* .
80+
touch indigo
81+
82+
.PHONY: ready
83+
84+
_site: ready _plugins/idio.rb
85+
jekyll build --verbose
86+
87+
preview: ready
88+
jekyll serve --verbose
89+
90+
clean:
91+
rm -rf build
92+
rm -rf indigo
93+
rm -rf indigo-jekyll-master
94+
rm -f master.zip
95+
rm -f notes.pdf
96+
rm -rf _site
97+
rm -f favicon*
98+
rm -f combined*
99+
rm -rf _includes
100+
rm -rf _layouts
101+
rm -rf js
102+
rm -rf images
103+
rm -f */*.tmd
104+
rm -f */*.rmd
105+
rm -f */.slide.html
106+
rm -f */*-reveal.html

SConstruct

-16
This file was deleted.

0 commit comments

Comments
 (0)