mei 2009

Full Circle, nr 25 is uit en er is nu ook een papieren Magazine over Ubuntu

by Catharina 31.05.2009

Editie 25 van Ubuntu’s Online Magazine “Full Circle” is net uit. Met daarin o.a. een artikel hoe je een ander besturingssysteem virtueel binnen Ubuntu kunt draaien met behulp van Virtual Box. Een tutorial (deel 2) over Inkscape. Een verhaal van niet zo flitsende start van een Nederlander met Kubuntu en een book review Over Getting [...]

Lees het volledige artikel →

Jaunty Release Party in Oss

by Eucalypta 31.05.2009

De allereerste Ubuntu release party die zaterdagmiddag 30 mei in Oss gehouden werd mag met recht een geslaagd evenement genoemd worden. Ondanks de zomerse temperaturen lieten belangstellenden zich niet weerhouden om naar de bibliotheek in Oss te komen voor het installeren van het laatste nieuwe besturingssysteem van Ubuntu of voor een gezellig praatje met gelijkgestemden. De locatie bleek zelfs

Lees het volledige artikel →

Voortgang Linuxweblogs.nl

by Digiplace 30.05.2009

Het gaat steeds beter met www.linuxweblogs.nl. Het draait nu 3 maanden en het bezoek  neemt nog steeds toe.
Helaas blijft het lastig om nieuwe  goede Nederlandstalige weblogs te vinden die uitsluitend schrijven over Linux. En voor alle duidelijkheid, dat mag ook gaan over Linux op een server, mobiele telefoon of embedded oplossingen. Ook developers die willen [...]

Lees het volledige artikel →

Vervolg op open source bij de overheid

by bert barten 29.05.2009

Het lijkt wel alsof mijn bericht van vorige week wat teweeg heeft gebracht bij de diverse overheden in de wereld. Nu heeft deze week Nieuw Zeeland besloten om het contract met Microsoft na 9 jaren niet te verlengen. Hier kan…

Lees het volledige artikel →

Find voor gevorderden

by hjt 28.05.2009

Een discussie onder collega’s over het find-commando herinnerde me
aan een worsteling die ik een tijdje geleden met dat commando had.
Het is een van de meest krachtige commando’s uit het repertoire,
maar — zoals oude manual pagina’s dat letterlijk zeiden –
the syntax is painful“.

find directory criteria actie(s)

Een krachtige faciliteit, maar te moeilijk geoordeeld voor onze cursussen,
is de -prune. Daarmee kun je stukken van de fileboom “snoeien”,
d.w.z. overslaan in de zoek-operatie. Om die -prune te begrijpen moet je
weten dat niet alleen de zoek-criteria een booleaanse expressie vormen,
maar dat de acties formeel ook deel van die expressie uitmaken.
Dat laatste is ook een detail dat we in onze cursussen weglaten,
uit angst dat de cursist door de bomen het bos niet meer ziet.
En bij Booleaanse expressies hoort lazy evaluation:
als een uitkomst al vaststaat voordat de laatste gedeelten
van de expressie aan de beurt zijn, dan komen ze niet meer
aan de beurt.

De manual-page zegt:

-prune True; if the file is a directory, do not descend into it.

Dat woordje “True” bevat de crux, maar je leest er zo gauw overheen.
Prune is een actie, maar heeft dus ook een booleaanse waarde, zoals
alle acties dat hebben. Dat betekent dat in expressies zoals

...  -prune -o \( ......... \)

het gedeelte rechts van de -o (or) niet meer hoeft te worden
uitgerekend als door de true van -prune, in combinatie met
wat ervoor staat, de einduitkomst true al vast zou liggen.

Kijk eens naar dit voorbeeld:

find . -name 'myjunk' -a -prune -o \( -name 'pietje.puk' -print \)

Merk op dat ik tussen -name myjunk en -prune de booleaanse
-a (and) expliciet heb opgeschreven. Dat heb ik gedaan om
nadrukkelijk op die ‘and’ te wijzen. Je mag -a weglaten.

Als we op onze tocht door de fileboom de naam ‘myjunk’ tegenkomen
dan scoort -name myjunk true. Als het ook nog een directorynaam is,
dan wordt die geskipt. De combinatie -name myjunk -a -prune
is nog steeds true. De -o (or) die daarna komt kan daar niets meer
aan veranderen, en wordt dus helemaal overgeslagen.

