g4l met azerty-toetsenbord
Om de omvorming te kunnen uitvoeren heb je twee programma's nodig:
1) Een programma waarmee je bestanden per byte kunt bewerken, een 'binaire editor' of 'hex(adecimale) editor' dus.
2) Een programma waarmee je iso-bestanden (imagebestanden) kunt bewerken, een 'iso maker' dus.
Ik weet niet welke Linux-programma's hiervoor best geschikt zijn (misschien kan iemand anders raad geven in dit verband?). Ik moet bekennen dat ik daarvoor de Windows-programma's "Hex Workshop" en "Magic ISO Maker" gebruikt heb...
Werkwijze:
Een "binaire keymap" maken met de BE-azerty toetsenbordindeling, met het commando "dumpkmap".
Dit commando "dumpkmap" moet uitgevoerd worden in de normale Nederlandstalige Linux-versie waarmee je werkt. Als die het commando "dumpkmap" niet bevat, geen nood! Die staat in g4l:
g4l opstarten (daarna de cd verwijderen), "File Mode", "Select Partition", en kies bijvoorbeeld de "/home"-partitie, die dan door g4l steeds gemount wordt onder /mnt/local.
Ga terug naar de prompt (2 x Cancel).
Voer volgende commando's uit (hou voorlopig nog rekening met uw qwerty-toetsenbord!):
cp /bin/dumpkmap /mnt/local/user (waarbij "user" uw eigen login is)
reboot (waardoor Linux terug opstart)
Het commando "dumpkmap" staat nu in uw home-directory. Open een Terminalvenster en voer volgende commando's uit:
sudo mv dumpkmap /bin
sudo dumpkmap > keymap
Nu staat in uw home-directory het bestand "keymap" van 2.823 bytes, met de gewenste binaire BE-azerty toetsenbordindeling.
Open nu het imagebestand "g4l-v0.23.iso" van g4l met de 'iso maker'.
Het enige dat ons interesseert is het bestand "ramdisk.gz"; extract dit bestand ergens op de schijf.
Het bestand "ramdisk.gz" bevat zelf het gecomprimeerde bestand "ramdisk"; extract dus dit bestand.
Dit bestand "ramdisk" is 67.108.864 bytes groot.
Open het bestand "ramdisk" met de 'hex editor' en zoek naar de eerste tekst "bkeymap" (ook het bestand "keymap" begint met de tekst "bkeymap").
Normaal is dit op positie 0157E800 hexadecimaal.
Van positie 0157E800 tot en met 0157F306 (2.823 bytes of B07 hexadecimaal) staat de binaire qwertz toetsenbordindeling (Duits toetsenbord).
Met de 'hex editor' deze 2.823 bytes vervangen door die in het bestand "keymap".
Hierdoor staat de binaire BE-azerty toetsenbordindeling op zijn plaats.
Daarna met de 'hex editor' zoeken naar de eerste tekst "/sbin/loadkmap < /var/lib/kbd/keymap.map".
Normaal is dit op positie 02C84569 hexadecimaal.
Vlak daarvoor staat het teken # (23 hexadecimaal); vervang dit door hexadecimaal 0A ('new line').
Hierdoor zal het commando bij het opstarten van g4l uitgevoerd worden, en het qwerty-toetsenbord vervangen worden door azerty.
Als kers op de taart (niet noodzakelijk, maar het oogt wat beter) kan ook nog het volgende met de 'hex editor' uitgevoerd worden:
Enkele posities terug (op 02C844FB) staat de tekst "Not loading any keymap -> US Layout".
Deze tekst verschijnt op het scherm tijdens het starten van g4l.
Vervang deze tekst door "Loading azerty keymap belgian style" of gelijk welke andere tekst, als hij maar 35 bytes bevat!
Dit gewijzigde bestand "ramdisk" moet nu opnieuw "ingepakt" worden in een "archief" (Create Archive) met de naam "ramdisk.gz".
Open opnieuw het imagebestand "g4l-v0.23.iso" van g4l met de 'iso maker'.
Verwijder het oorspronkelijk bestand "ramdisk.gz" en steek het nieuwe in de plaats.
Sla alles op als een nieuw imagebestand, vb "g4l-v0.23-azerty.iso".
Brand een nieuwe cd met dit imagebestand, en g4l zal opstarten met een azerty toestenbordindeling.
Tussen haakjes, de tekst "/sbin/loadkmap < /var/lib/kbd/keymap.map" komt ook nog voor op de posities 02C84D69 en 02C8554A, doch bij mij was het niet nodig om de bovenstaande wijzigingen ook daar uit te voeren. Misschien bij iemand anders wel?