]> pere.pagekite.me Git - homepage.git/blob - blog/archive/2013/11/11.rss
Generated.
[homepage.git] / blog / archive / 2013 / 11 / 11.rss
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/'>
3 <channel>
4 <title>Petter Reinholdtsen - Entries from November 2013</title>
5 <description>Entries from November 2013</description>
6 <link>http://people.skolelinux.org/pere/blog/</link>
7
8
9 <item>
10 <title>RSS-kilde for fritekstsøk i offentlige anbud hos Doffin</title>
11 <link>http://people.skolelinux.org/pere/blog/RSS_kilde_for_friteksts_k_i_offentlige_anbud_hos_Doffin.html</link>
12 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/RSS_kilde_for_friteksts_k_i_offentlige_anbud_hos_Doffin.html</guid>
13 <pubDate>Fri, 22 Nov 2013 13:40:00 +0100</pubDate>
14 <description>&lt;p&gt;I fjor sommer lagde jeg en
15 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/SQL_database_med_anbud_publisert_p__Doffin.html&quot;&gt;offentlig
16 tilgjengelig SQL-database over offentlig anbud&lt;/a&gt; basert på skraping
17 av HTML-data fra Doffin. Den har stått og gått siden da, og har nå
18 ca. 28000 oppføringer. Jeg oppdaget da jeg tittet innom at noen
19 oppføringer var ikke blitt med, antagelig på grunn av at de fikk
20 tildelt sekvensnummer i Doffin en godt stund før de ble publisert,
21 slik at min nettsideskraper som fortsatte skrapingen der den slapp
22 sist ikke fikk dem med seg. Jeg har fikset litt slik at skraperen nå
23 ser litt tilbake i tid for å se om den har gått glipp av noen
24 oppføringer, og har skrapet på nytt fra midten av september 2013 og
25 fremover. Det bør dermed bli en mer komplett database for kommende
26 måneder. Hvis jeg får tid skal jeg forsøke å skrape &quot;glemte&quot; data fra
27 før midten av september 2013, men tør ikke garantere at det blir
28 prioritert med det første. &lt;/p&gt;
29
30 &lt;p&gt;Men målet med denne bloggposten er å vise hvordan denne
31 Doffin-databasen kan brukes og integreres med en RSS-leser, slik at en
32 kan la datamaskinen holde et øye med Doffin-annonseringer etter
33 nøkkelord. En kan lage sitt eget søk ved å besøke
34 &lt;ahref=&quot;https://classic.scraperwiki.com/docs/api?name=norwegian-doffin#sqlite&quot;&gt;API-et
35 hos Scraperwiki&lt;/a&gt;, velge format rss2 og så legge inn noe ala dette i
36 &quot;query in SQL&quot;:&lt;/p&gt;
37
38 &lt;p&gt;&lt;pre&gt;
39 select title, scrapedurl as link, abstract as description,
40 publishdate as pubDate from &#39;swdata&#39;
41 where abstract like &#39;%linux%&#39; or title like &#39;%linux%&#39;
42 order by seq desc limit 20
43 &lt;/pre&gt;&lt;/p&gt;
44
45 &lt;p&gt;Dette vil søke opp alle anbud med ordet linux i oppsummering eller
46 tittel. En kan lage mer avanserte søk hvis en ønsker det. URL-en som
47 dukker opp nederst på siden kan en så gi til sin RSS-leser (jeg bruker
48 akregator selv), og så automatisk få beskjed hvis det dukker opp anbud
49 med det aktuelle nøkkelordet i teksten. Merk at kapasiteten hos
50 Scraperwiki er begrenset, så be RSS-leseren kun hente ned en gang hver
51 dag eller noe slikt.&lt;/p&gt;
52
53 &lt;p&gt;Du lurer kanskje på hva slags informasjon en kan få ut fra denne
54 databasen. Her er to RSS-kilder, med søkeordet
55 &quot;&lt;a href=&quot;https://api.scraperwiki.com/api/1.0/datastore/sqlite?format=rss2&amp;name=norwegian-doffin&amp;query=select%20title%2C%20scrapedurl%20as%20link%2C%20abstract%20as%20description%2C%0A%20%20%20%20%20%20%20publishdate%20as%20pubDate%20from%20&#39;swdata&#39;%0A%20%20%20where%20abstract%20like%20&#39;%25linux%25&#39;%20or%20title%20like%20&#39;%25linux%25&#39;%0A%20%20%20order%20by%20seq%20desc%20limit%2020&quot;&gt;linux&lt;/a&gt;&quot;,
56 søkeordet
57 &quot;&lt;a href=&quot;https://api.scraperwiki.com/api/1.0/datastore/sqlite?format=rss2&amp;name=norwegian-doffin&amp;query=select%20title%2C%20scrapedurl%20as%20link%2C%20abstract%20as%20description%2C%0A%20%20%20%20%20%20%20publishdate%20as%20pubDate%20from%20&#39;swdata&#39;%0A%20%20%20where%20abstract%20like%20&#39;%25fri%20programvare%25&#39;%20or%20title%20like%20&#39;%25fri%20programvare%25&#39;%0A%20%20%20order%20by%20seq%20desc%20limit%2020&quot;&gt;fri
58 programvare&lt;/a&gt;&quot;
59 og søkeordet
60 &quot;&lt;a href=&quot;https://api.scraperwiki.com/api/1.0/datastore/sqlite?format=rss2&amp;name=norwegian-doffin&amp;query=select%20title%2C%20scrapedurl%20as%20link%2C%20abstract%20as%20description%2C%0A%20%20%20%20%20%20%20publishdate%20as%20pubDate%20from%20&#39;swdata&#39;%0A%20%20%20where%20abstract%20like%20&#39;%25odf%25&#39;%20or%20title%20like%20&#39;%25odf%25&#39;%0A%20%20%20order%20by%20seq%20desc%20limit%2020&quot;&gt;odf&lt;/a&gt;&quot;.
61 Det er bare å søke på det en er interessert i. Kopier gjerne
62 datasettet og sett opp din egen tjeneste hvis du vil gjøre mer
63 avanserte søk. SQLite-filen med Doffin-oppføringer kan lastes med fra
64 Scraperwiki for de som vil grave dypere.&lt;/p&gt;
65 &lt;!-- nov 625, okt 1080, sep 1120 --&gt;
66 </description>
67 </item>
68
69 <item>
70 <title>All drones should be radio marked with what they do and who they belong to</title>
71 <link>http://people.skolelinux.org/pere/blog/All_drones_should_be_radio_marked_with_what_they_do_and_who_they_belong_to.html</link>
72 <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>
73 <pubDate>Thu, 21 Nov 2013 15:40:00 +0100</pubDate>
74 <description>Drones, flying robots, are getting more and more popular. The most
75 know ones are the killer drones used by some government to murder
76 people they do not like without giving them the chance of a fair
77 trial, but the technology have many good uses too, from mapping and
78 forest maintenance to photography and search and rescue. I am sure it
79 is just a question of time before &quot;bad drones&quot; are in the hands of
80 private enterprises and not only state criminals but petty criminals
81 too. The drone technology is very useful and very dangerous. To have
82 some control over the use of drones, I agree with Daniel Suarez in his
83 TED talk
84 &quot;&lt;a href=&quot;https://archive.org/details/DanielSuarez_2013G&quot;&gt;The kill
85 decision shouldn&#39;t belong to a robot&lt;/a&gt;&quot;, where he suggested this
86 little gem to keep the good while limiting the bad use of drones:&lt;/p&gt;
87
88 &lt;blockquote&gt;
89
90 &lt;p&gt;Each robot and drone should have a cryptographically signed
91 I.D. burned in at the factory that can be used to track its movement
92 through public spaces. We have license plates on cars, tail numbers on
93 aircraft. This is no different. And every citizen should be able to
94 download an app that shows the population of drones and autonomous
95 vehicles moving through public spaces around them, both right now and
96 historically. And civic leaders should deploy sensors and civic drones
97 to detect rogue drones, and instead of sending killer drones of their
98 own up to shoot them down, they should notify humans to their
99 presence. And in certain very high-security areas, perhaps civic
100 drones would snare them and drag them off to a bomb disposal facility.&lt;/p&gt;
101
102 &lt;p&gt;But notice, this is more an immune system than a weapons system. It
103 would allow us to avail ourselves of the use of autonomous vehicles
104 and drones while still preserving our open, civil society.&lt;/p&gt;
105
106 &lt;/blockquote&gt;
107
108 &lt;p&gt;The key is that &lt;em&gt;every citizen&lt;/em&gt; should be able to read the
109 radio beacons sent from the drones in the area, to be able to check
110 both the government and others use of drones. For such control to be
111 effective, everyone must be able to do it. What should such beacon
112 contain? At least formal owner, purpose, contact information and GPS
113 location. Probably also the origin and target position of the current
114 flight. And perhaps some registration number to be able to look up
115 the drone in a central database tracking their movement. Robots
116 should not have privacy. It is people who need privacy.&lt;/p&gt;
117 </description>
118 </item>
119
120 <item>
121 <title>Lets make a wireless community network in Oslo!</title>
122 <link>http://people.skolelinux.org/pere/blog/Lets_make_a_wireless_community_network_in_Oslo_.html</link>
123 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lets_make_a_wireless_community_network_in_Oslo_.html</guid>
124 <pubDate>Wed, 13 Nov 2013 21:00:00 +0100</pubDate>
125 <description>&lt;p&gt;Today NUUG and Hackeriet announced
126 &lt;a href=&quot;http://www.nuug.no/news/Bli_med___bygge_dugnadsnett_for_alle_i_Oslo.shtml&quot;&gt;our
127 plans to join forces and create a wireless community network in
128 Oslo&lt;/a&gt;. The workshop to help people get started will take place
129 Thursday 2013-11-28, but we already are collecting the geolocation of
130 people joining forces to make this happen. We have
131 &lt;a href=&quot;https://github.com/petterreinholdtsen/meshfx-node/blob/master/oslo-nodes.geojson&quot;&gt;9
132 locations plotted on the map&lt;/a&gt;, but we will need more before we have
133 a connected mesh spread across Oslo. If this sound interesting to
134 you, please join us at the workshop. If you are too impatient to wait
135 15 days, please join us on the IRC channel
136 &lt;a href=&quot;irc://irc.freenode.net/%23nuug&quot;&gt;#nuug on irc.freenode.net&lt;/a&gt;
137 right away. :)&lt;/p&gt;
138 </description>
139 </item>
140
141 <item>
142 <title>Running TP-Link MR3040 as a batman-adv mesh node using openwrt</title>
143 <link>http://people.skolelinux.org/pere/blog/Running_TP_Link_MR3040_as_a_batman_adv_mesh_node_using_openwrt.html</link>
144 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Running_TP_Link_MR3040_as_a_batman_adv_mesh_node_using_openwrt.html</guid>
145 <pubDate>Sun, 10 Nov 2013 23:00:00 +0100</pubDate>
146 <description>&lt;p&gt;Continuing my research into mesh networking, I was recommended to
147 use TP-Link 3040 and 3600 access points as mesh nodes, and the pair I
148 bought arrived on Friday. Here are my notes on how to set up the
149 MR3040 as a mesh node using
150 &lt;a href=&quot;http://www.openwrt.org/&quot;&gt;OpenWrt&lt;/a&gt;.&lt;/p&gt;
151
152 &lt;p&gt;I started by following the instructions on the OpenWRT wiki for
153 &lt;a href=&quot;http://wiki.openwrt.org/toh/tp-link/tl-mr3040&quot;&gt;TL-MR3040&lt;/a&gt;,
154 and downloaded
155 &lt;a href=&quot;http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin&quot;&gt;the
156 recommended firmware image&lt;/a&gt;
157 (openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin) and
158 uploaded it into the original web interface. The flashing went fine,
159 and the machine was available via telnet on the ethernet port. After
160 logging in and setting the root password, ssh was available and I
161 could start to set it up as a batman-adv mesh node.&lt;/p&gt;
162
163 &lt;p&gt;I started off by reading the instructions from
164 &lt;a href=&quot;http://wirelessafrica.meraka.org.za/wiki/index.php?title=Antoine&#39;s_Research&quot;&gt;Wireless
165 Africa&lt;/a&gt;, which had quite a lot of useful information, but
166 eventually I followed the recipe from the Open Mesh wiki for
167 &lt;a href=&quot;http://www.open-mesh.org/projects/batman-adv/wiki/Batman-adv-openwrt-config&quot;&gt;using
168 batman-adv on OpenWrt&lt;/a&gt;. A small snag was the fact that the
169 &lt;tt&gt;opkg install kmod-batman-adv&lt;/tt&gt; command did not work as it
170 should. The batman-adv kernel module would fail to load because its
171 dependency crc16 was not already loaded. I
172 &lt;a href=&quot;https://dev.openwrt.org/ticket/14452&quot;&gt;reported the bug&lt;/a&gt; to
173 the openwrt project and hope it will be fixed soon. But the problem
174 only seem to affect initial testing of batman-adv, as configuration
175 seem to work when booting from scratch.&lt;/p&gt;
176
177 &lt;p&gt;The setup is done using files in /etc/config/. I did not bridge
178 the Ethernet and mesh interfaces this time, to be able to hook up the
179 box on my local network and log into it for configuration updates.
180 The following files were changed and look like this after modifying
181 them:&lt;/p&gt;
182
183 &lt;p&gt;&lt;tt&gt;/etc/config/network&lt;/tt&gt;&lt;/p&gt;
184
185 &lt;pre&gt;
186
187 config interface &#39;loopback&#39;
188 option ifname &#39;lo&#39;
189 option proto &#39;static&#39;
190 option ipaddr &#39;127.0.0.1&#39;
191 option netmask &#39;255.0.0.0&#39;
192
193 config globals &#39;globals&#39;
194 option ula_prefix &#39;fdbf:4c12:3fed::/48&#39;
195
196 config interface &#39;lan&#39;
197 option ifname &#39;eth0&#39;
198 option type &#39;bridge&#39;
199 option proto &#39;dhcp&#39;
200 option ipaddr &#39;192.168.1.1&#39;
201 option netmask &#39;255.255.255.0&#39;
202 option hostname &#39;tl-mr3040&#39;
203 option ip6assign &#39;60&#39;
204
205 config interface &#39;mesh&#39;
206 option ifname &#39;adhoc0&#39;
207 option mtu &#39;1528&#39;
208 option proto &#39;batadv&#39;
209 option mesh &#39;bat0&#39;
210 &lt;/pre&gt;
211
212 &lt;p&gt;&lt;tt&gt;/etc/config/wireless&lt;/tt&gt;&lt;/p&gt;
213 &lt;pre&gt;
214
215 config wifi-device &#39;radio0&#39;
216 option type &#39;mac80211&#39;
217 option channel &#39;11&#39;
218 option hwmode &#39;11ng&#39;
219 option path &#39;platform/ar933x_wmac&#39;
220 option htmode &#39;HT20&#39;
221 list ht_capab &#39;SHORT-GI-20&#39;
222 list ht_capab &#39;SHORT-GI-40&#39;
223 list ht_capab &#39;RX-STBC1&#39;
224 list ht_capab &#39;DSSS_CCK-40&#39;
225 option disabled &#39;0&#39;
226
227 config wifi-iface &#39;wmesh&#39;
228 option device &#39;radio0&#39;
229 option ifname &#39;adhoc0&#39;
230 option network &#39;mesh&#39;
231 option encryption &#39;none&#39;
232 option mode &#39;adhoc&#39;
233 option bssid &#39;02:BA:00:00:00:01&#39;
234 option ssid &#39;meshfx@hackeriet&#39;
235 &lt;/pre&gt;
236 &lt;p&gt;&lt;tt&gt;/etc/config/batman-adv&lt;/tt&gt;&lt;/p&gt;
237 &lt;pre&gt;
238
239 config &#39;mesh&#39; &#39;bat0&#39;
240 option interfaces &#39;adhoc0&#39;
241 option &#39;aggregated_ogms&#39;
242 option &#39;ap_isolation&#39;
243 option &#39;bonding&#39;
244 option &#39;fragmentation&#39;
245 option &#39;gw_bandwidth&#39;
246 option &#39;gw_mode&#39;
247 option &#39;gw_sel_class&#39;
248 option &#39;log_level&#39;
249 option &#39;orig_interval&#39;
250 option &#39;vis_mode&#39;
251 option &#39;bridge_loop_avoidance&#39;
252 option &#39;distributed_arp_table&#39;
253 option &#39;network_coding&#39;
254 option &#39;hop_penalty&#39;
255
256 # yet another batX instance
257 # config &#39;mesh&#39; &#39;bat5&#39;
258 # option &#39;interfaces&#39; &#39;second_mesh&#39;
259 &lt;/pre&gt;
260
261 &lt;p&gt;The mesh node is now operational. I have yet to test its range,
262 but I hope it is good. I have not yet tested the TP-Link 3600 box
263 still wrapped up in plastic.&lt;/p&gt;
264 </description>
265 </item>
266
267 <item>
268 <title>Debian init.d boot script example for rsyslog</title>
269 <link>http://people.skolelinux.org/pere/blog/Debian_init_d_boot_script_example_for_rsyslog.html</link>
270 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_init_d_boot_script_example_for_rsyslog.html</guid>
271 <pubDate>Sat, 2 Nov 2013 22:40:00 +0100</pubDate>
272 <description>&lt;p&gt;If one of the points of switching to a new init system in Debian is
273 &lt;a href=&quot;http://thomas.goirand.fr/blog/?p=147&quot;&gt;to get rid of huge
274 init.d scripts&lt;/a&gt;, I doubt we need to switch away from sysvinit and
275 init.d scripts at all. Here is an example init.d script, ie a rewrite
276 of /etc/init.d/rsyslog:&lt;/p&gt;
277
278 &lt;p&gt;&lt;pre&gt;
279 #!/lib/init/init-d-script
280 ### BEGIN INIT INFO
281 # Provides: rsyslog
282 # Required-Start: $remote_fs $time
283 # Required-Stop: umountnfs $time
284 # X-Stop-After: sendsigs
285 # Default-Start: 2 3 4 5
286 # Default-Stop: 0 1 6
287 # Short-Description: enhanced syslogd
288 # Description: Rsyslog is an enhanced multi-threaded syslogd.
289 # It is quite compatible to stock sysklogd and can be
290 # used as a drop-in replacement.
291 ### END INIT INFO
292 DESC=&quot;enhanced syslogd&quot;
293 DAEMON=/usr/sbin/rsyslogd
294 &lt;/pre&gt;&lt;/p&gt;
295
296 &lt;p&gt;Pretty minimalistic to me... For the record, the original sysv-rc
297 script was 137 lines, and the above is just 15 lines, most of it meta
298 info/comments.&lt;/p&gt;
299
300 &lt;p&gt;How to do this, you ask? Well, one create a new script
301 /lib/init/init-d-script looking something like this:
302
303 &lt;p&gt;&lt;pre&gt;
304 #!/bin/sh
305
306 # Define LSB log_* functions.
307 # Depend on lsb-base (&gt;= 3.2-14) to ensure that this file is present
308 # and status_of_proc is working.
309 . /lib/lsb/init-functions
310
311 #
312 # Function that starts the daemon/service
313
314 #
315 do_start()
316 {
317 # Return
318 # 0 if daemon has been started
319 # 1 if daemon was already running
320 # 2 if daemon could not be started
321 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test &gt; /dev/null \
322 || return 1
323 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
324 $DAEMON_ARGS \
325 || return 2
326 # Add code here, if necessary, that waits for the process to be ready
327 # to handle requests from services started subsequently which depend
328 # on this one. As a last resort, sleep for some time.
329 }
330
331 #
332 # Function that stops the daemon/service
333 #
334 do_stop()
335 {
336 # Return
337 # 0 if daemon has been stopped
338 # 1 if daemon was already stopped
339 # 2 if daemon could not be stopped
340 # other if a failure occurred
341 start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
342 RETVAL=&quot;$?&quot;
343 [ &quot;$RETVAL&quot; = 2 ] &amp;&amp; return 2
344 # Wait for children to finish too if this is a daemon that forks
345 # and if the daemon is only ever run from this initscript.
346 # If the above conditions are not satisfied then add some other code
347 # that waits for the process to drop all resources that could be
348 # needed by services started subsequently. A last resort is to
349 # sleep for some time.
350 start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
351 [ &quot;$?&quot; = 2 ] &amp;&amp; return 2
352 # Many daemons don&#39;t delete their pidfiles when they exit.
353 rm -f $PIDFILE
354 return &quot;$RETVAL&quot;
355 }
356
357 #
358 # Function that sends a SIGHUP to the daemon/service
359 #
360 do_reload() {
361 #
362 # If the daemon can reload its configuration without
363 # restarting (for example, when it is sent a SIGHUP),
364 # then implement that here.
365 #
366 start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
367 return 0
368 }
369
370 SCRIPTNAME=$1
371 scriptbasename=&quot;$(basename $1)&quot;
372 echo &quot;SN: $scriptbasename&quot;
373 if [ &quot;$scriptbasename&quot; != &quot;init-d-library&quot; ] ; then
374 script=&quot;$1&quot;
375 shift
376 . $script
377 else
378 exit 0
379 fi
380
381 NAME=$(basename $DAEMON)
382 PIDFILE=/var/run/$NAME.pid
383
384 # Exit if the package is not installed
385 #[ -x &quot;$DAEMON&quot; ] || exit 0
386
387 # Read configuration variable file if it is present
388 [ -r /etc/default/$NAME ] &amp;&amp; . /etc/default/$NAME
389
390 # Load the VERBOSE setting and other rcS variables
391 . /lib/init/vars.sh
392
393 case &quot;$1&quot; in
394 start)
395 [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_daemon_msg &quot;Starting $DESC&quot; &quot;$NAME&quot;
396 do_start
397 case &quot;$?&quot; in
398 0|1) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 0 ;;
399 2) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 1 ;;
400 esac
401 ;;
402 stop)
403 [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_daemon_msg &quot;Stopping $DESC&quot; &quot;$NAME&quot;
404 do_stop
405 case &quot;$?&quot; in
406 0|1) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 0 ;;
407 2) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 1 ;;
408 esac
409 ;;
410 status)
411 status_of_proc &quot;$DAEMON&quot; &quot;$NAME&quot; &amp;&amp; exit 0 || exit $?
412 ;;
413 #reload|force-reload)
414 #
415 # If do_reload() is not implemented then leave this commented out
416 # and leave &#39;force-reload&#39; as an alias for &#39;restart&#39;.
417 #
418 #log_daemon_msg &quot;Reloading $DESC&quot; &quot;$NAME&quot;
419 #do_reload
420 #log_end_msg $?
421 #;;
422 restart|force-reload)
423 #
424 # If the &quot;reload&quot; option is implemented then remove the
425 # &#39;force-reload&#39; alias
426 #
427 log_daemon_msg &quot;Restarting $DESC&quot; &quot;$NAME&quot;
428 do_stop
429 case &quot;$?&quot; in
430 0|1)
431 do_start
432 case &quot;$?&quot; in
433 0) log_end_msg 0 ;;
434 1) log_end_msg 1 ;; # Old process is still running
435 *) log_end_msg 1 ;; # Failed to start
436 esac
437 ;;
438 *)
439 # Failed to stop
440 log_end_msg 1
441 ;;
442 esac
443 ;;
444 *)
445 echo &quot;Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}&quot; &gt;&amp;2
446 exit 3
447 ;;
448 esac
449
450 :
451 &lt;/pre&gt;&lt;/p&gt;
452
453 &lt;p&gt;It is based on /etc/init.d/skeleton, and could be improved quite a
454 lot. I did not really polish the approach, so it might not always
455 work out of the box, but you get the idea. I did not try very hard to
456 optimize it nor make it more robust either.&lt;/p&gt;
457
458 &lt;p&gt;A better argument for switching init system in Debian than reducing
459 the size of init scripts (which is a good thing to do anyway), is to
460 get boot system that is able to handle the kernel events sensibly and
461 robustly, and do not depend on the boot to run sequentially. The boot
462 and the kernel have not behaved sequentially in years.&lt;/p&gt;
463 </description>
464 </item>
465
466 <item>
467 <title>Browser plugin for SPICE (spice-xpi) uploaded to Debian</title>
468 <link>http://people.skolelinux.org/pere/blog/Browser_plugin_for_SPICE__spice_xpi__uploaded_to_Debian.html</link>
469 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Browser_plugin_for_SPICE__spice_xpi__uploaded_to_Debian.html</guid>
470 <pubDate>Fri, 1 Nov 2013 11:00:00 +0100</pubDate>
471 <description>&lt;p&gt;&lt;a href=&quot;http://www.spice-space.org/&quot;&gt;The SPICE protocol&lt;/a&gt; for
472 remote display access is the preferred solution with oVirt and RedHat
473 Enterprise Virtualization, and I was sad to discover the other day
474 that the browser plugin needed to use these systems seamlessly was
475 missing in Debian. The &lt;a href=&quot;http://bugs.debian.org/668284&quot;&gt;request
476 for a package&lt;/a&gt; was from 2012-04-10 with no progress since
477 2013-04-01, so I decided to wrap up a package based on the great work
478 from Cajus Pollmeier and put it in a collab-maint maintained git
479 repository to get a package I could use. I would very much like
480 others to help me maintain the package (or just take over, I do not
481 mind), but as no-one had volunteered so far, I just uploaded it to
482 NEW. I hope it will be available in Debian in a few days.&lt;/p&gt;
483
484 &lt;p&gt;The source is now available from
485 &lt;a href=&quot;http://anonscm.debian.org/gitweb/?p=collab-maint/spice-xpi.git;a=summary&quot;&gt;http://anonscm.debian.org/gitweb/?p=collab-maint/spice-xpi.git;a=summary&lt;/a&gt;.&lt;/p&gt;
486 </description>
487 </item>
488
489 </channel>
490 </rss>