Echter, komen we op onze tocht door de fileboom een andere naam
tegen, dan is -name myjunk false, dus -name myjunk -a -prune
is ook false. De -o (or) die daarna komt levert eigenlijk een
compleet nieuwe kans om alsnog een true te bereiken. Dus het is nu
alsof dat hele stuk -name myjunk -a -prune buiten spel wordt
gezet, en het stuk tussen de haken na de -o als een min of meer
zelfstandige find alsnog aan het werk wordt gezet.

Resultaat: we zoeken de naam pietje.puk, maar in/onder de subdirectory
myjunk kijken we niet.

Zo’n beslissing om bepaalde (veel) details tijdens een cursus niet
te behandelen is onvermijdelijk, maar kan tot gewetensnood leiden.
Als docent denk je dan altijd ..”maar als iemand eens een commando
zus-en-zo opbouwt, dan wordt hij verrast omdat we een detail net
iets te eenvoudig hebben uitgelegd….” Of, nog erger: “stel dat
dat detail nu net wel in een van de vragen bij een LPIC-examen zit”.

Het volgende voorbeeld, weer gebaseerd op de booleaanse waarde
van een actie-component bij find, illustreert dat.

We hanteren in onze lessen de volgende systematiek bij de
behandeling:

  1. de algemene vorm van het commando is:
    find directory criteria actie(s)
  2. meerdere directories achter elkaar zijn toegestaan
  3. we zeggen dat -print de default actie is
  4. bij de booleaanse operaties met criteria vertellen we
    o.a. over: crit1 -o crit2

Maar kijk nu eens hier:

mkdir subdir; cd subdir   # maak lege subdir, ga daar naartoe
> fa; > fb                # maak in die (nu huidige) dir twee files

vb. A)  find  .     -name 'fa' -o -name 'fb'
vb. B)  find  .     -name 'fa' -o -name 'fb'    -print
vb. C)  find  .  \( -name 'fa' -o -name 'fb' \) -print

Volgens ons les-verhaal zouden A) en B) hetzelfde resultaat moeten
leveren, want een default-component mag je meegeven of weglaten
zonder verschil te maken.
Maar A) en B) geven verschillend resultaat!

De adder onder het gras is alweer dat acties ook meetellen in de
Booleaanse expressie. En omdat twee componenten zonder Booleaanse
operatie ertussen impliciet een -a (and) ertussen krijgen, moet
je B) als volgt lezen:

vb. B)  find . -name 'fa' -o -name 'fb' -a -print

en vanwege de Booleaanse precedentieregels betekent dat weer:

vb. B)  find . -name 'fa' -o \( -name 'fb' -a -print \)

Dat verklaart waarom A) en B) verschillend resultaat geven.
Voorbeelden A) en C) geven wel hetzelfde resultaat.

De moraal van het verhaal: bij een -o kun je het beste maar
altijd haakjes gebruiken. Dus nooit B) schrijven, maar altijd C).

Een ander nuttig criterium is -depth: behandel eerst
files (en subdirs) die in een directory staan, alvorens de
directory zelf te behandelen. Met andere woorden: ga eerst zo snel
mogelijk de diepte in, en schenk pas op de terugweg omhoog aandacht
aan de tussen-niveaus waar je langs kwam. Ik heb zelf de vaste gewoonte
om die -depth altijd mee te geven, want in combinatie
met de commando’s tar en cpio kun je later timestamps van de
oorspronkelijke fileboom iets nauwkeuriger reconstrueren.
Maar: de combinatie van -depth en -prune
bijt elkaar! Het besluit om een directory te skippen moet je nemen
voordat je erin duikt, en niet achteraf.

Lees het volledige artikel →

Find voor gevorderden

by hjt 28.05.2009

Een discussie onder collega’s over het find-commando herinnerde me
aan een worsteling die ik een tijdje geleden met dat commando had.
Het is een van de meest krachtige commando’s uit het repertoire,
maar — zoals oude manual pagina’s dat letterlijk zeiden –
the syntax is painful“.

find directory criteria actie(s)

Een krachtige faciliteit, maar te moeilijk geoordeeld voor onze cursussen,
is de -prune. Daarmee kun je stukken van de fileboom “snoeien”,
d.w.z. overslaan in de zoek-operatie. Om die -prune te begrijpen moet je
weten dat niet alleen de zoek-criteria een booleaanse expressie vormen,
maar dat de acties formeel ook deel van die expressie uitmaken.
Dat laatste is ook een detail dat we in onze cursussen weglaten,
uit angst dat de cursist door de bomen het bos niet meer ziet.
En bij Booleaanse expressies hoort lazy evaluation:
als een uitkomst al vaststaat voordat de laatste gedeelten
van de expressie aan de beurt zijn, dan komen ze niet meer
aan de beurt.

