]> pere.pagekite.me Git - homepage.git/blobdiff - blog/index.rss
New interview.
[homepage.git] / blog / index.rss
index a327511f035618252aab46936a946329775f163f..584106140e98ae4ff0d1c41541288d5e956b930c 100644 (file)
                 <atom:link href="http://people.skolelinux.org/pere/blog/index.rss" rel="self" type="application/rss+xml" />
        
        <item>
-               <title>Valutakrambod - A python and bitcoin love story</title>
-               <link>http://people.skolelinux.org/pere/blog/Valutakrambod___A_python_and_bitcoin_love_story.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Valutakrambod___A_python_and_bitcoin_love_story.html</guid>
-                <pubDate>Sat, 29 Sep 2018 22:20:00 +0200</pubDate>
-               <description>&lt;p&gt;It would come as no surprise to anyone that I am interested in
-bitcoins and virtual currencies.  I&#39;ve been keeping an eye on virtual
-currencies for many years, and it is part of the reason a few months
-ago, I started writing a python library for collecting currency
-exchange rates and trade on virtual currency exchanges.  I decided to
-name the end result valutakrambod, which perhaps can be translated to
-small currency shop.&lt;/p&gt;
-
-&lt;p&gt;The library uses the tornado python library to handle HTTP and
-websocket connections, and provide a asynchronous system for
-connecting to and tracking several services.  The code is available
-from
-&lt;a href=&quot;http://github.com/petterreinholdtsen/valutakrambod&quot;&gt;github&lt;/a&gt;.&lt;/p&gt;
-
-&lt;/p&gt;There are two example clients of the library.  One is very simple and
-list every updated buy/sell price received from the various services.
-This code is started by running bin/btc-rates and call the client code
-in valutakrambod/client.py.  The simple client look like this:&lt;/p&gt;
-
-&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
-import functools
-import tornado.ioloop
-import valutakrambod
-class SimpleClient(object):
-    def __init__(self):
-        self.services = []
-        self.streams = []
-        pass
-    def newdata(self, service, pair, changed):
-        print(&quot;%-15s %s-%s: %8.3f %8.3f&quot; % (
-            service.servicename(),
-            pair[0],
-            pair[1],
-            service.rates[pair][&#39;ask&#39;],
-            service.rates[pair][&#39;bid&#39;])
-        )
-    async def refresh(self, service):
-        await service.fetchRates(service.wantedpairs)
-    def run(self):
-        self.ioloop = tornado.ioloop.IOLoop.current()
-        self.services = valutakrambod.service.knownServices()
-        for e in self.services:
-            service = e()
-            service.subscribe(self.newdata)
-            stream = service.websocket()
-            if stream:
-                self.streams.append(stream)
-            else:
-                # Fetch information from non-streaming services immediately
-                self.ioloop.call_later(len(self.services),
-                                       functools.partial(self.refresh, service))
-                # as well as regularly
-                service.periodicUpdate(60)
-        for stream in self.streams:
-            stream.connect()
-        try:
-            self.ioloop.start()
-        except KeyboardInterrupt:
-            print(&quot;Interrupted by keyboard, closing all connections.&quot;)
-            pass
-        for stream in self.streams:
-            stream.close()
-&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
-
-&lt;p&gt;The library client loop over all known &quot;public&quot; services,
-initialises it, subscribe to any updates from the service, check and
-activate websocket streaming if the service provide it, and if no
-streaming is supported, fetch information from the service and set up
-a periodic update every 60 seconds.  The output from this client can
-look like this:&lt;/p&gt;
-
-&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
-Bl3p            BTC-EUR: 5687.110 5653.690
-Bl3p            BTC-EUR: 5687.110 5653.690
-Bl3p            BTC-EUR: 5687.110 5653.690
-Hitbtc          BTC-USD: 6594.560 6593.690
-Hitbtc          BTC-USD: 6594.560 6593.690
-Bl3p            BTC-EUR: 5687.110 5653.690
-Hitbtc          BTC-USD: 6594.570 6593.690
-Bitstamp        EUR-USD:    1.159    1.154
-Hitbtc          BTC-USD: 6594.570 6593.690
-Hitbtc          BTC-USD: 6594.580 6593.690
-Hitbtc          BTC-USD: 6594.580 6593.690
-Hitbtc          BTC-USD: 6594.580 6593.690
-Bl3p            BTC-EUR: 5687.110 5653.690
-Paymium         BTC-EUR: 5680.000 5620.240
-&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
-
-&lt;p&gt;The exchange order book is tracked in addition to the best buy/sell
-price, for those that need to know the details.&lt;/p&gt;
-
-&lt;p&gt;The other example client is focusing on providing a curses view
-with updated buy/sell prices as soon as they are received from the
-services.  This code is located in bin/btc-rates-curses and activated
-by using the &#39;-c&#39; argument.  Without the argument the &quot;curses&quot; output
-is printed without using curses, which is useful for debugging.  The
-curses view look like this:&lt;/p&gt;
-
-&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
-           Name Pair   Bid         Ask         Spr    Ftcd    Age
- BitcoinsNorway BTCEUR   5591.8400   5711.0800   2.1%   16    nan     60
-       Bitfinex BTCEUR   5671.0000   5671.2000   0.0%   16     22     59
-        Bitmynt BTCEUR   5580.8000   5807.5200   3.9%   16     41     60
-         Bitpay BTCEUR   5663.2700         nan   nan%   15    nan     60
-       Bitstamp BTCEUR   5664.8400   5676.5300   0.2%    0      1      1
-           Bl3p BTCEUR   5653.6900   5684.9400   0.5%    0    nan     19
-       Coinbase BTCEUR   5600.8200   5714.9000   2.0%   15    nan    nan
-         Kraken BTCEUR   5670.1000   5670.2000   0.0%   14     17     60
-        Paymium BTCEUR   5620.0600   5680.0000   1.1%    1   7515    nan
- BitcoinsNorway BTCNOK  52898.9700  54034.6100   2.1%   16    nan     60
-        Bitmynt BTCNOK  52960.3200  54031.1900   2.0%   16     41     60
-         Bitpay BTCNOK  53477.7833         nan   nan%   16    nan     60
-       Coinbase BTCNOK  52990.3500  54063.0600   2.0%   15    nan    nan
-        MiraiEx BTCNOK  52856.5300  54100.6000   2.3%   16    nan    nan
- BitcoinsNorway BTCUSD   6495.5300   6631.5400   2.1%   16    nan     60
-       Bitfinex BTCUSD   6590.6000   6590.7000   0.0%   16     23     57
-         Bitpay BTCUSD   6564.1300         nan   nan%   15    nan     60
-       Bitstamp BTCUSD   6561.1400   6565.6200   0.1%    0      2      1
-       Coinbase BTCUSD   6504.0600   6635.9700   2.0%   14    nan    117
-         Gemini BTCUSD   6567.1300   6573.0700   0.1%   16     89    nan
-         Hitbtc+BTCUSD   6592.6200   6594.2100   0.0%    0      0      0
-         Kraken BTCUSD   6565.2000   6570.9000   0.1%   15     17     58
-  Exchangerates EURNOK      9.4665      9.4665   0.0%   16 107789    nan
-     Norgesbank EURNOK      9.4665      9.4665   0.0%   16 107789    nan
-       Bitstamp EURUSD      1.1537      1.1593   0.5%    4      5      1
-  Exchangerates EURUSD      1.1576      1.1576   0.0%   16 107789    nan
- BitcoinsNorway LTCEUR      1.0000     49.0000  98.0%   16    nan    nan
- BitcoinsNorway LTCNOK    492.4800    503.7500   2.2%   16    nan     60
- BitcoinsNorway LTCUSD      1.0221     49.0000  97.9%   15    nan    nan
-     Norgesbank USDNOK      8.1777      8.1777   0.0%   16 107789    nan
-&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
-
-&lt;p&gt;The code for this client is too complex for a simple blog post, so
-you will have to check out the git repository to figure out how it
-work.  What I can tell is how the three last numbers on each line
-should be interpreted.  The first is how many seconds ago information
-was received from the service.  The second is how long ago, according
-to the service, the provided information was updated.  The last is an
-estimate on how often the buy/sell values change.&lt;/p&gt;
-
-&lt;p&gt;If you find this library useful, or would like to improve it, I
-would love to hear from you.  Note that for some of the services I&#39;ve
-implemented a trading API.  It might be the topic of a future blog
-post.&lt;/p&gt;
+               <title>Jami as a Zoom client, a trick for password protected rooms...</title>
+               <link>http://people.skolelinux.org/pere/blog/Jami_as_a_Zoom_client__a_trick_for_password_protected_rooms___.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Jami_as_a_Zoom_client__a_trick_for_password_protected_rooms___.html</guid>
+                <pubDate>Fri, 8 May 2020 13:30:00 +0200</pubDate>
+               <description>&lt;p&gt;Half a year ago,
+&lt;a href=&quot;http://people.skolelinux.org/pere/blog/Jami_Ring__finally_functioning_peer_to_peer_communication_client.html&quot;&gt;I
+wrote&lt;/a&gt; about &lt;a href=&quot;https://jami.net/&quot;&gt;the Jami communication
+client&lt;/a&gt;, capable of peer-to-peer encrypted communication.  It
+handle both messages, audio and video.  It uses distributed hash
+tables instead of central infrastructure to connect its users to each
+other, which in my book is a plus.  I mentioned briefly that it could
+also work as a SIP client, which came in handy when the higher
+educational sector in Norway started to promote Zoom as its video
+conferencing solution.  I am reluctant to use the official Zoom client
+software, due to their &lt;a href=&quot;https://zoom.us/terms&quot;&gt;copyright
+license clauses&lt;/a&gt; prohibiting users to reverse engineer (for example
+to check the security) and benchmark it, and thus prefer to connect to
+Zoom meetings with free software clients.&lt;/p&gt;
+
+&lt;p&gt;Jami worked OK as a SIP client to Zoom as long as there was no
+password set on the room.  The Jami daemon leak memory like crazy
+(approximately 1 GiB a minute) when I am connected to the video
+conference, so I had to restart the client every 7-10 minutes, which
+is not a great.  I tried to get other SIP Linux clients to work
+without success, so I decided I would have to live with this wart
+until someone managed to fix the leak in the dring code base.  But
+another problem showed up once the rooms were password protected.  I
+could not get my dial tone signaling through from Jami to Zoom, and
+dial tone signaling is used to enter the password when connecting to
+Zoom.  I tried a lot of different permutations with my Jami and
+Asterisk setup to try to figure out why the signaling did not get
+through, only to finally discover that the fundamental problem seem to
+be that Zoom is simply not able to receive dial tone signaling when
+connecting via SIP.  There seem to be nothing wrong with the Jami and
+Asterisk end, it is simply broken in the Zoom end.  I got help from a
+very skilled VoIP engineer figuring out this last part.  And being a
+very skilled engineer, he was also able to locate a solution for me.
+Or to be exact, a workaround that solve my initial problem of
+connecting to password protected Zoom rooms using Jami.&lt;/p&gt;
+
+&lt;p&gt;So, how do you do this, I am sure you are wondering by now.  The
+trick is already
+&lt;a href=&quot;https://support.zoom.us/hc/en-us/articles/202405539-H-323-SIP-Room-Connector-Dial-Strings#sip&quot;&gt;documented
+from Zoom&lt;/a&gt;, and it is to modify the SIP address to include the room
+password.  What is most surprising about this is that the
+automatically generated email from Zoom with instructions on how to
+connect via SIP do not mention this.  The SIP address to use normally
+consist of the room ID (a number), an @ character and the IP address
+of the Zoom SIP gateway.  But Zoom understand a lot more than just the
+room ID in front of the at sign.  The format is &quot;&lt;tt&gt;[Meeting
+ID].[Password].[Layout].[Host Key]&lt;/tt&gt;&quot;, and you can hear see how you
+can both enter password, control the layout (full screen, active
+presence and gallery) and specify the host key to start the meeting.
+The full SIP address entered into Jami to provide the password will
+then look like this (all using made up numbers):&lt;/p&gt;
+
+&lt;p&gt;&lt;blockquote&gt;
+&lt;tt&gt;sip:657837644.522827@192.168.169.170&lt;/tt&gt;
+&lt;/blockquote&gt;&lt;/p&gt;
+
+&lt;p&gt;Now if only jami would reduce its memory usage, I could even
+recommend this setup to others. :)&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
@@ -163,40 +77,43 @@ activities, please send Bitcoin donations to my address
        </item>
        
        <item>
-               <title>VLC in Debian now can do bittorrent streaming</title>
-               <link>http://people.skolelinux.org/pere/blog/VLC_in_Debian_now_can_do_bittorrent_streaming.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/VLC_in_Debian_now_can_do_bittorrent_streaming.html</guid>
-                <pubDate>Mon, 24 Sep 2018 21:20:00 +0200</pubDate>
-               <description>&lt;p&gt;Back in February, I got curious to see
-&lt;a href=&quot;http://people.skolelinux.org/pere/blog/Using_VLC_to_stream_bittorrent_sources.html&quot;&gt;if
-VLC now supported Bittorrent streaming&lt;/a&gt;.  It did not, despite the
-fact that the idea and code to handle such streaming had been floating
-around for years.  I did however find
-&lt;a href=&quot;https://github.com/johang/vlc-bittorrent&quot;&gt;a standalone plugin
-for VLC&lt;/a&gt; to do it, and half a year later I decided to wrap up the
-plugin and get it into Debian.  I uploaded it to NEW a few days ago,
-and am very happy to report that it
-&lt;a href=&quot;https://tracker.debian.org/pkg/vlc-plugin-bittorrent&quot;&gt;entered
-Debian&lt;/a&gt; a few hours ago, and should be available in Debian/Unstable
-tomorrow, and Debian/Testing in a few days.&lt;/p&gt;
-
-&lt;p&gt;With the vlc-plugin-bittorrent package installed you should be able
-to stream videos using a simple call to&lt;/p&gt;
-
-&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
-vlc https://archive.org/download/TheGoat/TheGoat_archive.torrent
-&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
-
-&lt;/p&gt;It can handle magnet links too.  Now if only native vlc had
-bittorrent support.  Then a lot more would be helping each other to
-share public domain and creative commons movies.  The plugin need some
-stability work with seeking and picking the right file in a torrent
-with many files, but is already usable.  Please note that the plugin
-is not removing downloaded files when vlc is stopped, so it can fill
-up your disk if you are not careful.  Have fun. :)&lt;/p&gt;
-
-&lt;p&gt;I would love to get help maintaining this package.  Get in touch if
-you are interested.&lt;/p&gt;
+               <title>GnuCOBOL, a free platform to learn and use COBOL - nice free software</title>
+               <link>http://people.skolelinux.org/pere/blog/GnuCOBOL__a_free_platform_to_learn_and_use_COBOL___nice_free_software.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/GnuCOBOL__a_free_platform_to_learn_and_use_COBOL___nice_free_software.html</guid>
+                <pubDate>Wed, 29 Apr 2020 13:10:00 +0200</pubDate>
+               <description>&lt;p&gt;The curiosity got the better of me when
+&lt;a href=&quot;https://developers.slashdot.org/story/20/04/06/1424246/new-jersey-desperately-needs-cobol-programmers&quot;&gt;Slashdot
+reported&lt;/a&gt; that New Jersey was desperately looking for
+&lt;a href=&quot;https://en.wikipedia.org/wiki/COBOL&quot;&gt;COBOL&lt;/a&gt; programmers,
+and a few days later it was reported that
+&lt;a href=&quot;https://onezero.medium.com/ibm-rallies-cobol-engineers-to-save-overloaded-unemployment-systems-eeadf13eddce&quot;&gt;IBM
+tried to locate COBOL programmers&lt;/a&gt;.&lt;/p&gt;
+
+&lt;p&gt;I thus decided to have a look at free software alternatives to
+learn COBOL, and had the pleasure to find
+&lt;a href=&quot;https://sourceforge.net/projects/open-cobol/&quot;&gt;GnuCOBOL&lt;/a&gt; was
+already &lt;a href=&quot;https://tracker.debian.org/pkg/gnucobol&quot;&gt;in
+Debian&lt;/a&gt;.  It used to be called Open Cobol, and is a &quot;compiler&quot;
+transforming COBOL code to C or C++ before giving it to GCC or Visual
+Studio to build binaries.&lt;/p&gt;
+
+&lt;p&gt;I managed to get in touch with upstream, and was impressed with the
+quick response, and also was happy to see a new Debian maintainer
+taking over when the original one recently asked to be replaced.  A
+new Debian upload was done as recently as yesterday.&lt;/p&gt;
+
+&lt;p&gt;Using the Debian package, I was able to follow a simple COBOL
+introduction and make and run simple COBOL programs.  It was fun to
+learn a new programming language.  If you want to test for yourself,
+&lt;a href=&quot;https://en.wikipedia.org/wiki/GnuCOBOL&quot;&gt;the GnuCOBOL Wikipedia
+page&lt;/a&gt; have a few simple examples to get you startet.&lt;/p&gt;
+
+&lt;p&gt;As I do not have much experience with COBOL, I do not know how
+standard compliant it is, but it claim to pass most tests from COBOL
+test suite, which sound good to me.  It is nice to know it is possible
+to learn COBOL using software without any usage restrictions, and I am
+very happy such nice free software project as this is available.  If
+you as me is curious about COBOL, check it out.&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
@@ -205,108 +122,168 @@ activities, please send Bitcoin donations to my address
        </item>
        
        <item>
-               <title>Using the Kodi API to play Youtube videos</title>
-               <link>http://people.skolelinux.org/pere/blog/Using_the_Kodi_API_to_play_Youtube_videos.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Using_the_Kodi_API_to_play_Youtube_videos.html</guid>
-                <pubDate>Sun, 2 Sep 2018 23:40:00 +0200</pubDate>
-               <description>&lt;p&gt;I continue to explore my Kodi installation, and today I wanted to
-tell it to play a youtube URL I received in a chat, without having to
-insert search terms using the on-screen keyboard.  After searching the
-web for API access to the Youtube plugin and testing a bit, I managed
-to find a recipe that worked.  If you got a kodi instance with its API
-available from http://kodihost/jsonrpc, you can try the following to
-have check out a nice cover band.&lt;/p&gt;
-
-&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;curl --silent --header &#39;Content-Type: application/json&#39; \
-  --data-binary &#39;{ &quot;id&quot;: 1, &quot;jsonrpc&quot;: &quot;2.0&quot;, &quot;method&quot;: &quot;Player.Open&quot;,
-  &quot;params&quot;: {&quot;item&quot;: { &quot;file&quot;:
-  &quot;plugin://plugin.video.youtube/play/?video_id=LuRGVM9O0qg&quot; } } }&#39; \
-  http://projector.local/jsonrpc&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
-
-&lt;p&gt;I&#39;ve extended kodi-stream program to take a video source as its
-first argument.  It can now handle direct video links, youtube links
-and &#39;desktop&#39; to stream my desktop to Kodi.  It is almost like a
-Chromecast. :)&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&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
+               <title>Totalovervåkning av innbyggernes bevegelser - nei takk!</title>
+               <link>http://people.skolelinux.org/pere/blog/Totaloverv_kning_av_innbyggernes_bevegelser___nei_takk_.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Totaloverv_kning_av_innbyggernes_bevegelser___nei_takk_.html</guid>
+                <pubDate>Thu, 16 Apr 2020 20:30:00 +0200</pubDate>
+               <description>&lt;p&gt;Jeg er blitt spurt hva jeg synes om lansering av smittestopp-appen,
+overvåkningsløsningen lansert av Folkehelseinstituttet,
+Simula-senteret og Regjeringen i dag, fulgt av klare trusler fra
+regjeringen om konsekvenser hvis befolkningen ikke tar den i bruk.
+Rekker ikke skrive noe fyldig om temaet, men det er klart for meg at
+den utraderer retten til privatliv samt utgjør en personlig
+sikkerhetsrisiko for alle som tar den i bruk.  Bare det er nok til at
+det fremstår som en svært dårlig ide å bli med på denne &quot;dugnaden&quot;.
+Det finnes andre og bedre tilnærminger enn den valgt av FHI.  Har de
+valgt sin tilnærming for å sikre seg nok et datasett i den fremtidige
+ehelse-portalen?  Potensialet for misbruk av informasjon samlet inn av
+appen er for stort, effekten på neste krise for klar og gevinsten for
+liten.&lt;/p&gt;
+
+&lt;p&gt;For å si det med forhenværende leder i Datatilsynet, Georg Apenes,
+som skrev i en kronikk den gang Datatilsynet vernet
+privatsfæren at
+«&lt;a href=&quot;https://www.dagbladet.no/kultur/rent-mel-i-bilen/66333882&quot;&gt;SENTRALT
+I en liberal forestillingsverden finner vi aksept av borgerens rett
+til å kunne velge å være i fred; å være u-iakttatt, uregistrert og
+anonym&lt;/a&gt;».  Det er ikke uten grunn han startet kronikken med
+«Personvern et fremmedord i enkelte av de statsorganene som samler
+inn, oppbevarer og bruker personopplysninger».  Der har nok
+statsorganene bare blitt dårligere på 13 år.&lt;/p&gt;
+
+&lt;p&gt;Det er jo også verdt å merke seg at personvernrådet i EU (EDPB)
+mener smittestopp-appen
+&lt;a href=&quot;https://nrkbeta.no/2020/04/16/personvernrad-i-eu-mener-norsk-app-bryter-med-viktig-personvernprinsipp/&quot;&gt;opererer
+i strid med prinsippet om dataminimering&lt;/a&gt;.  Også de ser at det
+finnes mye bedre måter å gjøre dette på.&lt;/p&gt;
+
+
+&lt;p&gt;Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
+det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
+til min adresse
+&lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.
+Merk, betaling med bitcoin er ikke anonymt. :)&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>Software created using taxpayers’ money should be Free Software</title>
-               <link>http://people.skolelinux.org/pere/blog/Software_created_using_taxpayers__money_should_be_Free_Software.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Software_created_using_taxpayers__money_should_be_Free_Software.html</guid>
-                <pubDate>Thu, 30 Aug 2018 13:50:00 +0200</pubDate>
-               <description>&lt;p&gt;It might seem obvious that software created using tax money should
-be available for everyone to use and improve.  Free Software
-Foundation Europe recentlystarted a campaign to help get more people
-to understand this, and I just signed the petition on
-&lt;a href=&quot;https://publiccode.eu/&quot;&gt;Public Money, Public Code&lt;/a&gt; to help
-them. I hope you too will do the same.&lt;/p&gt;
+               <title>Ny URL til den frie norske stavekontrollen</title>
+               <link>http://people.skolelinux.org/pere/blog/Ny_URL_til_den_frie_norske_stavekontrollen.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Ny_URL_til_den_frie_norske_stavekontrollen.html</guid>
+                <pubDate>Sat, 21 Mar 2020 08:00:00 +0100</pubDate>
+               <description>&lt;p&gt;Det er lenge siden jeg har sett på den norske stavekontrollen, sist
+jeg skrev om temaet var i 2016, og i mellomtiden har nettstedet
+no.speling.org forsvunnet, og både git-depotet på Alioth og
+mailman-tjenesten som hadde epostlistene for oversettelser blitt lagt
+ned.  Men bokmål og nynorsk trenger fortsatt stavekontroll, så etter
+et par purringer fra en som har lyst til å forbedre stavekontrollen
+har jeg endelig fått lagt ut ny offentlig kopi av git-depotet.  Jeg
+valgte gitlab foran github..  Siste utgave av stavekontrollen kan
+hentes ned fra
+&lt;a href=&quot;https://gitlab.com/norwegian-language-tools/spell-norwegian&quot;&gt;https://gitlab.com/norwegian-language-tools/spell-norwegian&lt;/a&gt;.
+Ingen ny versjon i denne omgang altså, bare et nytt sted å samle
+forbedringer til den frie norske stavekontrollen. :)
+
+&lt;p&gt;Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
+det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
+til min adresse
+&lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.
+Merk, betaling med bitcoin er ikke anonymt. :)&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>A bit more on privacy respecting health monitor / fitness tracker</title>
-               <link>http://people.skolelinux.org/pere/blog/A_bit_more_on_privacy_respecting_health_monitor___fitness_tracker.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_bit_more_on_privacy_respecting_health_monitor___fitness_tracker.html</guid>
-                <pubDate>Mon, 13 Aug 2018 09:00:00 +0200</pubDate>
-               <description>&lt;p&gt;A few days ago, I wondered if there are any privacy respecting
-health monitors and/or fitness trackers available for sale these days.
-I would like to buy one, but do not want to share my personal data
-with strangers, nor be forced to have a mobile phone to get data out
-of the unit.  I&#39;ve received some ideas, and would like to share them
-with you.
-
-One interesting data point was a pointer to a Free Software app for
-Android named
-&lt;a href=&quot;https://github.com/Freeyourgadget/Gadgetbridge/&quot;&gt;Gadgetbridge&lt;/a&gt;.
-It provide cloudless collection and storing of data from a variety of
-trackers.  Its
-&lt;a href=&quot;https://github.com/Freeyourgadget/Gadgetbridge/#supported-devices&quot;&gt;list
-of supported devices&lt;/a&gt; is a good indicator for units where the
-protocol is fairly open, as it is obviously being handled by Free
-Software.  Other units are reportedly encrypting the collected
-information with their own public key, making sure only the vendor
-cloud service is able to extract data from the unit.  The people
-contacting me about Gadgetbirde said they were using
-&lt;a href=&quot;https://us.amazfit.com/shop/bip?variant=336750&quot;&gt;Amazfit
-Bip&lt;/a&gt; and
-&lt;a href=&quot;http://www.xiaomimi6phone.com/xiaomi-mi-band-3-features-release-date-rumors/&quot;&gt;Xiaomi
-Band 3&lt;/a&gt;.&lt;/p&gt;
-
-&lt;p&gt;I also got a suggestion to look at some of the units from Garmin.
-I was told their GPS watches can be connected via USB and show up as a
-USB storage device with
-&lt;a href=&quot;https://www.gpsbabel.org/htmldoc-development/fmt_garmin_fit.html&quot;&gt;Garmin
-FIT files&lt;/a&gt; containing the collected measurements.  While
-proprietary, FIT files apparently can be read at least by
-&lt;a href=&quot;https://www.gpsbabel.org&quot;&gt;GPSBabel&lt;/a&gt; and the
-&lt;a href=&quot;https://apps.nextcloud.com/apps/gpxpod&quot;&gt;GpxPod&lt;/a&gt; Nextcloud
-app.  It is unclear to me if they can read step count and heart rate
-data.  The person I talked to was using a
-&lt;a href=&quot;https://buy.garmin.com/en-US/US/p/564291&quot;&gt;Garmin Forerunner
-935&lt;/a&gt;, which is a fairly expensive unit.  I doubt it is worth it for
-a unit where the vendor clearly is trying its best to move from open
-to closed systems.  I still remember when Garmin dropped NMEA support
-in its GPSes.&lt;/p&gt;
-
-&lt;p&gt;A final idea was to build ones own unit, perhaps by basing it on a
-wearable hardware platforms like
-&lt;a href=&quot;https://learn.adafruit.com/flora-geo-watch&quot;&gt;the Flora Geo
-Watch&lt;/a&gt;.  Sound like fun, but I had more money than time to spend on
-the topic, so I suspect it will have to wait for another time.&lt;/p&gt;
-
-&lt;p&gt;While I was working on tracking down links, I came across an
-inspiring TED talk by Dave Debronkart about
-&lt;a href=&quot;https://archive.org/details/DavedeBronkart_2010X&quot;&gt;being a
-e-patient&lt;/a&gt;, and discovered the web site
-&lt;a href=&quot;https://participatorymedicine.org/epatients/&quot;&gt;Participatory
-Medicine&lt;/a&gt;.  If you too want to track your own health and fitness
-without having information about your private life floating around on
-computers owned by others, I recommend checking it out.&lt;/p&gt;
+               <title>Nikita version 0.5 released - updated free software archive API server</title>
+               <link>http://people.skolelinux.org/pere/blog/Nikita_version_0_5_released___updated_free_software_archive_API_server.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Nikita_version_0_5_released___updated_free_software_archive_API_server.html</guid>
+                <pubDate>Mon, 2 Mar 2020 19:00:00 +0100</pubDate>
+               <description>&lt;p&gt;Today, after many months of development, a new release of
+&lt;ahref=&quot;https://gitlab.com/OsloMet-ABI/nikita-noark5-core/&quot;&gt;Nikita
+Noark 5 core project&lt;/a&gt; was finally
+&lt;ahref=&quot;https://lists.nuug.no/pipermail/nikita-noark/2020-March/000519.html&quot;&gt;announced
+on the project mailing list&lt;/a&gt;.  The Nikita free software solution is
+an implementation of the Norwegian archive standard Noark 5 used by
+government offices in Norway.  These were the changes in version 0.5
+since version 0.4, see the email link above for links to a demo
+site:&lt;/p&gt;
+
+&lt;ul&gt;
+
+  &lt;li&gt;Updated to Noark 5 versjon 5.0 API specification.
+    &lt;ul&gt;
+      &lt;li&gt;Changed formatting of _links from [] to {} to match IETF draft
+      on JSON HAL.&lt;/li&gt;
+      &lt;li&gt;Merged Registrering og Basisregistrering in version 4 to
+      combined Registrering.&lt;/li&gt;
+      &lt;li&gt;DokumentObjekt is now subtype of ArkivEnhet.&lt;/li&gt;
+      &lt;li&gt;Introducing new entity Arkivnotat.&lt;/li&gt;
+      &lt;li&gt;Changed all relation keys to use /v5/ instead of /v4/.&lt;/li&gt;
+      &lt;li&gt;Corrected to use new official relation keys when possible.&lt;/li&gt;
+      &lt;li&gt;Renamed Sakspart to Part and connect it to Mappe, Registrering
+      and Dokumentbeskrivelse instead of only Saksmappe.&lt;/li&gt;
+      &lt;li&gt;Moved Korrespondansepart connection from Journalpost to
+      Registrering.&lt;/li&gt;
+      &lt;li&gt;Moved Part and Korrespondansepart from package sakarkiv to
+      arkivstruktur.&lt;/li&gt;
+      &lt;li&gt;Renamed presedensstatus to presedensStatus.&lt;/li&gt;
+      &lt;li&gt;Use new JSON content-type &quot;application/vnd.noark5+json&quot;.&lt;/li&gt;
+      &lt;li&gt;Updated prepopulated format list to use PRONOM codes.&lt;/li&gt;
+      &lt;li&gt;Implemented endpoint for system information.&lt;/li&gt;
+      &lt;li&gt;Implemented national identifiers for both file and record.&lt;/li&gt;
+      &lt;li&gt;Implemented comments.&lt;/li&gt;
+      &lt;li&gt;implemented sign off.&lt;/li&gt;
+      &lt;li&gt;implemented conversion.&lt;/li&gt;
+    &lt;/ul&gt;&lt;/li&gt;
+  &lt;li&gt;Improved/implemented OData search and paging support for more entities.&lt;/li&gt;
+  &lt;li&gt;No longer exposes attribute Dokumentobjekt.referanseDokumentfil,
+   one should use the relation in _links instead.&lt;/li&gt;
+  &lt;li&gt;Corrected relation keys under
+   https://rel.arkivverket.no/noark5/v5/api/administrasjon/, replacing
+   &#39;administrasjon&#39; with &#39;admin&#39;.&lt;/li&gt;
+  &lt;li&gt;Fixed several security and stability issues discovered by Coverity.&lt;/li&gt;
+  &lt;li&gt;Corrected handling ETag errors, now return code 409.&lt;/li&gt;
+  &lt;li&gt;Improved handling of Kryssreferanse.&lt;/li&gt;
+  &lt;li&gt;Changed internal database model to use UUID/SystemID as primary keys
+   in tables.&lt;/li&gt;
+  &lt;li&gt;Changed internal database table names to use package prefix.&lt;/li&gt;
+  &lt;li&gt;Changed time zone handling for date and datetime attributes, to be
+   more according to the new definition in the API specification.&lt;/li&gt;
+  &lt;li&gt;Change revoke-token to only drop token on POST requests, not GET.&lt;/li&gt;
+  &lt;li&gt;Updated to newer Spring version.&lt;/li&gt;
+  &lt;li&gt;Changed primary key and URL component for metadata code lists to
+   use the &#39;kode&#39; value instead of a SystemID.&lt;/li&gt;
+  &lt;li&gt;Corrected implementation of Part and Sakspart.&lt;/li&gt;
+  &lt;li&gt;Changed instance lists with subtypes (like .../registrering/ and
+   .../mappe/) to include the attributes and _links entries for the
+   subtype in the supertype lists.&lt;/li&gt;
+  &lt;li&gt;Adjusted _links relations to make it possible to figure out the
+   entity of an instance using the self-&gt;href-&gt;relation key lookup
+   method.&lt;/li&gt;
+  &lt;li&gt;Fixed several end points to make sure GET, PUT, POST and DELETE
+   match each other.&lt;/li&gt;
+  &lt;li&gt;Updated DELETE endpoints to work with UUID based entity
+   identifiers.&lt;/li&gt;
+  &lt;li&gt;Restructured code to use more common URL related constants in entry
+   point values and replace @RequestMapping with method specific
+   annotations.&lt;/li&gt;
+  &lt;li&gt;Added first unit test code.&lt;/li&gt;
+  &lt;li&gt;Updated web GUI to work with the updated API.&lt;/li&gt;
+  &lt;li&gt;Changed integer fields, enforce them as numeric.&lt;/li&gt;
+  &lt;li&gt;Rewrote and simplify metadata handling to use common service and
+   controller code instead of duplicating for each type.&lt;/li&gt;
+  &lt;li&gt;Implemented the remaining metadata types.&lt;/li&gt;
+  &lt;li&gt;Changed Country list source from Wikipedia to Debian iso-codes and
+   updated the list of Countries.&lt;/li&gt;
+  &lt;li&gt;Many many corrections and improvements.&lt;/li&gt;
+
+&lt;/ul&gt;
+
+&lt;p&gt;If free and open standardized archiving API sound interesting to
+you, please contact us on IRC
+(&lt;a href=&quot;irc://irc.freenode.net/%23nikita&quot;&gt;#nikita on
+irc.freenode.net&lt;/a&gt;) or email
+(&lt;a href=&quot;https://lists.nuug.no/mailman/listinfo/nikita-noark&quot;&gt;nikita-noark
+mailing list&lt;/a&gt;).&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
@@ -315,466 +292,188 @@ activities, please send Bitcoin donations to my address
        </item>
        
        <item>
