|
|
|
|
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
|
-<title></title>
|
|
|
7
|
-<!-- 2018-04-12 Thu 18:23 -->
|
|
|
8
|
-<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
|
|
9
|
-<meta name="generator" content="Org-mode" />
|
|
|
10
|
-<meta name="author" content="Bob Mottram" />
|
|
|
11
|
-<meta name="description" content="Freedombone developers guide"
|
|
|
|
|
6
|
+<!-- 2018-05-14 Mon 19:43 -->
|
|
|
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="Freedombone developers guide"
|
12
|
/>
|
13
|
/>
|
13
|
-<meta name="keywords" content="freedombone, developers" />
|
|
|
|
|
14
|
+<meta name="keywords" content="freedombone, developers" />
|
14
|
<style type="text/css">
|
15
|
<style type="text/css">
|
15
|
<!--/*--><![CDATA[/*><!--*/
|
16
|
<!--/*--><![CDATA[/*><!--*/
|
16
|
- .title { text-align: center; }
|
|
|
|
|
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; }
|
17
|
.todo { font-family: monospace; color: red; }
|
23
|
.todo { font-family: monospace; color: red; }
|
18
|
- .done { color: green; }
|
|
|
|
|
24
|
+ .done { font-family: monospace; color: green; }
|
|
|
25
|
+ .priority { font-family: monospace; color: orange; }
|
19
|
.tag { background-color: #eee; font-family: monospace;
|
26
|
.tag { background-color: #eee; font-family: monospace;
|
20
|
padding: 2px; font-size: 80%; font-weight: normal; }
|
27
|
padding: 2px; font-size: 80%; font-weight: normal; }
|
21
|
.timestamp { color: #bebebe; }
|
28
|
.timestamp { color: #bebebe; }
|
22
|
.timestamp-kwd { color: #5f9ea0; }
|
29
|
.timestamp-kwd { color: #5f9ea0; }
|
23
|
- .right { margin-left: auto; margin-right: 0px; text-align: right; }
|
|
|
24
|
- .left { margin-left: 0px; margin-right: auto; text-align: left; }
|
|
|
25
|
- .center { margin-left: auto; margin-right: auto; text-align: center; }
|
|
|
|
|
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; }
|
26
|
.underline { text-decoration: underline; }
|
33
|
.underline { text-decoration: underline; }
|
27
|
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
|
34
|
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
|
28
|
p.verse { margin-left: 3%; }
|
35
|
p.verse { margin-left: 3%; }
|
|
|
|
|
49
|
border: 1px solid black;
|
56
|
border: 1px solid black;
|
50
|
}
|
57
|
}
|
51
|
pre.src:hover:before { display: inline;}
|
58
|
pre.src:hover:before { display: inline;}
|
52
|
- pre.src-sh:before { content: 'sh'; }
|
|
|
53
|
- pre.src-bash:before { content: 'sh'; }
|
|
|
|
|
59
|
+ /* Languages per Org manual */
|
|
|
60
|
+ pre.src-asymptote:before { content: 'Asymptote'; }
|
|
|
61
|
+ pre.src-awk:before { content: 'Awk'; }
|
|
|
62
|
+ pre.src-C:before { content: 'C'; }
|
|
|
63
|
+ /* pre.src-C++ doesn't work in CSS */
|
|
|
64
|
+ pre.src-clojure:before { content: 'Clojure'; }
|
|
|
65
|
+ pre.src-css:before { content: 'CSS'; }
|
|
|
66
|
+ pre.src-D:before { content: 'D'; }
|
|
|
67
|
+ pre.src-ditaa:before { content: 'ditaa'; }
|
|
|
68
|
+ pre.src-dot:before { content: 'Graphviz'; }
|
|
|
69
|
+ pre.src-calc:before { content: 'Emacs Calc'; }
|
54
|
pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
|
70
|
pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
|
55
|
- pre.src-R:before { content: 'R'; }
|
|
|
56
|
- pre.src-perl:before { content: 'Perl'; }
|
|
|
57
|
- pre.src-java:before { content: 'Java'; }
|
|
|
58
|
- pre.src-sql:before { content: 'SQL'; }
|
|
|
|
|
71
|
+ pre.src-fortran:before { content: 'Fortran'; }
|
|
|
72
|
+ pre.src-gnuplot:before { content: 'gnuplot'; }
|
|
|
73
|
+ pre.src-haskell:before { content: 'Haskell'; }
|
|
|
74
|
+ pre.src-hledger:before { content: 'hledger'; }
|
|
|
75
|
+ pre.src-java:before { content: 'Java'; }
|
|
|
76
|
+ pre.src-js:before { content: 'Javascript'; }
|
|
|
77
|
+ pre.src-latex:before { content: 'LaTeX'; }
|
|
|
78
|
+ pre.src-ledger:before { content: 'Ledger'; }
|
|
|
79
|
+ pre.src-lisp:before { content: 'Lisp'; }
|
|
|
80
|
+ pre.src-lilypond:before { content: 'Lilypond'; }
|
|
|
81
|
+ pre.src-lua:before { content: 'Lua'; }
|
|
|
82
|
+ pre.src-matlab:before { content: 'MATLAB'; }
|
|
|
83
|
+ pre.src-mscgen:before { content: 'Mscgen'; }
|
|
|
84
|
+ pre.src-ocaml:before { content: 'Objective Caml'; }
|
|
|
85
|
+ pre.src-octave:before { content: 'Octave'; }
|
|
|
86
|
+ pre.src-org:before { content: 'Org mode'; }
|
|
|
87
|
+ pre.src-oz:before { content: 'OZ'; }
|
|
|
88
|
+ pre.src-plantuml:before { content: 'Plantuml'; }
|
|
|
89
|
+ pre.src-processing:before { content: 'Processing.js'; }
|
|
|
90
|
+ pre.src-python:before { content: 'Python'; }
|
|
|
91
|
+ pre.src-R:before { content: 'R'; }
|
|
|
92
|
+ pre.src-ruby:before { content: 'Ruby'; }
|
|
|
93
|
+ pre.src-sass:before { content: 'Sass'; }
|
|
|
94
|
+ pre.src-scheme:before { content: 'Scheme'; }
|
|
|
95
|
+ pre.src-screen:before { content: 'Gnu Screen'; }
|
|
|
96
|
+ pre.src-sed:before { content: 'Sed'; }
|
|
|
97
|
+ pre.src-sh:before { content: 'shell'; }
|
|
|
98
|
+ pre.src-sql:before { content: 'SQL'; }
|
|
|
99
|
+ pre.src-sqlite:before { content: 'SQLite'; }
|
|
|
100
|
+ /* additional languages in org.el's org-babel-load-languages alist */
|
|
|
101
|
+ pre.src-forth:before { content: 'Forth'; }
|
|
|
102
|
+ pre.src-io:before { content: 'IO'; }
|
|
|
103
|
+ pre.src-J:before { content: 'J'; }
|
|
|
104
|
+ pre.src-makefile:before { content: 'Makefile'; }
|
|
|
105
|
+ pre.src-maxima:before { content: 'Maxima'; }
|
|
|
106
|
+ pre.src-perl:before { content: 'Perl'; }
|
|
|
107
|
+ pre.src-picolisp:before { content: 'Pico Lisp'; }
|
|
|
108
|
+ pre.src-scala:before { content: 'Scala'; }
|
|
|
109
|
+ pre.src-shell:before { content: 'Shell Script'; }
|
|
|
110
|
+ pre.src-ebnf2ps:before { content: 'ebfn2ps'; }
|
|
|
111
|
+ /* additional language identifiers per "defun org-babel-execute"
|
|
|
112
|
+ in ob-*.el */
|
|
|
113
|
+ pre.src-cpp:before { content: 'C++'; }
|
|
|
114
|
+ pre.src-abc:before { content: 'ABC'; }
|
|
|
115
|
+ pre.src-coq:before { content: 'Coq'; }
|
|
|
116
|
+ pre.src-groovy:before { content: 'Groovy'; }
|
|
|
117
|
+ /* additional language identifiers from org-babel-shell-names in
|
|
|
118
|
+ ob-shell.el: ob-shell is the only babel language using a lambda to put
|
|
|
119
|
+ the execution function name together. */
|
|
|
120
|
+ pre.src-bash:before { content: 'bash'; }
|
|
|
121
|
+ pre.src-csh:before { content: 'csh'; }
|
|
|
122
|
+ pre.src-ash:before { content: 'ash'; }
|
|
|
123
|
+ pre.src-dash:before { content: 'dash'; }
|
|
|
124
|
+ pre.src-ksh:before { content: 'ksh'; }
|
|
|
125
|
+ pre.src-mksh:before { content: 'mksh'; }
|
|
|
126
|
+ pre.src-posh:before { content: 'posh'; }
|
|
|
127
|
+ /* Additional Emacs modes also supported by the LaTeX listings package */
|
|
|
128
|
+ pre.src-ada:before { content: 'Ada'; }
|
|
|
129
|
+ pre.src-asm:before { content: 'Assembler'; }
|
|
|
130
|
+ pre.src-caml:before { content: 'Caml'; }
|
|
|
131
|
+ pre.src-delphi:before { content: 'Delphi'; }
|
|
|
132
|
+ pre.src-html:before { content: 'HTML'; }
|
|
|
133
|
+ pre.src-idl:before { content: 'IDL'; }
|
|
|
134
|
+ pre.src-mercury:before { content: 'Mercury'; }
|
|
|
135
|
+ pre.src-metapost:before { content: 'MetaPost'; }
|
|
|
136
|
+ pre.src-modula-2:before { content: 'Modula-2'; }
|
|
|
137
|
+ pre.src-pascal:before { content: 'Pascal'; }
|
|
|
138
|
+ pre.src-ps:before { content: 'PostScript'; }
|
|
|
139
|
+ pre.src-prolog:before { content: 'Prolog'; }
|
|
|
140
|
+ pre.src-simula:before { content: 'Simula'; }
|
|
|
141
|
+ pre.src-tcl:before { content: 'tcl'; }
|
|
|
142
|
+ pre.src-tex:before { content: 'TeX'; }
|
|
|
143
|
+ pre.src-plain-tex:before { content: 'Plain TeX'; }
|
|
|
144
|
+ pre.src-verilog:before { content: 'Verilog'; }
|
|
|
145
|
+ pre.src-vhdl:before { content: 'VHDL'; }
|
|
|
146
|
+ pre.src-xml:before { content: 'XML'; }
|
|
|
147
|
+ pre.src-nxml:before { content: 'XML'; }
|
|
|
148
|
+ /* add a generic configuration mode; LaTeX export needs an additional
|
|
|
149
|
+ (add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
|
|
|
150
|
+ pre.src-conf:before { content: 'Configuration File'; }
|
59
|
|
151
|
|
60
|
table { border-collapse:collapse; }
|
152
|
table { border-collapse:collapse; }
|
61
|
caption.t-above { caption-side: top; }
|
153
|
caption.t-above { caption-side: top; }
|
62
|
caption.t-bottom { caption-side: bottom; }
|
154
|
caption.t-bottom { caption-side: bottom; }
|
63
|
td, th { vertical-align:top; }
|
155
|
td, th { vertical-align:top; }
|
64
|
- th.right { text-align: center; }
|
|
|
65
|
- th.left { text-align: center; }
|
|
|
66
|
- th.center { text-align: center; }
|
|
|
67
|
- td.right { text-align: right; }
|
|
|
68
|
- td.left { text-align: left; }
|
|
|
69
|
- td.center { text-align: center; }
|
|
|
|
|
156
|
+ th.org-right { text-align: center; }
|
|
|
157
|
+ th.org-left { text-align: center; }
|
|
|
158
|
+ th.org-center { text-align: center; }
|
|
|
159
|
+ td.org-right { text-align: right; }
|
|
|
160
|
+ td.org-left { text-align: left; }
|
|
|
161
|
+ td.org-center { text-align: center; }
|
70
|
dt { font-weight: bold; }
|
162
|
dt { font-weight: bold; }
|
71
|
- .footpara:nth-child(2) { display: inline; }
|
|
|
72
|
- .footpara { display: block; }
|
|
|
|
|
163
|
+ .footpara { display: inline; }
|
73
|
.footdef { margin-bottom: 1em; }
|
164
|
.footdef { margin-bottom: 1em; }
|
74
|
.figure { padding: 1em; }
|
165
|
.figure { padding: 1em; }
|
75
|
.figure p { text-align: center; }
|
166
|
.figure p { text-align: center; }
|
|
|
|
|
89
|
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
|
180
|
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
|
90
|
.org-info-js_search-highlight
|
181
|
.org-info-js_search-highlight
|
91
|
{ background-color: #ffff00; color: #000000; font-weight: bold; }
|
182
|
{ background-color: #ffff00; color: #000000; font-weight: bold; }
|
|
|
183
|
+ .org-svg { width: 90%; }
|
92
|
/*]]>*/-->
|
184
|
/*]]>*/-->
|
93
|
</style>
|
185
|
</style>
|
94
|
<link rel="stylesheet" type="text/css" href="freedombone.css" />
|
186
|
<link rel="stylesheet" type="text/css" href="freedombone.css" />
|
|
|
|
|
97
|
@licstart The following is the entire license notice for the
|
189
|
@licstart The following is the entire license notice for the
|
98
|
JavaScript code in this tag.
|
190
|
JavaScript code in this tag.
|
99
|
|
191
|
|
100
|
-Copyright (C) 2012-2013 Free Software Foundation, Inc.
|
|
|
|
|
192
|
+Copyright (C) 2012-2017 Free Software Foundation, Inc.
|
101
|
|
193
|
|
102
|
The JavaScript code in this tag is free software: you can
|
194
|
The JavaScript code in this tag is free software: you can
|
103
|
redistribute it and/or modify it under the terms of the GNU
|
195
|
redistribute it and/or modify it under the terms of the GNU
|
|
|
|
|
144
|
<a name="top" id="top"></a>
|
236
|
<a name="top" id="top"></a>
|
145
|
</div>
|
237
|
</div>
|
146
|
<div id="content">
|
238
|
<div id="content">
|
147
|
-<h1 class="title"></h1>
|
|
|
148
|
|
239
|
|
149
|
<div class="figure">
|
240
|
<div class="figure">
|
150
|
<p><img src="images/logo.png" alt="logo.png" width="80%" height="10%" align="center" />
|
241
|
<p><img src="images/logo.png" alt="logo.png" width="80%" height="10%" align="center" />
|
151
|
</p>
|
242
|
</p>
|
152
|
</div>
|
243
|
</div>
|
153
|
|
244
|
|
154
|
-<div id="outline-container-sec-1" class="outline-2">
|
|
|
155
|
-<h2 id="sec-1">Developers Guide</h2>
|
|
|
|
|
245
|
+<div id="outline-container-orgd0bf853" class="outline-2">
|
|
|
246
|
+<h2 id="orgd0bf853">Developers Guide</h2>
|
156
|
</div>
|
247
|
</div>
|
157
|
|
248
|
|
158
|
-<div id="outline-container-sec-2" class="outline-2">
|
|
|
159
|
-<h2 id="sec-2">Introduction</h2>
|
|
|
160
|
-<div class="outline-text-2" id="text-2">
|
|
|
|
|
249
|
+<div id="outline-container-orgaedd476" class="outline-2">
|
|
|
250
|
+<h2 id="orgaedd476">Introduction</h2>
|
|
|
251
|
+<div class="outline-text-2" id="text-orgaedd476">
|
161
|
<p>
|
252
|
<p>
|
162
|
Freedombone consists of a set of bash scripts. There are a lot of them, but they're not very complicated. If you're familiar with the GNU/Linux commandline and can hack a bash script then you can probably add a new app or fix a bug in the system. There are no trendy development frameworks to learn or to get in your way. You might also want to consult the <a href="./codeofconduct.html">Code of Conduct</a>, and there is a Matrix room at <b>#fbone:matrix.freedombone.net</b>
|
253
|
Freedombone consists of a set of bash scripts. There are a lot of them, but they're not very complicated. If you're familiar with the GNU/Linux commandline and can hack a bash script then you can probably add a new app or fix a bug in the system. There are no trendy development frameworks to learn or to get in your way. You might also want to consult the <a href="./codeofconduct.html">Code of Conduct</a>, and there is a Matrix room at <b>#fbone:matrix.freedombone.net</b>
|
163
|
</p>
|
254
|
</p>
|
164
|
</div>
|
255
|
</div>
|
165
|
</div>
|
256
|
</div>
|
166
|
-<div id="outline-container-sec-3" class="outline-2">
|
|
|
167
|
-<h2 id="sec-3">Adding extra apps</h2>
|
|
|
168
|
-<div class="outline-text-2" id="text-3">
|
|
|
|
|
257
|
+<div id="outline-container-org3e1ecd6" class="outline-2">
|
|
|
258
|
+<h2 id="org3e1ecd6">Adding extra apps</h2>
|
|
|
259
|
+<div class="outline-text-2" id="text-org3e1ecd6">
|
169
|
<p>
|
260
|
<p>
|
170
|
Suppose you have some internet application which you want to add to the system. To do this you need to create an app script which tells the system how to install/remove and also backup/restore. The script should be designed to work with the current stable version of Debian.
|
261
|
Suppose you have some internet application which you want to add to the system. To do this you need to create an app script which tells the system how to install/remove and also backup/restore. The script should be designed to work with the current stable version of Debian.
|
171
|
</p>
|
262
|
</p>
|
|
|
|
|
175
|
</p>
|
266
|
</p>
|
176
|
|
267
|
|
177
|
<p>
|
268
|
<p>
|
178
|
-To create a script for a generic PHP plus MySql/MariaDB web app:
|
|
|
|
|
269
|
+To create a script for a generic PHP plus MySql/MariaDB web app with a couple of extra packages:
|
179
|
</p>
|
270
|
</p>
|
180
|
|
271
|
|
181
|
<div class="org-src-container">
|
272
|
<div class="org-src-container">
|
182
|
-
|
|
|
183
|
-<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] \
|
|
|
184
|
- -c [commit] --php yes -d mariadb > \
|
|
|
|
|
273
|
+<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] <span class="org-sh-escaped-newline">\</span>
|
|
|
274
|
+ --packages <span class="org-string">"cowsay libssl-dev"</span> <span class="org-sh-escaped-newline">\</span>
|
|
|
275
|
+ -c [commit] --php yes -d mariadb > <span class="org-sh-escaped-newline">\</span>
|
185
|
src/freedombone-app-myappname
|
276
|
src/freedombone-app-myappname
|
186
|
</pre>
|
277
|
</pre>
|
187
|
</div>
|
278
|
</div>
|
|
|
|
|
191
|
</p>
|
282
|
</p>
|
192
|
|
283
|
|
193
|
<div class="org-src-container">
|
284
|
<div class="org-src-container">
|
194
|
-
|
|
|
195
|
-<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] \
|
|
|
196
|
- -c [commit] --node yes -d mariadb \
|
|
|
197
|
- --dir /etc/myappname --daemon yes > \
|
|
|
|
|
285
|
+<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] <span class="org-sh-escaped-newline">\</span>
|
|
|
286
|
+ -c [commit] --node yes -d mariadb <span class="org-sh-escaped-newline">\</span>
|
|
|
287
|
+ --dir /etc/myappname --daemon yes > <span class="org-sh-escaped-newline">\</span>
|
198
|
src/freedombone-app-myappname
|
288
|
src/freedombone-app-myappname
|
199
|
</pre>
|
289
|
</pre>
|
200
|
</div>
|
290
|
</div>
|
|
|
|
|
204
|
</p>
|
294
|
</p>
|
205
|
|
295
|
|
206
|
<div class="org-src-container">
|
296
|
<div class="org-src-container">
|
207
|
-
|
|
|
208
|
-<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] \
|
|
|
209
|
- -c [commit] -d postgresql \
|
|
|
210
|
- --dir /etc/myappname --daemon yes > \
|
|
|
|
|
297
|
+<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] <span class="org-sh-escaped-newline">\</span>
|
|
|
298
|
+ -c [commit] -d postgresql <span class="org-sh-escaped-newline">\</span>
|
|
|
299
|
+ --dir /etc/myappname --daemon yes > <span class="org-sh-escaped-newline">\</span>
|
211
|
src/freedombone-app-myappname
|
300
|
src/freedombone-app-myappname
|
212
|
</pre>
|
301
|
</pre>
|
213
|
</div>
|
302
|
</div>
|
|
|
|
|
217
|
</p>
|
306
|
</p>
|
218
|
|
307
|
|
219
|
<div class="org-src-container">
|
308
|
<div class="org-src-container">
|
220
|
-
|
|
|
221
|
-<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] \
|
|
|
222
|
- -c [commit] --dir /etc/myappname \
|
|
|
223
|
- --daemon yes --portinternal 1234 > \
|
|
|
|
|
309
|
+<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] <span class="org-sh-escaped-newline">\</span>
|
|
|
310
|
+ -c [commit] --dir /etc/myappname <span class="org-sh-escaped-newline">\</span>
|
|
|
311
|
+ --daemon yes --portinternal 1234 > <span class="org-sh-escaped-newline">\</span>
|
224
|
src/freedombone-app-myappname
|
312
|
src/freedombone-app-myappname
|
225
|
</pre>
|
313
|
</pre>
|
226
|
</div>
|
314
|
</div>
|
|
|
|
|
230
|
</p>
|
318
|
</p>
|
231
|
|
319
|
|
232
|
<div class="org-src-container">
|
320
|
<div class="org-src-container">
|
233
|
-
|
|
|
234
|
-<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] \
|
|
|
235
|
- -c [commit] --dir /etc/myappname \
|
|
|
236
|
- --daemon yes --port 5000 > \
|
|
|
|
|
321
|
+<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] <span class="org-sh-escaped-newline">\</span>
|
|
|
322
|
+ -c [commit] --dir /etc/myappname <span class="org-sh-escaped-newline">\</span>
|
|
|
323
|
+ --daemon yes --port 5000 > <span class="org-sh-escaped-newline">\</span>
|
237
|
src/freedombone-app-myappname
|
324
|
src/freedombone-app-myappname
|
238
|
</pre>
|
325
|
</pre>
|
239
|
</div>
|
326
|
</div>
|
|
|
|
|
243
|
</p>
|
330
|
</p>
|
244
|
|
331
|
|
245
|
<div class="org-src-container">
|
332
|
<div class="org-src-container">
|
246
|
-
|
|
|
247
|
-<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] \
|
|
|
248
|
- -c [commit] --php yes -d mariadb \
|
|
|
249
|
- --onion yes > \
|
|
|
|
|
333
|
+<pre class="src src-bash">freedombone-template --app [name] -e [email] -r [repo url] <span class="org-sh-escaped-newline">\</span>
|
|
|
334
|
+ -c [commit] --php yes -d mariadb <span class="org-sh-escaped-newline">\</span>
|
|
|
335
|
+ --onion yes > <span class="org-sh-escaped-newline">\</span>
|
250
|
src/freedombone-app-myappname
|
336
|
src/freedombone-app-myappname
|
251
|
</pre>
|
337
|
</pre>
|
252
|
</div>
|
338
|
</div>
|
|
|
|
|
256
|
</p>
|
342
|
</p>
|
257
|
|
343
|
|
258
|
<div class="org-src-container">
|
344
|
<div class="org-src-container">
|
259
|
-
|
|
|
260
|
<pre class="src src-bash">man freedombone-template
|
345
|
<pre class="src src-bash">man freedombone-template
|
261
|
</pre>
|
346
|
</pre>
|
262
|
</div>
|
347
|
</div>
|
|
|
|
|
270
|
</p>
|
355
|
</p>
|
271
|
|
356
|
|
272
|
<div class="org-src-container">
|
357
|
<div class="org-src-container">
|
273
|
-
|
|
|
274
|
<pre class="src src-bash">make install
|
358
|
<pre class="src src-bash">make install
|
275
|
</pre>
|
359
|
</pre>
|
276
|
</div>
|
360
|
</div>
|
|
|
|
|
285
|
</div>
|
369
|
</div>
|
286
|
</div>
|
370
|
</div>
|
287
|
|
371
|
|
288
|
-<div id="outline-container-sec-4" class="outline-2">
|
|
|
289
|
-<h2 id="sec-4">Customising mesh images</h2>
|
|
|
290
|
-<div class="outline-text-2" id="text-4">
|
|
|
|
|
372
|
+<div id="outline-container-org2b37622" class="outline-2">
|
|
|
373
|
+<h2 id="org2b37622">Customising mesh images</h2>
|
|
|
374
|
+<div class="outline-text-2" id="text-org2b37622">
|
291
|
<p>
|
375
|
<p>
|
292
|
If you want to make your own specially branded version of the mesh images, such as for a particular event, then to change the default desktop backgrounds edit the images within <b>img/backgrounds</b> and to change the available avatars and desktop icons edit the images within <b>img/avatars</b>. Re-create disk images using the instructions shown previously.
|
376
|
If you want to make your own specially branded version of the mesh images, such as for a particular event, then to change the default desktop backgrounds edit the images within <b>img/backgrounds</b> and to change the available avatars and desktop icons edit the images within <b>img/avatars</b>. Re-create disk images using the instructions shown previously.
|
293
|
</p>
|
377
|
</p>
|