De manual-page zegt:

-prune True; if the file is a directory, do not descend into it.

Dat woordje “True” bevat de crux, maar je leest er zo gauw overheen.
Prune is een actie, maar heeft dus ook een booleaanse waarde, zoals
alle acties dat hebben. Dat betekent dat in expressies zoals

...  -prune -o \( ......... \)

het gedeelte rechts van de -o (or) niet meer hoeft te worden
uitgerekend als door de true van -prune, in combinatie met
wat ervoor staat, de einduitkomst true al vast zou liggen.

Kijk eens naar dit voorbeeld:

find . -name 'myjunk' -a -prune -o \( -name 'pietje.puk' -print \)

Merk op dat ik tussen -name myjunk en -prune de booleaanse
-a (and) expliciet heb opgeschreven. Dat heb ik gedaan om
nadrukkelijk op die ‘and’ te wijzen. Je mag -a weglaten.

Als we op onze tocht door de fileboom de naam ‘myjunk’ tegenkomen
dan scoort -name myjunk true. Als het ook nog een directorynaam is,
dan wordt die geskipt. De combinatie -name myjunk -a -prune
is nog steeds true. De -o (or) die daarna komt kan daar niets meer
aan veranderen, en wordt dus helemaal overgeslagen.

Echter, komen we op onze tocht door de fileboom een andere naam
tegen, dan is -name myjunk false, dus -name myjunk -a -prune
is ook false. De -o (or) die daarna komt levert eigenlijk een
compleet nieuwe kans om alsnog een true te bereiken. Dus het is nu
alsof dat hele stuk -name myjunk -a -prune buiten spel wordt
gezet, en het stuk tussen de haken na de -o als een min of meer
zelfstandige find alsnog aan het werk wordt gezet.

Resultaat: we zoeken de naam pietje.puk, maar in/onder de subdirectory
myjunk kijken we niet.

Zo’n beslissing om bepaalde (veel) details tijdens een cursus niet
te behandelen is onvermijdelijk, maar kan tot gewetensnood leiden.
Als docent denk je dan altijd ..”maar als iemand eens een commando
zus-en-zo opbouwt, dan wordt hij verrast omdat we een detail net
iets te eenvoudig hebben uitgelegd….” Of, nog erger: “stel dat
dat detail nu net wel in een van de vragen bij een LPIC-examen zit”.

Het volgende voorbeeld, weer gebaseerd op de booleaanse waarde
van een actie-component bij find, illustreert dat.

We hanteren in onze lessen de volgende systematiek bij de
behandeling:

  1. de algemene vorm van het commando is:
    find directory criteria actie(s)
  2. meerdere directories achter elkaar zijn toegestaan
  3. we zeggen dat -print de default actie is
  4. bij de booleaanse operaties met criteria vertellen we
    o.a. over: crit1 -o crit2

Maar kijk nu eens hier:

mkdir subdir; cd subdir   # maak lege subdir, ga daar naartoe
> fa; > fb                # maak in die (nu huidige) dir twee files

vb. A)  find  .     -name 'fa' -o -name 'fb'
vb. B)  find  .     -name 'fa' -o -name 'fb'    -print
vb. C)  find  .  \( -name 'fa' -o -name 'fb' \) -print

Volgens ons les-verhaal zouden A) en B) hetzelfde resultaat moeten
leveren, want een default-component mag je meegeven of weglaten
zonder verschil te maken.
Maar A) en B) geven verschillend resultaat!

De adder onder het gras is alweer dat acties ook meetellen in de
Booleaanse expressie. En omdat twee componenten zonder Booleaanse
operatie ertussen impliciet een -a (and) ertussen krijgen, moet
je B) als volgt lezen:

vb. B)  find . -name 'fa' -o -name 'fb' -a -print

en vanwege de Booleaanse precedentieregels betekent dat weer:

vb. B)  find . -name 'fa' -o \( -name 'fb' -a -print \)

Dat verklaart waarom A) en B) verschillend resultaat geven.
Voorbeelden A) en C) geven wel hetzelfde resultaat.

De moraal van het verhaal: bij een -o kun je het beste maar
altijd haakjes gebruiken. Dus nooit B) schrijven, maar altijd C).

