Browse Source

Documentation for mirrors

Bob Mottram 9 years ago
parent
commit
c020fe28a6
4 changed files with 325 additions and 27 deletions
  1. 2
    1
      doc/EN/faq.org
  2. 33
    0
      doc/EN/mirrors.org
  3. 21
    26
      website/EN/faq.html
  4. 269
    0
      website/EN/mirrors.html

+ 2
- 1
doc/EN/faq.org View File

2
 #+AUTHOR: Bob Mottram
2
 #+AUTHOR: Bob Mottram
3
 #+EMAIL: bob@robotics.uk.to
3
 #+EMAIL: bob@robotics.uk.to
4
 #+KEYWORDS: freedombox, debian, beaglebone, hubzilla, email, web server, home server, internet, censorship, surveillance, social network, irc, jabber
4
 #+KEYWORDS: freedombox, debian, beaglebone, hubzilla, email, web server, home server, internet, censorship, surveillance, social network, irc, jabber
5
-#+DESCRIPTION: Turn the Beaglebone Black into a personal communications server
5
+#+DESCRIPTION: Frequently asked questions
6
 #+OPTIONS: ^:nil toc:nil
6
 #+OPTIONS: ^:nil toc:nil
7
 #+HTML_HEAD: <link rel="stylesheet" type="text/css" href="solarized-light.css" />
7
 #+HTML_HEAD: <link rel="stylesheet" type="text/css" href="solarized-light.css" />
8
 
8
 
