dutch

Distro geschiedenis

by Miek Gieben 29.04.2010

Zit lekker in de tuin met een biertje in de hand na te denken over
welke Linux distro’s ik allemaal heb gebruikt in de afgelopen
jaren. Ik gebruik Linux sinds 1995 (kernel 1.2.8!)

Begonnen met: Slackware. Geweldig tijd, dankzij Slackware werd
ik ge…

Lees het volledige artikel →

Go introductie

by Miek Gieben 22.01.2010

Go is een splinter nieuwe taal van
Google die (naar ik hoop) groot belooft te worden. Ik
heb al wat programmaatjes hierover
geschreven,
maar om de taal beter te leren kennen heb ik de
Go tutorial vertaald
naar het Nederlands. Binnenkort verschijnt er…

Lees het volledige artikel →

ClueBat

by Miek Gieben 09.01.2010

Ken je het gevoel: Je bent in een (technisch) gesprek met iemand en je
denkt halverwege het gesprek: “Volgens mij heeft hij/zij er geen
ene moer van begrepen”. Had ik maar iets om het goed uit te kunnen
leggen…. Daarom nu

De ClueBat!

Met deze…

Lees het volledige artikel →

Van Windows naar Ubuntu

by Miek Gieben 23.12.2009

Dit stuk is aangeleverd door Wouter de Boer
een collega van
Octrooicentrum Nederland.
Hij is bereikbaar op wouter.de.boer@pobox.com

Bijna alle besproken programma’s zitten standard in Ubuntu.

280 dagen geleden besloot ik Ubuntu 8.10 op
een schi…

Lees het volledige artikel →

E accent?

by Miek Gieben 25.11.2009

Het begon met een simpele vraag: ‘Miek, kun je zorgen dat e accent
karakters enzo het gaan doen onder X?’

Dit is voor ons project bij het
Octrooi Centrum Nederland waar we een
Open Source Desktop aan het implementeren zijn. Nu zijn er nog wat andere
zaken die eea wat meer ingewikkeld maken:

  • we gebruiken thin clients en dus XDMCP;
  • de omgeving is XFCE. Geen GNOME of KDE vanwege
    de snelheid en hun geheugen gebruik;
  • De xfce-keyboard-switcher die we hier hebben (4.4) crasht tijdens het gebruik;
  • Ik heb een voorkeur om het via de commandline te kunnen scripten.

Theorie

Het gaat wat ver om de gehele theorie achter de toetsenbord settings
in X uit te leggen, zelf begrijp ik het ook niet voor 100%. Maar in X
heb je:

  1. een toetsenbord model: model
  2. een layout: layout; op welke toetsen horen welke karakters
  3. een variant: variant; dode toetsen (= alt+e, geeft e accent)

Al deze zaken kun je in GNOME, KDE en ook XFCE zetten via een grafische
client. Maar deze tools kunnen onverwacht stuk gaan zodra je XDMCP gaat
gebruiken. De lowlevel tool zou setxkbmap moeten zijn.

Hoe het zou moeten werken?

Via de commandline zou het volgende iets moeten doen:

% setxkbmap

Met een lokaal draaiende X server gaat het waarschijnlijk goed. Draai je
XDMCP (thin clients) dan kom je hier niet mee weg. De behulpzame melding
die je krijg als het niet werkt is:

% setxkbmap
Error loading new keyboard description

En dat was het dan. Het volgende zou dan moeten wel werken:

% setxkbmap -print | xkbcomp - $DISPLAY

Dit werkt inderdaad, er zijn geen errors, maar het heeft ook weinig
effect…

Omdat dit toch op een of andere manier zou moeten gaan werken, ben ik eens
naar gnome-control-center gaan kijken, ondanks dat we werken met
XFCE. Als je gnome-control-center start en dan twee keer naar keyboard
settings
gaat dan wordt de gnome-settings-daemon gestart en verrek,
setxkbmap print de juiste info en mijn toetsenbord werkt.

Helaas
¨verziekt” gnome-settings-daemon de achtergrond van XFCE waardoor
de desktop icons niet meer zichtbaar zijn. Dus dit is geen permanente
oplossing.

Maar nu is dus de vraag:

Waarom werkt het niet met setxkbmap en wel via gnome-control-center?

