aboutsummaryrefslogtreecommitdiff
path: root/template/tutorial-macos.html.j2
diff options
context:
space:
mode:
authorSchanzenbach, Martin <martin.schanzenbach@aisec.fraunhofer.de>2019-02-22 20:18:55 +0100
committerSchanzenbach, Martin <martin.schanzenbach@aisec.fraunhofer.de>2019-02-22 20:18:55 +0100
commit315208506c8961ea922f6759cec1a8957c4b161f (patch)
treeea7c74fd11cd80c24c15f5b9831881249a21848a /template/tutorial-macos.html.j2
parent34b51a3526f9d3e203508f9a2c6d75bbe89bbc59 (diff)
downloadwww-315208506c8961ea922f6759cec1a8957c4b161f.tar.gz
www-315208506c8961ea922f6759cec1a8957c4b161f.zip
update macos instructions
Diffstat (limited to 'template/tutorial-macos.html.j2')
-rw-r--r--template/tutorial-macos.html.j281
1 files changed, 38 insertions, 43 deletions
diff --git a/template/tutorial-macos.html.j2 b/template/tutorial-macos.html.j2
index df0ff757..010d1a56 100644
--- a/template/tutorial-macos.html.j2
+++ b/template/tutorial-macos.html.j2
@@ -8,29 +8,55 @@
8 8
9 <p> 9 <p>
10 Welcome to the hopefully painless GNUnet tutorial for macOS Mojave! It provides 10 Welcome to the hopefully painless GNUnet tutorial for macOS Mojave! It provides
11 concrete instructions on how to compile, install and configure a current 11 concrete instructions on how to install a current
12 version of GNUnet. The goal is to support newcomers, either end users or 12 version of GNUnet. The goal is to support newcomers, either end users or
13 developers, who want to get in touch with GNUnet for the first time. After 13 developers, who want to get in touch with GNUnet for the first time. After
14 installing GNUnet we will make sure that out new GNUnet installation is working 14 installing GNUnet we will make sure that out new GNUnet installation is working
15 correctly. 15 correctly.
16 </p> 16 </p>
17 17
18 <h3>{{ _("Requirements") }}</h3> 18 <h3>{{ _("Installation through homebrew") }}</h3>
19
20
21 <h4>{{ _("Requirements") }}</h4>
19 22
20 <p> 23 <p>
21 First, install <a href="https://brew.sh">homebrew</a> and <a href="https://developer.apple.com/xcode/">XCode</a>. 24 First, install <a href="https://brew.sh">homebrew</a> and <a href="https://developer.apple.com/xcode/">XCode</a>.
22 Then install the following packages: 25 GNUnet is not yet in the official homebrew repos (we are working on it).
26 So, you need to grab the formula from <a href="https://git.gnunet.org/gnunet.git/tree/contrib/gnunet.rb">here</a>
27 and put it under the homebrew formula folder:
28 </p>
29 <code>
30 $ cp gnunet.rb $(brew --repo homebrew/core)/Formula
31 </code>
32 <p>
33 Then install:
23 </p> 34 </p>
24 35
25 <code> 36 <code>
26 $ sudo brew install git autoconf automake glpk gettext gnutls jansson libextractor libgcrypt libffi libidn2 libmicrohttpd libmpc libtool libunistring pkg-config unbound 37 $ brew install gnunet
27 </code> 38 </code>
28 39
29 <h3>{{ _("Make an installation directory") }}</h3> 40 If you want to install GNUnet from git, execute:
41 <code>
42 $ brew install --HEAD gnunet
43 </code>
44
45 <h3>{{ _("Installation from source") }}</h3>
30 46
31 <p> 47 <p>
32 Next we create a directory in our home directory where we store 48 The following instructions are only really interesting for developers
33 the source code later. We should keep this directory after 49 or if you need special build switches as you can install from git
50 using homebrew (see above).<br/>
51 First, install the dependencies:
52 </p>
53
54 <code>
55 $ brew install git autoconf automake glpk gettext gnutls jansson libextractor libgcrypt libffi libidn2 libmicrohttpd libmpc libtool libunistring pkg-config unbound
56 </code>
57 <p>
58 Next, create a directory in your. This directory is where we store
59 the source code later. You should keep this directory after
34 installation because it contains Makefiles that can be used for 60 installation because it contains Makefiles that can be used for
35 uninstalling GNUnet again (see chapter *Uninstall GNUnet and its 61 uninstalling GNUnet again (see chapter *Uninstall GNUnet and its
36 dependencies*). 62 dependencies*).
@@ -46,40 +72,20 @@
46 $ cd ~<br> 72 $ cd ~<br>
47 $ git clone --depth 1 https://gnunet.org/git/gnunet.git gnunet_src<br> 73 $ git clone --depth 1 https://gnunet.org/git/gnunet.git gnunet_src<br>
48 </code> 74 </code>
49 <p>
50 In order to have a gnutls with DANE support, you need to edit the formula:
51 </p>
52 <code>
53 $ brew edit gnutls
54 </code>
55 <p>
56 Add the line "depends_on 'unbound'" to the dependencies in the formula.
57 Then in the install function before the configure add:
58 </p>
59 <code>
60 ENV['CFLAGS']='-I/usr/local/Cellar/unbound/1.9.0/include'<br/>
61 ENV['LDFLAGS']='-L/usr/local/Cellar/unbound/1.9.0/lib'
62 </code>
63 <p>
64 Reinstall gnutls from source:
65 </p>
66 <code>
67 $ brew reinstall -s gnutls
68 </code>
69 75
70 <h3>{{ _("Compile and Install") }}</h3> 76 <h4>{{ _("Compile and Install") }}</h4>
71 77
72 78
73 <p> 79 <p>
74 We have two options: 80 You have a choice between two options:
75 installing a *production version* and installing a *development version*. If 81 build the *production version* or *development version*. If
76 you want to start writing GNUnet applications or join the GNUnet development 82 you want to start writing GNUnet applications or join the GNUnet development
77 choose the development version (it will print more debug output and contains 83 choose the development version (it will print more debug output and contains
78 debug symbols that can be displayed with a debugger). Otherwise choose the 84 debug symbols that can be displayed with a debugger). Otherwise choose the
79 production version. 85 production version.
80 </p> 86 </p>
81 87
82 <h4>{{ _("Option 1: GNUnet for production / usage") }}</h4> 88 <h5>{{ _("Option 1: GNUnet for production / usage") }}</h5>
83 89
84 <code> 90 <code>
85 $ cd ~/gnunet_src<br> 91 $ cd ~/gnunet_src<br>
@@ -106,24 +112,13 @@
106 $ sudo make install 112 $ sudo make install
107 </code> 113 </code>
108 114
109 <h4>{{ _("Option 2: GNUnet for development") }}</h4> 115 <h5>{{ _("Option 2: GNUnet experimental") }}</h5>
110 116
111 <p> 117 <p>
112 Perform the same steps as for Option 1, but add the configure flat '--enable-experimental' 118 Perform the same steps as for Option 1, but add the configure flat '--enable-experimental'
113 </p> 119 </p>
114 <!-- 120 <!--
115 <h4>{{ _("Install GNUnet plugin for name resolution") }}</h4> 121 <h4>{{ _("Install GNUnet plugin for name resolution") }}</h4>
116 <p>
117 So now it gets a bit nasty. It's not so bad. All we have to do
118 is copy a file and edit another one. The file we need to copy
119 is GNUnet's plugin for the Name Service Switch (NSS) in unix
120 systems. Different unixes expect it in different locations and
121 GNUnet's build system does not try to guess. On Debian 9 we
122 have to do
123 <code>
124 $ sudo cp /usr/lib/gnunet/nss/libnss_gns.so.2 /lib/$(uname -m)-linux-gnu/
125 </code>
126 </p>
127 122
128 <p> 123 <p>
129 Congratulations! GNUnet is now installed! Before we start it we 124 Congratulations! GNUnet is now installed! Before we start it we