]> pere.pagekite.me Git - homepage.git/blobdiff - blog/index.rss
pkill do not work yet.
[homepage.git] / blog / index.rss
index e6eaa49ac02f1da9b863a6101753b6e177900025..60979bb25881ce094abeb2c84b6922f1dacebe5f 100644 (file)
@@ -6,6 +6,459 @@
                 <link>http://people.skolelinux.org/pere/blog/</link>
                 <atom:link href="http://people.skolelinux.org/pere/blog/index.rss" rel="self" type="application/rss+xml" />
        
+       <item>
+               <title>Testing sysvinit from experimental in Debian Hurd</title>
+               <link>http://people.skolelinux.org/pere/blog/Testing_sysvinit_from_experimental_in_Debian_Hurd.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Testing_sysvinit_from_experimental_in_Debian_Hurd.html</guid>
+                <pubDate>Mon, 3 Feb 2014 13:40:00 +0100</pubDate>
+               <description>&lt;p&gt;A few days ago I decided to try to help the Hurd people to get
+their changes into sysvinit, to allow them to use the normal sysvinit
+boot system instead of their old one.  This follow up on the
+&lt;a href=&quot;https://teythoon.cryptobitch.de//categories/gsoc.html&quot;&gt;great
+Google Summer of Code work&lt;/a&gt; done last summer by Justus Winter to
+get Debian on Hurd working more like Debian on Linux.  To get started,
+I downloaded a prebuilt hard disk image from
+&lt;a href=&quot;http://ftp.debian-ports.org/debian-cd/hurd-i386/current/debian-hurd.img.tar.gz&quot;&gt;http://ftp.debian-ports.org/debian-cd/hurd-i386/current/debian-hurd.img.tar.gz&lt;/a&gt;,
+and started it using virt-manager.&lt;/p&gt;
+
+&lt;p&gt;The first think I had to do after logging in (root without any
+password) was to get the network operational.  I followed
+&lt;a href=&quot;https://www.debian.org/ports/hurd/hurd-install&quot;&gt;the
+instructions on the Debian GNU/Hurd ports page&lt;/a&gt; and ran these
+commands as root to get the machine to accept a IP address from the
+kvm internal DHCP server:&lt;/p&gt;
+
+&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
+settrans -fgap /dev/netdde /hurd/netdde 
+pkill pfinet
+pkill devnode
+dhclient -v /dev/eth0
+&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
+
+&lt;p&gt;After this, the machine had internet connectivity, and I could
+upgrade it and install the sysvinit packages from experimental and
+enable it as the default boot system in Hurd.&lt;/p&gt;
+
+&lt;p&gt;But before I did that, I set a password on the root user, as ssh is
+running on the machine it for ssh login to work a password need to be
+set.  Also, note that a bug somewhere in openssh on Hurd block
+compression from working.  Remember to turn that off on the client
+side.&lt;/p&gt;
+
+&lt;p&gt;Run these commands as root to upgrade and test the new sysvinit
+stuff:&lt;/p&gt;
+
+&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
+cat &gt; /etc/apt/sources.list.d/experimental.list &amp;lt;&amp;lt;EOF
+deb http://http.debian.net/debian/ experimental main
+EOF
+apt-get update
+apt-get dist-upgrade
+apt-get install -t experimental initscripts sysv-rc sysvinit \
+    sysvinit-core sysvinit-utils 
+update-alternatives --config runsystem
+&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
+
+&lt;p&gt;To reboot after switching boot system, you have to use
+&lt;tt&gt;reboot-hurd&lt;/tt&gt; instead of just &lt;tt&gt;reboot&lt;/tt&gt;, as there is not
+yet a sysvinit process able to receive the signals from the normal
+&#39;reboot&#39; command.  After switching to sysvinit as the boot system,
+upgrading every package and rebooting, the network come up with DHCP
+after boot as it should, and the settrans/pkill hack mentioned at the
+start is no longer needed.  But for some strange reason, there are no
+longer any login prompt in the virtual console, so I logged in using
+ssh instead.
+
+&lt;p&gt;Note that there are some race conditions in Hurd making the boot
+fail some times.  No idea what the cause is, but hope the Hurd porters
+figure it out.  At least Justus said on IRC (#debian-hurd on
+irc.debian.org) that they are aware of the problem.  A way to reduce
+the impact is to upgrade to the Hurd packages built by Justus by
+adding this repository to the machine:&lt;/p&gt;
+
+&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
+cat &gt; /etc/apt/sources.list.d/hurd-ci.list &amp;lt;&amp;lt;EOF
+deb http://darnassus.sceen.net/~teythoon/hurd-ci/ sid main
+EOF
+&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
+
+&lt;p&gt;At the moment the prebuilt virtual machine get some packages from
+http://ftp.debian-ports.org/debian, because some of the packages in
+unstable do not yet include the required patches that are lingering in
+BTS.  This is the completely list of &quot;unofficial&quot; packages installed:&lt;/p&gt;
+
+&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
+# aptitude search &#39;?narrow(?version(CURRENT),?origin(Debian Ports))&#39;
+i   emacs                   - GNU Emacs editor (metapackage)
+i   gdb                     - GNU Debugger
+i   hurd-recommended        - Miscellaneous translators
+i   isc-dhcp-client         - ISC DHCP client
+i   isc-dhcp-common         - common files used by all the isc-dhcp* packages
+i   libc-bin                - Embedded GNU C Library: Binaries
+i   libc-dev-bin            - Embedded GNU C Library: Development binaries
+i   libc0.3                 - Embedded GNU C Library: Shared libraries
+i A libc0.3-dbg             - Embedded GNU C Library: detached debugging symbols
+i   libc0.3-dev             - Embedded GNU C Library: Development Libraries and Hea
+i   multiarch-support       - Transitional package to ensure multiarch compatibilit
+i A x11-common              - X Window System (X.Org) infrastructure
+i   xorg                    - X.Org X Window System
+i A xserver-xorg            - X.Org X server
+i A xserver-xorg-input-all  - X.Org X server -- input driver metapackage
+#
+&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
+
+&lt;p&gt;All in all, testing hurd has been an interesting experience. :)
+X.org did not work out of the box and I never took the time to follow
+the porters instructions to fix it.  This time I was interested in the
+command line stuff.&lt;p&gt;
+</description>
+       </item>
+       
+       <item>
+               <title>A fist full of non-anonymous Bitcoins</title>
+               <link>http://people.skolelinux.org/pere/blog/A_fist_full_of_non_anonymous_Bitcoins.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_fist_full_of_non_anonymous_Bitcoins.html</guid>
+                <pubDate>Wed, 29 Jan 2014 14:10:00 +0100</pubDate>
+               <description>&lt;p&gt;Bitcoin is a incredible use of peer to peer communication and
+encryption, allowing direct and immediate money transfer without any
+central control.  It is sometimes claimed to be ideal for illegal
+activity, which I believe is quite a long way from the truth.  At least
+I would not conduct illegal money transfers using a system where the
+details of every transaction are kept forever.  This point is
+investigated in
+&lt;a href=&quot;https://www.usenix.org/publications/login&quot;&gt;USENIX ;login:&lt;/a&gt;
+from December 2013, in the article
+&quot;&lt;a href=&quot;https://www.usenix.org/system/files/login/articles/03_meiklejohn-online.pdf&quot;&gt;A
+Fistful of Bitcoins - Characterizing Payments Among Men with No
+Names&lt;/a&gt;&quot; by Sarah Meiklejohn, Marjori Pomarole,Grant Jordan, Kirill
+Levchenko, Damon McCoy, Geoffrey M. Voelker, and Stefan Savage.  They
+analyse the transaction log in the Bitcoin system, using it to find
+addresses belong to individuals and organisations and follow the flow
+of money from both Bitcoin theft and trades on Silk Road to where the
+money end up.  This is how they wrap up their article:&lt;/p&gt;
+
+&lt;p&gt;&lt;blockquote&gt;
+&lt;p&gt;&quot;To demonstrate the usefulness of this type of analysis, we turned
+our attention to criminal activity. In the Bitcoin economy, criminal
+activity can appear in a number of forms, such as dealing drugs on
+Silk Road or simply stealing someone else’s bitcoins. We followed the
+flow of bitcoins out of Silk Road (in particular, from one notorious
+address) and from a number of highly publicized thefts to see whether
+we could track the bitcoins to known services. Although some of the
+thieves attempted to use sophisticated mixing techniques (or possibly
+mix services) to obscure the flow of bitcoins, for the most part
+tracking the bitcoins was quite straightforward, and we ultimately saw
+large quantities of bitcoins flow to a variety of exchanges directly
+from the point of theft (or the withdrawal from Silk Road).&lt;/p&gt;
+
+&lt;p&gt;As acknowledged above, following stolen bitcoins to the point at
+which they are deposited into an exchange does not in itself identify
+the thief; however, it does enable further de-anonymization in the
+case in which certain agencies can determine (through, for example,
+subpoena power) the real-world owner of the account into which the
+stolen bitcoins were deposited.  Because such exchanges seem to serve
+as chokepoints into and out of the Bitcoin economy (i.e., there are
+few alternative ways to cash out), we conclude that using Bitcoin for
+money laundering or other illicit purposes does not (at least at
+present) seem to be particularly attractive.&quot;&lt;/p&gt;
+&lt;/blockquote&gt;&lt;p&gt;
+
+&lt;p&gt;These researches are not the first to analyse the Bitcoin
+transaction log.  The 2011 paper
+&quot;&lt;a href=&quot;http://arxiv.org/abs/1107.4524&quot;&gt;An Analysis of Anonymity in
+the Bitcoin System&lt;/A&gt;&quot; by Fergal Reid and Martin Harrigan is
+summarized like this:&lt;/p&gt;
+
+&lt;p&gt;&lt;blockquote&gt;
+&quot;Anonymity in Bitcoin, a peer-to-peer electronic currency system, is a
+complicated issue. Within the system, users are identified by
+public-keys only. An attacker wishing to de-anonymize its users will
+attempt to construct the one-to-many mapping between users and
+public-keys and associate information external to the system with the
+users. Bitcoin tries to prevent this attack by storing the mapping of
+a user to his or her public-keys on that user&#39;s node only and by
+allowing each user to generate as many public-keys as required. In
+this chapter we consider the topological structure of two networks
+derived from Bitcoin&#39;s public transaction history. We show that the
+two networks have a non-trivial topological structure, provide
+complementary views of the Bitcoin system and have implications for
+anonymity. We combine these structures with external information and
+techniques such as context discovery and flow analysis to investigate
+an alleged theft of Bitcoins, which, at the time of the theft, had a
+market value of approximately half a million U.S. dollars.&quot;
+&lt;/blockquote&gt;&lt;/p&gt;
+
+&lt;p&gt;I hope these references can help kill the urban myth that Bitcoin
+is anonymous.  It isn&#39;t really a good fit for illegal activites.  Use
+cash if you need to stay anonymous, at least until regular DNA
+sampling of notes and coins become the norm. :)&lt;/p&gt;
+
+&lt;p&gt;As usual, if you use Bitcoin and want to show your support of my
+activities, please send Bitcoin donations to my address
+&lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
+</description>
+       </item>
+       
+       <item>
+               <title>New chrpath release 0.16</title>
+               <link>http://people.skolelinux.org/pere/blog/New_chrpath_release_0_16.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/New_chrpath_release_0_16.html</guid>
+                <pubDate>Tue, 14 Jan 2014 11:00:00 +0100</pubDate>
+               <description>&lt;p&gt;&lt;a href=&quot;http://www.coverity.com/&quot;&gt;Coverity&lt;/a&gt; is a nice tool to
+find problems in C, C++ and Java code using static source code
+analysis.  It can detect a lot of different problems, and is very
+useful to find memory and locking bugs in the error handling part of
+the source.  The company behind it provide
+&lt;a href=&quot;https://scan.coverity.com/&quot;&gt;check of free software projects as
+a community service&lt;/a&gt;, and many hundred free software projects are
+already checked.  A few days ago I decided to have a closer look at
+the Coverity system, and discovered that the
+&lt;a href=&quot;http://www.gnu.org/software/gnash/&quot;&gt;gnash&lt;/a&gt; and
+&lt;a href=&quot;http://sourceforge.net/projects/ipmitool/&quot;&gt;ipmitool&lt;/a&gt;
+projects I am involved with was already registered.  But these are
+fairly big, and I would also like to have a small and easy project to
+check, and decided to &lt;a href=&quot;http://scan.coverity.com/projects/1179&quot;&gt;request
+checking of the chrpath project&lt;/a&gt;.  It was
+added to the checker and discovered seven potential defects.  Six of
+these were real, mostly resource &quot;leak&quot; when the program detected an
+error.  Nothing serious, as the resources would be released a fraction
+of a second later when the program exited because of the error, but it
+is nice to do it right in case the source of the program some time in
+the future end up in a library.  Having fixed all defects and added
+&lt;a href=&quot;https://lists.alioth.debian.org/mailman/listinfo/chrpath-devel&quot;&gt;a
+mailing list for the chrpath developers&lt;/a&gt;, I decided it was time to
+publish a new release.  These are the release notes:&lt;/p&gt;
+
+&lt;p&gt;New in 0.16 released 2014-01-14:&lt;/p&gt;
+
+&lt;ul&gt;
+
+  &lt;li&gt;Fixed all minor bugs discovered by Coverity.&lt;/li&gt;
+  &lt;li&gt;Updated config.sub and config.guess from the GNU project.&lt;/li&gt;
+  &lt;li&gt;Mention new project mailing list in the documentation.&lt;/li&gt;
+
+&lt;/ul&gt;
+
+&lt;p&gt;You can
+&lt;a href=&quot;https://alioth.debian.org/frs/?group_id=31052&quot;&gt;download the
+new version 0.16 from alioth&lt;/a&gt;.  Please let us know via the Alioth
+project if something is wrong with the new release.  The test suite
+did not discover any old errors, so if you find a new one, please also
+include a test suite check.&lt;/p&gt;
+</description>
+       </item>
+       
+       <item>
+               <title>Debian Edu interview: Dominik George</title>
+               <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Dominik_George.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Dominik_George.html</guid>
+                <pubDate>Wed, 25 Dec 2013 13:40:00 +0100</pubDate>
+               <description>&lt;p&gt;The &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux
+project&lt;/a&gt; consist of both newcomers and old timers, and this time I
+was able to get an interview with a newcomer in the project who showed
+up on the IRC channel a few weeks ago to let us know about his
+successful installation of Debian Edu Wheezy in his School.  Say hello
+to &lt;a href=&quot;https://www.ohloh.net/accounts/Natureshadow&quot;&gt;Dominik
+George&lt;/a&gt;.&lt;/p&gt;
+
+&lt;!-- http://www.dominik-george.de/images/foto.jpg --&gt;
+
+&lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
+
+&lt;p&gt;I am a 23 year-old student from Germany who has spent half of his
+life with open source. In &quot;real life&quot;, I am, as already mentioned, a
+student in the fields of Computer Science, Electrical Engineering,
+Information Technologies and Anglistics. Due to my (only partially
+voluntary) huge engagement in the open source world, these things are
+a bit vacant right now however.&lt;/p&gt;
+
+&lt;p&gt;I also have been working as a project teacher at a Gymasnium
+(public school) for various years now. I took up that work some time
+around 2005 when still attending that school myself and have continued
+it until today. I also had been running the (kind of very advanced)
+network of that school together with a team of very interested and
+talented students in the age of 11 to 15 years, who took the chance to
+learn a lot about open source and networking before I left the school
+to help building another school&#39;s informational education concept from
+scratch.&lt;/p&gt;
+
+&lt;p&gt;That said, one might see me as a kind of &quot;glue&quot; between school kids
+and the elderly of teachers as well as between the open source
+ecosystem and the (even more complex) educational ecosystem.&lt;/p&gt;
+
+&lt;p&gt;When I am not busy with open source or education, I like Geocaching
+and cycling.&lt;/p&gt;
+
+&lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
+project?&lt;/strong&gt;&lt;/p&gt;
+
+&lt;p&gt;I think that happened some time around 2009 when I first attended
+&lt;a href=&quot;http://www.froscon.org&quot;&gt;FrOSCon&lt;/a&gt; and visited the project
+booth. I think I wasn&#39;t too interested back then because I used to
+have an attitude of disliking software that does too much stuff on its
+own. Maybe I was too inexperienced to realise the upsides of an
+&quot;out-of-the-box&quot; solution ;).&lt;/p&gt;
+
+&lt;p&gt;The first time I actively talked to Skolelinux people was at
+&lt;a href=&quot;http://www.openrheinruhr.de&quot;&gt;OpenRheinRuhr&lt;/a&gt; 2011 when the
+BiscuIT project, a home-grewn software used by my school for various
+really cool things from timetables and class contact lists to lunch
+ordering, student ID card printing and project elections first got to
+a stage where it could have been published. I asked the Skolelinux
+guys running the booth if the project were interested in it and gave a
+small demonstration, but there wasn&#39;t any real feedback and the guys
+seemed rather uninterested.&lt;/p&gt;
+
+&lt;p&gt;After I left the school where I developed the software, it got
+mostly lost, but I am now reimplementing it for my new school. I have
+reusability and compatibility in mind, and I hop there will be a new
+basis for contributing it to the Skolelinux project ;)!&lt;/p&gt;
+
+&lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux / Debian
+Edu?&lt;/strong&gt;&lt;/p&gt;
+
+&lt;p&gt;The most important advantage seems to be that it &quot;just
+works&quot;. After overcoming some minor (but still very annoying) glitches
+in the installer, I got a fully functional, working school network,
+without the month-long hassle I experienced when setting all that up
+from scratch in earlier years. And above that, it rocked - I didn&#39;t
+have any real hardware at hand, because the school was just founded
+and has no money whatsoever, so I installed a combined server (main
+server, terminal services and workstation) in a VM on my personal
+notebook, bridging the LTSP network interface to the ethernet port,
+and then PXE-booted the Windows notebooks that were lying around from
+it. I could use 8 clients without any performance issues, by using a
+tiny little VM on a tiny little notebook. I think that&#39;s enough to say
+that it rocks!&lt;/p&gt;
+
+&lt;p&gt;Secondly, there are marketing reasons. Life&#39;s bad, and so no
+politician will ever permit a setup described as &quot;Debian, an universal
+operating system, with some really cool educational tools&quot; while they
+will be jsut fine with &quot;Skolelinux, a single-purpose solution for your
+school network&quot;, even if both turn out to be the very same thing (yes,
+this is unfair towards the Skolelinux project, and must not be taken
+too seriously - you get the idea, anyway).&lt;/p&gt;
+
+&lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
+Edu?&lt;/strong&gt;&lt;/p&gt;
+
+&lt;p&gt;I have not been involved with Skolelinux long enough to really
+answer this question in a fair way. Thus, please allow me to put it in
+other words: &quot;What do you expect from Skolelinux to keep liking it?&quot; I
+can list a few points about that:&lt;/p&gt;
+
+&lt;ul&gt;
+
+ &lt;li&gt;always strive to get all things integrated into Debian upstream
+ &lt;li&gt;be open to discussion about changes and the like, even with newcomers
+ &lt;li&gt;be helpful at being helpful ;)
+
+&lt;/ul&gt;
+
+&lt;p&gt;I&#39;m really sorry I cannot say much more about that :(!&lt;/p&gt;
+
+&lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
+
+&lt;p&gt;First of all, all software I use is free and open. I have abandoned
+all non-free software (except for firmware on my darned phone) this
+year.&lt;/p&gt;
+
+&lt;p&gt;I run Debian GNU/Linux on all PC systems I use. On that, I mostly
+run text tools. I use
+&lt;a href=&quot;https://www.mirbsd.org/mksh.htm&quot;&gt;mksh&lt;/a&gt; as shell,
+&lt;a href=&quot;https://www.mirbsd.org/jupp.htm&quot;&gt;jupp&lt;/a&gt; as very advanced
+text editor (I even got the developer to help me write a script/macro
+based full-featured student management software with the two),
+&lt;a href=&quot;http://mcabber.com/&quot;&gt;mcabber&lt;/a&gt; for XMPP and
+&lt;a href=&quot;http://www.irssi.org/&quot;&gt;irssi&lt;/a&gt; for IRC. For that overly
+coloured world called the WWW, I use
+&lt;a href=&quot;https://www.mozilla.org/en-US/firefox/new/&quot;&gt;Iceweasel
+(Firefox)&lt;/a&gt;. Oh, and &lt;a href=&quot;http://www.mutt.org/&quot;&gt;mutt&lt;/a&gt; for
+e-mail.&lt;/p&gt;
+
+&lt;p&gt;However, while I am personally aware of the fact that text tools
+are more efficient and powerful than anything else, I also use (or at
+least operate) some tools that are suitable to bring open source to
+kids. One of these things is &lt;a href=&quot;http://jappix.org/&quot;&gt;Jappix&lt;/a&gt;,
+which I already introduced to some kids even before they got aware of
+Facebook, making them see for themselves that they do not need
+Facebook now ;).&lt;/p&gt;
+
+&lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
+get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
+
+&lt;p&gt;Well, that&#39;s a two-sided thing. One side is what I believe, and one
+side is what I have experienced.&lt;/p&gt;
+
+&lt;p&gt;I believe that the right strategy is showing them the benefits. But
+that won&#39;t work out as long as the acceptance of free alternatives
+grows globally. What I mean is that if all the kids are almost forced
+to use Windows, Facebook, Skype, you name it at home, they will not
+see why they would want to use alternatives at school. I have seen
+students take seat in front of a fully-functional, modern Debian
+desktop that could do anything their Windows at home could do, and
+they jsut refused to use it because &quot;Linux sucks&quot;. It is something
+that makes the council of our city spend around 600000 € to buy
+software - not including hardware, mind you - for operating school
+networks, and for installing a system that, as has been proved, does
+not work. For those of you readers who are good at maths, have you
+already found out how many lives could have been saved with that money
+if we had instead used it to bring education to parts of the world
+that need it? I have, and found it to be nothing less dramatic than
+plain criminal.&lt;/p&gt;
+
+&lt;p&gt;That said, the only feasible way appears to be the bottom up
+method. We have to bring free software to kids and parents. I have
+founded an association named
+&lt;a href=&quot;https://www.teckids.org&quot;&gt;Teckids&lt;/a&gt; here in Germany that does
+just that. We organise several events for kids and adolescents in the
+area of free and open source software, for example the
+&lt;a href=&quot;http://kids.froscon.org&quot;&gt;FrogLabs&lt;/a&gt;, which share staff with
+Teckids and are the youth programme of
+&lt;a href=&quot;http://www.froscon.org&quot;&gt;the Free and Open Source Software
+Conference (FrOSCon)&lt;/a&gt;. We do a lot more than most other conferences
+- this year, we first offered the FrogLabs as a holiday camp for kids
+aged 10 to 16. It was a huge success, with approx. 30 kids taking part
+and learning with and about free software through a whole weekend. All
+of us had a lot of fun, and the results were really exciting.&lt;/p&gt;
+
+&lt;p&gt;Apart from that, we are preparing a campaign that is supposed to bring
+the message of free alternatives to stuff kids use every day to them and
+their parents, e.g. the use of Jabber / Jappix instead of Facebook and
+Skype. To make that possible, we are planning to get together a team of
+clever kids who understand very well what their peers need and can bring
+it across to them. So we will have a peer-driven network of adolescents
+who teach each other and collect feedback from the community of minors.
+We then take that feedback and our own experience to work closely with
+open source projects, such as Skolelinux or Jappix, at improving their
+software in a way that makes it more and more attractive for the target
+group. At least I hope that we will have good cooperation with
+Skolelinux in the future ;)!&lt;/p&gt;
+
+&lt;p&gt;So in conclusion, what I believe is that, if it weren&#39;t for the world
+being so bad, it should be very clear to the political decision makers
+that the only way to go nowadays is free software for various reasons,
+but I have learnt that the only way that seems to work is bottom up.&lt;/p&gt;
+
+&lt;!--
+
+&gt;  * Who should be interviewed with this questions in the future?
+
+That&#39;s probably the hardest question of them all, as I do not know the
+community. However, I would be willing to do the following:
+
+ &lt;li&gt;Run an interview with a German headteacher who is very open to
+   free software, and also prefers it, but cannot really use it because
+   of the decision makers above;
+ &lt;li&gt;Run interviews with some kids, both with and without previous
+   knowledge about free software
+
+If that is wanted, just let me know ;).
+
+--&gt;
+</description>
+       </item>
+       
        <item>
                <title>Dugnadsnett for alle stiller på Oslo Maker Faire i januar 2014</title>
                <link>http://people.skolelinux.org/pere/blog/Dugnadsnett_for_alle_stiller_p__Oslo_Maker_Faire_i_januar_2014.html</link>
