]> pere.pagekite.me Git - homepage.git/blob - blog/tags/freedombox/freedombox.rss
b563734f5b138994985e13a61434634b738eb98b
[homepage.git] / blog / tags / freedombox / freedombox.rss
1 <?xml version="1.0" encoding="utf-8"?>
2 <rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/'>
3 <channel>
4 <title>Petter Reinholdtsen - Entries tagged freedombox</title>
5 <description>Entries tagged freedombox</description>
6 <link>http://www.hungry.com/~pere/blog/</link>
7
8
9 <item>
10 <title>A Debian package for SMTP via Tor (aka SMTorP) using exim4</title>
11 <link>http://www.hungry.com/~pere/blog/A_Debian_package_for_SMTP_via_Tor__aka_SMTorP__using_exim4.html</link>
12 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/A_Debian_package_for_SMTP_via_Tor__aka_SMTorP__using_exim4.html</guid>
13 <pubDate>Mon, 10 Nov 2014 13:40:00 +0100</pubDate>
14 <description>&lt;p&gt;The right to communicate with your friends and family in private,
15 without anyone snooping, is a right every citicen have in a liberal
16 democracy. But this right is under serious attack these days.&lt;/p&gt;
17
18 &lt;p&gt;A while back it occurred to me that one way to make the dragnet
19 surveillance conducted by NSA, GCHQ, FRA and others (and confirmed by
20 the whisleblower Snowden) more expensive for Internet email,
21 is to deliver all email using SMTP via Tor. Such SMTP option would be
22 a nice addition to the FreedomBox project if we could send email
23 between FreedomBox machines without leaking metadata about the emails
24 to the people peeking on the wire. I
25 &lt;a href=&quot;http://lists.alioth.debian.org/pipermail/freedombox-discuss/2014-October/006493.html&quot;&gt;proposed
26 this on the FreedomBox project mailing list in October&lt;/a&gt; and got a
27 lot of useful feedback and suggestions. It also became obvious to me
28 that this was not a novel idea, as the same idea was tested and
29 documented by Johannes Berg as early as 2006, and both
30 &lt;a href=&quot;https://github.com/pagekite/Mailpile/wiki/SMTorP&quot;&gt;the
31 Mailpile&lt;/a&gt; and &lt;a href=&quot;http://dee.su/cables&quot;&gt;the Cables&lt;/a&gt; systems
32 propose a similar method / protocol to pass emails between users.&lt;/p&gt;
33
34 &lt;p&gt;To implement such system one need to set up a Tor hidden service
35 providing the SMTP protocol on port 25, and use email addresses
36 looking like username@hidden-service-name.onion. With such addresses
37 the connections to port 25 on hidden-service-name.onion using Tor will
38 go to the correct SMTP server. To do this, one need to configure the
39 Tor daemon to provide the hidden service and the mail server to accept
40 emails for this .onion domain. To learn more about Exim configuration
41 in Debian and test the design provided by Johannes Berg in his FAQ, I
42 set out yesterday to create a Debian package for making it trivial to
43 set up such SMTP over Tor service based on Debian. Getting it to work
44 were fairly easy, and
45 &lt;a href=&quot;https://github.com/petterreinholdtsen/exim4-smtorp&quot;&gt;the
46 source code for the Debian package&lt;/a&gt; is available from github. I
47 plan to move it into Debian if further testing prove this to be a
48 useful approach.&lt;/p&gt;
49
50 &lt;p&gt;If you want to test this, set up a blank Debian machine without any
51 mail system installed (or run &lt;tt&gt;apt-get purge exim4-config&lt;/tt&gt; to
52 get rid of exim4). Install tor, clone the git repository mentioned
53 above, build the deb and install it on the machine. Next, run
54 &lt;tt&gt;/usr/lib/exim4-smtorp/setup-exim-hidden-service&lt;/tt&gt; and follow
55 the instructions to get the service up and running. Restart tor and
56 exim when it is done, and test mail delivery using swaks like
57 this:&lt;/p&gt;
58
59 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
60 torsocks swaks --server dutlqrrmjhtfa3vp.onion \
61 --to fbx@dutlqrrmjhtfa3vp.onion
62 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
63
64 &lt;p&gt;This will test the SMTP delivery using tor. Replace the email
65 address with your own address to test your server. :)&lt;/p&gt;
66
67 &lt;p&gt;The setup procedure is still to complex, and I hope it can be made
68 easier and more automatic. Especially the tor setup need more work.
69 Also, the package include a tor-smtp tool written in C, but its task
70 should probably be rewritten in some script language to make the deb
71 architecture independent. It would probably also make the code easier
72 to review. The tor-smtp tool currently need to listen on a socket for
73 exim to talk to it and is started using xinetd. It would be better if
74 no daemon and no socket is needed. I suspect it is possible to get
75 exim to run a command line tool for delivery instead of talking to a
76 socket, and hope to figure out how in a future version of this
77 system.&lt;/p&gt;
78
79 &lt;p&gt;Until I wipe my test machine, I can be reached using the
80 &lt;tt&gt;fbx@dutlqrrmjhtfa3vp.onion&lt;/tt&gt; mail address, deliverable over
81 SMTorP. :)&lt;/p&gt;
82 </description>
83 </item>
84
85 <item>
86 <title>FreedomBox milestone - all packages now in Debian Sid</title>
87 <link>http://www.hungry.com/~pere/blog/FreedomBox_milestone___all_packages_now_in_Debian_Sid.html</link>
88 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/FreedomBox_milestone___all_packages_now_in_Debian_Sid.html</guid>
89 <pubDate>Tue, 15 Apr 2014 22:10:00 +0200</pubDate>
90 <description>&lt;p&gt;The &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;Freedombox
91 project&lt;/a&gt; is working on providing the software and hardware to make
92 it easy for non-technical people to host their data and communication
93 at home, and being able to communicate with their friends and family
94 encrypted and away from prying eyes. It is still going strong, and
95 today a major mile stone was reached.&lt;/p&gt;
96
97 &lt;p&gt;Today, the last of the packages currently used by the project to
98 created the system images were accepted into Debian Unstable. It was
99 the freedombox-setup package, which is used to configure the images
100 during build and on the first boot. Now all one need to get going is
101 the build code from the freedom-maker git repository and packages from
102 Debian. And once the freedombox-setup package enter testing, we can
103 build everything directly from Debian. :)&lt;/p&gt;
104
105 &lt;p&gt;Some key packages used by Freedombox are
106 &lt;a href=&quot;http://packages.qa.debian.org/freedombox-setup&quot;&gt;freedombox-setup&lt;/a&gt;,
107 &lt;a href=&quot;http://packages.qa.debian.org/plinth&quot;&gt;plinth&lt;/a&gt;,
108 &lt;a href=&quot;http://packages.qa.debian.org/pagekite&quot;&gt;pagekite&lt;/a&gt;,
109 &lt;a href=&quot;http://packages.qa.debian.org/tor&quot;&gt;tor&lt;/a&gt;,
110 &lt;a href=&quot;http://packages.qa.debian.org/privoxy&quot;&gt;privoxy&lt;/a&gt;,
111 &lt;a href=&quot;http://packages.qa.debian.org/owncloud&quot;&gt;owncloud&lt;/a&gt; and
112 &lt;a href=&quot;http://packages.qa.debian.org/dnsmasq&quot;&gt;dnsmasq&lt;/a&gt;. There
113 are plans to integrate more packages into the setup. User
114 documentation is maintained on the Debian wiki. Please
115 &lt;a href=&quot;https://wiki.debian.org/FreedomBox/Manual/Jessie&quot;&gt;check out
116 the manual&lt;/a&gt; and help us improve it.&lt;/p&gt;
117
118 &lt;p&gt;To test for yourself and create boot images with the FreedomBox
119 setup, run this on a Debian machine using a user with sudo rights to
120 become root:&lt;/p&gt;
121
122 &lt;p&gt;&lt;pre&gt;
123 sudo apt-get install git vmdebootstrap mercurial python-docutils \
124 mktorrent extlinux virtualbox qemu-user-static binfmt-support \
125 u-boot-tools
126 git clone http://anonscm.debian.org/git/freedombox/freedom-maker.git \
127 freedom-maker
128 make -C freedom-maker dreamplug-image raspberry-image virtualbox-image
129 &lt;/pre&gt;&lt;/p&gt;
130
131 &lt;p&gt;Root access is needed to run debootstrap and mount loopback
132 devices. See the README in the freedom-maker git repo for more
133 details on the build. If you do not want all three images, trim the
134 make line. Note that the virtualbox-image target is not really
135 virtualbox specific. It create a x86 image usable in kvm, qemu,
136 vmware and any other x86 virtual machine environment. You might need
137 the version of vmdebootstrap in Jessie to get the build working, as it
138 include fixes for a race condition with kpartx.&lt;/p&gt;
139
140 &lt;p&gt;If you instead want to install using a Debian CD and the preseed
141 method, boot a Debian Wheezy ISO and use this boot argument to load
142 the preseed values:&lt;/p&gt;
143
144 &lt;p&gt;&lt;pre&gt;
145 url=&lt;a href=&quot;http://www.reinholdtsen.name/freedombox/preseed-jessie.dat&quot;&gt;http://www.reinholdtsen.name/freedombox/preseed-jessie.dat&lt;/a&gt;
146 &lt;/pre&gt;&lt;/p&gt;
147
148 &lt;p&gt;I have not tested it myself the last few weeks, so I do not know if
149 it still work.&lt;/p&gt;
150
151 &lt;p&gt;If you wonder how to help, one task you could look at is using
152 systemd as the boot system. It will become the default for Linux in
153 Jessie, so we need to make sure it is usable on the Freedombox. I did
154 a simple test a few weeks ago, and noticed dnsmasq failed to start
155 during boot when using systemd. I suspect there are other problems
156 too. :) To detect problems, there is a test suite included, which can
157 be run from the plinth web interface.&lt;/p&gt;
158
159 &lt;p&gt;Give it a go and let us know how it goes on the mailing list, and help
160 us get the new release published. :) Please join us on
161 &lt;a href=&quot;irc://irc.debian.org:6667/%23freedombox&quot;&gt;IRC (#freedombox on
162 irc.debian.org)&lt;/a&gt; and
163 &lt;a href=&quot;http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss&quot;&gt;the
164 mailing list&lt;/a&gt; if you want to help make this vision come true.&lt;/p&gt;
165 </description>
166 </item>
167
168 <item>
169 <title>Dokumentaren om Datalagringsdirektivet sendes endelig på NRK</title>
170 <link>http://www.hungry.com/~pere/blog/Dokumentaren_om_Datalagringsdirektivet_sendes_endelig_p__NRK.html</link>
171 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/Dokumentaren_om_Datalagringsdirektivet_sendes_endelig_p__NRK.html</guid>
172 <pubDate>Wed, 26 Mar 2014 09:50:00 +0100</pubDate>
173 <description>&lt;p&gt;&lt;a href=&quot;http://www.nuug.no/&quot;&gt;Foreningen NUUG&lt;/a&gt; melder i natt at
174 NRK nå har bestemt seg for
175 &lt;a href=&quot;http://www.nuug.no/news/NRK_viser_filmen_om_Datalagringsdirektivet_f_rste_gang_2014_03_31.shtml&quot;&gt;når
176 den norske dokumentarfilmen om datalagringsdirektivet skal
177 sendes&lt;/a&gt; (se &lt;a href=&quot;http://www.imdb.com/title/tt2832844/&quot;&gt;IMDB&lt;/a&gt;
178 for detaljer om filmen) . Første visning blir på NRK2 mandag
179 2014-03-31 kl. 19:50, og deretter visninger onsdag 2014-04-02
180 kl. 12:30, fredag 2014-04-04 kl. 19:40 og søndag 2014-04-06 kl. 15:10.
181 Jeg har sett dokumentaren, og jeg anbefaler enhver å se den selv. Som
182 oppvarming mens vi venter anbefaler jeg Bjørn Stærks kronikk i
183 Aftenposten fra i går,
184 &lt;a href=&quot;http://www.aftenposten.no/meninger/kronikker/Autoritar-gjokunge-7514915.html&quot;&gt;Autoritær
185 gjøkunge&lt;/a&gt;, der han gir en grei skisse av hvor ille det står til med
186 retten til privatliv og beskyttelsen av demokrati i Norge og resten
187 verden, og helt riktig slår fast at det er vi i databransjen som
188 sitter med nøkkelen til å gjøre noe med dette. Jeg har involvert meg
189 i prosjektene &lt;a href=&quot;http://www.dugnadsnett.no/&quot;&gt;dugnadsnett.no&lt;/a&gt;
190 og &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;FreedomBox&lt;/a&gt; for å
191 forsøke å gjøre litt selv for å bedre situasjonen, men det er mye
192 hardt arbeid fra mange flere enn meg som gjenstår før vi kan sies å ha
193 gjenopprettet balansen.&lt;/p&gt;
194
195 &lt;p&gt;Jeg regner med at nettutgaven dukker opp på
196 &lt;a href=&quot;http://tv.nrk.no/program/koid75005313/tema-dine-digitale-spor-datalagringsdirektivet&quot;&gt;NRKs
197 side om filmen om datalagringsdirektivet&lt;/a&gt; om fem dager. Hold et
198 øye med siden, og tips venner og slekt om at de også bør se den.&lt;/p&gt;
199 </description>
200 </item>
201
202 <item>
203 <title>Freedombox on Dreamplug, Raspberry Pi and virtual x86 machine</title>
204 <link>http://www.hungry.com/~pere/blog/Freedombox_on_Dreamplug__Raspberry_Pi_and_virtual_x86_machine.html</link>
205 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/Freedombox_on_Dreamplug__Raspberry_Pi_and_virtual_x86_machine.html</guid>
206 <pubDate>Fri, 14 Mar 2014 11:00:00 +0100</pubDate>
207 <description>&lt;p&gt;The &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;Freedombox
208 project&lt;/a&gt; is working on providing the software and hardware for
209 making it easy for non-technical people to host their data and
210 communication at home, and being able to communicate with their
211 friends and family encrypted and away from prying eyes. It has been
212 going on for a while, and is slowly progressing towards a new test
213 release (0.2).&lt;/p&gt;
214
215 &lt;p&gt;And what day could be better than the Pi day to announce that the
216 new version will provide &quot;hard drive&quot; / SD card / USB stick images for
217 Dreamplug, Raspberry Pi and VirtualBox (or any other virtualization
218 system), and can also be installed using a Debian installer preseed
219 file. The Debian based Freedombox is now based on Debian Jessie,
220 where most of the needed packages used are already present. Only one,
221 the freedombox-setup package, is missing. To try to build your own
222 boot image to test the current status, fetch the freedom-maker scripts
223 and build using
224 &lt;a href=&quot;http://packages.qa.debian.org/vmdebootstrap&quot;&gt;vmdebootstrap&lt;/a&gt;
225 with a user with sudo access to become root:
226
227 &lt;pre&gt;
228 git clone http://anonscm.debian.org/git/freedombox/freedom-maker.git \
229 freedom-maker
230 sudo apt-get install git vmdebootstrap mercurial python-docutils \
231 mktorrent extlinux virtualbox qemu-user-static binfmt-support \
232 u-boot-tools
233 make -C freedom-maker dreamplug-image raspberry-image virtualbox-image
234 &lt;/pre&gt;
235
236 &lt;p&gt;Root access is needed to run debootstrap and mount loopback
237 devices. See the README for more details on the build. If you do not
238 want all three images, trim the make line. But note that thanks to &lt;a
239 href=&quot;https://bugs.debian.org/741407&quot;&gt;a race condition in
240 vmdebootstrap&lt;/a&gt;, the build might fail without the patch to the
241 kpartx call.&lt;/p&gt;
242
243 &lt;p&gt;If you instead want to install using a Debian CD and the preseed
244 method, boot a Debian Wheezy ISO and use this boot argument to load
245 the preseed values:&lt;/p&gt;
246
247 &lt;pre&gt;
248 url=&lt;a href=&quot;http://www.reinholdtsen.name/freedombox/preseed-jessie.dat&quot;&gt;http://www.reinholdtsen.name/freedombox/preseed-jessie.dat&lt;/a&gt;
249 &lt;/pre&gt;
250
251 &lt;p&gt;But note that due to &lt;a href=&quot;https://bugs.debian.org/740673&quot;&gt;a
252 recently introduced bug in apt in Jessie&lt;/a&gt;, the installer will
253 currently hang while setting up APT sources. Killing the
254 &#39;&lt;tt&gt;apt-cdrom ident&lt;/tt&gt;&#39; process when it hang a few times during the
255 installation will get the installation going. This affect all
256 installations in Jessie, and I expect it will be fixed soon.&lt;/p&gt;
257
258 &lt;p&gt;Give it a go and let us know how it goes on the mailing list, and help
259 us get the new release published. :) Please join us on
260 &lt;a href=&quot;irc://irc.debian.org:6667/%23freedombox&quot;&gt;IRC (#freedombox on
261 irc.debian.org)&lt;/a&gt; and
262 &lt;a href=&quot;http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss&quot;&gt;the
263 mailing list&lt;/a&gt; if you want to help make this vision come true.&lt;/p&gt;
264 </description>
265 </item>
266
267 <item>
268 <title>Teaching vmdebootstrap to create Raspberry Pi SD card images</title>
269 <link>http://www.hungry.com/~pere/blog/Teaching_vmdebootstrap_to_create_Raspberry_Pi_SD_card_images.html</link>
270 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/Teaching_vmdebootstrap_to_create_Raspberry_Pi_SD_card_images.html</guid>
271 <pubDate>Sun, 27 Oct 2013 17:00:00 +0100</pubDate>
272 <description>&lt;p&gt;The
273 &lt;a href=&quot;http://packages.qa.debian.org/v/vmdebootstrap.html&quot;&gt;vmdebootstrap&lt;/a&gt;
274 program is a a very nice system to create virtual machine images. It
275 create a image file, add a partition table, mount it and run
276 debootstrap in the mounted directory to create a Debian system on a
277 stick. Yesterday, I decided to try to teach it how to make images for
278 &lt;a href=&quot;https://wiki.debian.org/RaspberryPi&quot;&gt;Raspberry Pi&lt;/a&gt;, as part
279 of a plan to simplify the build system for
280 &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;the FreedomBox
281 project&lt;/a&gt;. The FreedomBox project already uses vmdebootstrap for
282 the virtualbox images, but its current build system made multistrap
283 based system for Dreamplug images, and it is lacking support for
284 Raspberry Pi.&lt;/p&gt;
285
286 &lt;p&gt;Armed with the knowledge on how to build &quot;foreign&quot; (aka non-native
287 architecture) chroots for Raspberry Pi, I dived into the vmdebootstrap
288 code and adjusted it to be able to build armel images on my amd64
289 Debian laptop. I ended up giving vmdebootstrap five new options,
290 allowing me to replicate the image creation process I use to make
291 &lt;a href=&quot;https://people.skolelinux.org/pere/blog/A_Raspberry_Pi_based_batman_adv_Mesh_network_node.html&quot;&gt;Debian
292 Jessie based mesh node images for the Raspberry Pi&lt;/a&gt;. First, the
293 &lt;tt&gt;--foreign /path/to/binfm_handler&lt;/tt&gt; option tell vmdebootstrap to
294 call debootstrap with --foreign and to copy the handler into the
295 generated chroot before running the second stage. This allow
296 vmdebootstrap to create armel images on an amd64 host. Next I added
297 two new options &lt;tt&gt;--bootsize size&lt;/tt&gt; and &lt;tt&gt;--boottype
298 fstype&lt;/tt&gt; to teach it to create a separate /boot/ partition with the
299 given file system type, allowing me to create an image with a vfat
300 partition for the /boot/ stuff. I also added a &lt;tt&gt;--variant
301 variant&lt;/tt&gt; option to allow me to create smaller images without the
302 Debian base system packages installed. Finally, I added an option
303 &lt;tt&gt;--no-extlinux&lt;/tt&gt; to tell vmdebootstrap to not install extlinux
304 as a boot loader. It is not needed on the Raspberry Pi and probably
305 most other non-x86 architectures. The changes were accepted by the
306 upstream author of vmdebootstrap yesterday and today, and is now
307 available from
308 &lt;a href=&quot;http://git.liw.fi/cgi-bin/cgit/cgit.cgi/vmdebootstrap/&quot;&gt;the
309 upstream project page&lt;/a&gt;.&lt;/p&gt;
310
311 &lt;p&gt;To use it to build a Raspberry Pi image using Debian Jessie, first
312 create a small script (the customize script) to add the non-free
313 binary blob needed to boot the Raspberry Pi and the APT source
314 list:&lt;/p&gt;
315
316 &lt;p&gt;&lt;pre&gt;
317 #!/bin/sh
318 set -e # Exit on first error
319 rootdir=&quot;$1&quot;
320 cd &quot;$rootdir&quot;
321 cat &amp;lt;&amp;lt;EOF &gt; etc/apt/sources.list
322 deb http://http.debian.net/debian/ jessie main contrib non-free
323 EOF
324 # Install non-free binary blob needed to boot Raspberry Pi. This
325 # install a kernel somewhere too.
326 wget https://raw.github.com/Hexxeh/rpi-update/master/rpi-update \
327 -O $rootdir/usr/bin/rpi-update
328 chmod a+x $rootdir/usr/bin/rpi-update
329 mkdir -p $rootdir/lib/modules
330 touch $rootdir/boot/start.elf
331 chroot $rootdir rpi-update
332 &lt;/pre&gt;&lt;/p&gt;
333
334 &lt;p&gt;Next, fetch the latest vmdebootstrap script and call it like this
335 to build the image:&lt;/p&gt;
336
337 &lt;pre&gt;
338 sudo ./vmdebootstrap \
339 --variant minbase \
340 --arch armel \
341 --distribution jessie \
342 --mirror http://http.debian.net/debian \
343 --image test.img \
344 --size 600M \
345 --bootsize 64M \
346 --boottype vfat \
347 --log-level debug \
348 --verbose \
349 --no-kernel \
350 --no-extlinux \
351 --root-password raspberry \
352 --hostname raspberrypi \
353 --foreign /usr/bin/qemu-arm-static \
354 --customize `pwd`/customize \
355 --package netbase \
356 --package git-core \
357 --package binutils \
358 --package ca-certificates \
359 --package wget \
360 --package kmod
361 &lt;/pre&gt;&lt;/p&gt;
362
363 &lt;p&gt;The list of packages being installed are the ones needed by
364 rpi-update to make the image bootable on the Raspberry Pi, with the
365 exception of netbase, which is needed by debootstrap to find
366 /etc/hosts with the minbase variant. I really wish there was a way to
367 set up an Raspberry Pi using only packages in the Debian archive, but
368 that is not possible as far as I know, because it boots from the GPU
369 using a non-free binary blob.&lt;/p&gt;
370
371 &lt;p&gt;The build host need debootstrap, kpartx and qemu-user-static and
372 probably a few others installed. I have not checked the complete
373 build dependency list.&lt;/p&gt;
374
375 &lt;p&gt;The resulting image will not use the hardware floating point unit
376 on the Raspberry PI, because the armel architecture in Debian is not
377 optimized for that use. So the images created will be a bit slower
378 than &lt;a href=&quot;http://www.raspbian.org/&quot;&gt;Raspbian&lt;/a&gt; based images.&lt;/p&gt;
379 </description>
380 </item>
381
382 <item>
383 <title>A Raspberry Pi based batman-adv Mesh network node</title>
384 <link>http://www.hungry.com/~pere/blog/A_Raspberry_Pi_based_batman_adv_Mesh_network_node.html</link>
385 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/A_Raspberry_Pi_based_batman_adv_Mesh_network_node.html</guid>
386 <pubDate>Mon, 21 Oct 2013 11:40:00 +0200</pubDate>
387 <description>&lt;p&gt;The last few days I have been experimenting with
388 &lt;a href=&quot;http://www.open-mesh.org/projects/batman-adv/wiki&quot;&gt;the
389 batman-adv mesh technology&lt;/a&gt;. I want to gain some experience to see
390 if it will fit &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;the
391 Freedombox project&lt;/a&gt;, and together with my neighbors try to build a
392 mesh network around the park where I live. Batman-adv is a layer 2
393 mesh system (&quot;ethernet&quot; in other words), where the mesh network appear
394 as if all the mesh clients are connected to the same switch.&lt;/p&gt;
395
396 &lt;p&gt;My hardware of choice was the Linksys WRT54GL routers I had lying
397 around, but I&#39;ve been unable to get them working with batman-adv. So
398 instead, I started playing with a
399 &lt;a href=&quot;http://www.raspberrypi.org/&quot;&gt;Raspberry Pi&lt;/a&gt;, and tried to
400 get it working as a mesh node. My idea is to use it to create a mesh
401 node which function as a switch port, where everything connected to
402 the Raspberry Pi ethernet plug is connected (bridged) to the mesh
403 network. This allow me to hook a wifi base station like the Linksys
404 WRT54GL to the mesh by plugging it into a Raspberry Pi, and allow
405 non-mesh clients to hook up to the mesh. This in turn is useful for
406 Android phones using &lt;a href=&quot;http://servalproject.org/&quot;&gt;the Serval
407 Project&lt;/a&gt; voip client, allowing every one around the playground to
408 phone and message each other for free. The reason is that Android
409 phones do not see ad-hoc wifi networks (they are filtered away from
410 the GUI view), and can not join the mesh without being rooted. But if
411 they are connected using a normal wifi base station, they can talk to
412 every client on the local network.&lt;/p&gt;
413
414 &lt;p&gt;To get this working, I&#39;ve created a debian package
415 &lt;a href=&quot;https://github.com/petterreinholdtsen/meshfx-node&quot;&gt;meshfx-node&lt;/a&gt;
416 and a script
417 &lt;a href=&quot;https://github.com/petterreinholdtsen/meshfx-node/blob/master/build-rpi-mesh-node&quot;&gt;build-rpi-mesh-node&lt;/a&gt;
418 to create the Raspberry Pi boot image. I&#39;m using Debian Jessie (and
419 not Raspbian), to get more control over the packages available.
420 Unfortunately a huge binary blob need to be inserted into the boot
421 image to get it booting, but I&#39;ll ignore that for now. Also, as
422 Debian lack support for the CPU features available in the Raspberry
423 Pi, the system do not use the hardware floating point unit. I hope
424 the routing performance isn&#39;t affected by the lack of hardware FPU
425 support.&lt;/p&gt;
426
427 &lt;p&gt;To create an image, run the following with a sudo enabled user
428 after inserting the target SD card into the build machine:&lt;/p&gt;
429
430 &lt;p&gt;&lt;pre&gt;
431 % wget -O build-rpi-mesh-node \
432 https://raw.github.com/petterreinholdtsen/meshfx-node/master/build-rpi-mesh-node
433 % sudo bash -x ./build-rpi-mesh-node &gt; build.log 2&gt;&amp;1
434 % dd if=/root/rpi/rpi_basic_jessie_$(date +%Y%m%d).img of=/dev/mmcblk0 bs=1M
435 %
436 &lt;/pre&gt;&lt;/p&gt;
437
438 &lt;p&gt;Booting with the resulting SD card on a Raspberry PI with a USB
439 wifi card inserted should give you a mesh node. At least it does for
440 me with a the wifi card I am using. The default mesh settings are the
441 ones used by the Oslo mesh project at Hackeriet, as I mentioned in
442 &lt;a href=&quot;https://people.skolelinux.org/pere/blog/Oslo_community_mesh_network___with_NUUG_and_Hackeriet_at_Hausmania.html&quot;&gt;an
443 earlier blog post about this mesh testing&lt;/a&gt;.&lt;/p&gt;
444
445 &lt;p&gt;The mesh node was not horribly expensive either. I bought
446 everything over the counter in shops nearby. If I had ordered online
447 from the lowest bidder, the price should be significantly lower:&lt;/p&gt;
448
449 &lt;p&gt;&lt;table&gt;
450
451 &lt;tr&gt;&lt;th&gt;Supplier&lt;/th&gt;&lt;th&gt;Model&lt;/th&gt;&lt;th&gt;NOK&lt;/th&gt;&lt;/tr&gt;
452 &lt;tr&gt;&lt;td&gt;Teknikkmagasinet&lt;/td&gt;&lt;td&gt;Raspberry Pi model B&lt;/td&gt;&lt;td&gt;349.90&lt;/td&gt;&lt;/tr&gt;
453 &lt;tr&gt;&lt;td&gt;Teknikkmagasinet&lt;/td&gt;&lt;td&gt;Raspberry Pi type B case&lt;/td&gt;&lt;td&gt;99.90&lt;/td&gt;&lt;/tr&gt;
454 &lt;tr&gt;&lt;td&gt;Lefdal&lt;/td&gt;&lt;td&gt;Jensen Air:Link 25150&lt;/td&gt;&lt;td&gt;295.-&lt;/td&gt;&lt;/tr&gt;
455 &lt;tr&gt;&lt;td&gt;Clas Ohlson&lt;/td&gt;&lt;td&gt;Kingston 16 GB SD card&lt;/td&gt;&lt;td&gt;199.-&lt;/td&gt;&lt;/tr&gt;
456 &lt;tr&gt;&lt;td&gt;Total cost&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;943.80&lt;/td&gt;&lt;/tr&gt;
457
458 &lt;/table&gt;&lt;/p&gt;
459
460 &lt;p&gt;Now my mesh network at home consist of one laptop in the basement
461 connected to my production network, one Raspberry Pi node on the 1th
462 floor that can be seen by my neighbor across the park, and one
463 play-node I use to develop the image building script. And some times
464 I hook up my work horse laptop to the mesh to test it. I look forward
465 to figuring out what kind of latency the batman-adv setup will give,
466 and how much packet loss we will experience around the park. :)&lt;/p&gt;
467 </description>
468 </item>
469
470 <item>
471 <title>Oslo community mesh network - with NUUG and Hackeriet at Hausmania</title>
472 <link>http://www.hungry.com/~pere/blog/Oslo_community_mesh_network___with_NUUG_and_Hackeriet_at_Hausmania.html</link>
473 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/Oslo_community_mesh_network___with_NUUG_and_Hackeriet_at_Hausmania.html</guid>
474 <pubDate>Fri, 11 Oct 2013 14:10:00 +0200</pubDate>
475 <description>&lt;p&gt;Wireless mesh networks are self organising and self healing
476 networks that can be used to connect computers across small and large
477 areas, depending on the radio technology used. Normal wifi equipment
478 can be used to create home made radio networks, and there are several
479 successful examples like
480 &lt;a href=&quot;http://www.freifunk.net/&quot;&gt;Freifunk&lt;/a&gt; and
481 &lt;a href=&quot;http://www.awmn.net/&quot;&gt;Athens Wireless Metropolitan Network&lt;/a&gt;
482 (see
483 &lt;a href=&quot;http://en.wikipedia.org/wiki/List_of_wireless_community_networks_by_region#Greece&quot;&gt;wikipedia
484 for a large list&lt;/a&gt;) around the globe. To give you an idea how it
485 work, check out the nice overview of the Kiel Freifunk community which
486 can be seen from their
487 &lt;a href=&quot;http://freifunk.in-kiel.de/ffmap/nodes.html&quot;&gt;dynamically
488 updated node graph and map&lt;/a&gt;, where one can see how the mesh nodes
489 automatically handle routing and recover from nodes disappearing.
490 There is also a small community mesh network group in Oslo, Norway,
491 and that is the main topic of this blog post.&lt;/p&gt;
492
493 &lt;p&gt;I&#39;ve wanted to check out mesh networks for a while now, and hoped
494 to do it as part of my involvement with the &lt;a
495 href=&quot;http://www.nuug.no/&quot;&gt;NUUG member organisation&lt;/a&gt; community, and
496 my recent involvement in
497 &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;the Freedombox project&lt;/a&gt;
498 finally lead me to give mesh networks some priority, as I suspect a
499 Freedombox should use mesh networks to connect neighbours and family
500 when possible, given that most communication between people are
501 between those nearby (as shown for example by research on Facebook
502 communication patterns). It also allow people to communicate without
503 any central hub to tap into for those that want to listen in on the
504 private communication of citizens, which have become more and more
505 important over the years.&lt;/p&gt;
506
507 &lt;p&gt;So far I have only been able to find one group of people in Oslo
508 working on community mesh networks, over at the hack space
509 &lt;a href=&quot;http://hackeriet.no/&quot;&gt;Hackeriet&lt;/a&gt; at Husmania. They seem to
510 have started with some Freifunk based effort using OLSR, called
511 &lt;a href=&quot;http://oslo.freifunk.net/index.php?title=Main_Page&quot;&gt;the Oslo
512 Freifunk project&lt;/a&gt;, but that effort is now dead and the people
513 behind it have moved on to a batman-adv based system called
514 &lt;a href=&quot;http://meshfx.org/trac&quot;&gt;meshfx&lt;/a&gt;. Unfortunately the wiki
515 site for the Oslo Freifunk project is no longer possible to update to
516 reflect this fact, so the old project page can&#39;t be updated to point to
517 the new project. A while back, the people at Hackeriet invited people
518 from the Freifunk community to Oslo to talk about mesh networks. I
519 came across this video where Hans Jørgen Lysglimt interview the
520 speakers about this talk (from
521 &lt;a href=&quot;https://www.youtube.com/watch?v=N2Kd7CLkhSY&quot;&gt;youtube&lt;/a&gt;):&lt;/p&gt;
522
523 &lt;p&gt;&lt;iframe width=&quot;420&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/N2Kd7CLkhSY&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;&lt;/p&gt;
524
525 &lt;p&gt;I mentioned OLSR and batman-adv, which are mesh routing protocols.
526 There are heaps of different protocols, and I am still struggling to
527 figure out which one would be &quot;best&quot; for some definitions of best, but
528 given that the community mesh group in Oslo is so small, I believe it
529 is best to hook up with the existing one instead of trying to create a
530 completely different setup, and thus I have decided to focus on
531 batman-adv for now. It sure help me to know that the very cool
532 &lt;a href=&quot;http://www.servalproject.org/&quot;&gt;Serval project in Australia&lt;/a&gt;
533 is using batman-adv as their meshing technology when it create a self
534 organizing and self healing telephony system for disaster areas and
535 less industrialized communities. Check out this cool video presenting
536 that project (from
537 &lt;a href=&quot;https://www.youtube.com/watch?v=30qNfzJCQOA&quot;&gt;youtube&lt;/a&gt;):&lt;/p&gt;
538
539 &lt;p&gt;&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/30qNfzJCQOA&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;&lt;/p&gt;
540
541 &lt;p&gt;According to the wikipedia page on
542 &lt;a href=&quot;http://en.wikipedia.org/wiki/Wireless_mesh_network&quot;&gt;Wireless
543 mesh network&lt;/a&gt; there are around 70 competing schemes for routing
544 packets across mesh networks, and OLSR, B.A.T.M.A.N. and
545 B.A.T.M.A.N. advanced are protocols used by several free software
546 based community mesh networks.&lt;/p&gt;
547
548 &lt;p&gt;The batman-adv protocol is a bit special, as it provide layer 2
549 (as in ethernet ) routing, allowing ipv4 and ipv6 to work on the same
550 network. One way to think about it is that it provide a mesh based
551 vlan you can bridge to or handle like any other vlan connected to your
552 computer. The required drivers are already in the Linux kernel at
553 least since Debian Wheezy, and it is fairly easy to set up. A
554 &lt;a href=&quot;http://www.open-mesh.org/projects/batman-adv/wiki/Quick-start-guide&quot;&gt;good
555 introduction&lt;/a&gt; is available from the Open Mesh project. These are
556 the key settings needed to join the Oslo meshfx network:&lt;/p&gt;
557
558 &lt;p&gt;&lt;table&gt;
559 &lt;tr&gt;&lt;th&gt;Setting&lt;/th&gt;&lt;th&gt;Value&lt;/th&gt;&lt;/tr&gt;
560 &lt;tr&gt;&lt;td&gt;Protocol / kernel module&lt;/td&gt;&lt;td&gt;batman-adv&lt;/td&gt;&lt;/tr&gt;
561 &lt;tr&gt;&lt;td&gt;ESSID&lt;/td&gt;&lt;td&gt;meshfx@hackeriet&lt;/td&gt;&lt;/tr&gt;
562 &lt;td&gt;Channel / Frequency&lt;/td&gt;&lt;td&gt;11 / 2462&lt;/td&gt;&lt;/tr&gt;
563 &lt;td&gt;Cell ID&lt;/td&gt;&lt;td&gt;02:BA:00:00:00:01&lt;/td&gt;
564 &lt;/table&gt;&lt;/p&gt;
565
566 &lt;p&gt;The reason for setting ad-hoc wifi Cell ID is to work around bugs
567 in firmware used in wifi card and wifi drivers. (See a nice post from
568 VillageTelco about
569 &quot;&lt;a href=&quot;http://tiebing.blogspot.no/2009/12/ad-hoc-cell-splitting-re-post-original.html&quot;&gt;Information
570 about cell-id splitting, stuck beacons, and failed IBSS merges!&lt;/a&gt;
571 for details.) When these settings are activated and you have some
572 other mesh node nearby, your computer will be connected to the mesh
573 network and can communicate with any mesh node that is connected to
574 any of the nodes in your network of nodes. :)&lt;/p&gt;
575
576 &lt;p&gt;My initial plan was to reuse my old Linksys WRT54GL as a mesh node,
577 but that seem to be very hard, as I have not been able to locate a
578 firmware supporting batman-adv. If anyone know how to use that old
579 wifi access point with batman-adv these days, please let me know.&lt;/p&gt;
580
581 &lt;p&gt;If you find this project interesting and want to join, please join
582 us on IRC, either channel
583 &lt;a href=&quot;irc://irc.freenode.net/#oslohackerspace&quot;&gt;#oslohackerspace&lt;/a&gt;
584 or &lt;a href=&quot;irc://irc.freenode.net/#nuug&quot;&gt;#nuug&lt;/a&gt; on
585 irc.freenode.net.&lt;/p&gt;
586
587 &lt;p&gt;While investigating mesh networks in Oslo, I came across an old
588 research paper from the university of Stavanger and Telenor Research
589 and Innovation called
590 &lt;a href=&quot;http://folk.uio.no/paalee/publications/netrel-egeland-iswcs-2008.pdf&quot;&gt;The
591 reliability of wireless backhaul mesh networks&lt;/a&gt; and elsewhere
592 learned that Telenor have been experimenting with mesh networks at
593 Grünerløkka in Oslo. So mesh networks are also interesting for
594 commercial companies, even though Telenor discovered that it was hard
595 to figure out a good business plan for mesh networking and as far as I
596 know have closed down the experiment. Perhaps Telenor or others would
597 be interested in a cooperation?&lt;/p&gt;
598
599 &lt;p&gt;&lt;strong&gt;Update 2013-10-12&lt;/strong&gt;: I was just
600 &lt;a href=&quot;http://lists.alioth.debian.org/pipermail/freedombox-discuss/2013-October/005900.html&quot;&gt;told
601 by the Serval project developers&lt;/a&gt; that they no longer use
602 batman-adv (but are compatible with it), but their own crypto based
603 mesh system.&lt;/p&gt;
604 </description>
605 </item>
606
607 <item>
608 <title>Videos about the Freedombox project - for inspiration and learning</title>
609 <link>http://www.hungry.com/~pere/blog/Videos_about_the_Freedombox_project___for_inspiration_and_learning.html</link>
610 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/Videos_about_the_Freedombox_project___for_inspiration_and_learning.html</guid>
611 <pubDate>Fri, 27 Sep 2013 14:10:00 +0200</pubDate>
612 <description>&lt;p&gt;The &lt;a href=&quot;http://www.freedomboxfoundation.org/&quot;&gt;Freedombox
613 project&lt;/a&gt; have been going on for a while, and have presented the
614 vision, ideas and solution several places. Here is a little
615 collection of videos of talks and presentation of the project.&lt;/p&gt;
616
617 &lt;ul&gt;
618
619 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=ukvUz5taxvA&quot;&gt;FreedomBox -
620 2,5 minute marketing film&lt;/a&gt; (Youtube)&lt;/li&gt;
621
622 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=SzW25QTVWsE&quot;&gt;Eben Moglen
623 discusses the Freedombox on CBS news 2011&lt;/a&gt; (Youtube)&lt;/li&gt;
624
625 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=Ae8SZbxfE0g&quot;&gt;Eben Moglen -
626 Freedom in the Cloud - Software Freedom, Privacy and and Security for
627 Web 2.0 and Cloud computing at ISOC-NY Public Meeting 2010&lt;/a&gt;
628 (Youtube)&lt;/li&gt;
629
630 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=vNaIji_3xBE&quot;&gt;Fosdem 2011
631 Keynote by Eben Moglen presenting the Freedombox&lt;/a&gt; (Youtube)&lt;/li&gt;
632
633 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=9bDDUyJSQ9s&quot;&gt;Presentation of
634 the Freedombox by James Vasile at Elevate in Gratz 2011&lt;/a&gt; (Youtube)&lt;/li&gt;
635
636 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=zQTmnk27g9s&quot;&gt; Freedombox -
637 Discovery, Identity, and Trust by Nick Daly at Freedombox Hackfest New
638 York City in 2012&lt;/a&gt; (Youtube)&lt;/li&gt;
639
640 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=tkbSB4Ba7Ck&quot;&gt;Introduction
641 to the Freedombox at Freedombox Hackfest New York City in 2012&lt;/a&gt;
642 (Youtube)&lt;/li&gt;
643
644 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=z-P2Jaeg0aQ&quot;&gt;Freedom, Out
645 of the Box! by Bdale Garbee at linux.conf.au Ballarat, 2012&lt;/a&gt; (Youtube) &lt;/li&gt;
646
647 &lt;li&gt;&lt;a href=&quot;https://archive.fosdem.org/2013/schedule/event/freedombox/&quot;&gt;Freedombox
648 1.0 by Eben Moglen and Bdale Garbee at Fosdem 2013&lt;/a&gt; (FOSDEM) &lt;/li&gt;
649
650 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=e1LpYX2zVYg&quot;&gt;What is the
651 FreedomBox today by Bdale Garbee at Debconf13 in Vaumarcus
652 2013&lt;/a&gt; (Youtube)&lt;/li&gt;
653
654 &lt;/ul&gt;
655
656 &lt;p&gt;A larger list is available from
657 &lt;a href=&quot;https://wiki.debian.org/FreedomBox/TalksAndPresentations&quot;&gt;the
658 Freedombox Wiki&lt;/a&gt;.&lt;/p&gt;
659
660 &lt;p&gt;On other news, I am happy to report that Freedombox based on Debian
661 Jessie is coming along quite well, and soon both Owncloud and using
662 Tor should be available for testers of the Freedombox solution. :) In
663 a few weeks I hope everything needed to test it is included in Debian.
664 The withsqlite package is already in Debian, and the plinth package is
665 pending in NEW. The third and vital part of that puzzle is the
666 metapackage/setup framework, which is still pending an upload. Join
667 us on &lt;a href=&quot;irc://irc.debian.org:6667/%23freedombox&quot;&gt;IRC
668 (#freedombox on irc.debian.org)&lt;/a&gt; and
669 &lt;a href=&quot;http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss&quot;&gt;the
670 mailing list&lt;/a&gt; if you want to help make this vision come true.&lt;/p&gt;
671 </description>
672 </item>
673
674 <item>
675 <title>Recipe to test the Freedombox project on amd64 or Raspberry Pi</title>
676 <link>http://www.hungry.com/~pere/blog/Recipe_to_test_the_Freedombox_project_on_amd64_or_Raspberry_Pi.html</link>
677 <guid isPermaLink="true">http://www.hungry.com/~pere/blog/Recipe_to_test_the_Freedombox_project_on_amd64_or_Raspberry_Pi.html</guid>
678 <pubDate>Tue, 10 Sep 2013 14:20:00 +0200</pubDate>
679 <description>&lt;p&gt;I was introduced to the
680 &lt;a href=&quot;http://www.freedomboxfoundation.org/&quot;&gt;Freedombox project&lt;/a&gt;
681 in 2010, when Eben Moglen presented his vision about serving the need
682 of non-technical people to keep their personal information private and
683 within the legal protection of their own homes. The idea is to give
684 people back the power over their network and machines, and return
685 Internet back to its intended peer-to-peer architecture. Instead of
686 depending on a central service, the Freedombox will give everyone
687 control over their own basic infrastructure.&lt;/p&gt;
688
689 &lt;p&gt;I&#39;ve intended to join the effort since then, but other tasks have
690 taken priority. But this summers nasty news about the misuse of trust
691 and privilege exercised by the &quot;western&quot; intelligence gathering
692 communities increased my eagerness to contribute to a point where I
693 actually started working on the project a while back.&lt;/p&gt;
694
695 &lt;p&gt;The &lt;a href=&quot;https://alioth.debian.org/projects/freedombox/&quot;&gt;initial
696 Debian initiative&lt;/a&gt; based on the vision from Eben Moglen, is to
697 create a simple and cheap Debian based appliance that anyone can hook
698 up in their home and get access to secure and private services and
699 communication. The initial deployment platform have been the
700 &lt;a href=&quot;http://www.globalscaletechnologies.com/t-dreamplugdetails.aspx&quot;&gt;Dreamplug&lt;/a&gt;,
701 which is a piece of hardware I do not own. So to be able to test what
702 the current Freedombox setup look like, I had to come up with a way to install
703 it on some hardware I do have access to. I have rewritten the
704 &lt;a href=&quot;https://github.com/NickDaly/freedom-maker&quot;&gt;freedom-maker&lt;/a&gt;
705 image build framework to use .deb packages instead of only copying
706 setup into the boot images, and thanks to this rewrite I am able to
707 set up any machine supported by Debian Wheezy as a Freedombox, using
708 the previously mentioned deb (and a few support debs for packages
709 missing in Debian).&lt;/p&gt;
710
711 &lt;p&gt;The current Freedombox setup consist of a set of bootstrapping
712 scripts
713 (&lt;a href=&quot;https://github.com/petterreinholdtsen/freedombox-setup&quot;&gt;freedombox-setup&lt;/a&gt;),
714 and a administrative web interface
715 (&lt;a href=&quot;https://github.com/NickDaly/Plinth&quot;&gt;plinth&lt;/a&gt; + exmachina +
716 withsqlite), as well as a privacy enhancing proxy based on
717 &lt;a href=&quot;http://packages.qa.debian.org/privoxy&quot;&gt;privoxy&lt;/a&gt;
718 (freedombox-privoxy). There is also a web/javascript based XMPP
719 client (&lt;a href=&quot;http://packages.qa.debian.org/jwchat&quot;&gt;jwchat&lt;/a&gt;)
720 trying (unsuccessfully so far) to talk to the XMPP server
721 (&lt;a href=&quot;http://packages.qa.debian.org/ejabberd&quot;&gt;ejabberd&lt;/a&gt;). The
722 web interface is pluggable, and the goal is to use it to enable OpenID
723 services, mesh network connectivity, use of TOR, etc, etc. Not much of
724 this is really working yet, see
725 &lt;a href=&quot;https://github.com/NickDaly/freedombox-todos/blob/master/TODO&quot;&gt;the
726 project TODO&lt;/a&gt; for links to GIT repositories. Most of the code is
727 on github at the moment. The HTTP proxy is operational out of the
728 box, and the admin web interface can be used to add/remove plinth
729 users. I&#39;ve not been able to do anything else with it so far, but
730 know there are several branches spread around github and other places
731 with lots of half baked features.&lt;/p&gt;
732
733 &lt;p&gt;Anyway, if you want to have a look at the current state, the
734 following recipes should work to give you a test machine to poke
735 at.&lt;/p&gt;
736
737 &lt;p&gt;&lt;strong&gt;Debian Wheezy amd64&lt;/strong&gt;&lt;/p&gt;
738
739 &lt;ol&gt;
740
741 &lt;li&gt;Fetch normal Debian Wheezy installation ISO.&lt;/li&gt;
742 &lt;li&gt;Boot from it, either as CD or USB stick.&lt;/li&gt;
743 &lt;li&gt;&lt;p&gt;Press [tab] on the boot prompt and add this as a boot argument
744 to the Debian installer:&lt;p&gt;
745 &lt;pre&gt;url=&lt;a href=&quot;http://www.reinholdtsen.name/freedombox/preseed-wheezy.dat&quot;&gt;http://www.reinholdtsen.name/freedombox/preseed-wheezy.dat&lt;/a&gt;&lt;/pre&gt;&lt;/li&gt;
746
747 &lt;li&gt;Answer the few language/region/password questions and pick disk to
748 install on.&lt;/li&gt;
749
750 &lt;li&gt;When the installation is finished and the machine have rebooted a
751 few times, your Freedombox is ready for testing.&lt;/li&gt;
752
753 &lt;/ol&gt;
754
755 &lt;p&gt;&lt;strong&gt;Raspberry Pi Raspbian&lt;/strong&gt;&lt;/p&gt;
756
757 &lt;ol&gt;
758
759 &lt;li&gt;Fetch a Raspbian SD card image, create SD card.&lt;/li&gt;
760 &lt;li&gt;Boot from SD card, extend file system to fill the card completely.&lt;/li&gt;
761 &lt;li&gt;&lt;p&gt;Log in and add this to /etc/sources.list:&lt;/p&gt;
762 &lt;pre&gt;
763 deb &lt;a href=&quot;http://www.reinholdtsen.name/freedombox/&quot;&gt;http://www.reinholdtsen.name/freedombox&lt;/a&gt; wheezy main
764 &lt;/pre&gt;&lt;/li&gt;
765 &lt;li&gt;&lt;p&gt;Run this as root:&lt;/p&gt;
766 &lt;pre&gt;
767 wget -O - http://www.reinholdtsen.name/freedombox/BE1A583D.asc | \
768 apt-key add -
769 apt-get update
770 apt-get install freedombox-setup
771 /usr/lib/freedombox/setup
772 &lt;/pre&gt;&lt;/li&gt;
773 &lt;li&gt;Reboot into your freshly created Freedombox.&lt;/li&gt;
774
775 &lt;/ol&gt;
776
777 &lt;p&gt;You can test it on other architectures too, but because the
778 freedombox-privoxy package is binary, it will only work as intended on
779 the architectures where I have had time to build the binary and put it
780 in my APT repository. But do not let this stop you. It is only a
781 short &quot;&lt;tt&gt;apt-get source -b freedombox-privoxy&lt;/tt&gt;&quot; away. :)&lt;/p&gt;
782
783 &lt;p&gt;Note that by default Freedombox is a DHCP server on the
784 192.168.1.0/24 subnet, so if this is your subnet be careful and turn
785 off the DHCP server by running &quot;&lt;tt&gt;update-rc.d isc-dhcp-server
786 disable&lt;/tt&gt;&quot; as root.&lt;/p&gt;
787
788 &lt;p&gt;Please let me know if this works for you, or if you have any
789 problems. We gather on the IRC channel
790 &lt;a href=&quot;irc://irc.debian.org:6667/%23freedombox&quot;&gt;#freedombox&lt;/a&gt; on
791 irc.debian.org and the
792 &lt;a href=&quot;http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/freedombox-discuss&quot;&gt;project
793 mailing list&lt;/a&gt;.&lt;/p&gt;
794
795 &lt;p&gt;Once you get your freedombox operational, you can visit
796 &lt;tt&gt;http://your-host-name:8001/&lt;/tt&gt; to see the state of the plint
797 welcome screen (dead end - do not be surprised if you are unable to
798 get past it), and next visit &lt;tt&gt;http://your-host-name:8001/help/&lt;/tt&gt;
799 to look at the rest of plinth. The default user is &#39;admin&#39; and the
800 default password is &#39;secret&#39;.&lt;/p&gt;
801 </description>
802 </item>
803
804 </channel>
805 </rss>