-
Notifications
You must be signed in to change notification settings - Fork 3
/
startup.sh
113 lines (103 loc) · 2.8 KB
/
startup.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#!/bin/bash
#
# Use this script in a bare Ubuntu distribution to install
# clang, libobjc2, GNUstep, and other dependencies that
# will allow you to build and run Nu.
#
# libobjc2 is an updated runtime that seeks compatibility
# with Apple's modern Objective-C runtime. This new runtime
# allows Nu to be ported to Linux+GNUstep without difficulty.
#
# Tested with ubuntu-12.04.2-server-amd64.iso.
# Other Ubuntu and Debian installations may also work well.
#
# Thanks to Tobias Lensing for pointing the way.
# http://blog.tlensing.org/2013/02/24/objective-c-on-linux-setting-up-gnustep-clang-llvm-objective-c-2-0-blocks-runtime-gcd-on-ubuntu-12-04/
#
mkdir /STARTUP
cd /STARTUP
sudo apt-get update
sudo apt-get install curl -y
sudo apt-get install ssh -y
sudo apt-get install git -y
sudo apt-get install libreadline-dev -y
sudo apt-get install libicu-dev -y
sudo apt-get install openssl -y
sudo apt-get install build-essential -y
sudo apt-get install clang -y
sudo apt-get install libblocksruntime-dev -y
sudo apt-get install libkqueue-dev -y
sudo apt-get install libpthread-workqueue-dev -y
sudo apt-get install gobjc -y
sudo apt-get install libxml2-dev -y
sudo apt-get install libjpeg-dev -y
sudo apt-get install libtiff-dev -y
sudo apt-get install libpng12-dev -y
sudo apt-get install libcups2-dev -y
sudo apt-get install libfreetype6-dev -y
sudo apt-get install libcairo2-dev -y
sudo apt-get install libxt-dev -y
sudo apt-get install libgl1-mesa-dev -y
sudo apt-get remove libdispatch-dev -y
sudo apt-get install gdb -y
#
# A few modifications were needed to fix problems with
# libobjc2 and gnustep-base. To maintain stability, we
# work with a fork on github.
#
git clone https://github.com/nulang/gnustep-libobjc2.git
git clone https://github.com/nulang/gnustep-make.git
git clone https://github.com/nulang/gnustep-base.git
echo Installing libobjc2
export CC=clang
cd gnustep-libobjc2
make clean
make
sudo make install
cd /STARTUP
cd gnustep-make
./configure
make clean
make
sudo make install
cd /STARTUP
cd gnustep-base
./configure
make clean
make
sudo make install
cd /STARTUP
sudo apt-get install libdispatch-dev -y
echo Installation script finished successfully
git clone https://github.com/nulang/nu.git
cd nu
make
./mininush tools/nuke install
nuke install
cd /STARTUP
git clone https://github.com/nulang/nu-json.git
cd nu-json
nuke install
cd /STARTUP
sudo apt-get install libevent-dev -y
git clone https://github.com/nulang/libevhtp
cd libevhtp
cd build/
sudo apt-get install cmake -y
cmake ..
make
sudo make install
cd /STARTUP
sudo apt-get install libssl-dev -y
git clone https://github.com/nulang/nu-http.git
cd nu-http/
nuke
nuke install
cd /STARTUP
git clone https://github.com/nulang/nu-crypto.git
cd nu-crypto/
sudo apt-get install uuid-dev -y
nuke
nuke install
cd /STARTUP
echo "Ready, Player One."