@@ -386,402 +839,5 @@ Scraperwiki for de som vil grave dypere.&lt;/p&gt;
 </description>
        </item>
        
-       <item>
-               <title>All drones should be radio marked with what they do and who they belong to</title>
-               <link>http://people.skolelinux.org/pere/blog/All_drones_should_be_radio_marked_with_what_they_do_and_who_they_belong_to.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/All_drones_should_be_radio_marked_with_what_they_do_and_who_they_belong_to.html</guid>
-                <pubDate>Thu, 21 Nov 2013 15:40:00 +0100</pubDate>
-               <description>&lt;p&gt;Drones, flying robots, are getting more and more popular.  The most
-know ones are the killer drones used by some government to murder
-people they do not like without giving them the chance of a fair
-trial, but the technology have many good uses too, from mapping and
-forest maintenance to photography and search and rescue.  I am sure it
-is just a question of time before &quot;bad drones&quot; are in the hands of
-private enterprises and not only state criminals but petty criminals
-too.  The drone technology is very useful and very dangerous.  To have
-some control over the use of drones, I agree with Daniel Suarez in his
-TED talk
-&quot;&lt;a href=&quot;https://archive.org/details/DanielSuarez_2013G&quot;&gt;The kill
-decision shouldn&#39;t belong to a robot&lt;/a&gt;&quot;, where he suggested this
-little gem to keep the good while limiting the bad use of drones:&lt;/p&gt;
-&lt;blockquote&gt;
-
-&lt;p&gt;Each robot and drone should have a cryptographically signed
-I.D. burned in at the factory that can be used to track its movement
-through public spaces. We have license plates on cars, tail numbers on
-aircraft. This is no different. And every citizen should be able to
-download an app that shows the population of drones and autonomous
-vehicles moving through public spaces around them, both right now and
-historically. And civic leaders should deploy sensors and civic drones
-to detect rogue drones, and instead of sending killer drones of their
-own up to shoot them down, they should notify humans to their
-presence. And in certain very high-security areas, perhaps civic
-drones would snare them and drag them off to a bomb disposal facility.&lt;/p&gt;
-
-&lt;p&gt;But notice, this is more an immune system than a weapons system. It
-would allow us to avail ourselves of the use of autonomous vehicles
-and drones while still preserving our open, civil society.&lt;/p&gt;
-
-&lt;/blockquote&gt;
-
-&lt;p&gt;The key is that &lt;em&gt;every citizen&lt;/em&gt; should be able to read the
-radio beacons sent from the drones in the area, to be able to check
-both the government and others use of drones.  For such control to be
-effective, everyone must be able to do it.  What should such beacon
-contain?  At least formal owner, purpose, contact information and GPS
-location.  Probably also the origin and target position of the current
-flight.  And perhaps some registration number to be able to look up
-the drone in a central database tracking their movement.  Robots
-should not have privacy.  It is people who need privacy.&lt;/p&gt;
-</description>
-       </item>
-       
-       <item>
-               <title>Lets make a wireless community network in Oslo!</title>
-               <link>http://people.skolelinux.org/pere/blog/Lets_make_a_wireless_community_network_in_Oslo_.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lets_make_a_wireless_community_network_in_Oslo_.html</guid>
-                <pubDate>Wed, 13 Nov 2013 21:00:00 +0100</pubDate>
-               <description>&lt;p&gt;Today NUUG and Hackeriet announced
-&lt;a href=&quot;http://www.nuug.no/news/Bli_med___bygge_dugnadsnett_for_alle_i_Oslo.shtml&quot;&gt;our
-plans to join forces and create a wireless community network in
-Oslo&lt;/a&gt;.  The workshop to help people get started will take place
-Thursday 2013-11-28, but we already are collecting the geolocation of
-people joining forces to make this happen.  We have
-&lt;a href=&quot;https://github.com/petterreinholdtsen/meshfx-node/blob/master/oslo-nodes.geojson&quot;&gt;9
-locations plotted on the map&lt;/a&gt;, but we will need more before we have
-a connected mesh spread across Oslo.  If this sound interesting to
-you, please join us at the workshop.  If you are too impatient to wait
-15 days, please join us on the IRC channel
-&lt;a href=&quot;irc://irc.freenode.net/%23nuug&quot;&gt;#nuug on irc.freenode.net&lt;/a&gt;
-right away. :)&lt;/p&gt;
-</description>
-       </item>
-       
-       <item>
-               <title>Running TP-Link MR3040 as a batman-adv mesh node using openwrt</title>
-               <link>http://people.skolelinux.org/pere/blog/Running_TP_Link_MR3040_as_a_batman_adv_mesh_node_using_openwrt.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Running_TP_Link_MR3040_as_a_batman_adv_mesh_node_using_openwrt.html</guid>
-                <pubDate>Sun, 10 Nov 2013 23:00:00 +0100</pubDate>
-               <description>&lt;p&gt;Continuing my research into mesh networking, I was recommended to
-use TP-Link 3040 and 3600 access points as mesh nodes, and the pair I
-bought arrived on Friday.  Here are my notes on how to set up the
-MR3040 as a mesh node using
-&lt;a href=&quot;http://www.openwrt.org/&quot;&gt;OpenWrt&lt;/a&gt;.&lt;/p&gt;
-
-&lt;p&gt;I started by following the instructions on the OpenWRT wiki for
-&lt;a href=&quot;http://wiki.openwrt.org/toh/tp-link/tl-mr3040&quot;&gt;TL-MR3040&lt;/a&gt;,
-and downloaded
-&lt;a href=&quot;http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin&quot;&gt;the
-recommended firmware image&lt;/a&gt;
-(openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin) and
-uploaded it into the original web interface.  The flashing went fine,
-and the machine was available via telnet on the ethernet port.  After
-logging in and setting the root password, ssh was available and I
-could start to set it up as a batman-adv mesh node.&lt;/p&gt;
-
-&lt;p&gt;I started off by reading the instructions from
-&lt;a href=&quot;http://wirelessafrica.meraka.org.za/wiki/index.php?title=Antoine&#39;s_Research&quot;&gt;Wireless
-Africa&lt;/a&gt;, which had quite a lot of useful information, but
-eventually I followed the recipe from the Open Mesh wiki for
-&lt;a href=&quot;http://www.open-mesh.org/projects/batman-adv/wiki/Batman-adv-openwrt-config&quot;&gt;using
-batman-adv on OpenWrt&lt;/a&gt;.  A small snag was the fact that the
-&lt;tt&gt;opkg install kmod-batman-adv&lt;/tt&gt; command did not work as it
-should.  The batman-adv kernel module would fail to load because its
-dependency crc16 was not already loaded.  I
-&lt;a href=&quot;https://dev.openwrt.org/ticket/14452&quot;&gt;reported the bug&lt;/a&gt; to
-the openwrt project and hope it will be fixed soon.  But the problem
-only seem to affect initial testing of batman-adv, as configuration
-seem to work when booting from scratch.&lt;/p&gt;
-
-&lt;p&gt;The setup is done using files in /etc/config/.  I did not bridge
-the Ethernet and mesh interfaces this time, to be able to hook up the
-box on my local network and log into it for configuration updates.
-The following files were changed and look like this after modifying
-them:&lt;/p&gt;
-
-&lt;p&gt;&lt;tt&gt;/etc/config/network&lt;/tt&gt;&lt;/p&gt;
-
-&lt;pre&gt;
-
-config interface &#39;loopback&#39;
-        option ifname &#39;lo&#39;
-        option proto &#39;static&#39;
-        option ipaddr &#39;127.0.0.1&#39;
-        option netmask &#39;255.0.0.0&#39;
-
-config globals &#39;globals&#39;
-        option ula_prefix &#39;fdbf:4c12:3fed::/48&#39;
-
-config interface &#39;lan&#39;
-        option ifname &#39;eth0&#39;
-        option type &#39;bridge&#39;
-        option proto &#39;dhcp&#39;
-        option ipaddr &#39;192.168.1.1&#39;
-        option netmask &#39;255.255.255.0&#39;
-        option hostname &#39;tl-mr3040&#39;
-        option ip6assign &#39;60&#39;
-
-config interface &#39;mesh&#39;
-        option ifname &#39;adhoc0&#39;
-        option mtu &#39;1528&#39;
-        option proto &#39;batadv&#39;
-        option mesh &#39;bat0&#39;
-&lt;/pre&gt;
-
-&lt;p&gt;&lt;tt&gt;/etc/config/wireless&lt;/tt&gt;&lt;/p&gt;
-&lt;pre&gt;
-
-config wifi-device &#39;radio0&#39;
-        option type &#39;mac80211&#39;
-        option channel &#39;11&#39;
-        option hwmode &#39;11ng&#39;
-        option path &#39;platform/ar933x_wmac&#39;
-        option htmode &#39;HT20&#39;
-        list ht_capab &#39;SHORT-GI-20&#39;
-        list ht_capab &#39;SHORT-GI-40&#39;
-        list ht_capab &#39;RX-STBC1&#39;
-        list ht_capab &#39;DSSS_CCK-40&#39;
-        option disabled &#39;0&#39;
-
-config wifi-iface &#39;wmesh&#39;
-        option device &#39;radio0&#39;
-        option ifname &#39;adhoc0&#39;
-        option network &#39;mesh&#39;
-        option encryption &#39;none&#39;
-        option mode &#39;adhoc&#39;
-        option bssid &#39;02:BA:00:00:00:01&#39;
-        option ssid &#39;meshfx@hackeriet&#39;
-&lt;/pre&gt;
-&lt;p&gt;&lt;tt&gt;/etc/config/batman-adv&lt;/tt&gt;&lt;/p&gt;
-&lt;pre&gt;
-
-config &#39;mesh&#39; &#39;bat0&#39;
-        option interfaces &#39;adhoc0&#39;
-        option &#39;aggregated_ogms&#39;
-        option &#39;ap_isolation&#39;
-        option &#39;bonding&#39;
-        option &#39;fragmentation&#39;
-        option &#39;gw_bandwidth&#39;
-        option &#39;gw_mode&#39;
-        option &#39;gw_sel_class&#39;
-        option &#39;log_level&#39;
-        option &#39;orig_interval&#39;
-        option &#39;vis_mode&#39;
-        option &#39;bridge_loop_avoidance&#39;
-        option &#39;distributed_arp_table&#39;
-        option &#39;network_coding&#39;
-        option &#39;hop_penalty&#39;
-
-# yet another batX instance
-# config &#39;mesh&#39; &#39;bat5&#39;
-#       option &#39;interfaces&#39; &#39;second_mesh&#39;
-&lt;/pre&gt;
-
-&lt;p&gt;The mesh node is now operational.  I have yet to test its range,
-but I hope it is good.  I have not yet tested the TP-Link 3600 box
-still wrapped up in plastic.&lt;/p&gt;
-</description>
-       </item>
-       
-       <item>
-               <title>Debian init.d boot script example for rsyslog</title>
-               <link>http://people.skolelinux.org/pere/blog/Debian_init_d_boot_script_example_for_rsyslog.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_init_d_boot_script_example_for_rsyslog.html</guid>
-                <pubDate>Sat, 2 Nov 2013 22:40:00 +0100</pubDate>
-               <description>&lt;p&gt;If one of the points of switching to a new init system in Debian is
-&lt;a href=&quot;http://thomas.goirand.fr/blog/?p=147&quot;&gt;to get rid of huge
-init.d scripts&lt;/a&gt;, I doubt we need to switch away from sysvinit and
-init.d scripts at all.  Here is an example init.d script, ie a rewrite
-of /etc/init.d/rsyslog:&lt;/p&gt;
-
-&lt;p&gt;&lt;pre&gt;
-#!/lib/init/init-d-script
-### BEGIN INIT INFO
-# Provides:          rsyslog
-# Required-Start:    $remote_fs $time
-# Required-Stop:     umountnfs $time
-# X-Stop-After:      sendsigs
-# Default-Start:     2 3 4 5
-# Default-Stop:      0 1 6
-# Short-Description: enhanced syslogd
-# Description:       Rsyslog is an enhanced multi-threaded syslogd.
-#                    It is quite compatible to stock sysklogd and can be 
-#                    used as a drop-in replacement.
-### END INIT INFO
-DESC=&quot;enhanced syslogd&quot;
-DAEMON=/usr/sbin/rsyslogd
-&lt;/pre&gt;&lt;/p&gt;
-
-&lt;p&gt;Pretty minimalistic to me... For the record, the original sysv-rc
-script was 137 lines, and the above is just 15 lines, most of it meta
-info/comments.&lt;/p&gt;
-
-&lt;p&gt;How to do this, you ask?  Well, one create a new script
-/lib/init/init-d-script looking something like this:
-
-&lt;p&gt;&lt;pre&gt;
-#!/bin/sh
-
-# Define LSB log_* functions.
-# Depend on lsb-base (&gt;= 3.2-14) to ensure that this file is present
-# and status_of_proc is working.
-. /lib/lsb/init-functions
-
-#
-# Function that starts the daemon/service
-
-#
-do_start()
-{
-       # Return
-       #   0 if daemon has been started
-       #   1 if daemon was already running
-       #   2 if daemon could not be started
-       start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test &gt; /dev/null \
-               || return 1
-       start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
-               $DAEMON_ARGS \
-               || return 2
-       # Add code here, if necessary, that waits for the process to be ready
-       # to handle requests from services started subsequently which depend
-       # on this one.  As a last resort, sleep for some time.
-}
-
-#
-# Function that stops the daemon/service
-#
-do_stop()
-{
-       # Return
-       #   0 if daemon has been stopped
-       #   1 if daemon was already stopped
-       #   2 if daemon could not be stopped
-       #   other if a failure occurred
-       start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
-       RETVAL=&quot;$?&quot;
-       [ &quot;$RETVAL&quot; = 2 ] &amp;&amp; return 2
-       # Wait for children to finish too if this is a daemon that forks
-       # and if the daemon is only ever run from this initscript.
-       # If the above conditions are not satisfied then add some other code
-       # that waits for the process to drop all resources that could be
-       # needed by services started subsequently.  A last resort is to
-       # sleep for some time.
-       start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
-       [ &quot;$?&quot; = 2 ] &amp;&amp; return 2
-       # Many daemons don&#39;t delete their pidfiles when they exit.
-       rm -f $PIDFILE
-       return &quot;$RETVAL&quot;
-}
-
-#
-# Function that sends a SIGHUP to the daemon/service
-#
-do_reload() {
-       #
-       # If the daemon can reload its configuration without
-       # restarting (for example, when it is sent a SIGHUP),
-       # then implement that here.
-       #
-       start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
-       return 0
-}
-
-SCRIPTNAME=$1
-scriptbasename=&quot;$(basename $1)&quot;
-echo &quot;SN: $scriptbasename&quot;
-if [ &quot;$scriptbasename&quot; != &quot;init-d-library&quot; ] ; then
-    script=&quot;$1&quot;
-    shift
-    . $script
-else
-    exit 0
-fi
-
-NAME=$(basename $DAEMON)
-PIDFILE=/var/run/$NAME.pid
-
-# Exit if the package is not installed
-#[ -x &quot;$DAEMON&quot; ] || exit 0
-
-# Read configuration variable file if it is present
-[ -r /etc/default/$NAME ] &amp;&amp; . /etc/default/$NAME
-
-# Load the VERBOSE setting and other rcS variables
-. /lib/init/vars.sh
-
-case &quot;$1&quot; in
-  start)
-       [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_daemon_msg &quot;Starting $DESC&quot; &quot;$NAME&quot;
-       do_start
-       case &quot;$?&quot; in
-               0|1) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 0 ;;
-               2) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 1 ;;
-       esac
-       ;;
-  stop)
-       [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_daemon_msg &quot;Stopping $DESC&quot; &quot;$NAME&quot;
-       do_stop
-       case &quot;$?&quot; in
-               0|1) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 0 ;;
-               2) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 1 ;;
-       esac
-       ;;
-  status)
-       status_of_proc &quot;$DAEMON&quot; &quot;$NAME&quot; &amp;&amp; exit 0 || exit $?
-       ;;
-  #reload|force-reload)
-       #
-       # If do_reload() is not implemented then leave this commented out
-       # and leave &#39;force-reload&#39; as an alias for &#39;restart&#39;.
-       #
-       #log_daemon_msg &quot;Reloading $DESC&quot; &quot;$NAME&quot;
-       #do_reload
-       #log_end_msg $?
-       #;;
-  restart|force-reload)
-       #
-       # If the &quot;reload&quot; option is implemented then remove the
-       # &#39;force-reload&#39; alias
-       #
-       log_daemon_msg &quot;Restarting $DESC&quot; &quot;$NAME&quot;
-       do_stop
-       case &quot;$?&quot; in
-         0|1)
-               do_start
-               case &quot;$?&quot; in
-                       0) log_end_msg 0 ;;
-                       1) log_end_msg 1 ;; # Old process is still running
-                       *) log_end_msg 1 ;; # Failed to start
-               esac
-               ;;
-         *)
-               # Failed to stop
-               log_end_msg 1
-               ;;
-       esac
-       ;;
-  *)
-       echo &quot;Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}&quot; &gt;&amp;2
-       exit 3
-       ;;
-esac
-
-:
-&lt;/pre&gt;&lt;/p&gt;
-
-&lt;p&gt;It is based on /etc/init.d/skeleton, and could be improved quite a
-lot.  I did not really polish the approach, so it might not always
-work out of the box, but you get the idea.  I did not try very hard to
-optimize it nor make it more robust either.&lt;/p&gt;
-
-&lt;p&gt;A better argument for switching init system in Debian than reducing
-the size of init scripts (which is a good thing to do anyway), is to
-get boot system that is able to handle the kernel events sensibly and
-robustly, and do not depend on the boot to run sequentially.  The boot
-and the kernel have not behaved sequentially in years.&lt;/p&gt;
-</description>
-       </item>
-       
         </channel>
 </rss>