-               <title>Privacy respecting health monitor / fitness tracker?</title>
-               <link>http://people.skolelinux.org/pere/blog/Privacy_respecting_health_monitor___fitness_tracker_.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Privacy_respecting_health_monitor___fitness_tracker_.html</guid>
-                <pubDate>Tue, 7 Aug 2018 16:00:00 +0200</pubDate>
-               <description>&lt;p&gt;Dear lazyweb,&lt;/p&gt;
-
-&lt;p&gt;I wonder, is there a fitness tracker / health monitor available for
-sale today that respect the users privacy?  With this I mean a
-watch/bracelet capable of measuring pulse rate and other
-fitness/health related values (and by all means, also the correct time
-and location if possible), which is &lt;strong&gt;only&lt;/strong&gt; provided for
-me to extract/read from the unit with computer without a radio beacon
-and Internet connection.  In other words, it do not depend on a cell
-phone app, and do make the measurements available via other peoples
-computer (aka &quot;the cloud&quot;).  The collected data should be available
-using only free software.  I&#39;m not interested in depending on some
-non-free software that will leave me high and dry some time in the
-future.  I&#39;ve been unable to find any such unit.  I would like to buy
-it.  The ones I have seen for sale here in Norway are proud to report
-that they share my health data with strangers (aka &quot;cloud enabled&quot;).
-Is there an alternative?  I&#39;m not interested in giving money to people
-requiring me to accept &quot;privacy terms&quot; to allow myself to measure my
-own health.&lt;/p&gt;
+               <title>Blockchain and IoT articles accepted into Records Management Journal</title>
+               <link>http://people.skolelinux.org/pere/blog/Blockchain_and_IoT_articles_accepted_into_Records_Management_Journal.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Blockchain_and_IoT_articles_accepted_into_Records_Management_Journal.html</guid>
+                <pubDate>Thu, 27 Feb 2020 09:05:00 +0100</pubDate>
+               <description>&lt;p&gt;On Tuesday, two scietific articles we have been working on for a
+while, was finally accepted for publication into
+&lt;a href=&quot;https://www.emerald.com/insight/publication/issn/0956-5698&quot;&gt;Records
+Management Journal&lt;/a&gt;.  Still waiting for the assigned DOI urls to
+start working, but you can have a look at the LaTeX originals here.&lt;/p&gt;
+
+&lt;p&gt;The first article is
+&quot;&lt;a href=&quot;http://people.skolelinux.org/pere/blog/images/2020-02-25-rmj-iot-record-keeping.pdf&quot;&gt;A
+record-keeping approach to managing IoT-data for government
+agencies&lt;/a&gt;&quot; (&lt;a href=&quot;https://doi.org/10.1108/RMJ-09-2019-0050&quot;&gt;DOI
+10.1108/RMJ-09-2019-0050&lt;a/&gt;) by Thomas Sødring, Petter Reinholdtsen
+and David Massey, and sketches some approaches for storing measurement
+data (aka Internet of Things sensor data) in a archive, thus providing
+a well defined mechanism for screening and deletion of the information &lt;/p&gt;
+
+&lt;p&gt;The second article is
+&quot;&lt;a href=&quot;http://people.skolelinux.org/pere/blog/images/2020-02-25-rmj-block-chain-record-keeping.pdf&quot;&gt;Publishing
+and using record-keeping structural information in a blockchain&lt;/a&gt;&quot;
+(&lt;a href=&quot;https://doi.org/10.1108/RMJ-09-2019-0056&quot;&gt;DOI
+10.1108/RMJ-09-2019-0056&lt;/a&gt;) by Thomas Sødring, Petter Reinholdtsen
+and Svein Ølnes, where we describe a way for third parties to validate
+authenticity and thus improve trust in the records kept in a
+archive.&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&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
+
+&lt;p&gt;&lt;strong&gt;Update 2020-04-26&lt;/strong&gt;: Initially managed to swap the
+DOI numbers.  Fixed it.&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>Sharing images with friends and family using RSS and EXIF/XMP metadata</title>
-               <link>http://people.skolelinux.org/pere/blog/Sharing_images_with_friends_and_family_using_RSS_and_EXIF_XMP_metadata.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Sharing_images_with_friends_and_family_using_RSS_and_EXIF_XMP_metadata.html</guid>
-                <pubDate>Tue, 31 Jul 2018 23:30:00 +0200</pubDate>
-               <description>&lt;p&gt;For a while now, I have looked for a sensible way to share images
-with my family using a self hosted solution, as it is unacceptable to
-place images from my personal life under the control of strangers
-working for data hoarders like Google or Dropbox.  The last few days I
-have drafted an approach that might work out, and I would like to
-share it with you.  I would like to publish images on a server under
-my control, and point some Internet connected display units using some
-free and open standard to the images I published.  As my primary
-language is not limited to ASCII, I need to store metadata using
-UTF-8.  Many years ago, I hoped to find a digital photo frame capable
-of reading a RSS feed with image references (aka using the
-&amp;lt;enclosure&amp;gt; RSS tag), but was unable to find a current supplier
-of such frames.  In the end I gave up that approach.&lt;/p&gt;
-
-&lt;p&gt;Some months ago, I discovered that
-&lt;a href=&quot;https://www.jwz.org/xscreensaver/&quot;&gt;XScreensaver&lt;/a&gt; is able to
-read images from a RSS feed, and used it to set up a screen saver on
-my home info screen, showing images from the Daily images feed from
-NASA.  This proved to work well.  More recently I discovered that
-&lt;a href=&quot;https://kodi.tv&quot;&gt;Kodi&lt;/a&gt; (both using
-&lt;a href=&quot;https://www.openelec.tv/&quot;&gt;OpenELEC&lt;/a&gt; and
-&lt;a href=&quot;https://libreelec.tv&quot;&gt;LibreELEC&lt;/a&gt;) provide the
-&lt;a href=&quot;https://github.com/grinsted/script.screensaver.feedreader&quot;&gt;Feedreader&lt;/a&gt;
-screen saver capable of reading a RSS feed with images and news.  For
-fun, I used it this summer to test Kodi on my parents TV by hooking up
-a Raspberry PI unit with LibreELEC, and wanted to provide them with a
-screen saver showing selected pictures from my selection.&lt;/p&gt;
-
-&lt;p&gt;Armed with motivation and a test photo frame, I set out to generate
-a RSS feed for the Kodi instance.  I adjusted my &lt;a
-href=&quot;https://freedombox.org/&quot;&gt;Freedombox&lt;/a&gt; instance, created
-/var/www/html/privatepictures/, wrote a small Perl script to extract
-title and description metadata from the photo files and generate the
-RSS file.  I ended up using Perl instead of python, as the
-libimage-exiftool-perl Debian package seemed to handle the EXIF/XMP
-tags I ended up using, while python3-exif did not.  The relevant EXIF
-tags only support ASCII, so I had to find better alternatives.  XMP
-seem to have the support I need.&lt;/p&gt;
-
-&lt;p&gt;I am a bit unsure which EXIF/XMP tags to use, as I would like to
-use tags that can be easily added/updated using normal free software
-photo managing software.  I ended up using the tags set using this
-exiftool command, as these tags can also be set using digiKam:&lt;/p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-exiftool -headline=&#39;The RSS image title&#39; \
-  -description=&#39;The RSS image description.&#39; \
-  -subject+=for-family photo.jpeg
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;I initially tried the &quot;-title&quot; and &quot;keyword&quot; tags, but they were
-invisible in digiKam, so I changed to &quot;-headline&quot; and &quot;-subject&quot;.  I
-use the keyword/subject &#39;for-family&#39; to flag that the photo should be
-shared with my family.  Images with this keyword set are located and
-copied into my Freedombox for the RSS generating script to find.&lt;/p&gt;
-
-&lt;p&gt;Are there better ways to do this?  Get in touch if you have better
-suggestions.&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&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
+               <title>Redaksjon på plass for Noark 5 tjenestegrensesnitt</title>
+               <link>http://people.skolelinux.org/pere/blog/Redaksjon_p__plass_for_Noark_5_tjenestegrensesnitt.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Redaksjon_p__plass_for_Noark_5_tjenestegrensesnitt.html</guid>
+                <pubDate>Wed, 5 Feb 2020 14:45:00 +0100</pubDate>
+               <description>&lt;p&gt;Arbeidet med å lage et godt, fritt og åpent standardisert maskinelt
+grensesnitt for arkivering, med tilhørende fri
+programvareimplementasjon fortsetter.  Jeg snakker om
+&lt;a href=&quot;https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard&quot;&gt;Noark
+5 Tjenestegrensesnitt&lt;/a&gt; og
+&lt;a href=&quot;https://gitlab.com/OsloMet-ABI/nikita-noark5-core/&quot;&gt;Nikita&lt;/a&gt;.
+Siste nytt etter
+&lt;a href=&quot;https://www.nuug.no/aktiviteter/20200127-noark-seminar/&quot;&gt;seminaret
+for noen dager siden&lt;/a&gt;, er vi i Nikita-prosjektet har fått beskjed
+fra Arkivverket at det blir satt ned en redaksjon for å videreutvikle
+spesifikasjonen.  Redaksjonen består av Mona Danielsen og Anne Sofie
+Knutsen ved arkivverket, Thomas Sødring ved OsloMet, og meg selv fra
+NUUG.  De to sistenevnte tar seg av de åpenbare forbedringene, mens
+hele redaksjonen diskuterer tvilstilfeller.  Jeg håper dette vil bidra
+til at vi lykkes i å gjøre denne protokollspesifikasjonen så entydig
+og klar at den vil bidra til et velfungerende marked for
+arkivsystemer, og sikre at programmer som trenger å snakke med
+arkivsystemet kan snakke med enhver implementasjon av
+API-spesifikasjonen.  Nikita er den første implementasjonen, men det
+bør blir flere.&lt;/p&gt;
+
+&lt;p&gt;Det gjenstår riktig nok endel før vi er i mål, selv om svært mye
+allerede er på plass.  Med innspill og forslag til forbedringer fra
+alle som vil ha et leverandøruavhengig og fullstendig
+datamaskinlesbart grensesnitt til arkivet, så tror jeg vi vil
+lykkes.&lt;/p&gt;
+
+&lt;p&gt;Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
+det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
+til min adresse
+&lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.
+Merk, betaling med bitcoin er ikke anonymt. :)&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>Simple streaming the Linux desktop to Kodi using GStreamer and RTP</title>
-               <link>http://people.skolelinux.org/pere/blog/Simple_streaming_the_Linux_desktop_to_Kodi_using_GStreamer_and_RTP.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Simple_streaming_the_Linux_desktop_to_Kodi_using_GStreamer_and_RTP.html</guid>
-                <pubDate>Thu, 12 Jul 2018 17:55:00 +0200</pubDate>
-               <description>&lt;p&gt;Last night, I wrote
-&lt;a href=&quot;http://people.skolelinux.org/pere/blog/Streaming_the_Linux_desktop_to_Kodi_using_VLC_and_RTSP.html&quot;&gt;a
-recipe to stream a Linux desktop using VLC to a instance of Kodi&lt;/a&gt;.
-During the day I received valuable feedback, and thanks to the
-suggestions I have been able to rewrite the recipe into a much simpler
-approach requiring no setup at all.  It is a single script that take
-care of it all.&lt;/p&gt;
-
-&lt;p&gt;This new script uses GStreamer instead of VLC to capture the
-desktop and stream it to Kodi.  This fixed the video quality issue I
-saw initially.  It further removes the need to add a m3u file on the
-Kodi machine, as it instead connects to
-&lt;a href=&quot;https://kodi.wiki/view/JSON-RPC_API/v8&quot;&gt;the JSON-RPC API in
-Kodi&lt;/a&gt; and simply ask Kodi to play from the stream created using
-GStreamer.  Streaming the desktop to Kodi now become trivial.  Copy
-the script below, run it with the DNS name or IP address of the kodi
-server to stream to as the only argument, and watch your screen show
-up on the Kodi screen.  Note, it depend on multicast on the local
-network, so if you need to stream outside the local network, the
-script must be modified.  Also note, I have no idea if audio work, as
-I only care about the picture part.&lt;/p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-#!/bin/sh
-#
-# Stream the Linux desktop view to Kodi.  See
-# http://people.skolelinux.org/pere/blog/Streaming_the_Linux_desktop_to_Kodi_using_VLC_and_RTSP.html
-# for backgorund information.
-
-# Make sure the stream is stopped in Kodi and the gstreamer process is
-# killed if something go wrong (for example if curl is unable to find the
-# kodi server).  Do the same when interrupting this script.
-kodicmd() {
-    host=&quot;$1&quot;
-    cmd=&quot;$2&quot;
-    params=&quot;$3&quot;
-    curl --silent --header &#39;Content-Type: application/json&#39; \
-        --data-binary &quot;{ \&quot;id\&quot;: 1, \&quot;jsonrpc\&quot;: \&quot;2.0\&quot;, \&quot;method\&quot;: \&quot;$cmd\&quot;, \&quot;params\&quot;: $params }&quot; \
-        &quot;http://$host/jsonrpc&quot;
-}
-cleanup() {
-    if [ -n &quot;$kodihost&quot; ] ; then
-       # Stop the playing when we end
-       playerid=$(kodicmd &quot;$kodihost&quot; Player.GetActivePlayers &quot;{}&quot; |
-                           jq .result[].playerid)
-       kodicmd &quot;$kodihost&quot; Player.Stop &quot;{ \&quot;playerid\&quot; : $playerid }&quot; &gt; /dev/null
-    fi
-    if [ &quot;$gstpid&quot; ] &amp;&amp; kill -0 &quot;$gstpid&quot; &gt;/dev/null 2&gt;&amp;1; then
-       kill &quot;$gstpid&quot;
-    fi
-}
-trap cleanup EXIT INT
-
-if [ -n &quot;$1&quot; ]; then
-    kodihost=$1
-    shift
-else
-    kodihost=kodi.local
-fi
-
-mcast=239.255.0.1
-mcastport=1234
-mcastttl=1
-
-pasrc=$(pactl list | grep -A2 &#39;Source #&#39; | grep &#39;Name: .*\.monitor$&#39; | \
-  cut -d&quot; &quot; -f2|head -1)
-gst-launch-1.0 ximagesrc use-damage=0 ! video/x-raw,framerate=30/1 ! \
-  videoconvert ! queue2 ! \
-  x264enc bitrate=8000 speed-preset=superfast tune=zerolatency qp-min=30 \
-  key-int-max=15 bframes=2 ! video/x-h264,profile=high ! queue2 ! \
-  mpegtsmux alignment=7 name=mux ! rndbuffersize max=1316 min=1316 ! \
-  udpsink host=$mcast port=$mcastport ttl-mc=$mcastttl auto-multicast=1 sync=0 \
-  pulsesrc device=$pasrc ! audioconvert ! queue2 ! avenc_aac ! queue2 ! mux. \
-  &gt; /dev/null 2&gt;&amp;1 &amp;
-gstpid=$!
-
-# Give stream a second to get going
-sleep 1
-
-# Ask kodi to start streaming using its JSON-RPC API
-kodicmd &quot;$kodihost&quot; Player.Open \
-       &quot;{\&quot;item\&quot;: { \&quot;file\&quot;: \&quot;udp://@$mcast:$mcastport\&quot; } }&quot; &gt; /dev/null
-
-# wait for gst to end
-wait &quot;$gstpid&quot;
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;I hope you find the approach useful.  I know I do.&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&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
+               <title>Artikkel om Noark 5 Tjenestegrensesnitt og Nikita i Arkivråd nummer 3 for 2019</title>
+               <link>http://people.skolelinux.org/pere/blog/Artikkel_om_Noark_5_Tjenestegrensesnitt_og_Nikita_i_Arkivr_d_nummer_3_for_2019.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Artikkel_om_Noark_5_Tjenestegrensesnitt_og_Nikita_i_Arkivr_d_nummer_3_for_2019.html</guid>
+                <pubDate>Thu, 26 Dec 2019 08:00:00 +0100</pubDate>
+               <description>&lt;p&gt;Like før julaften ble en artikkel jeg har skrevet om vedlikehold av
+&lt;a href=&quot;https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard&quot;&gt;Noark
+5 Tjenestegrensesnitt&lt;/a&gt; og Nikita publisert i &lt;a
+href=&quot;https://www.arkivrad.no/arkivrad&quot;&gt;tidsskriftet Arkivråd&lt;/a&gt;.
+Det er basert på
+&lt;a href=&quot;http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html&quot;&gt;min bloggpost
+om samme tema&lt;/a&gt; som ble publisert 2019-03-11.  Jeg oppdaget nettopp
+at nettsiden til tidsskriftet Arkivråd er oppdatert med siste utgave,
+og artikkelen dermed er tilgjengelig for alle. Du finner den i
+&lt;a href=&quot;https://www.arkivrad.no/sites/arkivrad/files/arkivrad_03_2019_nett.pdf&quot;&gt;PDF-en
+til nummer 2019/3 på side 30-33&lt;/a&gt;.  Jeg håper leserne av
+tidsskriftet får lyst til å sjekke ut tjenestegrensesnittet og at
+artikkelen vil gjøre det enklere for flere å bidra til en enda bedre,
+klarere og mer entydig API-spesifikasjon.  Det kan gjøre at
+&lt;a href=&quot;https://gitlab.com/OsloMet-ABI/nikita-noark5-core/&quot;&gt;arkivsystemet
+Nikita&lt;/a&gt; kan bli enda bedre når spesifikasjonen forbedres.&lt;/p&gt;
+
+&lt;p&gt;Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
+det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
+til min adresse
+&lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.
+Merk, betaling med bitcoin er ikke anonymt. :)&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>Streaming the Linux desktop to Kodi using VLC and RTSP</title>
-               <link>http://people.skolelinux.org/pere/blog/Streaming_the_Linux_desktop_to_Kodi_using_VLC_and_RTSP.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Streaming_the_Linux_desktop_to_Kodi_using_VLC_and_RTSP.html</guid>
-                <pubDate>Thu, 12 Jul 2018 02:00:00 +0200</pubDate>
-               <description>&lt;p&gt;PS: See
-&lt;ahref=&quot;http://people.skolelinux.org/pere/blog/Simple_streaming_the_Linux_desktop_to_Kodi_using_GStreamer_and_RTP.html&quot;&gt;the
-followup post&lt;/a&gt; for a even better approach.&lt;/p&gt;
-
-&lt;p&gt;A while back, I was asked by a friend how to stream the desktop to
-my projector connected to Kodi.  I sadly had to admit that I had no
-idea, as it was a task I never had tried.  Since then, I have been
-looking for a way to do so, preferable without much extra software to
-install on either side.  Today I found a way that seem to kind of
-work.  Not great, but it is a start.&lt;/p&gt;
-
-&lt;p&gt;I had a look at several approaches, for example
-&lt;a href=&quot;https://github.com/mfoetsch/dlna_live_streaming&quot;&gt;using uPnP
-DLNA as described in 2011&lt;/a&gt;, but it required a uPnP server, fuse and
-local storage enough to store the stream locally.  This is not going
-to work well for me, lacking enough free space, and it would
-impossible for my friend to get working.&lt;/p&gt;
-
-&lt;p&gt;Next, it occurred to me that perhaps I could use VLC to create a
-video stream that Kodi could play.  Preferably using
-broadcast/multicast, to avoid having to change any setup on the Kodi
-side when starting such stream.  Unfortunately, the only recipe I
-could find using multicast used the rtp protocol, and this protocol
-seem to not be supported by Kodi.&lt;/p&gt;
-
-&lt;p&gt;On the other hand, the rtsp protocol is working!  Unfortunately I
-have to specify the IP address of the streaming machine in both the
-sending command and the file on the Kodi server.  But it is showing my
-desktop, and thus allow us to have a shared look on the big screen at
-the programs I work on.&lt;/p&gt;
-
-&lt;p&gt;I did not spend much time investigating codeces.  I combined the
-rtp and rtsp recipes from
-&lt;a href=&quot;https://wiki.videolan.org/Documentation:Streaming_HowTo/Command_Line_Examples/&quot;&gt;the
-VLC Streaming HowTo/Command Line Examples&lt;/a&gt;, and was able to get
-this working on the desktop/streaming end.&lt;/p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-vlc screen:// --sout \
-  &#39;#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128}:rtp{dst=projector.local,port=1234,sdp=rtsp://192.168.11.4:8080/test.sdp}&#39;
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;I ssh-ed into my Kodi box and created a file like this with the
-same IP address:&lt;/p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-echo rtsp://192.168.11.4:8080/test.sdp \
-  &gt; /storage/videos/screenstream.m3u
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;Note the 192.168.11.4 IP address is my desktops IP address.  As far
-as I can tell the IP must be hardcoded for this to work.  In other
-words, if someone elses machine is going to do the steaming, you have
-to update screenstream.m3u on the Kodi machine and adjust the vlc
-recipe.  To get started, locate the file in Kodi and select the m3u
-file while the VLC stream is running.  The desktop then show up in my
-big screen. :)&lt;/p&gt;
-
-&lt;p&gt;When using the same technique to stream a video file with audio,
-the audio quality is really bad.  No idea if the problem is package
-loss or bad parameters for the transcode.  I do not know VLC nor Kodi
-enough to tell.&lt;/p&gt;
-
-&lt;p&gt;&lt;strong&gt;Update 2018-07-12&lt;/strong&gt;: Johannes Schauer send me a few
-succestions and reminded me about an important step.  The &quot;screen:&quot;
-input source is only available once the vlc-plugin-access-extra
-package is installed on Debian.  Without it, you will see this error
-message: &quot;VLC is unable to open the MRL &#39;screen://&#39;.  Check the log
-for details.&quot;  He further found that it is possible to drop some parts
-of the VLC command line to reduce the amount of hardcoded information.
-It is also useful to consider using cvlc to avoid having the VLC
-window in the desktop view.  In sum, this give us this command line on
-the source end
-
-&lt;blockquote&gt;&lt;pre&gt;
-cvlc screen:// --sout \
-  &#39;#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128}:rtp{sdp=rtsp://:8080/}&#39;
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;and this on the Kodi end&lt;p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-echo rtsp://192.168.11.4:8080/ \
-  &gt; /storage/videos/screenstream.m3u
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;Still bad image quality, though.  But I did discover that streaming
-a DVD using dvdsimple:///dev/dvd as the source had excellent video and
-audio quality, so I guess the issue is in the input or transcoding
-parts, not the rtsp part.  I&#39;ve tried to change the vb and ab
-parameters to use more bandwidth, but it did not make a
-difference.&lt;/p&gt;
-
-&lt;p&gt;I further received a suggestion from Einar Haraldseid to try using
-gstreamer instead of VLC, and this proved to work great!  He also
-provided me with the trick to get Kodi to use a multicast stream as
-its source.  By using this monstrous oneliner, I can stream my desktop
-with good video quality in reasonable framerate to the 239.255.0.1
-multicast address on port 1234:
-
-&lt;blockquote&gt;&lt;pre&gt;
-gst-launch-1.0 ximagesrc use-damage=0 ! video/x-raw,framerate=30/1 ! \
-  videoconvert ! queue2 ! \
-  x264enc bitrate=8000 speed-preset=superfast tune=zerolatency qp-min=30 \
-  key-int-max=15 bframes=2 ! video/x-h264,profile=high ! queue2 ! \
-  mpegtsmux alignment=7 name=mux ! rndbuffersize max=1316 min=1316 ! \
-  udpsink host=239.255.0.1 port=1234 ttl-mc=1 auto-multicast=1 sync=0 \
-  pulsesrc device=$(pactl list | grep -A2 &#39;Source #&#39; | \
-    grep &#39;Name: .*\.monitor$&#39; |  cut -d&quot; &quot; -f2|head -1) ! \
-  audioconvert ! queue2 ! avenc_aac ! queue2 ! mux.
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;and this on the Kodi end&lt;p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-echo udp://@239.255.0.1:1234 \
-  &gt; /storage/videos/screenstream.m3u
-&lt;/pre&gt;&lt;/blockquote&gt;
-
-&lt;p&gt;Note the trick to pick a valid pulseaudio source.  It might not
-pick the one you need.  This approach will of course lead to trouble
-if more than one source uses the same multicast port and address.
-Note the ttl-mc=1 setting, which limit the multicast packages to the
-local network.  If the value is increased, your screen will be
-broadcasted further, one network &quot;hop&quot; for each increase (read up on
-multicast to learn more. :)!&lt;/p&gt;
-
-&lt;p&gt;Having cracked how to get Kodi to receive multicast streams, I
-could use this VLC command to stream to the same multicast address.
-The image quality is way better than the rtsp approach, but gstreamer
-seem to be doing a better job.&lt;/p&gt;
-
-&lt;blockquote&gt;&lt;pre&gt;
-cvlc screen:// --sout &#39;#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab=128}:rtp{mux=ts,dst=239.255.0.1,port=1234,sdp=sap}&#39;
-&lt;/pre&gt;&lt;/blockquote&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&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
+               <title>Meningsløst, men for hvem...</title>
+               <link>http://people.skolelinux.org/pere/blog/Meningsl_st__men_for_hvem___.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Meningsl_st__men_for_hvem___.html</guid>
+                <pubDate>Wed, 25 Dec 2019 10:35:00 +0100</pubDate>
+               <description>&lt;p&gt;En historie som har betydd endel for meg, og som jeg av og til
+tenker på når hverdagen tynger, ble så vidt jeg har klart å finne ut,
+skrevet av &lt;a href=&quot;https://en.wikipedia.org/wiki/Loren_Eiseley&quot;&gt;Loren
+Eiseley&lt;/a&gt; &lt;a href=&quot;https://en.wikipedia.org/wiki/The_Star_Thrower&quot;&gt;i
+flere ulike varianter&lt;/a&gt;.  På norsk tror jeg den går under navnet
+«Gutten og sjøstjernen», og jeg fant en oversettelse av en utgave av den
+hos
+&lt;a href=&quot;https://no.quora.com/Hva-er-din-favoritthistorie&quot;&gt;Quora&lt;/a&gt;.
+Fant også &lt;a href=&quot;https://www.youtube.com/watch?v=-qClChUdlfI&quot;&gt;en
+filmatisering&lt;/a&gt;, men den versjonen jeg liker best fant jeg
+&lt;a href=&quot;https://www.goodreads.com/author/quotes/56782.Loren_Eiseley&quot;&gt;hos
+Goodreads&lt;/a&gt;.  Jeg oversatte den utgaven til norsk i går, og har lyst
+til å dele den med deg:
+
+&lt;blockquote&gt;&lt;p&gt;Mens jeg tok en pause fra skrivingen og vandret på en
+øde strand ved daggry, så jeg en gutt i det fjerne bøye seg ned og
+kaste noe mens han vandret mot meg over den endeløse stranden.  Da han
+kom nærmere, kunne jeg se at han kastet sjøstjerner, som var etterlatt
+i sanden av tidevannet, tilbake i havet. Da han var nær nok spurte jeg
+ham hvorfor han jobbet så hardt på denne merkelige oppgaven. Han sa at
+solen snart ville stå opp og tørke sjøstjernene slik at de ville
+dø.&lt;/p&gt;
+
+&lt;p&gt;Jeg sa til ham at dette var helt meningsløst.  Det var kilometer på
+kilometer med strand, og det lå sjøstjerner hele veien.  En person
+alene kunne ikke gjøre noen forskjell.  Han smilte da han plukket opp
+neste sjøstjerne. Mens han kastet den så langt ut i havet som han
+klarte sa han, «for denne gjør det en forskjell».  Jeg droppet
+skrivingen og tilbrakte resten av morgenen med å kaste
+sjøstjerner.&lt;/p&gt;
+
+&lt;p&gt;- Loren Eiseley&lt;/p&gt;
+&lt;/blockquote&gt;
+
+&lt;p&gt;Kanskje noe du også kan ha glede av å tenke på når ting virker
+håpløst?&lt;/p&gt;
+
+&lt;p&gt;Teksten er gjengitt og oversatt basert på utgaven på Good Read,
+uten tillatelse fra noen andre enn meg selv.  Jeg håper på tilgivelse,
+hvis det er et problem for noen, da det er gjort i beste mening.  Hvis
+eventuell rettighetshaver tar kontakt vil jeg fjerne teksten og i
+stedet legge ut henvendelsen der teksten kreves fjernet.&lt;/p&gt;
+
+&lt;p&gt;Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
+det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
+til min adresse
+&lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.
+Merk, betaling med bitcoin er ikke anonymt. :)&lt;/p&gt;
 </description>
        </item>
        
        <item>