Een ander nuttig criterium is -depth: behandel eerst
files (en subdirs) die in een directory staan, alvorens de
directory zelf te behandelen. Met andere woorden: ga eerst zo snel
mogelijk de diepte in, en schenk pas op de terugweg omhoog aandacht
aan de tussen-niveaus waar je langs kwam. Ik heb zelf de vaste gewoonte
om die -depth altijd mee te geven, want in combinatie
met de commando’s tar en cpio kun je later timestamps van de
oorspronkelijke fileboom iets nauwkeuriger reconstrueren.
Maar: de combinatie van -depth en -prune
bijt elkaar! Het besluit om een directory te skippen moet je nemen
voordat je erin duikt, en niet achteraf.

Lees het volledige artikel →

Wakoopa

by Digiplace 28.05.2009

Het is inmiddels wel bekend dat Linux gebruikers ook gebruik kunnen maken van Wakoopa. Ik heb er niet al te lang over nagedacht en heb mij daar onlangs aangemeld. Je kan de gewoontes en bezigheden van Digiplace steeds beter in de gaten houden dankzij Digiplace on Wakoopa. (Hoewel je zelf bepaalt wat je wel of [...]

Lees het volledige artikel →

Huidige Git-branch en -status in je prompt tonen

by Bram Schoenmakers 25.05.2009

Wie veelvuldig git gebruikt, zal vaak de commando’s git status en/of git branch uitvoeren om te kijken in welke branch momenteel actief is en of er nog wijzigingen rondhangen die nog niet gecommit zijn.

Gelukkig komt er bij git een script mee voor Bash waarmee je dat automatisch in je prompt kan laten zien in wat voor toestand je repository zich begeeft.

read more

Lees het volledige artikel →

Ubuntu: Tracker Reindex blijft hangen

by Leo 24.05.2009

Gisteren kreeg ik in Ubuntu 9.04 een melding dat de index corrupt was. Alle gegevens die in Ubuntu wordt opgeslagen wordt geïndexeerd, zodat deze snel terug te vinden zijn. Als de index corrupt is dan zal de zoeksnelheid voor gegevens verminderen. Ik kreeg de vraag om alles opnieuw te indexeren. Zo gevraagd, zo gedaan. Na [...]

Lees het volledige artikel →

Creeer je eigen linux distributie met kiwi

by radoeka 23.05.2009

Kiwi is een stuk gereedschap om een volledige linux distributie mee te maken. Het wordt standaard met openSUSE meegeleverd, maar volgens mij kan het ook voor andere distributies worden gebruikt. Ik kwam vandaag een (engelstalig) artikel tegen, dat kiwi…

Lees het volledige artikel →

open source bij de overheid

by bert barten 22.05.2009

Sinds kort ben ik als linuxfan bezig om me dagelijks via internet in te lezen in nieuwe linuxontwikkelingen. Daarom viel mijn oog vanmorgen op een artikel in Linux Today over Vancouver. Zij hebben een motie aangenomen in de gemeenteraad om…

Lees het volledige artikel →

Nexuiz

by Nico Verbruggen 21.05.2009

Nexuiz (uitgesproken als neks-i-uijs) is een gratis FPS voor op Windows, Linux en OS X.Ik wou het proberen, want ik had de trailer bekeken op de website van Nexuiz, en ik vond het spel wel leuk lijken.Dus al snel had ik Nexuiz geïnstalleerd van de archieven van GetDeb (dat is altijd de laatste versie) en al snel had ik een probleem.Met mijn nieuwe monitor kon ik de resolutie (1920 x 1080) niet

Lees het volledige artikel →

Parallelle WordPress blogs

by pinguim 20.05.2009

Om op je eigen webserver een aantal gelijkaardige Wordpress blogs te installaren die enkel een verschillende titel hebben, maar wel dezelfde vormgeving kan je best 1 Wordpress blog innvullen met de gemeenschappelijke elementen, en die dan kopiëren.

Download en uitpakken Wordpress: geeft een mapje “wordpress” dat gekopieerd kan worden.
Kopie op webserver en mapje [...]

Lees het volledige artikel →

Mepis@Home

by Eucalypta 19.05.2009

Puzzelen om Linux op een dode laptop te krijgen, heerlijk vind ik dat. Tenminste als het resultaat uiteindelijk weer een levende machine oplevert die anders bij het oud vuil zou zijn beland. Zo konden we onlangs de oude HP Omnibook 6100 van een kennis …

Lees het volledige artikel →

Mepis@Home

by Eucalypta 19.05.2009

Puzzelen om Linux op een dode laptop te krijgen, heerlijk vind ik dat. Tenminste als het resultaat uiteindelijk weer een levende machine oplevert die anders bij het oud vuil zou zijn beland. Zo konden we onlangs de oude HP Omnibook 6100 van een kennis …

Lees het volledige artikel →