1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" dir=
"ltr">
5 <meta http-equiv=
"Content-Type" content=
"text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: entries from April
2014</title>
7 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel=
"alternate" title=
"RSS Feed" href=
"04.rss" type=
"application/rss+xml" />
15 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
22 <h3>Entries from April
2014.
</h3>
26 <a href=
"http://people.skolelinux.org/pere/blog/Install_hardware_dependent_packages_using_tasksel__Isenkram_0_7_.html">Install hardware dependent packages using tasksel (Isenkram
0.7)
</a>
32 <p>It would be nice if it was easier in Debian to get all the hardware
33 related packages relevant for the computer installed automatically.
34 So I implemented one, using
35 <a href=
"http://packages.qa.debian.org/isenkram">my Isenkram
36 package
</a>. To use it, install the tasksel and isenkram packages and
37 run tasksel as user root. You should be presented with a new option,
38 "Hardware specific packages (autodetected by isenkram)". When you
39 select it, tasksel will install the packages isenkram claim is fit for
40 the current hardware, hot pluggable or not.
<p>
42 <p>The implementation is in two files, one is the tasksel menu entry
43 description, and the other is the script used to extract the list of
44 packages to install. The first part is in
45 <tt>/usr/share/tasksel/descs/isenkram.desc
</tt> and look like
51 Description: Hardware specific packages (autodetected by isenkram)
52 Based on the detected hardware various hardware specific packages are
54 Test-new-install: mark show
56 Packages: for-current-hardware
57 </pre></blockquote></p>
59 <p>The second part is in
60 <tt>/usr/lib/tasksel/packages/for-current-hardware
</tt> and look like
68 isenkram-autoinstall-firmware -l
70 </pre></blockquote></p>
72 <p>All in all, a very short and simple implementation making it
73 trivial to install the hardware dependent package we all may want to
74 have installed on our machines. I've not been able to find a way to
75 get tasksel to tell you exactly which packages it plan to install
76 before doing the installation. So if you are curious or careful,
77 check the output from the isenkram-* command line tools first.
</p>
79 <p>The information about which packages are handling which hardware is
80 fetched either from the isenkram package itself in
81 /usr/share/isenkram/, from git.debian.org or from the APT package
82 database (using the Modaliases header). The APT package database
83 parsing have caused a nasty resource leak in the isenkram daemon (bugs
84 <a href=
"http://bugs.debian.org/719837">#
719837</a> and
85 <a href=
"http://bugs.debian.org/730704">#
730704</a>). The cause is in
86 the python-apt code (bug
87 <a href=
"http://bugs.debian.org/745487">#
745487</a>), but using a
88 workaround I was able to get rid of the file descriptor leak and
89 reduce the memory leak from ~
30 MiB per hardware detection down to
90 around
2 MiB per hardware detection. It should make the desktop
91 daemon a lot more useful. The fix is in version
0.7 uploaded to
94 <p>I believe the current way of mapping hardware to packages in
95 Isenkram is is a good draft, but in the future I expect isenkram to
96 use the AppStream data source for this. A proposal for getting proper
97 AppStream support into Debian is floating around as
98 <a href=
"https://wiki.debian.org/DEP-11">DEP-
11</a>, and
99 <a href=
"https://wiki.debian.org/SummerOfCode2014/Projects#SummerOfCode2014.2FProjects.2FAppStreamDEP11Implementation.AppStream.2FDEP-11_for_the_Debian_Archive">GSoC
100 project
</a> will take place this summer to improve the situation. I
101 look forward to seeing the result, and welcome patches for isenkram to
102 start using the information when it is ready.
</p>
104 <p>If you want your package to map to some specific hardware, either
105 add a "Xb-Modaliases" header to your control file like I did in
106 <a href=
"http://packages.qa.debian.org/pymissile">the pymissile
107 package
</a> or submit a bug report with the details to the isenkram
109 <a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram/">all my
110 blog posts tagged isenkram
</a> for details on the notation. I expect
111 the information will be migrated to AppStream eventually, but for the
112 moment I got no better place to store it.
</p>
118 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram
</a>.
123 <div class=
"padding"></div>
127 <a href=
"http://people.skolelinux.org/pere/blog/FreedomBox_milestone___all_packages_now_in_Debian_Sid.html">FreedomBox milestone - all packages now in Debian Sid
</a>
133 <p>The
<a href=
"https://wiki.debian.org/FreedomBox">Freedombox
134 project
</a> is working on providing the software and hardware to make
135 it easy for non-technical people to host their data and communication
136 at home, and being able to communicate with their friends and family
137 encrypted and away from prying eyes. It is still going strong, and
138 today a major mile stone was reached.
</p>
140 <p>Today, the last of the packages currently used by the project to
141 created the system images were accepted into Debian Unstable. It was
142 the freedombox-setup package, which is used to configure the images
143 during build and on the first boot. Now all one need to get going is
144 the build code from the freedom-maker git repository and packages from
145 Debian. And once the freedombox-setup package enter testing, we can
146 build everything directly from Debian. :)
</p>
148 <p>Some key packages used by Freedombox are
149 <a href=
"http://packages.qa.debian.org/freedombox-setup">freedombox-setup
</a>,
150 <a href=
"http://packages.qa.debian.org/plinth">plinth
</a>,
151 <a href=
"http://packages.qa.debian.org/pagekite">pagekite
</a>,
152 <a href=
"http://packages.qa.debian.org/tor">tor
</a>,
153 <a href=
"http://packages.qa.debian.org/privoxy">privoxy
</a>,
154 <a href=
"http://packages.qa.debian.org/owncloud">owncloud
</a> and
155 <a href=
"http://packages.qa.debian.org/dnsmasq">dnsmasq
</a>. There
156 are plans to integrate more packages into the setup. User
157 documentation is maintained on the Debian wiki. Please
158 <a href=
"https://wiki.debian.org/FreedomBox/Manual/Jessie">check out
159 the manual
</a> and help us improve it.
</p>
161 <p>To test for yourself and create boot images with the FreedomBox
162 setup, run this on a Debian machine using a user with sudo rights to
166 sudo apt-get install git vmdebootstrap mercurial python-docutils \
167 mktorrent extlinux virtualbox qemu-user-static binfmt-support \
169 git clone http://anonscm.debian.org/git/freedombox/freedom-maker.git \
171 make -C freedom-maker dreamplug-image raspberry-image virtualbox-image
174 <p>Root access is needed to run debootstrap and mount loopback
175 devices. See the README in the freedom-maker git repo for more
176 details on the build. If you do not want all three images, trim the
177 make line. Note that the virtualbox-image target is not really
178 virtualbox specific. It create a x86 image usable in kvm, qemu,
179 vmware and any other x86 virtual machine environment. You might need
180 the version of vmdebootstrap in Jessie to get the build working, as it
181 include fixes for a race condition with kpartx.
</p>
183 <p>If you instead want to install using a Debian CD and the preseed
184 method, boot a Debian Wheezy ISO and use this boot argument to load
185 the preseed values:
</p>
188 url=
<a href=
"http://www.reinholdtsen.name/freedombox/preseed-jessie.dat">http://www.reinholdtsen.name/freedombox/preseed-jessie.dat
</a>
191 <p>I have not tested it myself the last few weeks, so I do not know if
194 <p>If you wonder how to help, one task you could look at is using
195 systemd as the boot system. It will become the default for Linux in
196 Jessie, so we need to make sure it is usable on the Freedombox. I did
197 a simple test a few weeks ago, and noticed dnsmasq failed to start
198 during boot when using systemd. I suspect there are other problems
199 too. :) To detect problems, there is a test suite included, which can
200 be run from the plinth web interface.
</p>
202 <p>Give it a go and let us know how it goes on the mailing list, and help
203 us get the new release published. :) Please join us on
204 <a href=
"irc://irc.debian.org:6667/%23freedombox">IRC (#freedombox on
205 irc.debian.org)
</a> and
206 <a href=
"http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss">the
207 mailing list
</a> if you want to help make this vision come true.
</p>
213 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/web">web
</a>.
218 <div class=
"padding"></div>
222 <a href=
"http://people.skolelinux.org/pere/blog/Spr_kkoder_for_POSIX_locale_i_Norge.html">Språkkoder for POSIX locale i Norge
</a>
228 <p>For
12 år siden, skrev jeg et lite notat om
229 <a href=
"http://i18n.skolelinux.no/localekoder.txt">bruk av språkkoder
230 i Norge
</a>. Jeg ble nettopp minnet på dette da jeg fikk spørsmål om
231 notatet fortsatt var aktuelt, og tenkte det var greit å repetere hva
232 som fortsatt gjelder. Det jeg skrev da er fortsatt like aktuelt.
</p>
234 <p>Når en velger språk i programmer på unix, så velger en blant mange
235 språkkoder. For språk i Norge anbefales følgende språkkoder (anbefalt
236 locale i parantes):
</p>
239 <dt>nb (nb_NO)
</dt><dd>Bokmål i Norge
</dd>
240 <dt>nn (nn_NO)
</dt><dd>Nynorsk i Norge
</dd>
241 <dt>se (se_NO)
</dt><dd>Nordsamisk i Norge
</dd>
244 <p>Alle programmer som bruker andre koder bør endres.
</p>
246 <p>Språkkoden bør brukes når .po-filer navngis og installeres. Dette
247 er ikke det samme som locale-koden. For Norsk Bokmål, så bør filene
248 være navngitt nb.po, mens locale (LANG) bør være nb_NO.
</p>
250 <p>Hvis vi ikke får standardisert de kodene i alle programmene med
251 norske oversettelser, så er det umulig å gi LANG-variablen ett innhold
252 som fungerer for alle programmer.
</p>
254 <p>Språkkodene er de offisielle kodene fra ISO
639, og bruken av dem i
255 forbindelse med POSIX localer er standardisert i RFC
3066 og ISO
256 15897. Denne anbefalingen er i tråd med de angitte standardene.
</p>
258 <p>Følgende koder er eller har vært i bruk som locale-verdier for
259 "norske" språk. Disse bør unngås, og erstattes når de oppdages:
</p>
262 <tr><td>norwegian
</td><td>-
> nb_NO
</td></tr>
263 <tr><td>bokmål
</td><td>-
> nb_NO
</td></tr>
264 <tr><td>bokmal
</td><td>-
> nb_NO
</td></tr>
265 <tr><td>nynorsk
</td><td>-
> nn_NO
</td></tr>
266 <tr><td>no
</td><td>-
> nb_NO
</td></tr>
267 <tr><td>no_NO
</td><td>-
> nb_NO
</td></tr>
268 <tr><td>no_NY
</td><td>-
> nn_NO
</td></tr>
269 <tr><td>sme_NO
</td><td>-
> se_NO
</td></tr>
272 <p>Merk at når det gjelder de samiske språkene, at se_NO i praksis
273 henviser til nordsamisk i Norge, mens f.eks. smj_NO henviser til
274 lulesamisk. Dette notatet er dog ikke ment å gi råd rundt samiske
276 <a href=
"http://www.divvun.no/">Divvun-prosjektet
</a> en bedre
279 <p><strong>Referanser:
</strong></p>
283 <li><a href=
"http://www.rfc-base.org/rfc-3066.html">RFC
3066 - Tags
284 for the Identification of Languages
</a> (Erstatter RFC
1766)
</li>
286 <li><a href=
"http://www.loc.gov/standards/iso639-2/langcodes.html">ISO
287 639</a> - Codes for the Representation of Names of Languages
</li>
289 <li><a href=
"http://std.dkuug.dk/jtc1/sc22/wg20/docs/n897-14652w25.pdf">ISO
290 DTR
14652</a> - locale-standard Specification method for cultural
293 <li><a href=
"http://std.dkuug.dk/jtc1/sc22/wg20/docs/n610.pdf">ISO
294 15897: Registration procedures for cultural elements (cultural
296 <a href=
"http://std.dkuug.dk/jtc1/sc22/wg20/docs/n849-15897wd6.pdf">(nytt
299 <li><a href=
"http://std.dkuug.dk/jtc1/sc22/wg20/">ISO/IEC
300 JTC1/SC22/WG20
</a> - Gruppen for i18n-standardisering i ISO
</li>
308 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>.
313 <div class=
"padding"></div>
317 <a href=
"http://people.skolelinux.org/pere/blog/S3QL__a_locally_mounted_cloud_file_system___nice_free_software.html">S3QL, a locally mounted cloud file system - nice free software
</a>
323 <p>For a while now, I have been looking for a sensible offsite backup
324 solution for use at home. My requirements are simple, it must be
325 cheap and locally encrypted (in other words, I keep the encryption
326 keys, the storage provider do not have access to my private files).
327 One idea me and my friends had many years ago, before the cloud
328 storage providers showed up, was to use Google mail as storage,
329 writing a Linux block device storing blocks as emails in the mail
330 service provided by Google, and thus get heaps of free space. On top
331 of this one can add encryption, RAID and volume management to have
332 lots of (fairly slow, I admit that) cheap and encrypted storage. But
333 I never found time to implement such system. But the last few weeks I
334 have looked at a system called
335 <a href=
"https://bitbucket.org/nikratio/s3ql/">S3QL
</a>, a locally
336 mounted network backed file system with the features I need.
</p>
338 <p>S3QL is a fuse file system with a local cache and cloud storage,
339 handling several different storage providers, any with Amazon S3,
340 Google Drive or OpenStack API. There are heaps of such storage
341 providers. S3QL can also use a local directory as storage, which
342 combined with sshfs allow for file storage on any ssh server. S3QL
343 include support for encryption, compression, de-duplication, snapshots
344 and immutable file systems, allowing me to mount the remote storage as
345 a local mount point, look at and use the files as if they were local,
346 while the content is stored in the cloud as well. This allow me to
347 have a backup that should survive fire. The file system can not be
348 shared between several machines at the same time, as only one can
349 mount it at the time, but any machine with the encryption key and
350 access to the storage service can mount it if it is unmounted.
</p>
352 <p>It is simple to use. I'm using it on Debian Wheezy, where the
353 package is included already. So to get started, run
<tt>apt-get
354 install s3ql
</tt>. Next, pick a storage provider. I ended up picking
355 Greenqloud, after reading their nice recipe on
356 <a href=
"https://greenqloud.zendesk.com/entries/44611757-How-To-Use-S3QL-to-mount-a-StorageQloud-bucket-on-Debian-Wheezy">how
357 to use S3QL with their Amazon S3 service
</a>, because I trust the laws
358 in Iceland more than those in USA when it come to keeping my personal
359 data safe and private, and thus would rather spend money on a company
360 in Iceland. Another nice recipe is available from the article
361 <a href=
"http://www.admin-magazine.com/HPC/Articles/HPC-Cloud-Storage">S3QL
362 Filesystem for HPC Storage
</a> by Jeff Layton in the HPC section of
363 Admin magazine. When the provider is picked, figure out how to get
364 the API key needed to connect to the storage API. With Greencloud,
365 the key did not show up until I had added payment details to my
368 <p>Armed with the API access details, it is time to create the file
369 system. First, create a new bucket in the cloud. This bucket is the
370 file system storage area. I picked a bucket name reflecting the
371 machine that was going to store data there, but any name will do.
372 I'll refer to it as
<tt>bucket-name
</tt> below. In addition, one need
373 the API login and password, and a locally created password. Store it
374 all in ~root/.s3ql/authinfo2 like this:
378 storage-url: s3c://s.greenqloud.com:
443/bucket-name
379 backend-login: API-login
380 backend-password: API-password
381 fs-passphrase: local-password
382 </pre></blockquote></p>
384 <p>I create my local passphrase using
<tt>pwget
50</tt> or similar,
385 but any sensible way to create a fairly random password should do it.
386 Armed with these details, it is now time to run mkfs, entering the API
387 details and password to create it:
</p>
390 # mkdir -m
700 /var/lib/s3ql-cache
391 # mkfs.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
392 --ssl s3c://s.greenqloud.com:
443/bucket-name
394 Enter backend password:
395 Before using S3QL, make sure to read the user's guide, especially
396 the 'Important Rules to Avoid Loosing Data' section.
397 Enter encryption password:
398 Confirm encryption password:
399 Generating random encryption key...
400 Creating metadata tables...
410 Compressing and uploading metadata...
411 Wrote
0.00 MB of compressed metadata.
412 #
</pre></blockquote></p>
414 <p>The next step is mounting the file system to make the storage available.
417 # mount.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
418 --ssl --allow-root s3c://s.greenqloud.com:
443/bucket-name /s3ql
419 Using
4 upload threads.
420 Downloading and decompressing metadata...
430 Mounting filesystem...
432 Filesystem Size Used Avail Use% Mounted on
433 s3c://s.greenqloud.com:
443/bucket-name
1.0T
0 1.0T
0% /s3ql
435 </pre></blockquote></p>
437 <p>The file system is now ready for use. I use rsync to store my
438 backups in it, and as the metadata used by rsync is downloaded at
439 mount time, no network traffic (and storage cost) is triggered by
440 running rsync. To unmount, one should not use the normal umount
441 command, as this will not flush the cache to the cloud storage, but
442 instead running the umount.s3ql command like this:
447 </pre></blockquote></p>
449 <p>There is a fsck command available to check the file system and
450 correct any problems detected. This can be used if the local server
451 crashes while the file system is mounted, to reset the "already
452 mounted" flag. This is what it look like when processing a working
456 # fsck.s3ql --force --ssl s3c://s.greenqloud.com:
443/bucket-name
457 Using cached metadata.
458 File system seems clean, checking anyway.
459 Checking DB integrity...
460 Creating temporary extra indices...
461 Checking lost+found...
462 Checking cached objects...
463 Checking names (refcounts)...
464 Checking contents (names)...
465 Checking contents (inodes)...
466 Checking contents (parent inodes)...
467 Checking objects (reference counts)...
468 Checking objects (backend)...
469 ..processed
5000 objects so far..
470 ..processed
10000 objects so far..
471 ..processed
15000 objects so far..
472 Checking objects (sizes)...
473 Checking blocks (referenced objects)...
474 Checking blocks (refcounts)...
475 Checking inode-block mapping (blocks)...
476 Checking inode-block mapping (inodes)...
477 Checking inodes (refcounts)...
478 Checking inodes (sizes)...
479 Checking extended attributes (names)...
480 Checking extended attributes (inodes)...
481 Checking symlinks (inodes)...
482 Checking directory reachability...
483 Checking unix conventions...
484 Checking referential integrity...
485 Dropping temporary indices...
486 Backing up old metadata...
496 Compressing and uploading metadata...
497 Wrote
0.89 MB of compressed metadata.
499 </pre></blockquote></p>
501 <p>Thanks to the cache, working on files that fit in the cache is very
502 quick, about the same speed as local file access. Uploading large
503 amount of data is to me limited by the bandwidth out of and into my
504 house. Uploading
685 MiB with a
100 MiB cache gave me
305 kiB/s,
505 which is very close to my upload speed, and downloading the same
506 Debian installation ISO gave me
610 kiB/s, close to my download speed.
507 Both were measured using
<tt>dd
</tt>. So for me, the bottleneck is my
508 network, not the file system code. I do not know what a good cache
509 size would be, but suspect that the cache should e larger than your
512 <p>I mentioned that only one machine can mount the file system at the
513 time. If another machine try, it is told that the file system is
517 # mount.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
518 --ssl --allow-root s3c://s.greenqloud.com:
443/bucket-name /s3ql
519 Using
8 upload threads.
520 Backend reports that fs is still mounted elsewhere, aborting.
522 </pre></blockquote></p>
524 <p>The file content is uploaded when the cache is full, while the
525 metadata is uploaded once every
24 hour by default. To ensure the
526 file system content is flushed to the cloud, one can either umount the
527 file system, or ask S3QL to flush the cache and metadata using
531 # s3qlctrl upload-meta /s3ql
532 # s3qlctrl flushcache /s3ql
534 </pre></blockquote></p>
536 <p>If you are curious about how much space your data uses in the
537 cloud, and how much compression and deduplication cut down on the
538 storage usage, you can use s3qlstat on the mounted file system to get
543 Directory entries:
9141
546 Total data size:
22049.38 MB
547 After de-duplication:
21955.46 MB (
99.57% of total)
548 After compression:
21877.28 MB (
99.22% of total,
99.64% of de-duplicated)
549 Database size:
2.39 MB (uncompressed)
550 (some values do not take into account not-yet-uploaded dirty blocks in cache)
552 </pre></blockquote></p>
554 <p>I mentioned earlier that there are several possible suppliers of
555 storage. I did not try to locate them all, but am aware of at least
556 <a href=
"https://www.greenqloud.com/">Greenqloud
</a>,
557 <a href=
"http://drive.google.com/">Google Drive
</a>,
558 <a href=
"http://aws.amazon.com/s3/">Amazon S3 web serivces
</a>,
559 <a href=
"http://www.rackspace.com/">Rackspace
</a> and
560 <a href=
"http://crowncloud.net/">Crowncloud
</A>. The latter even
561 accept payment in Bitcoin. Pick one that suit your need. Some of
562 them provide several GiB of free storage, but the prize models are
563 quite different and you will have to figure out what suits you
566 <p>While researching this blog post, I had a look at research papers
567 and posters discussing the S3QL file system. There are several, which
568 told me that the file system is getting a critical check by the
569 science community and increased my confidence in using it. One nice
571 "
<a href=
"http://www.lanl.gov/orgs/adtsc/publications/science_highlights_2013/docs/pg68_69.pdf">An
572 Innovative Parallel Cloud Storage System using OpenStack’s SwiftObject
573 Store and Transformative Parallel I/O Approach
</a>" by Hsing-Bung
574 Chen, Benjamin McClelland, David Sherrill, Alfred Torrez, Parks Fields
575 and Pamela Smith. Please have a look.</p>
577 <p>Given my problems with different file systems earlier, I decided to
578 check out the mounted S3QL file system to see if it would be usable as
579 a home directory (in other word, that it provided POSIX semantics when
580 it come to locking and umask handling etc). Running
581 <a href="http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html
">my
582 test code to check file system semantics</a>, I was happy to discover that
583 no error was found. So the file system can be used for home
584 directories, if one chooses to do so.</p>
586 <p>If you do not want a locally file system, and want something that
587 work without the Linux fuse file system, I would like to mention the
588 <a href="http://www.tarsnap.com/
">Tarsnap service</a>, which also
589 provide locally encrypted backup using a command line client. It have
590 a nicer access control system, where one can split out read and write
591 access, allowing some systems to write to the backup and others to
592 only read from it.</p>
594 <p>As usual, if you use Bitcoin and want to show your support of my
595 activities, please send Bitcoin donations to my address
596 <b><a href="bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
602 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian
">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern
">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet
">sikkerhet</a>.
607 <div class="padding
"></div>
611 <a href="http://people.skolelinux.org/pere/blog/EU_domstolen_bekreftet_i_dag_at_datalagringsdirektivet_er_ulovlig.html
">EU-domstolen bekreftet i dag at datalagringsdirektivet er ulovlig</a>
617 <p>I dag kom endelig avgjørelsen fra EU-domstolen om
618 datalagringsdirektivet, som ikke overraskende ble dømt ulovlig og i
619 strid med borgernes grunnleggende rettigheter. Hvis du lurer på hva
620 datalagringsdirektivet er for noe, så er det
621 <a href="http://tv.nrk.no/program/koid75005313/tema-dine-digitale-spor-datalagringsdirektivet
">en
622 flott dokumentar tilgjengelig hos NRK</a> som jeg tidligere
623 <a href="http://people.skolelinux.org/pere/blog/Dokumentaren_om_Datalagringsdirektivet_sendes_endelig_p__NRK.html
">har
624 anbefalt</a> alle å se.</p>
626 <p>Her er et liten knippe nyhetsoppslag om saken, og jeg regner med at
627 det kommer flere ut over dagen. Flere kan finnes
628 <a href="http://www.mylder.no/?drill=datalagringsdirektivet&intern=
1">via
633 <li><a href="http://e24.no/digital/eu-domstolen-datalagringsdirektivet-er-ugyldig/
22879592">EU-domstolen:
634 Datalagringsdirektivet er ugyldig</a> - e24.no 2014-04-08
636 <li><a href="http://www.aftenposten.no/nyheter/iriks/EU-domstolen-Datalagringsdirektivet-er-ulovlig-
7529032.html
">EU-domstolen:
637 Datalagringsdirektivet er ulovlig</a> - aftenposten.no 2014-04-08
639 <li><a href="http://www.aftenposten.no/nyheter/iriks/politikk/Krever-DLD-stopp-i-Norge-
7530086.html
">Krever
640 DLD-stopp i Norge</a> - aftenposten.no 2014-04-08
642 <li><a href="http://www.p4.no/story.aspx?id=
566431">Apenes: - En
643 gledens dag</a> - p4.no 2014-04-08
645 <li><a href="http://www.nrk.no/norge/_-datalagringsdirektivet-er-ugyldig-
1.11655929">EU-domstolen:
646 – Datalagringsdirektivet er ugyldig</a> - nrk.no 2014-04-08</li>
648 <li><a href="http://www.vg.no/nyheter/utenriks/data-og-nett/eu-domstolen-datalagringsdirektivet-er-ugyldig/a/
10130280/
">EU-domstolen:
649 Datalagringsdirektivet er ugyldig</a> - vg.no 2014-04-08</li>
651 <li><a href="http://www.dagbladet.no/
2014/
04/
08/nyheter/innenriks/datalagringsdirektivet/personvern/
32711646/
">-
652 Vi bør skrote hele datalagringsdirektivet</a> - dagbladet.no
655 <li><a href="http://www.digi.no/
928137/eu-domstolen-dld-er-ugyldig
">EU-domstolen:
656 DLD er ugyldig</a> - digi.no 2014-04-08</li>
658 <li><a href="http://www.irishtimes.com/business/sectors/technology/european-court-declares-data-retention-directive-invalid-
1.1754150">European
659 court declares data retention directive invalid</a> - irishtimes.com
662 <li><a href="http://www.reuters.com/article/
2014/
04/
08/us-eu-data-ruling-idUSBREA370F020140408?feedType=RSS
">EU
663 court rules against requirement to keep data of telecom users</a> -
664 reuters.com 2014-04-08</li>
669 <p>Jeg synes det er veldig fint at nok en stemme slår fast at
670 totalitær overvåkning av befolkningen er uakseptabelt, men det er
671 fortsatt like viktig å beskytte privatsfæren som før, da de
672 teknologiske mulighetene fortsatt finnes og utnyttes, og jeg tror
673 innsats i prosjekter som
674 <a href="https://wiki.debian.org/FreedomBox
">Freedombox</a> og
675 <a href="http://www.dugnadsnett.no/
">Dugnadsnett</a> er viktigere enn
678 <p><strong>Update 2014-04-08 12:10</strong>: Kronerullingen for å
679 stoppe datalagringsdirektivet i Norge gjøres hos foreningen
680 <a href="http://www.digitaltpersonvern.no/
">Digitalt Personvern</a>,
681 som har samlet inn 843 215,- så langt men trenger nok mye mer hvis
683 ikke Høyre og Arbeiderpartiet bytter mening i saken. Det var
684 <a href="http://www.holderdeord.no/parliament-issues/
48650">kun
685 partinene Høyre og Arbeiderpartiet</a> som stemte for
686 Datalagringsdirektivet, og en av dem må bytte mening for at det skal
687 bli flertall mot i Stortinget. Se mer om saken
688 <a href="http://www.holderdeord.no/issues/
69-innfore-datalagringsdirektivet
">Holder
695 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/dld
">dld</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk
">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern
">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet
">sikkerhet</a>, <a href="http://people.skolelinux.org/pere/blog/tags/surveillance
">surveillance</a>.
700 <div class="padding
"></div>
704 <a href="http://people.skolelinux.org/pere/blog/ReactOS_Windows_clone___nice_free_software.html
">ReactOS Windows clone - nice free software</a>
710 <p>Microsoft have announced that Windows XP reaches its end of life
711 2014-04-08, in 7 days. But there are heaps of machines still running
712 Windows XP, and depending on Windows XP to run their applications, and
713 upgrading will be expensive, both when it comes to money and when it
714 comes to the amount of effort needed to migrate from Windows XP to a
715 new operating system. Some obvious options (buy new a Windows
716 machine, buy a MacOSX machine, install Linux on the existing machine)
717 are already well known and covered elsewhere. Most of them involve
718 leaving the user applications installed on Windows XP behind and
719 trying out replacements or updated versions. In this blog post I want
720 to mention one strange bird that allow people to keep the hardware and
721 the existing Windows XP applications and run them on a free software
722 operating system that is Windows XP compatible.</p>
724 <p><a href="http://www.reactos.org/
">ReactOS</a> is a free software
725 operating system (GNU GPL licensed) working on providing a operating
726 system that is binary compatible with Windows, able to run windows
727 programs directly and to use Windows drivers for hardware directly.
728 The project goal is for Windows user to keep their existing machines,
729 drivers and software, and gain the advantages from user a operating
730 system without usage limitations caused by non-free licensing. It is
731 a Windows clone running directly on the hardware, so quite different
732 from the approach taken by <a href="http://www.winehq.org/
">the Wine
733 project</a>, which make it possible to run Windows binaries on
736 <p>The ReactOS project share code with the Wine project, so most
737 shared libraries available on Windows are already implemented already.
738 There is also a software manager like the one we are used to on Linux,
739 allowing the user to install free software applications with a simple
740 click directly from the Internet. Check out the
741 <a href="http://www.reactos.org/screenshots
">screen shots on the
742 project web site</a> for an idea what it look like (it looks just like
743 Windows before metro).</p>
745 <p>I do not use ReactOS myself, preferring Linux and Unix like
746 operating systems. I've tested it, and it work fine in a virt-manager
747 virtual machine. The browser, minesweeper, notepad etc is working
748 fine as far as I can tell. Unfortunately, my main test application
749 is the software included on a CD with the Lego Mindstorms NXT, which
750 seem to install just fine from CD but fail to leave any binaries on
751 the disk after the installation. So no luck with that test software.
752 No idea why, but hope someone else figure out and fix the problem.
753 I've tried the ReactOS Live ISO on a physical machine, and it seemed
754 to work just fine. If you like Windows and want to keep running your
755 old Windows binaries, check it out by
756 <a href="http://www.reactos.org/download
">downloading</a> the
757 installation CD, the live CD or the preinstalled virtual machine
764 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/reactos
">reactos</a>.
769 <div class="padding
"></div>
771 <p style="text-align: right;
"><a href="04.rss
"><img src="http://people.skolelinux.org/pere/blog/xml.gif
" alt="RSS Feed
" width="36" height="14" /></a></p>
782 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
01/
">January (2)</a></li>
784 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
02/
">February (3)</a></li>
786 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
03/
">March (8)</a></li>
788 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2014/
04/
">April (6)</a></li>
795 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
01/
">January (11)</a></li>
797 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
02/
">February (9)</a></li>
799 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
03/
">March (9)</a></li>
801 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
04/
">April (6)</a></li>
803 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
05/
">May (9)</a></li>
805 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
06/
">June (10)</a></li>
807 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
07/
">July (7)</a></li>
809 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
08/
">August (3)</a></li>
811 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
09/
">September (5)</a></li>
813 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
10/
">October (7)</a></li>
815 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
11/
">November (9)</a></li>
817 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2013/
12/
">December (3)</a></li>
824 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
01/
">January (7)</a></li>
826 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
02/
">February (10)</a></li>
828 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
03/
">March (17)</a></li>
830 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
04/
">April (12)</a></li>
832 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
05/
">May (12)</a></li>
834 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
06/
">June (20)</a></li>
836 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
07/
">July (17)</a></li>
838 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
08/
">August (6)</a></li>
840 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
09/
">September (9)</a></li>
842 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
10/
">October (17)</a></li>
844 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
11/
">November (10)</a></li>
846 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2012/
12/
">December (7)</a></li>
853 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
01/
">January (16)</a></li>
855 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
02/
">February (6)</a></li>
857 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
03/
">March (6)</a></li>
859 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
04/
">April (7)</a></li>
861 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
05/
">May (3)</a></li>
863 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
06/
">June (2)</a></li>
865 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
07/
">July (7)</a></li>
867 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
08/
">August (6)</a></li>
869 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
09/
">September (4)</a></li>
871 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
10/
">October (2)</a></li>
873 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
11/
">November (3)</a></li>
875 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2011/
12/
">December (1)</a></li>
882 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
01/
">January (2)</a></li>
884 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
02/
">February (1)</a></li>
886 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
03/
">March (3)</a></li>
888 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
04/
">April (3)</a></li>
890 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
05/
">May (9)</a></li>
892 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
06/
">June (14)</a></li>
894 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
07/
">July (12)</a></li>
896 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
08/
">August (13)</a></li>
898 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
09/
">September (7)</a></li>
900 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
10/
">October (9)</a></li>
902 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
11/
">November (13)</a></li>
904 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2010/
12/
">December (12)</a></li>
911 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
01/
">January (8)</a></li>
913 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
02/
">February (8)</a></li>
915 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
03/
">March (12)</a></li>
917 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
04/
">April (10)</a></li>
919 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
05/
">May (9)</a></li>
921 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
06/
">June (3)</a></li>
923 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
07/
">July (4)</a></li>
925 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
08/
">August (3)</a></li>
927 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
09/
">September (1)</a></li>
929 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
10/
">October (2)</a></li>
931 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
11/
">November (3)</a></li>
933 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2009/
12/
">December (3)</a></li>
940 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2008/
11/
">November (5)</a></li>
942 <li><a href="http://people.skolelinux.org/pere/blog/archive/
2008/
12/
">December (7)</a></li>
953 <li><a href="http://people.skolelinux.org/pere/blog/tags/
3d-printer
">3d-printer (13)</a></li>
955 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga
">amiga (1)</a></li>
957 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros
">aros (1)</a></li>
959 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid
">bankid (4)</a></li>
961 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin
">bitcoin (8)</a></li>
963 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem
">bootsystem (14)</a></li>
965 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa
">bsa (2)</a></li>
967 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath
">chrpath (2)</a></li>
969 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian
">debian (98)</a></li>
971 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu
">debian edu (146)</a></li>
973 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan
">digistan (10)</a></li>
975 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld
">dld (15)</a></li>
977 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook
">docbook (10)</a></li>
979 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser
">drivstoffpriser (4)</a></li>
981 <li><a href="http://people.skolelinux.org/pere/blog/tags/english
">english (245)</a></li>
983 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami
">fiksgatami (21)</a></li>
985 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling
">fildeling (12)</a></li>
987 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture
">freeculture (12)</a></li>
989 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox
">freedombox (8)</a></li>
991 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen
">frikanalen (11)</a></li>
993 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju
">intervju (40)</a></li>
995 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram
">isenkram (9)</a></li>
997 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart
">kart (18)</a></li>
999 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap
">ldap (9)</a></li>
1001 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker
">lenker (7)</a></li>
1003 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp
">ltsp (1)</a></li>
1005 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network
">mesh network (8)</a></li>
1007 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia
">multimedia (26)</a></li>
1009 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk
">norsk (245)</a></li>
1011 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug
">nuug (162)</a></li>
1013 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn
">offentlig innsyn (11)</a></li>
1015 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311
">open311 (2)</a></li>
1017 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett
">opphavsrett (46)</a></li>
1019 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern
">personvern (72)</a></li>
1021 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid
">raid (1)</a></li>
1023 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos
">reactos (1)</a></li>
1025 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap
">reprap (11)</a></li>
1027 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid
">rfid (2)</a></li>
1029 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot
">robot (9)</a></li>
1031 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss
">rss (1)</a></li>
1033 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter
">ruter (4)</a></li>
1035 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki
">scraperwiki (2)</a></li>
1037 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet
">sikkerhet (40)</a></li>
1039 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary
">sitesummary (4)</a></li>
1041 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis
">skepsis (4)</a></li>
1043 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard
">standard (44)</a></li>
1045 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll
">stavekontroll (3)</a></li>
1047 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget
">stortinget (9)</a></li>
1049 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance
">surveillance (25)</a></li>
1051 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin
">sysadmin (1)</a></li>
1053 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg
">valg (8)</a></li>
1055 <li><a href="http://people.skolelinux.org/pere/blog/tags/video
">video (40)</a></li>
1057 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap
">vitenskap (4)</a></li>
1059 <li><a href="http://people.skolelinux.org/pere/blog/tags/web
">web (30)</a></li>
1065 <p style="text-align: right
">
1066 Created by <a href="http://steve.org.uk/Software/chronicle
">Chronicle v4.6</a>