21
 | [[I don't have a static IP address. Can I still install this system?]]            |
21
 | [[I don't have a static IP address. Can I still install this system?]]            |
22
 | [[Why not support building images for Raspberry Pi?]]                             |
22
 | [[Why not support building images for Raspberry Pi?]]                             |
23
 | [[Why use Github?]]                                                               |
23
 | [[Why use Github?]]                                                               |
24
+| [[./mirrors.html][I have a question about mirrors or upstream repositories]]                      |
24
 | [[Why can't I access my .onion site with a Tor browser?]]                         |
25
 | [[Why can't I access my .onion site with a Tor browser?]]                         |
25
 | [[What is the best hardware to run this system on?]]                              |
26
 | [[What is the best hardware to run this system on?]]                              |
26
 | [[Can I add more users to the system?]]                                           |
27
 | [[Can I add more users to the system?]]                                           |

+ 33
- 0
doc/EN/mirrors.org View File

1
+#+TITLE:
2
+#+AUTHOR: Bob Mottram
3
+#+EMAIL: bob@robotics.uk.to
4
+#+KEYWORDS: freedombox, debian, beaglebone, red matrix, email, web server, home server, internet, censorship, surveillance, social network, irc, jabber
5
+#+DESCRIPTION: Mirroring git repositories
6
+#+OPTIONS: ^:nil toc:nil
7
+#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="solarized-light.css" />
8
+
9
+#+BEGIN_CENTER
10
+[[file:images/logo.png]]
11
+#+END_CENTER
12
+
13
+#+BEGIN_HTML
14
+<center>
15
+<h1>Mirrors</h1>
16
+</center>
17
+#+END_HTML
18
+
19
+| [[What are mirrors and why do they exist?]]         |
20
+| [[What security do mirrors have?]]                  |
21
+| [[How do I set up mirrors?]]                        |
22
+| [[Do mirrors include debian package repositories?]] |
23
+
24
+* What are mirrors and why do they exist?
25
+It would be nice if all of the applications used by this project were packaged for Debian, but currently they're not. This means that various upstream git repositories are used and these mostly reside on Github. What if Github were to go away, become paying only or be censored in some manner which was difficult to work around? To guard against this possibility the repositories are mirrored on each install and can then be made available to other users so that new installations or updates could still occur without the original default repos.
26
+* What security do mirrors have?
27
+On each install you have a /mirrors/ user created, whose only purpose is to mirror upstream repositories. A random password is generated for the /mirrors/ user which can be seen within the control panel and so given to other users who may need it.
28
+* How do I set up mirrors?
29
+The interactive installer will ask whether you want to configure the main respositories. Enter the URL, which will typically be an onion address, the ssh port number and the password for the mirrors on that system.
30
+* Do mirrors include debian package repositories?
31
+No. Packages for Debian will still be accessed in the conventional manner.
32
+* Can I change mirrors after the system has been installed
33
+Yes. From the control panel select "/Set the main repository/"

+ 21
- 26
website/EN/faq.html View File

3
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
4
 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
5
 <head>
5
 <head>
6
-<!-- 2016-01-31 Sun 20:25 -->
7
-<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
8
-<meta name="viewport" content="width=device-width, initial-scale=1" />
6
+<!-- 2016-02-01 Mon 11:01 -->
7
+<meta  http-equiv="Content-Type" content="text/html;charset=utf-8" />
8
+<meta  name="viewport" content="width=device-width, initial-scale=1" />
9
 <title></title>
9
 <title></title>
10
-<meta name="generator" content="Org-mode" />
11
-<meta name="author" content="Bob Mottram" />
12
-<meta name="description" content="Turn the Beaglebone Black into a personal communications server"
10
+<meta  name="generator" content="Org-mode" />
11
+<meta  name="author" content="Bob Mottram" />
12
+<meta  name="description" content="Frequently asked questions"
13
  />
13
  />
14
-<meta name="keywords" content="freedombox, debian, beaglebone, hubzilla, email, web server, home server, internet, censorship, surveillance, social network, irc, jabber" />
14
+<meta  name="keywords" content="freedombox, debian, beaglebone, hubzilla, email, web server, home server, internet, censorship, surveillance, social network, irc, jabber" />
15
 <style type="text/css">
15
 <style type="text/css">
16
  <!--/*--><![CDATA[/*><!--*/
16
  <!--/*--><![CDATA[/*><!--*/
17
   .title  { text-align: center;
17
   .title  { text-align: center;
75
   td.org-left   { text-align: left;   }
75
   td.org-left   { text-align: left;   }
76
   td.org-center { text-align: center; }
76
   td.org-center { text-align: center; }
77
   dt { font-weight: bold; }
77
   dt { font-weight: bold; }
78
-  .footpara { display: inline; }
78
+  .footpara:nth-child(2) { display: inline; }
79
+  .footpara { display: block; }
79
   .footdef  { margin-bottom: 1em; }
80
   .footdef  { margin-bottom: 1em; }
80
   .figure { padding: 1em; }
81
   .figure { padding: 1em; }
81
   .figure p { text-align: center; }
82
   .figure p { text-align: center; }
150
 <a name="top" id="top"></a>
151
 <a name="top" id="top"></a>
151
 </div>
152
 </div>
152
 <div id="content">
153
 <div id="content">
153
-<div class="org-center">
154
+<div class="center">
154
 
155
 
155
 <div class="figure">
156
 <div class="figure">
156
 <p><img src="images/logo.png" alt="logo.png" />
157
 <p><img src="images/logo.png" alt="logo.png" />
158
 </div>
159
 </div>
159
 </div>
160
 </div>
160
 
161
 
161
-<div class="HTML">
162
-<p>
163
-&lt;center&gt;
164
-&lt;h1&gt;Frequently Asked Questions&lt;/h1&gt;
165
-&lt;/center&gt;
166
-</p>
167
-
168
-</div>
162
+<center>
163
+<h1>Frequently Asked Questions</h1>
164
+</center>
169
 
165
 
170
-<div class="org-center">
166
+<div class="center">
171
 <table border="-1" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
167
 <table border="-1" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
172
 
168
 
173
 
169
 
188
 </tr>
184
 </tr>
189
 
185
 
190
 <tr>
186
 <tr>
187
+<td class="org-left"><a href="./mirrors.html">I have a question about mirrors or upstream repositories</a></td>
188
+</tr>
189
+
190
+<tr>
191
 <td class="org-left"><a href="#orgheadline4">Why can't I access my .onion site with a Tor browser?</a></td>
191
 <td class="org-left"><a href="#orgheadline4">Why can't I access my .onion site with a Tor browser?</a></td>
192
 </tr>
192
 </tr>
193
 
193
 
714
 So the situation with email presently is pretty bad, and there's a clear selection pressure against decentralization and towards only a few companies controlling all email services. Longer term the solution is to have more secure protocols which make spamming hard or expensive. Bitmessage is one such system. As an immediate practical workaround you could try buying a domain name and then linking it to your dynamic DNS account (freeDNS, etc) in the hope that the blocking is against dynamic DNS domain names, but there is no guarantee that will work and often blocking may be based upon IP address ranges about which there is little you can do.
714
 So the situation with email presently is pretty bad, and there's a clear selection pressure against decentralization and towards only a few companies controlling all email services. Longer term the solution is to have more secure protocols which make spamming hard or expensive. Bitmessage is one such system. As an immediate practical workaround you could try buying a domain name and then linking it to your dynamic DNS account (freeDNS, etc) in the hope that the blocking is against dynamic DNS domain names, but there is no guarantee that will work and often blocking may be based upon IP address ranges about which there is little you can do.
715
 </p>
715
 </p>
716
 
716
 
717
-<div class="HTML">
718
-<p>
719
-&lt;center&gt;
720
-Return to the &lt;a href="index.html"&gt;home page&lt;/a&gt;
721
-&lt;/center&gt;
722
-</p>
723
-
724
-</div>
717
+<center>
718
+Return to the <a href="index.html">home page</a>
719
+</center>
725
 </div>
720
 </div>
726
 </div>
721
 </div>
727
 </div>
722
 </div>

+ 269
- 0
website/EN/mirrors.html View File

1
+<?xml version="1.0" encoding="utf-8"?>
2
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
5
+<head>
6
+<!-- 2016-02-01 Mon 11:01 -->
7
+<meta  http-equiv="Content-Type" content="text/html;charset=utf-8" />
8
+<meta  name="viewport" content="width=device-width, initial-scale=1" />
9
+<title></title>
10
+<meta  name="generator" content="Org-mode" />
11
+<meta  name="author" content="Bob Mottram" />
12
+<meta  name="description" content="Mirroring git repositories"
13
+ />
14
+<meta  name="keywords" content="freedombox, debian, beaglebone, red matrix, email, web server, home server, internet, censorship, surveillance, social network, irc, jabber" />
15
+<style type="text/css">
16
+ <!--/*--><![CDATA[/*><!--*/
17
+  .title  { text-align: center;
18
+             margin-bottom: .2em; }
19
+  .subtitle { text-align: center;
20
+              font-size: medium;
21
+              font-weight: bold;
22
+              margin-top:0; }
23
+  .todo   { font-family: monospace; color: red; }
24
+  .done   { font-family: monospace; color: green; }
25
+  .priority { font-family: monospace; color: orange; }
26
+  .tag    { background-color: #eee; font-family: monospace;
27
+            padding: 2px; font-size: 80%; font-weight: normal; }
28
+  .timestamp { color: #bebebe; }
29
+  .timestamp-kwd { color: #5f9ea0; }
30
+  .org-right  { margin-left: auto; margin-right: 0px;  text-align: right; }
31
+  .org-left   { margin-left: 0px;  margin-right: auto; text-align: left; }
32
+  .org-center { margin-left: auto; margin-right: auto; text-align: center; }
33
+  .underline { text-decoration: underline; }
34
+  #postamble p, #preamble p { font-size: 90%; margin: .2em; }
35
+  p.verse { margin-left: 3%; }
36
+  pre {
37
+    border: 1px solid #ccc;
38
+    box-shadow: 3px 3px 3px #eee;
39
+    padding: 8pt;
40
+    font-family: monospace;
41
+    overflow: auto;
42
+    margin: 1.2em;
43
+  }
44
+  pre.src {
45
+    position: relative;
46
+    overflow: visible;
47
+    padding-top: 1.2em;
48
+  }
49
+  pre.src:before {
50
+    display: none;
51
+    position: absolute;
52
+    background-color: white;
53
+    top: -10px;
54
+    right: 10px;
55
+    padding: 3px;
56
+    border: 1px solid black;
57
+  }
58
+  pre.src:hover:before { display: inline;}
59
+  pre.src-sh:before    { content: 'sh'; }
60
+  pre.src-bash:before  { content: 'sh'; }
61
+  pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
62
+  pre.src-R:before     { content: 'R'; }
63
+  pre.src-perl:before  { content: 'Perl'; }
64
+  pre.src-java:before  { content: 'Java'; }
65
+  pre.src-sql:before   { content: 'SQL'; }
66
+
67
+  table { border-collapse:collapse; }
68
+  caption.t-above { caption-side: top; }
69
+  caption.t-bottom { caption-side: bottom; }
70
+  td, th { vertical-align:top;  }
71
+  th.org-right  { text-align: center;  }
72
+  th.org-left   { text-align: center;   }
73
+  th.org-center { text-align: center; }
74
+  td.org-right  { text-align: right;  }
75
+  td.org-left   { text-align: left;   }
76
+  td.org-center { text-align: center; }
77
+  dt { font-weight: bold; }
78
+  .footpara:nth-child(2) { display: inline; }
79
+  .footpara { display: block; }
80
+  .footdef  { margin-bottom: 1em; }
81
+  .figure { padding: 1em; }
82
+  .figure p { text-align: center; }
83
+  .inlinetask {
84
+    padding: 10px;
85
+    border: 2px solid gray;
86
+    margin: 10px;
87
+    background: #ffffcc;
88
+  }
89
+  #org-div-home-and-up
90
+   { text-align: right; font-size: 70%; white-space: nowrap; }
91
+  textarea { overflow-x: auto; }
92
+  .linenr { font-size: smaller }
93
+  .code-highlighted { background-color: #ffff00; }
94
+  .org-info-js_info-navigation { border-style: none; }
95
+  #org-info-js_console-label
96
+    { font-size: 10px; font-weight: bold; white-space: nowrap; }
97
+  .org-info-js_search-highlight
98
+    { background-color: #ffff00; color: #000000; font-weight: bold; }
99
+  /*]]>*/-->
100
+</style>
101
+<link rel="stylesheet" type="text/css" href="solarized-light.css" />
102
+<script type="text/javascript">
103
+/*
104
+@licstart  The following is the entire license notice for the
105
+JavaScript code in this tag.
106
+
107
+Copyright (C) 2012-2013 Free Software Foundation, Inc.
108
+
109
+The JavaScript code in this tag is free software: you can
110
+redistribute it and/or modify it under the terms of the GNU
111
+General Public License (GNU GPL) as published by the Free Software
112
+Foundation, either version 3 of the License, or (at your option)
113
+any later version.  The code is distributed WITHOUT ANY WARRANTY;
114
+without even the implied warranty of MERCHANTABILITY or FITNESS
115
+FOR A PARTICULAR PURPOSE.  See the GNU GPL for more details.
116
+
117
+As additional permission under GNU GPL version 3 section 7, you
118
+may distribute non-source (e.g., minimized or compacted) forms of
119
+that code without the copy of the GNU GPL normally required by
120
+section 4, provided you include this license notice and a URL
121
+through which recipients can access the Corresponding Source.
122
+
123
+
124
+@licend  The above is the entire license notice
125
+for the JavaScript code in this tag.
126
+*/
127
+<!--/*--><![CDATA[/*><!--*/
128
+ function CodeHighlightOn(elem, id)
129
+ {
130
+   var target = document.getElementById(id);
131
+   if(null != target) {
132
+     elem.cacheClassElem = elem.className;
133
+     elem.cacheClassTarget = target.className;
134
+     target.className = "code-highlighted";
135
+     elem.className   = "code-highlighted";
136
+   }
137
+ }
138
+ function CodeHighlightOff(elem, id)
139
+ {
140
+   var target = document.getElementById(id);
141
+   if(elem.cacheClassElem)
142
+     elem.className = elem.cacheClassElem;
143
+   if(elem.cacheClassTarget)
144
+     target.className = elem.cacheClassTarget;
145
+ }
146
+/*]]>*///-->
147
+</script>
148
+</head>
149
+<body>
150
+<div id="preamble" class="status">
151
+<a name="top" id="top"></a>
152
+</div>
153
+<div id="content">
154
+<div class="center">
155
+
156
+<div class="figure">
157
+<p><img src="images/logo.png" alt="logo.png" />
158
+</p>
159
+</div>
160
+</div>
161
+
162
+<center>
163
+<h1>Mirrors</h1>
164
+</center>
165
+
166
+<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
167
+
168
+
169
+<colgroup>
170
+<col  class="org-left" />
171
+</colgroup>
172
+<tbody>
173
+<tr>
174
+<td class="org-left"><a href="#orgheadline1">What are mirrors and why do they exist?</a></td>
175
+</tr>
176
+
177
+<tr>
178
+<td class="org-left"><a href="#orgheadline2">What security do mirrors have?</a></td>
179
+</tr>
180
+
181
+<tr>
182
+<td class="org-left"><a href="#orgheadline3">How do I set up mirrors?</a></td>
183
+</tr>
184
+
185
+<tr>
186
+<td class="org-left"><a href="#orgheadline4">Do mirrors include debian package repositories?</a></td>
187
+</tr>
188
+</tbody>
189
+</table>
190
+
191
+<div id="outline-container-orgheadline1" class="outline-2">
192
+<h2 id="orgheadline1">What are mirrors and why do they exist?</h2>
193
+<div class="outline-text-2" id="text-orgheadline1">
194
+<p>
195
+It would be nice if all of the applications used by this project were packaged for Debian, but currently they're not. This means that various upstream git repositories are used and these mostly reside on Github. What if Github were to go away, become paying only or be censored in some manner which was difficult to work around? To guard against this possibility the repositories are mirrored on each install and can then be made available to other users so that new installations or updates could still occur without the original default repos.
196
+</p>
197
+</div>
198
+</div>
199
+<div id="outline-container-orgheadline2" class="outline-2">
200
+<h2 id="orgheadline2">What security do mirrors have?</h2>
201
+<div class="outline-text-2" id="text-orgheadline2">
202
+<p>
203
+On each install you have a <i>mirrors</i> user created, whose only purpose is to mirror upstream repositories. A random password is generated for the <i>mirrors</i> user which can be seen within the control panel and so given to other users who may need it.
204
+</p>
205
+</div>
206
+</div>
207
+<div id="outline-container-orgheadline3" class="outline-2">
208
+<h2 id="orgheadline3">How do I set up mirrors?</h2>
209
+<div class="outline-text-2" id="text-orgheadline3">
210
+<p>
211
+The interactive installer will ask whether you want to configure the main respositories. Enter the URL, which will typically be an onion address, the ssh port number and the password for the mirrors on that system.
212
+</p>
213
+</div>
214
+</div>
215
+<div id="outline-container-orgheadline4" class="outline-2">
216
+<h2 id="orgheadline4">Do mirrors include debian package repositories?</h2>
217
+<div class="outline-text-2" id="text-orgheadline4">
218
+<p>
219
+No. Packages for Debian will still be accessed in the conventional manner.
220
+</p>
221
+</div>
222
+</div>
223
+<div id="outline-container-orgheadline5" class="outline-2">
224
+<h2 id="orgheadline5">Can I change mirrors after the system has been installed</h2>
225
+<div class="outline-text-2" id="text-orgheadline5">
226
+<p>
227
+Yes. From the control panel select "<i>Set the main repository</i>"
228
+</p>
229
+</div>
230
+</div>
231
+</div>
232
+<div id="postamble" class="status">
233
+
234
+<style type="text/css">
235
+.back-to-top {
236
+    position: fixed;
237
+    bottom: 2em;
238
+    right: 0px;
239
+    text-decoration: none;
240
+    color: #000000;
241
+    background-color: rgba(235, 235, 235, 0.80);
242
+    font-size: 12px;
243
+    padding: 1em;
244
+    display: none;
245
+}
246
+
247
+.back-to-top:hover {
248
+    background-color: rgba(135, 135, 135, 0.50);
249
+}
250
+</style>
251
+
252
+<div class="back-to-top">
253
+<a href="#top">Back to top</a> | <a href="mailto:bob@robotics.uk.to">E-mail me</a>
254
+</div>
255
+
256
+<script type="text/javascript">
257
+    var offset = 220;
258
+    var duration = 500;
259
+    jQuery(window).scroll(function() {
260
+        if (jQuery(this).scrollTop() > offset) {
261
+            jQuery('.back-to-top').fadeIn(duration);
262
+        } else {
263
+            jQuery('.back-to-top').fadeOut(duration);
264
+        }
265
+    });
266
+</script>
267
+</div>
268
+</body>
269
+</html>