-               <title>What is the most supported MIME type in Debian in 2018?</title>
-               <link>http://people.skolelinux.org/pere/blog/What_is_the_most_supported_MIME_type_in_Debian_in_2018_.html</link>
-               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/What_is_the_most_supported_MIME_type_in_Debian_in_2018_.html</guid>
-                <pubDate>Mon, 9 Jul 2018 08:05:00 +0200</pubDate>
-               <description>&lt;p&gt;Five years ago,
-&lt;a href=&quot;http://people.skolelinux.org/pere/blog/What_is_the_most_supported_MIME_type_in_Debian_.html&quot;&gt;I
-measured what the most supported MIME type in Debian was&lt;/a&gt;, by
-analysing the desktop files in all packages in the archive.  Since
-then, the DEP-11 AppStream system has been put into production, making
-the task a lot easier.  This made me want to repeat the measurement,
-to see how much things changed.  Here are the new numbers, for
-unstable only this time:
-
-&lt;p&gt;&lt;strong&gt;Debian Unstable:&lt;/strong&gt;&lt;/p&gt;
-
-&lt;pre&gt;
-  count MIME type
-  ----- -----------------------
-     56 image/jpeg
-     55 image/png
-     49 image/tiff
-     48 image/gif
-     39 image/bmp
-     38 text/plain
-     37 audio/mpeg
-     34 application/ogg
-     33 audio/x-flac
-     32 audio/x-mp3
-     30 audio/x-wav
-     30 audio/x-vorbis+ogg
-     29 image/x-portable-pixmap
-     27 inode/directory
-     27 image/x-portable-bitmap
-     27 audio/x-mpeg
-     26 application/x-ogg
-     25 audio/x-mpegurl
-     25 audio/ogg
-     24 text/html
-&lt;/pre&gt;
-
-&lt;p&gt;The list was created like this using a sid chroot: &quot;cat
-/var/lib/apt/lists/*sid*_dep11_Components-amd64.yml.gz| zcat | awk &#39;/^
-- \S+\/\S+$/ {print $2 }&#39; | sort | uniq -c | sort -nr | head -20&quot;&lt;/p&gt;
-
-&lt;p&gt;It is interesting to see how image formats have passed text/plain
-as the most announced supported MIME type.  These days, thanks to the
-AppStream system, if you run into a file format you do not know, and
-want to figure out which packages support the format, you can find the
-MIME type of the file using &quot;file --mime &amp;lt;filename&amp;gt;&quot;, and then
-look up all packages announcing support for this format in their
-AppStream metadata (XML or .desktop file) using &quot;appstreamcli
-what-provides mimetype &amp;lt;mime-type&amp;gt;.  For example if you, like
-me, want to know which packages support inode/directory, you can get a
-list like this:&lt;/p&gt;
-
-&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
-% appstreamcli what-provides mimetype inode/directory | grep Package: | sort
-Package: anjuta
-Package: audacious
-Package: baobab
-Package: cervisia
-Package: chirp
-Package: dolphin
-Package: doublecmd-common
-Package: easytag
-Package: enlightenment
-Package: ephoto
-Package: filelight
-Package: gwenview
-Package: k4dirstat
-Package: kaffeine
-Package: kdesvn
-Package: kid3
-Package: kid3-qt
-Package: nautilus
-Package: nemo
-Package: pcmanfm
-Package: pcmanfm-qt
-Package: qweborf
-Package: ranger
-Package: sirikali
-Package: spacefm
-Package: spacefm
-Package: vifm
-%
-&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
-
-&lt;p&gt;Using the same method, I can quickly discover that the Sketchup file
-format is not yet supported by any package in Debian:&lt;/p&gt;
-
-&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
-% appstreamcli what-provides mimetype  application/vnd.sketchup.skp
-Could not find component providing &#39;mimetype::application/vnd.sketchup.skp&#39;.
-%
-&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
-
-&lt;p&gt;Yesterday I used it to figure out which packages support the STL 3D
-format:&lt;/p&gt;
-
-&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
-% appstreamcli what-provides mimetype  application/sla|grep Package
-Package: cura
-Package: meshlab
-Package: printrun
-%
-&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
-
-&lt;p&gt;PS: A new version of Cura was uploaded to Debian yesterday.&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&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
+               <title>Artikkel om Nikita i Arkheion nummer 2019/2</title>
+               <link>http://people.skolelinux.org/pere/blog/Artikkel_om_Nikita_i_Arkheion_nummer_2019_2.html</link>
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Artikkel_om_Nikita_i_Arkheion_nummer_2019_2.html</guid>
+                <pubDate>Mon, 9 Dec 2019 15:05:00 +0100</pubDate>
+               <description>&lt;p&gt;Jeg hadde i dag gleden av å oppdage at en artikkel om
+&lt;a href=&quot;https://gitlab.com/OsloMet-ABI/nikita-noark5-core/&quot;&gt;arkivsystemet
+Nikita&lt;/a&gt; som vi skrev i sommer, nå er publisert i
+&lt;a href=&quot;http://www.arkheion.no/&quot;&gt;Arkheion, fagtidsskrift for kommunial
+arkivsektor&lt;/a&gt;.  Du finner artikkelen på side 30-33 i nummer 2019/2,
+PDF kan lastes ned fra nettstedet til tidsskriftet.  Kanskje
+publiseringen kan føre til at noen flere får øynene opp for verdien av
+et åpent standardisert API for arkivering og søk i arkivet.&lt;/p&gt;
+
+&lt;p&gt;Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
+det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
+til min adresse
+&lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.
+Merk, betaling med bitcoin er ikke anonymt. :)&lt;/p&gt;
 </description>
        </item>