diff options
author | Schanzenbach, Martin <martin.schanzenbach@aisec.fraunhofer.de> | 2019-02-22 20:18:55 +0100 |
---|---|---|
committer | Schanzenbach, Martin <martin.schanzenbach@aisec.fraunhofer.de> | 2019-02-22 20:18:55 +0100 |
commit | 315208506c8961ea922f6759cec1a8957c4b161f (patch) | |
tree | ea7c74fd11cd80c24c15f5b9831881249a21848a /template/tutorial-macos.html.j2 | |
parent | 34b51a3526f9d3e203508f9a2c6d75bbe89bbc59 (diff) | |
download | www-315208506c8961ea922f6759cec1a8957c4b161f.tar.gz www-315208506c8961ea922f6759cec1a8957c4b161f.zip |
update macos instructions
Diffstat (limited to 'template/tutorial-macos.html.j2')
-rw-r--r-- | template/tutorial-macos.html.j2 | 81 |
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 |