1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" dir=
"ltr">
5 <meta http-equiv=
"Content-Type" content=
"text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen
</title>
7 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel=
"alternate" title=
"RSS Feed" href=
"http://people.skolelinux.org/pere/blog/index.rss" type=
"application/rss+xml" />
14 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
23 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Web_services_for_writing_academic_LaTeX_papers_as_a_team.html">Web services for writing academic LaTeX papers as a team
</a></div>
24 <div class=
"date">31st October
2017</div>
25 <div class=
"body"><p>I was surprised today to learn that a friend in academia did not
26 know there are easily available web services available for writing
27 LaTeX documents as a team. I thought it was common knowledge, but to
28 make sure at least my readers are aware of it, I would like to mention
29 these useful services for writing LaTeX documents. Some of them even
30 provide a WYSIWYG editor to ease writing even further.
</p>
32 <p>There are two commercial services available,
33 <a href=
"https://sharelatex.com">ShareLaTeX
</a> and
34 <a href=
"https://overleaf.com">Overleaf
</a>. They are very easy to
35 use. Just start a new document, select which publisher to write for
36 (ie which LaTeX style to use), and start writing. Note, these two
37 have announced their intention to join forces, so soon it will only be
38 one joint service. I've used both for different documents, and they
40 <a href=
"https://github.com/sharelatex/sharelatex">ShareLaTeX is free
41 software
</a>, while the latter is not. According to
<a
42 href=
"https://www.overleaf.com/help/17-is-overleaf-open-source">a
43 announcement from Overleaf
</a>, they plan to keep the ShareLaTeX code
44 base maintained as free software.
</p>
46 But these two are not the only alternatives.
47 <a href=
"https://app.fiduswriter.org/">Fidus Writer
</a> is another free
48 software solution with
<a href=
"https://github.com/fiduswriter">the
49 source available on github
</a>. I have not used it myself. Several
50 others can be found on the nice
51 <a href=
"https://alternativeto.net/software/sharelatex/">alterntiveTo
54 <p>If you like Google Docs or Etherpad, but would like to write
55 documents in LaTeX, you should check out these services. You can even
56 host your own, if you want to. :)
</p>
62 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>.
67 <div class=
"padding"></div>
70 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Locating_IMDB_IDs_of_movies_in_the_Internet_Archive_using_Wikidata.html">Locating IMDB IDs of movies in the Internet Archive using Wikidata
</a></div>
71 <div class=
"date">25th October
2017</div>
72 <div class=
"body"><p>Recently, I needed to automatically check the copyright status of a
73 set of
<a href=
"http://www.imdb.com/">The Internet Movie database
74 (IMDB)
</a> entries, to figure out which one of the movies they refer
75 to can be freely distributed on the Internet. This proved to be
76 harder than it sounds. IMDB for sure list movies without any
77 copyright protection, where the copyright protection has expired or
78 where the movie is lisenced using a permissive license like one from
79 Creative Commons. These are mixed with copyright protected movies,
80 and there seem to be no way to separate these classes of movies using
81 the information in IMDB.
</p>
83 <p>First I tried to look up entries manually in IMDB,
84 <a href=
"https://www.wikipedia.org/">Wikipedia
</a> and
85 <a href=
"https://www.archive.org/">The Internet Archive
</a>, to get a
86 feel how to do this. It is hard to know for sure using these sources,
87 but it should be possible to be reasonable confident a movie is "out
88 of copyright" with a few hours work per movie. As I needed to check
89 almost
20,
000 entries, this approach was not sustainable. I simply
90 can not work around the clock for about
6 years to check this data
93 <p>I asked the people behind The Internet Archive if they could
94 introduce a new metadata field in their metadata XML for IMDB ID, but
95 was told that they leave it completely to the uploaders to update the
96 metadata. Some of the metadata entries had IMDB links in the
97 description, but I found no way to download all metadata files in bulk
98 to locate those ones and put that approach aside.
</p>
100 <p>In the process I noticed several Wikipedia articles about movies
101 had links to both IMDB and The Internet Archive, and it occured to me
102 that I could use the Wikipedia RDF data set to locate entries with
103 both, to at least get a lower bound on the number of movies on The
104 Internet Archive with a IMDB ID. This is useful based on the
105 assumption that movies distributed by The Internet Archive can be
106 legally distributed on the Internet. With some help from the RDF
107 community (thank you DanC), I was able to come up with this query to
108 pass to
<a href=
"https://query.wikidata.org/">the SPARQL interface on
112 SELECT ?work ?imdb ?ia ?when ?label
115 ?work wdt:P31/wdt:P279* wd:Q11424.
116 ?work wdt:P345 ?imdb.
119 ?work wdt:P577 ?when.
120 ?work rdfs:label ?label.
121 FILTER(LANG(?label) = "en").
126 <p>If I understand the query right, for every film entry anywhere in
127 Wikpedia, it will return the IMDB ID and The Internet Archive ID, and
128 when the movie was released and its English title, if either or both
129 of the latter two are available. At the moment the result set contain
130 2338 entries. Of course, it depend on volunteers including both
131 correct IMDB and The Internet Archive IDs in the wikipedia articles
132 for the movie. It should be noted that the result will include
133 duplicates if the movie have entries in several languages. There are
134 some bogus entries, either because The Internet Archive ID contain a
135 typo or because the movie is not available from The Internet Archive.
136 I did not verify the IMDB IDs, as I am unsure how to do that
139 <p>I wrote a small python script to extract the data set from Wikidata
140 and check if the XML metadata for the movie is available from The
141 Internet Archive, and after around
1.5 hour it produced a list of
2097
142 free movies and their IMDB ID. In total,
171 entries in Wikidata lack
143 the refered Internet Archive entry. I assume the
70 "disappearing"
144 entries (ie
2338-
2097-
171) are duplicate entries.
</p>
146 <p>This is not too bad, given that The Internet Archive report to
147 contain
<a href=
"https://archive.org/details/feature_films">5331
148 feature films
</a> at the moment, but it also mean more than
3000
149 movies are missing on Wikipedia or are missing the pair of references
152 <p>I was curious about the distribution by release year, and made a
153 little graph to show how the amount of free movies is spread over the
156 <p><img src=
"http://people.skolelinux.org/pere/blog/images/2017-10-25-verk-i-det-fri-filmer.png"></p>
158 <p>I expect the relative distribution of the remaining
3000 movies to
161 <p>If you want to help, and want to ensure Wikipedia can be used to
162 cross reference The Internet Archive and The Internet Movie Database,
163 please make sure entries like this are listed under the "External
164 links" heading on the Wikipedia article for the movie:
</p>
167 * {{Internet Archive film|id=FightingLady}}
168 * {{IMDb title|id=
0036823|title=The Fighting Lady}}
171 <p>Please verify the links on the final page, to make sure you did not
172 introduce a typo.
</p>
174 <p>Here is the complete list, if you want to correct the
171
175 identified Wikipedia entries with broken links to The Internet
176 Archive:
<a href=
"http://www.wikidata.org/entity/Q1140317">Q1140317
</a>,
177 <a href=
"http://www.wikidata.org/entity/Q458656">Q458656
</a>,
178 <a href=
"http://www.wikidata.org/entity/Q458656">Q458656
</a>,
179 <a href=
"http://www.wikidata.org/entity/Q470560">Q470560
</a>,
180 <a href=
"http://www.wikidata.org/entity/Q743340">Q743340
</a>,
181 <a href=
"http://www.wikidata.org/entity/Q822580">Q822580
</a>,
182 <a href=
"http://www.wikidata.org/entity/Q480696">Q480696
</a>,
183 <a href=
"http://www.wikidata.org/entity/Q128761">Q128761
</a>,
184 <a href=
"http://www.wikidata.org/entity/Q1307059">Q1307059
</a>,
185 <a href=
"http://www.wikidata.org/entity/Q1335091">Q1335091
</a>,
186 <a href=
"http://www.wikidata.org/entity/Q1537166">Q1537166
</a>,
187 <a href=
"http://www.wikidata.org/entity/Q1438334">Q1438334
</a>,
188 <a href=
"http://www.wikidata.org/entity/Q1479751">Q1479751
</a>,
189 <a href=
"http://www.wikidata.org/entity/Q1497200">Q1497200
</a>,
190 <a href=
"http://www.wikidata.org/entity/Q1498122">Q1498122
</a>,
191 <a href=
"http://www.wikidata.org/entity/Q865973">Q865973
</a>,
192 <a href=
"http://www.wikidata.org/entity/Q834269">Q834269
</a>,
193 <a href=
"http://www.wikidata.org/entity/Q841781">Q841781
</a>,
194 <a href=
"http://www.wikidata.org/entity/Q841781">Q841781
</a>,
195 <a href=
"http://www.wikidata.org/entity/Q1548193">Q1548193
</a>,
196 <a href=
"http://www.wikidata.org/entity/Q499031">Q499031
</a>,
197 <a href=
"http://www.wikidata.org/entity/Q1564769">Q1564769
</a>,
198 <a href=
"http://www.wikidata.org/entity/Q1585239">Q1585239
</a>,
199 <a href=
"http://www.wikidata.org/entity/Q1585569">Q1585569
</a>,
200 <a href=
"http://www.wikidata.org/entity/Q1624236">Q1624236
</a>,
201 <a href=
"http://www.wikidata.org/entity/Q4796595">Q4796595
</a>,
202 <a href=
"http://www.wikidata.org/entity/Q4853469">Q4853469
</a>,
203 <a href=
"http://www.wikidata.org/entity/Q4873046">Q4873046
</a>,
204 <a href=
"http://www.wikidata.org/entity/Q915016">Q915016
</a>,
205 <a href=
"http://www.wikidata.org/entity/Q4660396">Q4660396
</a>,
206 <a href=
"http://www.wikidata.org/entity/Q4677708">Q4677708
</a>,
207 <a href=
"http://www.wikidata.org/entity/Q4738449">Q4738449
</a>,
208 <a href=
"http://www.wikidata.org/entity/Q4756096">Q4756096
</a>,
209 <a href=
"http://www.wikidata.org/entity/Q4766785">Q4766785
</a>,
210 <a href=
"http://www.wikidata.org/entity/Q880357">Q880357
</a>,
211 <a href=
"http://www.wikidata.org/entity/Q882066">Q882066
</a>,
212 <a href=
"http://www.wikidata.org/entity/Q882066">Q882066
</a>,
213 <a href=
"http://www.wikidata.org/entity/Q204191">Q204191
</a>,
214 <a href=
"http://www.wikidata.org/entity/Q204191">Q204191
</a>,
215 <a href=
"http://www.wikidata.org/entity/Q1194170">Q1194170
</a>,
216 <a href=
"http://www.wikidata.org/entity/Q940014">Q940014
</a>,
217 <a href=
"http://www.wikidata.org/entity/Q946863">Q946863
</a>,
218 <a href=
"http://www.wikidata.org/entity/Q172837">Q172837
</a>,
219 <a href=
"http://www.wikidata.org/entity/Q573077">Q573077
</a>,
220 <a href=
"http://www.wikidata.org/entity/Q1219005">Q1219005
</a>,
221 <a href=
"http://www.wikidata.org/entity/Q1219599">Q1219599
</a>,
222 <a href=
"http://www.wikidata.org/entity/Q1643798">Q1643798
</a>,
223 <a href=
"http://www.wikidata.org/entity/Q1656352">Q1656352
</a>,
224 <a href=
"http://www.wikidata.org/entity/Q1659549">Q1659549
</a>,
225 <a href=
"http://www.wikidata.org/entity/Q1660007">Q1660007
</a>,
226 <a href=
"http://www.wikidata.org/entity/Q1698154">Q1698154
</a>,
227 <a href=
"http://www.wikidata.org/entity/Q1737980">Q1737980
</a>,
228 <a href=
"http://www.wikidata.org/entity/Q1877284">Q1877284
</a>,
229 <a href=
"http://www.wikidata.org/entity/Q1199354">Q1199354
</a>,
230 <a href=
"http://www.wikidata.org/entity/Q1199354">Q1199354
</a>,
231 <a href=
"http://www.wikidata.org/entity/Q1199451">Q1199451
</a>,
232 <a href=
"http://www.wikidata.org/entity/Q1211871">Q1211871
</a>,
233 <a href=
"http://www.wikidata.org/entity/Q1212179">Q1212179
</a>,
234 <a href=
"http://www.wikidata.org/entity/Q1238382">Q1238382
</a>,
235 <a href=
"http://www.wikidata.org/entity/Q4906454">Q4906454
</a>,
236 <a href=
"http://www.wikidata.org/entity/Q320219">Q320219
</a>,
237 <a href=
"http://www.wikidata.org/entity/Q1148649">Q1148649
</a>,
238 <a href=
"http://www.wikidata.org/entity/Q645094">Q645094
</a>,
239 <a href=
"http://www.wikidata.org/entity/Q5050350">Q5050350
</a>,
240 <a href=
"http://www.wikidata.org/entity/Q5166548">Q5166548
</a>,
241 <a href=
"http://www.wikidata.org/entity/Q2677926">Q2677926
</a>,
242 <a href=
"http://www.wikidata.org/entity/Q2698139">Q2698139
</a>,
243 <a href=
"http://www.wikidata.org/entity/Q2707305">Q2707305
</a>,
244 <a href=
"http://www.wikidata.org/entity/Q2740725">Q2740725
</a>,
245 <a href=
"http://www.wikidata.org/entity/Q2024780">Q2024780
</a>,
246 <a href=
"http://www.wikidata.org/entity/Q2117418">Q2117418
</a>,
247 <a href=
"http://www.wikidata.org/entity/Q2138984">Q2138984
</a>,
248 <a href=
"http://www.wikidata.org/entity/Q1127992">Q1127992
</a>,
249 <a href=
"http://www.wikidata.org/entity/Q1058087">Q1058087
</a>,
250 <a href=
"http://www.wikidata.org/entity/Q1070484">Q1070484
</a>,
251 <a href=
"http://www.wikidata.org/entity/Q1080080">Q1080080
</a>,
252 <a href=
"http://www.wikidata.org/entity/Q1090813">Q1090813
</a>,
253 <a href=
"http://www.wikidata.org/entity/Q1251918">Q1251918
</a>,
254 <a href=
"http://www.wikidata.org/entity/Q1254110">Q1254110
</a>,
255 <a href=
"http://www.wikidata.org/entity/Q1257070">Q1257070
</a>,
256 <a href=
"http://www.wikidata.org/entity/Q1257079">Q1257079
</a>,
257 <a href=
"http://www.wikidata.org/entity/Q1197410">Q1197410
</a>,
258 <a href=
"http://www.wikidata.org/entity/Q1198423">Q1198423
</a>,
259 <a href=
"http://www.wikidata.org/entity/Q706951">Q706951
</a>,
260 <a href=
"http://www.wikidata.org/entity/Q723239">Q723239
</a>,
261 <a href=
"http://www.wikidata.org/entity/Q2079261">Q2079261
</a>,
262 <a href=
"http://www.wikidata.org/entity/Q1171364">Q1171364
</a>,
263 <a href=
"http://www.wikidata.org/entity/Q617858">Q617858
</a>,
264 <a href=
"http://www.wikidata.org/entity/Q5166611">Q5166611
</a>,
265 <a href=
"http://www.wikidata.org/entity/Q5166611">Q5166611
</a>,
266 <a href=
"http://www.wikidata.org/entity/Q324513">Q324513
</a>,
267 <a href=
"http://www.wikidata.org/entity/Q374172">Q374172
</a>,
268 <a href=
"http://www.wikidata.org/entity/Q7533269">Q7533269
</a>,
269 <a href=
"http://www.wikidata.org/entity/Q970386">Q970386
</a>,
270 <a href=
"http://www.wikidata.org/entity/Q976849">Q976849
</a>,
271 <a href=
"http://www.wikidata.org/entity/Q7458614">Q7458614
</a>,
272 <a href=
"http://www.wikidata.org/entity/Q5347416">Q5347416
</a>,
273 <a href=
"http://www.wikidata.org/entity/Q5460005">Q5460005
</a>,
274 <a href=
"http://www.wikidata.org/entity/Q5463392">Q5463392
</a>,
275 <a href=
"http://www.wikidata.org/entity/Q3038555">Q3038555
</a>,
276 <a href=
"http://www.wikidata.org/entity/Q5288458">Q5288458
</a>,
277 <a href=
"http://www.wikidata.org/entity/Q2346516">Q2346516
</a>,
278 <a href=
"http://www.wikidata.org/entity/Q5183645">Q5183645
</a>,
279 <a href=
"http://www.wikidata.org/entity/Q5185497">Q5185497
</a>,
280 <a href=
"http://www.wikidata.org/entity/Q5216127">Q5216127
</a>,
281 <a href=
"http://www.wikidata.org/entity/Q5223127">Q5223127
</a>,
282 <a href=
"http://www.wikidata.org/entity/Q5261159">Q5261159
</a>,
283 <a href=
"http://www.wikidata.org/entity/Q1300759">Q1300759
</a>,
284 <a href=
"http://www.wikidata.org/entity/Q5521241">Q5521241
</a>,
285 <a href=
"http://www.wikidata.org/entity/Q7733434">Q7733434
</a>,
286 <a href=
"http://www.wikidata.org/entity/Q7736264">Q7736264
</a>,
287 <a href=
"http://www.wikidata.org/entity/Q7737032">Q7737032
</a>,
288 <a href=
"http://www.wikidata.org/entity/Q7882671">Q7882671
</a>,
289 <a href=
"http://www.wikidata.org/entity/Q7719427">Q7719427
</a>,
290 <a href=
"http://www.wikidata.org/entity/Q7719444">Q7719444
</a>,
291 <a href=
"http://www.wikidata.org/entity/Q7722575">Q7722575
</a>,
292 <a href=
"http://www.wikidata.org/entity/Q2629763">Q2629763
</a>,
293 <a href=
"http://www.wikidata.org/entity/Q2640346">Q2640346
</a>,
294 <a href=
"http://www.wikidata.org/entity/Q2649671">Q2649671
</a>,
295 <a href=
"http://www.wikidata.org/entity/Q7703851">Q7703851
</a>,
296 <a href=
"http://www.wikidata.org/entity/Q7747041">Q7747041
</a>,
297 <a href=
"http://www.wikidata.org/entity/Q6544949">Q6544949
</a>,
298 <a href=
"http://www.wikidata.org/entity/Q6672759">Q6672759
</a>,
299 <a href=
"http://www.wikidata.org/entity/Q2445896">Q2445896
</a>,
300 <a href=
"http://www.wikidata.org/entity/Q12124891">Q12124891
</a>,
301 <a href=
"http://www.wikidata.org/entity/Q3127044">Q3127044
</a>,
302 <a href=
"http://www.wikidata.org/entity/Q2511262">Q2511262
</a>,
303 <a href=
"http://www.wikidata.org/entity/Q2517672">Q2517672
</a>,
304 <a href=
"http://www.wikidata.org/entity/Q2543165">Q2543165
</a>,
305 <a href=
"http://www.wikidata.org/entity/Q426628">Q426628
</a>,
306 <a href=
"http://www.wikidata.org/entity/Q426628">Q426628
</a>,
307 <a href=
"http://www.wikidata.org/entity/Q12126890">Q12126890
</a>,
308 <a href=
"http://www.wikidata.org/entity/Q13359969">Q13359969
</a>,
309 <a href=
"http://www.wikidata.org/entity/Q13359969">Q13359969
</a>,
310 <a href=
"http://www.wikidata.org/entity/Q2294295">Q2294295
</a>,
311 <a href=
"http://www.wikidata.org/entity/Q2294295">Q2294295
</a>,
312 <a href=
"http://www.wikidata.org/entity/Q2559509">Q2559509
</a>,
313 <a href=
"http://www.wikidata.org/entity/Q2559912">Q2559912
</a>,
314 <a href=
"http://www.wikidata.org/entity/Q7760469">Q7760469
</a>,
315 <a href=
"http://www.wikidata.org/entity/Q6703974">Q6703974
</a>,
316 <a href=
"http://www.wikidata.org/entity/Q4744">Q4744
</a>,
317 <a href=
"http://www.wikidata.org/entity/Q7766962">Q7766962
</a>,
318 <a href=
"http://www.wikidata.org/entity/Q7768516">Q7768516
</a>,
319 <a href=
"http://www.wikidata.org/entity/Q7769205">Q7769205
</a>,
320 <a href=
"http://www.wikidata.org/entity/Q7769988">Q7769988
</a>,
321 <a href=
"http://www.wikidata.org/entity/Q2946945">Q2946945
</a>,
322 <a href=
"http://www.wikidata.org/entity/Q3212086">Q3212086
</a>,
323 <a href=
"http://www.wikidata.org/entity/Q3212086">Q3212086
</a>,
324 <a href=
"http://www.wikidata.org/entity/Q18218448">Q18218448
</a>,
325 <a href=
"http://www.wikidata.org/entity/Q18218448">Q18218448
</a>,
326 <a href=
"http://www.wikidata.org/entity/Q18218448">Q18218448
</a>,
327 <a href=
"http://www.wikidata.org/entity/Q6909175">Q6909175
</a>,
328 <a href=
"http://www.wikidata.org/entity/Q7405709">Q7405709
</a>,
329 <a href=
"http://www.wikidata.org/entity/Q7416149">Q7416149
</a>,
330 <a href=
"http://www.wikidata.org/entity/Q7239952">Q7239952
</a>,
331 <a href=
"http://www.wikidata.org/entity/Q7317332">Q7317332
</a>,
332 <a href=
"http://www.wikidata.org/entity/Q7783674">Q7783674
</a>,
333 <a href=
"http://www.wikidata.org/entity/Q7783704">Q7783704
</a>,
334 <a href=
"http://www.wikidata.org/entity/Q7857590">Q7857590
</a>,
335 <a href=
"http://www.wikidata.org/entity/Q3372526">Q3372526
</a>,
336 <a href=
"http://www.wikidata.org/entity/Q3372642">Q3372642
</a>,
337 <a href=
"http://www.wikidata.org/entity/Q3372816">Q3372816
</a>,
338 <a href=
"http://www.wikidata.org/entity/Q3372909">Q3372909
</a>,
339 <a href=
"http://www.wikidata.org/entity/Q7959649">Q7959649
</a>,
340 <a href=
"http://www.wikidata.org/entity/Q7977485">Q7977485
</a>,
341 <a href=
"http://www.wikidata.org/entity/Q7992684">Q7992684
</a>,
342 <a href=
"http://www.wikidata.org/entity/Q3817966">Q3817966
</a>,
343 <a href=
"http://www.wikidata.org/entity/Q3821852">Q3821852
</a>,
344 <a href=
"http://www.wikidata.org/entity/Q3420907">Q3420907
</a>,
345 <a href=
"http://www.wikidata.org/entity/Q3429733">Q3429733
</a>,
346 <a href=
"http://www.wikidata.org/entity/Q774474">Q774474
</a></p>
351 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett
</a>.
356 <div class=
"padding"></div>
359 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/A_one_way_wall_on_the_border_.html">A one-way wall on the border?
</a></div>
360 <div class=
"date">14th October
2017</div>
361 <div class=
"body"><p>I find it fascinating how many of the people being locked inside
362 the proposed border wall between USA and Mexico support the idea. The
363 proposal to keep Mexicans out reminds me of
364 <a href=
"http://www.history.com/news/10-things-you-may-not-know-about-the-berlin-wall">the
365 propaganda twist from the East Germany government
</a> calling the wall
366 the “Antifascist Bulwark” after erecting the Berlin Wall, claiming
367 that the wall was erected to keep enemies from creeping into East
368 Germany, while it was obvious to the people locked inside it that it
369 was erected to keep the people from escaping.
</p>
371 <p>Do the people in USA supporting this wall really believe it is a
372 one way wall, only keeping people on the outside from getting in,
373 while not keeping people in the inside from getting out?
</p>
378 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>.
383 <div class=
"padding"></div>
386 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Generating_3D_prints_in_Debian_using_Cura_and_Slic3r__prusa_.html">Generating
3D prints in Debian using Cura and Slic3r(-prusa)
</a></div>
387 <div class=
"date"> 9th October
2017</div>
388 <div class=
"body"><p>At my nearby maker space,
389 <a href=
"http://sonen.ifi.uio.no/">Sonen
</a>, I heard the story that it
390 was easier to generate gcode files for theyr
3D printers (Ultimake
2+)
391 on Windows and MacOS X than Linux, because the software involved had
392 to be manually compiled and set up on Linux while premade packages
393 worked out of the box on Windows and MacOS X. I found this annoying,
394 as the software involved,
395 <a href=
"https://github.com/Ultimaker/Cura">Cura
</a>, is free software
396 and should be trivial to get up and running on Linux if someone took
397 the time to package it for the relevant distributions. I even found
398 <a href=
"https://bugs.debian.org/706656">a request for adding into
399 Debian
</a> from
2013, which had seem some activity over the years but
400 never resulted in the software showing up in Debian. So a few days
401 ago I offered my help to try to improve the situation.
</p>
403 <p>Now I am very happy to see that all the packages required by a
404 working Cura in Debian are uploaded into Debian and waiting in the NEW
405 queue for the ftpmasters to have a look. You can track the progress
407 <a href=
"https://qa.debian.org/developer.php?email=3dprinter-general%40lists.alioth.debian.org">the
408 status page for the
3D printer team
</a>.
</p>
410 <p>The uploaded packages are a bit behind upstream, and was uploaded
411 now to get slots in
<a href=
"https://ftp-master.debian.org/new.html">the NEW
412 queue
</a> while we work up updating the packages to the latest
413 upstream version.
</p>
415 <p>On a related note, two competitors for Cura, which I found harder
416 to use and was unable to configure correctly for Ultimaker
2+ in the
417 short time I spent on it, are already in Debian. If you are looking
418 for
3D printer "slicers" and want something already available in
420 <a href=
"https://tracker.debian.org/pkg/slic3r">slic3r
</a> and
421 <a href=
"https://tracker.debian.org/pkg/slic3r-prusa">slic3r-prusa
</a>.
422 The latter is a fork of the former.
</p>
427 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>.
432 <div class=
"padding"></div>
435 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Mangler_du_en_skrue__eller_har_du_en_skrue_l_s_.html">Mangler du en skrue, eller har du en skrue løs?
</a></div>
436 <div class=
"date"> 4th October
2017</div>
437 <div class=
"body">Når jeg holder på med ulike prosjekter, så trenger jeg stadig ulike
438 skruer. Det siste prosjektet jeg holder på med er å lage
439 <a href=
"https://www.thingiverse.com/thing:676916">en boks til en
440 HDMI-touch-skjerm
</a> som skal brukes med Raspberry Pi. Boksen settes
441 sammen med skruer og bolter, og jeg har vært i tvil om hvor jeg kan
442 få tak i de riktige skruene. Clas Ohlson og Jernia i nærheten har
443 sjelden hatt det jeg trenger. Men her om dagen fikk jeg et fantastisk
444 tips for oss som bor i Oslo.
445 <a href=
"http://www.zachskruer.no/">Zachariassen Jernvare AS
</a> i
446 <a href=
"http://www.openstreetmap.org/?mlat=59.93421&mlon=10.76795#map=19/59.93421/10.76795">Hegermannsgate
447 23A på Torshov
</a> har et fantastisk utvalg, og åpent mellom
09:
00 og
448 17:
00. De selger skruer, muttere, bolter, skiver etc i løs vekt, og
449 så langt har jeg fått alt jeg har lett etter. De har i tillegg det
450 meste av annen jernvare, som verktøy, lamper, ledninger, etc. Jeg
451 håper de har nok kunder til å holde det gående lenge, da dette er en
452 butikk jeg kommer til å besøke ofte. Butikken er et funn å ha i
453 nabolaget for oss som liker å bygge litt selv. :)
</p>
458 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>.
463 <div class=
"padding"></div>
466 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Visualizing_GSM_radio_chatter_using_gr_gsm_and_Hopglass.html">Visualizing GSM radio chatter using gr-gsm and Hopglass
</a></div>
467 <div class=
"date">29th September
2017</div>
468 <div class=
"body"><p>Every mobile phone announce its existence over radio to the nearby
469 mobile cell towers. And this radio chatter is available for anyone
470 with a radio receiver capable of receiving them. Details about the
471 mobile phones with very good accuracy is of course collected by the
472 phone companies, but this is not the topic of this blog post. The
473 mobile phone radio chatter make it possible to figure out when a cell
474 phone is nearby, as it include the SIM card ID (IMSI). By paying
475 attention over time, one can see when a phone arrive and when it leave
476 an area. I believe it would be nice to make this information more
477 available to the general public, to make more people aware of how
478 their phones are announcing their whereabouts to anyone that care to
481 <p>I am very happy to report that we managed to get something
482 visualizing this information up and running for
483 <a href=
"http://norwaymakers.org/osf17">Oslo Skaperfestival
2017</a>
484 (Oslo Makers Festival) taking place today and tomorrow at Deichmanske
485 library. The solution is based on the
486 <a href=
"http://people.skolelinux.org/pere/blog/Easier_recipe_to_observe_the_cell_phones_around_you.html">simple
487 recipe for listening to GSM chatter
</a> I posted a few days ago, and
488 will show up at the stand of
<a href=
"http://sonen.ifi.uio.no/">Åpen
489 Sone from the Computer Science department of the University of
490 Oslo
</a>. The presentation will show the nearby mobile phones (aka
491 IMSIs) as dots in a web browser graph, with lines to the dot
492 representing mobile base station it is talking to. It was working in
493 the lab yesterday, and was moved into place this morning.
</p>
495 <p>We set up a fairly powerful desktop machine using Debian
496 Buster/Testing with several (five, I believe) RTL2838 DVB-T receivers
497 connected and visualize the visible cell phone towers using an
498 <a href=
"https://github.com/marlow925/hopglass">English version of
499 Hopglass
</a>. A fairly powerfull machine is needed as the
500 grgsm_livemon_headless processes from
501 <a href=
"https://tracker.debian.org/pkg/gr-gsm">gr-gsm
</a> converting
502 the radio signal to data packages is quite CPU intensive.
</p>
504 <p>The frequencies to listen to, are identified using a slightly
505 patched scan-and-livemon (to set the --args values for each receiver),
506 and the Hopglass data is generated using the
507 <a href=
"https://github.com/petterreinholdtsen/IMSI-catcher/tree/meshviewer-output">patches
508 in my meshviewer-output branch
</a>. For some reason we could not get
509 more than four SDRs working. There is also a geographical map trying
510 to show the location of the base stations, but I believe their
511 coordinates are hardcoded to some random location in Germany, I
512 believe. The code should be replaced with code to look up location in
513 a text file, a sqlite database or one of the online databases
515 <a href=
"https://github.com/Oros42/IMSI-catcher/issues/14">the github
516 issue for the topic
</a>.
518 <p>If this sound interesting, visit the stand at the festival!
</p>
523 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>.
528 <div class=
"padding"></div>
531 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Easier_recipe_to_observe_the_cell_phones_around_you.html">Easier recipe to observe the cell phones around you
</a></div>
532 <div class=
"date">24th September
2017</div>
533 <div class=
"body"><p>A little more than a month ago I wrote
534 <a href=
"http://people.skolelinux.org/pere/blog/Simpler_recipe_on_how_to_make_a_simple__7_IMSI_Catcher_using_Debian.html">how
535 to observe the SIM card ID (aka IMSI number) of mobile phones talking
536 to nearby mobile phone base stations using Debian GNU/Linux and a
537 cheap USB software defined radio
</a>, and thus being able to pinpoint
538 the location of people and equipment (like cars and trains) with an
539 accuracy of a few kilometer. Since then we have worked to make the
540 procedure even simpler, and it is now possible to do this without any
541 manual frequency tuning and without building your own packages.
</p>
543 <p>The
<a href=
"https://tracker.debian.org/pkg/gr-gsm">gr-gsm
</a>
544 package is now included in Debian testing and unstable, and the
545 IMSI-catcher code no longer require root access to fetch and decode
546 the GSM data collected using gr-gsm.
</p>
548 <p>Here is an updated recipe, using packages built by Debian and a git
549 clone of two python scripts:
</p>
553 <li>Start with a Debian machine running the Buster version (aka
556 <li>Run '
<tt>apt install gr-gsm python-numpy python-scipy
557 python-scapy
</tt>' as root to install required packages.
</li>
559 <li>Fetch the code decoding GSM packages using '
<tt>git clone
560 github.com/Oros42/IMSI-catcher.git
</tt>'.
</li>
562 <li>Insert USB software defined radio supported by GNU Radio.
</li>
564 <li>Enter the IMSI-catcher directory and run '
<tt>python
565 scan-and-livemon
</tt>' to locate the frequency of nearby base
566 stations and start listening for GSM packages on one of them.
</li>
568 <li>Enter the IMSI-catcher directory and run '
<tt>python
569 simple_IMSI-catcher.py
</tt>' to display the collected information.
</li>
573 <p>Note, due to a bug somewhere the scan-and-livemon program (actually
574 <a href=
"https://github.com/ptrkrysik/gr-gsm/issues/336">its underlying
575 program grgsm_scanner
</a>) do not work with the HackRF radio. It does
576 work with RTL
8232 and other similar USB radio receivers you can get
578 (
<a href=
"https://www.ebay.com/sch/items/?_nkw=rtl+2832">for example
579 from ebay
</a>), so for now the solution is to scan using the RTL radio
580 and only use HackRF for fetching GSM data.
</p>
582 <p>As far as I can tell, a cell phone only show up on one of the
583 frequencies at the time, so if you are going to track and count every
584 cell phone around you, you need to listen to all the frequencies used.
585 To listen to several frequencies, use the --numrecv argument to
586 scan-and-livemon to use several receivers. Further, I am not sure if
587 phones using
3G or
4G will show as talking GSM to base stations, so
588 this approach might not see all phones around you. I typically see
589 0-
400 IMSI numbers an hour when looking around where I live.
</p>
591 <p>I've tried to run the scanner on a
592 <a href=
"https://wiki.debian.org/RaspberryPi">Raspberry Pi
2 and
3
593 running Debian Buster
</a>, but the grgsm_livemon_headless process seem
594 to be too CPU intensive to keep up. When GNU Radio print 'O' to
595 stdout, I am told there it is caused by a buffer overflow between the
596 radio and GNU Radio, caused by the program being unable to read the
597 GSM data fast enough. If you see a stream of 'O's from the terminal
598 where you started scan-and-livemon, you need a give the process more
599 CPU power. Perhaps someone are able to optimize the code to a point
600 where it become possible to set up RPi3 based GSM sniffers? I tried
601 using Raspbian instead of Debian, but there seem to be something wrong
602 with GNU Radio on raspbian, causing glibc to abort().
</p>
607 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>.
612 <div class=
"padding"></div>
615 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Datalagringsdirektivet_kaster_skygger_over_H_yre_og_Arbeiderpartiet.html">Datalagringsdirektivet kaster skygger over Høyre og Arbeiderpartiet
</a></div>
616 <div class=
"date"> 7th September
2017</div>
617 <div class=
"body"><p>For noen dager siden publiserte Jon Wessel-Aas en bloggpost om
618 «
<a href=
"http://www.uhuru.biz/?p=1821">Konklusjonen om datalagring som
619 EU-kommisjonen ikke ville at vi skulle få se
</a>». Det er en
620 interessant gjennomgang av EU-domstolens syn på snurpenotovervåkning
621 av befolkningen, som er klar på at det er i strid med
624 <p>Valgkampen går for fullt i Norge, og om noen få dager er siste
625 frist for å avgi stemme. En ting er sikkert, Høyre og Arbeiderpartiet
627 <a href=
"http://people.skolelinux.org/pere/blog/Datalagringsdirektivet_gj_r_at_Oslo_H_yre_og_Arbeiderparti_ikke_f_r_min_stemme_i__r.html">denne
628 gangen heller
</a>. Jeg har ikke glemt at de tvang igjennom loven som
629 skulle pålegge alle data- og teletjenesteleverandører å overvåke alle
630 sine kunder. En lov som er vedtatt, og aldri opphevet igjen.
</p>
632 <p>Det er tydelig fra diskusjonen rundt grenseløs digital overvåkning
633 (eller "Digital Grenseforsvar" som det kalles i Orvellisk nytale) at
634 hverken Høyre og Arbeiderpartiet har noen prinsipielle sperrer mot å
635 overvåke hele befolkningen, og diskusjonen så langt tyder på at flere
636 av de andre partiene heller ikke har det. Mange av
637 <a href=
"https://data.holderdeord.no/votes/1301946411e">de som stemte
638 for Datalagringsdirektivet i Stortinget
</a> (
64 fra Arbeiderpartiet,
639 25 fra Høyre) er fortsatt aktive og argumenterer fortsatt for å radere
640 vekk mer av innbyggernes privatsfære.
</p>
642 <p>Når myndighetene demonstrerer sin mistillit til folket, tror jeg
643 folket selv bør legge litt innsats i å verne sitt privatliv, ved å ta
644 i bruk ende-til-ende-kryptert kommunikasjon med sine kjente og kjære,
645 og begrense hvor mye privat informasjon som deles med uvedkommende.
646 Det er jo ingenting som tyder på at myndighetene kommer til å være vår
648 <a href=
"http://people.skolelinux.org/pere/blog/How_to_talk_with_your_loved_ones_in_private.html">Det
649 er mange muligheter
</a>. Selv har jeg litt sans for
650 <a href=
"https://ring.cx/">Ring
</a>, som er basert på p2p-teknologi
651 uten sentral kontroll, er fri programvare, og støtter meldinger, tale
652 og video. Systemet er tilgjengelig ut av boksen fra
653 <a href=
"https://tracker.debian.org/pkg/ring">Debian
</a> og
654 <a href=
"https://launchpad.net/ubuntu/+source/ring">Ubuntu
</a>, og det
655 finnes pakker for Android, MacOSX og Windows. Foreløpig er det få
656 brukere med Ring, slik at jeg også bruker
657 <a href=
"https://signal.org/">Signal
</a> som nettleserutvidelse.
</p>
662 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/dld">dld
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg
</a>.
667 <div class=
"padding"></div>
670 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Simpler_recipe_on_how_to_make_a_simple__7_IMSI_Catcher_using_Debian.html">Simpler recipe on how to make a simple $
7 IMSI Catcher using Debian
</a></div>
671 <div class=
"date"> 9th August
2017</div>
672 <div class=
"body"><p>On friday, I came across an interesting article in the Norwegian
673 web based ICT news magazine digi.no on
674 <a href=
"https://www.digi.no/artikler/sikkerhetsforsker-lagde-enkel-imsi-catcher-for-60-kroner-na-kan-mobiler-kartlegges-av-alle/398588">how
675 to collect the IMSI numbers of nearby cell phones
</a> using the cheap
676 DVB-T software defined radios. The article refered to instructions
677 and
<a href=
"https://www.youtube.com/watch?v=UjwgNd_as30">a recipe by
678 Keld Norman on Youtube on how to make a simple $
7 IMSI Catcher
</a>, and I decided to test them out.
</p>
680 <p>The instructions said to use Ubuntu, install pip using apt (to
681 bypass apt), use pip to install pybombs (to bypass both apt and pip),
682 and the ask pybombs to fetch and build everything you need from
683 scratch. I wanted to see if I could do the same on the most recent
684 Debian packages, but this did not work because pybombs tried to build
685 stuff that no longer build with the most recent openssl library or
686 some other version skew problem. While trying to get this recipe
687 working, I learned that the apt-
>pip-
>pybombs route was a long detour,
688 and the only piece of software dependency missing in Debian was the
689 gr-gsm package. I also found out that the lead upstream developer of
690 gr-gsm (the name stand for GNU Radio GSM) project already had a set of
691 Debian packages provided in an Ubuntu PPA repository. All I needed to
692 do was to dget the Debian source package and built it.
</p>
694 <p>The IMSI collector is a python script listening for packages on the
695 loopback network device and printing to the terminal some specific GSM
696 packages with IMSI numbers in them. The code is fairly short and easy
697 to understand. The reason this work is because gr-gsm include a tool
698 to read GSM data from a software defined radio like a DVB-T USB stick
699 and other software defined radios, decode them and inject them into a
700 network device on your Linux machine (using the loopback device by
701 default). This proved to work just fine, and I've been testing the
702 collector for a few days now.
</p>
704 <p>The updated and simpler recipe is thus to
</p>
708 <li>start with a Debian machine running Stretch or newer,
</li>
710 <li>build and install the gr-gsm package available from
711 <a href=
"http://ppa.launchpad.net/ptrkrysik/gr-gsm/ubuntu/pool/main/g/gr-gsm/">http://ppa.launchpad.net/ptrkrysik/gr-gsm/ubuntu/pool/main/g/gr-gsm/
</a>,
</li>
713 <li>clone the git repostory from
<a href=
"https://github.com/Oros42/IMSI-catcher">https://github.com/Oros42/IMSI-catcher
</a>,
</li>
715 <li>run grgsm_livemon and adjust the frequency until the terminal
716 where it was started is filled with a stream of text (meaning you
717 found a GSM station).
</li>
719 <li>go into the IMSI-catcher directory and run 'sudo python simple_IMSI-catcher.py' to extract the IMSI numbers.
</li>
723 <p>To make it even easier in the future to get this sniffer up and
724 running, I decided to package
725 <a href=
"https://github.com/ptrkrysik/gr-gsm/">the gr-gsm project
</a>
726 for Debian (
<a href=
"https://bugs.debian.org/871055">WNPP
727 #
871055</a>), and the package was uploaded into the NEW queue today.
728 Luckily the gnuradio maintainer has promised to help me, as I do not
729 know much about gnuradio stuff yet.
</p>
731 <p>I doubt this "IMSI cacher" is anywhere near as powerfull as
732 commercial tools like
733 <a href=
"https://www.thespyphone.com/portable-imsi-imei-catcher/">The
734 Spy Phone Portable IMSI / IMEI Catcher
</a> or the
735 <a href=
"https://en.wikipedia.org/wiki/Stingray_phone_tracker">Harris
736 Stingray
</a>, but I hope the existance of cheap alternatives can make
737 more people realise how their whereabouts when carrying a cell phone
738 is easily tracked. Seeing the data flow on the screen, realizing that
739 I live close to a police station and knowing that the police is also
740 wearing cell phones, I wonder how hard it would be for criminals to
741 track the position of the police officers to discover when there are
742 police near by, or for foreign military forces to track the location
743 of the Norwegian military forces, or for anyone to track the location
744 of government officials...
</p>
746 <p>It is worth noting that the data reported by the IMSI-catcher
747 script mentioned above is only a fraction of the data broadcasted on
748 the GSM network. It will only collect one frequency at the time,
749 while a typical phone will be using several frequencies, and not all
750 phones will be using the frequencies tracked by the grgsm_livemod
751 program. Also, there is a lot of radio chatter being ignored by the
752 simple_IMSI-catcher script, which would be collected by extending the
753 parser code. I wonder if gr-gsm can be set up to listen to more than
759 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>.
764 <div class=
"padding"></div>
767 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Norwegian_Bokm_l_edition_of_Debian_Administrator_s_Handbook_is_now_available.html">Norwegian Bokmål edition of Debian Administrator's Handbook is now available
</a></div>
768 <div class=
"date">25th July
2017</div>
769 <div class=
"body"><p align=
"center"><img align=
"center" src=
"http://people.skolelinux.org/pere/blog/images/2017-07-25-debian-handbook-nb-testprint.png"/></p>
771 <p>I finally received a copy of the Norwegian Bokmål edition of
772 "
<a href=
"https://debian-handbook.info/">The Debian Administrator's
773 Handbook
</a>". This test copy arrived in the mail a few days ago, and
774 I am very happy to hold the result in my hand. We spent around one and a half year translating it. This paperbook edition
775 <a href="https://debian-handbook.info/get/#norwegian
">is available
776 from lulu.com</a>. If you buy it quickly, you save 25% on the list
777 price. The book is also available for download in electronic form as
778 PDF, EPUB and Mobipocket, as can be
779 <a href="https://debian-handbook.info/browse/nb-NO/stable/
">read online
780 as a web page</a>.</p>
782 <p>This is the second book I publish (the first was the book
783 "<a href=
"http://free-culture.cc/">Free Culture
</a>" by Lawrence Lessig
785 <a href="http://www.lulu.com/shop/lawrence-lessig/free-culture/paperback/product-
22440520.html
">English</a>,
786 <a href="http://www.lulu.com/shop/lawrence-lessig/culture-libre/paperback/product-
22645082.html
">French</a>
788 <a href="http://www.lulu.com/shop/lawrence-lessig/fri-kultur/paperback/product-
22441576.html
">Norwegian
789 Bokmål</a>), and I am very excited to finally wrap up this
791 "<a href=
"http://www.lulu.com/shop/rapha%C3%ABl-hertzog-and-roland-mas/h%C3%A5ndbok-for-debian-administratoren/paperback/product-23262290.html">Håndbok
792 for Debian-administratoren
</a>" will be well received.</p>
797 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian
">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook
">debian-handbook</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>.
802 <div class="padding
"></div>
804 <p style="text-align: right;
"><a href="index.rss
"><img src="http://people.skolelinux.org/pere/blog/xml.gif
" alt="RSS feed
" width="36" height="14" /></a></p>
815 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
01/
">January (4)</a></li>
817 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
02/
">February (3)</a></li>
819 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
03/
">March (5)</a></li>
821 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
04/
">April (2)</a></li>
823 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
06/
">June (5)</a></li>
825 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
07/
">July (1)</a></li>
827 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
08/
">August (1)</a></li>
829 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
09/
">September (3)</a></li>
831 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2017/
10/
">October (5)</a></li>
838 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
01/
">January (3)</a></li>
840 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
02/
">February (2)</a></li>
842 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
03/
">March (3)</a></li>
844 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
04/
">April (8)</a></li>
846 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
05/
">May (8)</a></li>
848 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
06/
">June (2)</a></li>
850 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
07/
">July (2)</a></li>
852 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
08/
">August (5)</a></li>
854 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
09/
">September (2)</a></li>
856 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
10/
">October (3)</a></li>
858 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
11/
">November (8)</a></li>
860 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2016/
12/
">December (5)</a></li>
867 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
01/
">January (7)</a></li>
869 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
02/
">February (6)</a></li>
871 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
03/
">March (1)</a></li>
873 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
04/
">April (4)</a></li>
875 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
05/
">May (3)</a></li>
877 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
06/
">June (4)</a></li>
879 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
07/
">July (6)</a></li>
881 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
08/
">August (2)</a></li>
883 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
09/
">September (2)</a></li>
885 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
10/
">October (9)</a></li>
887 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
11/
">November (6)</a></li>
889 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2015/
12/
">December (3)</a></li>
896 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
01/
">January (2)</a></li>
898 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
02/
">February (3)</a></li>
900 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
03/
">March (8)</a></li>
902 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
04/
">April (7)</a></li>
904 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
05/
">May (1)</a></li>
906 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
06/
">June (2)</a></li>
908 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
07/
">July (2)</a></li>
910 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
08/
">August (2)</a></li>
912 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
09/
">September (5)</a></li>
914 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
10/
">October (6)</a></li>
916 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
11/
">November (3)</a></li>
918 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
12/
">December (5)</a></li>
925 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
01/
">January (11)</a></li>
927 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
02/
">February (9)</a></li>
929 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
03/
">March (9)</a></li>
931 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
04/
">April (6)</a></li>
933 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
05/
">May (9)</a></li>
935 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
06/
">June (10)</a></li>
937 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
07/
">July (7)</a></li>
939 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
08/
">August (3)</a></li>
941 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
09/
">September (5)</a></li>
943 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
10/
">October (7)</a></li>
945 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
11/
">November (9)</a></li>
947 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
12/
">December (3)</a></li>
954 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
01/
">January (7)</a></li>
956 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
02/
">February (10)</a></li>
958 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
03/
">March (17)</a></li>
960 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
04/
">April (12)</a></li>
962 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
05/
">May (12)</a></li>
964 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
06/
">June (20)</a></li>
966 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
07/
">July (17)</a></li>
968 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
08/
">August (6)</a></li>
970 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
09/
">September (9)</a></li>
972 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
10/
">October (17)</a></li>
974 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
11/
">November (10)</a></li>
976 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
12/
">December (7)</a></li>
983 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
01/
">January (16)</a></li>
985 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
02/
">February (6)</a></li>
987 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
03/
">March (6)</a></li>
989 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
04/
">April (7)</a></li>
991 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
05/
">May (3)</a></li>
993 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
06/
">June (2)</a></li>
995 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
07/
">July (7)</a></li>
997 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
08/
">August (6)</a></li>
999 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
09/
">September (4)</a></li>
1001 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
10/
">October (2)</a></li>
1003 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
11/
">November (3)</a></li>
1005 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
12/
">December (1)</a></li>
1012 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
01/
">January (2)</a></li>
1014 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
02/
">February (1)</a></li>
1016 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
03/
">March (3)</a></li>
1018 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
04/
">April (3)</a></li>
1020 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
05/
">May (9)</a></li>
1022 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
06/
">June (14)</a></li>
1024 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
07/
">July (12)</a></li>
1026 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
08/
">August (13)</a></li>
1028 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
09/
">September (7)</a></li>
1030 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
10/
">October (9)</a></li>
1032 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
11/
">November (13)</a></li>
1034 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
12/
">December (12)</a></li>
1041 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
01/
">January (8)</a></li>
1043 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
02/
">February (8)</a></li>
1045 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
03/
">March (12)</a></li>
1047 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
04/
">April (10)</a></li>
1049 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
05/
">May (9)</a></li>
1051 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
06/
">June (3)</a></li>
1053 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
07/
">July (4)</a></li>
1055 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
08/
">August (3)</a></li>
1057 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
09/
">September (1)</a></li>
1059 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
10/
">October (2)</a></li>
1061 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
11/
">November (3)</a></li>
1063 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
12/
">December (3)</a></li>
1070 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2008/
11/
">November (5)</a></li>
1072 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2008/
12/
">December (7)</a></li>
1083 <li><a href="http://people.skolelinux.org/pere/blog/tags/
3d-printer
">3d-printer (14)</a></li>
1085 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga
">amiga (1)</a></li>
1087 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros
">aros (1)</a></li>
1089 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid
">bankid (4)</a></li>
1091 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin
">bitcoin (9)</a></li>
1093 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem
">bootsystem (16)</a></li>
1095 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa
">bsa (2)</a></li>
1097 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath
">chrpath (2)</a></li>
1099 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian
">debian (154)</a></li>
1101 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu
">debian edu (158)</a></li>
1103 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook
">debian-handbook (4)</a></li>
1105 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan
">digistan (10)</a></li>
1107 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld
">dld (17)</a></li>
1109 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook
">docbook (24)</a></li>
1111 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser
">drivstoffpriser (4)</a></li>
1113 <li><a href="http://people.skolelinux.org/pere/blog/tags/english
">english (357)</a></li>
1115 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami
">fiksgatami (23)</a></li>
1117 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling
">fildeling (12)</a></li>
1119 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture
">freeculture (30)</a></li>
1121 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox
">freedombox (9)</a></li>
1123 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen
">frikanalen (18)</a></li>
1125 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264
">h264 (20)</a></li>
1127 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju
">intervju (42)</a></li>
1129 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram
">isenkram (15)</a></li>
1131 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart
">kart (20)</a></li>
1133 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap
">ldap (9)</a></li>
1135 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker
">lenker (8)</a></li>
1137 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd
">lsdvd (2)</a></li>
1139 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp
">ltsp (1)</a></li>
1141 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network
">mesh network (8)</a></li>
1143 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia
">multimedia (39)</a></li>
1145 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software
">nice free software (9)</a></li>
1147 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk
">norsk (293)</a></li>
1149 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug
">nuug (189)</a></li>
1151 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn
">offentlig innsyn (33)</a></li>
1153 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311
">open311 (2)</a></li>
1155 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett
">opphavsrett (65)</a></li>
1157 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern
">personvern (104)</a></li>
1159 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid
">raid (1)</a></li>
1161 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos
">reactos (1)</a></li>
1163 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap
">reprap (11)</a></li>
1165 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid
">rfid (3)</a></li>
1167 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot
">robot (10)</a></li>
1169 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss
">rss (1)</a></li>
1171 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter
">ruter (5)</a></li>
1173 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki
">scraperwiki (2)</a></li>
1175 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet
">sikkerhet (53)</a></li>
1177 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary
">sitesummary (4)</a></li>
1179 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis
">skepsis (5)</a></li>
1181 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard
">standard (55)</a></li>
1183 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll
">stavekontroll (6)</a></li>
1185 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget
">stortinget (12)</a></li>
1187 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance
">surveillance (52)</a></li>
1189 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin
">sysadmin (3)</a></li>
1191 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix
">usenix (2)</a></li>
1193 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg
">valg (9)</a></li>
1195 <li><a href="http://people.skolelinux.org/pere/blog/tags/video
">video (59)</a></li>
1197 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap
">vitenskap (4)</a></li>
1199 <li><a href="http://people.skolelinux.org/pere/blog/tags/web
">web (40)</a></li>
1205 <p style="text-align: right
">
1206 Created by <a href="http://steve.org.uk/Software/chronicle
">Chronicle v4.6</a>