Na diep graven in de sources van gnome-settings-daemon,
gnome-control-center en libxklavier bleek dat libxklavier
een eigen interface heeft naar de keyboard settings van X. Als je
libxklavier compileert wordt er in de tests/ directory een 2-tal
tooltjes gemaakt: test_config en test_monitor. Waarvan test_config
er veelbelovend uit ziet:

Usage: test_config (-g)|(-s -m <model> -l <layouts> -o <options>)
        |(-h)|(-ws)|(-wb)(-d <debugLevel>)

Options:
 -al - list all available layouts and variants
 -am - list all available models
 -ao - list all available options groups and options
 -ac - list all available ISO country codes
 -ag - list all available ISO language codes
 -g - Dump the current config, load original system settings and revert back
 -s - Set the configuration given my -m -l -o options. Similar to setxkbmap
 -ws - Write the binary XKB config file (libxklavier.xkm)
 -wb - Write the source XKB config file (libxklavier.xkb)
 -d - Set the debug level (by default, 0)
 -h - Show this help

Dit lijkt wel heel veel op wat setxkbmap kan… En ja hoor:

Print de huidige instellingen:

% setxkbmap -print
xkb_keymap {
    xkb_keycodes  { include "xfree86+aliases(qwerty)"   };
    xkb_types     { include "complete"  };
    xkb_compat    { include "complete"  };
    xkb_symbols   { include "pc+us" };
    xkb_geometry  { include "pc(pc105)" };
};

Nu nieuwe gegevens inladen met behulp van test_config. We zetten
(-s) het toetsenbord op 105 tekens (-m pc105) en
gebruiken de nl layout (-l nl):

% ./libxklavier-3.9/tests/test_config -s -m pc105 -l nl

Checken:

setxkbmap -print
xkb_keymap {
    xkb_keycodes  { include "xfree86+aliases(qwerty)"   };
    xkb_types     { include "complete"  };
    xkb_compat    { include "complete"  };
    xkb_symbols   { include "pc+nl" };
    xkb_geometry  { include "pc(pc105)" };
};

Werkt! :-) Geen foutmelding en het toetsenbord werkt ook echt.

Waarom dit wel werkt en setxkbmap niet is mij een raadsel. Maar
goed, ik kan het instellen.

Nu nog de losse eindjes opruimen en eventueel een klein shell
scriptje maken met zenity zodat
de eindgebruikers hiermee aan de slag kunnen.

Lees het volledige artikel →

tvgids

by Miek Gieben 10.11.2009

Alle jaren gebruik ik tot volle tevredenheid een
teletekst script
om via de prompt teletekst te kunnen lezen.

Gisteren avond bedacht ik me dat zoiets ook wel handig zou
zijn voor tvgids.nl, en dan met name
de nu/straks functionaliteit. Dus:

Perl to the rescue

Het script vergt Perl 5.10 omdat ik graag use switch wilde uit
proberen, zodat je eindelijk ook in Perl switch-case achtige
structuren kun gebruiken. Verder zit er geen HTML parser in, maar
een simpele state-machine, het dus erg afhankelijk
van hoe de HTML er precies uit ziet. Vooralsnog werkt het prima.

Er kunnen geen opties worden mee gegeven, je roept het gewoon
aan als tv:

% tv | head -10
NEDERLAND 1     12:00 NOS Journaal          13:00 NOS Journaal
NEDERLAND 2     12:35 Man bijt hond         13:00 NOS Journaal
NEDERLAND 3     12:30 Het sprookjesboomfee  12:50 KRO Kindertijd
RTL 4           12:00 RTL Travel            12:55 De bloemenstal
RTL 5           10:00 Best of shopping      12:45 Blik op sterren
SBS 6           08:00 Tommy Teleshopping    13:15 Two guys and a girl
NET 5           11:00 Astro TV              13:00 Tommy Teleshopping
NICKELODEON     12:30 Geronimo Stilton      12:55 Mighty B
RTL 7           12:20 Business links        12:40 RTL Z Nieuws
RTL 8           07:00 Tel sell              17:10 Huisdokter

Voor de geinteresseerde,
hier kun je het vinden.
Met de juiste Perl modules geinstalleerd:

  • LWP::Simple
  • HTML::Entities

moet het werken.

Lees het volledige artikel →