Ubuntu op een oude koffiemolen

xubuntu feisty vanop osdir.comHeb onlangs op mijn oude Dell laptop (een potige Inspiron 3700) Ubuntu Feisty geïnstalleerd en één en ander getweaked.
De koffiemolen heeft een pIII 450Mhz processor, 320Mb geheugen, een HD van pakweg 5Gb en ingebouwde crappy neomagic video+audio. Ik netwerk draadloos met een wireless kaartje van Lucent (Orinocco).
De processie naar mijn persoonlijk (x)ubuntu-walhalla verliep ongeveer als volgt:

  • booten van van de Ubuntu live cd en installeren naar harde schijf (dag Mandrake 10.1 die ik er in 2004 op installeerde)
  • na een dagje spelen beslist om toch maar te switchen naar xubuntu, want dat heeft toch net iets minder CPU en memory nodig. Akkoord, ik had direct xubuntu kunnen installeren met hun live cd, maar de switch vanuit Ubuntu is wel betrekkelijk eenvoudig: in synaptic “xubuntu-desktop” zoeken en selecteren, goeie 250mb te downloaden, uitloggen en terug inloggen met keuze van XFCE-sessie en daar zijn we op onze blauwe desktop
  • toevoegen van de nm-applet om vlot te kunnen wirelessen: de network manager applet is sowieso actief in Ubuntu, ik heb er geen idee van of Xubuntu standaard wel met nm-applet werkt. Bedenk bij het schrijven van deze brij wel dat ik eigenlijk niet niet mobiel ben met mijn oude laptop en dat ik network manager er beter terug kan afgooien en op de traditionele manier met de WiFi connecteren?
  • disablen van enkele onnodige services (printing en bluetooth en diesmeer) om zo het memory-gebruik verder te beperken
  • aanpassen van swappiness in /etc/rc.local zodat er minder geswapped wordt
  • aanpassen van de size van de swap-partitie: blijkbaar had de Ubuntu installer een swap-partitie aangemaakt die te klein was om naar te hibernaten, ik veronderstel dat dat komt omdat het een -naar huidige normen- bijzonder kleine HD is. Ik dus opnieuw booten met Ubuntu-livecd en met gparted de grootte van de partities aangepast (life is for the brave 😉 ).
  • aanpassen /etc/initramfs-tools/conf.d/resume en /etc/fstab met juiste uuid voor /dev/hda5 (swap) zodat hibernate na aanpassen van de swap die partitie terug kan vinden (vraag me nog altijd af waarom die by-uuid nodig is, /dev/hda5 werkt ook vlotjes, maar kom …)
  • aanpassen hdparm en iwconfig in /etc/rc.local om energieverbruik te temperen
  • toevoegen XFCE volume applet

Staan nog op mijn todo-lijstje:

  • er worden bij het booten nu nog een heleboel kernel-modules geladen waar ik niks aan heb (bv. IPV6, irda, bluetooth, …). Daarvoor moet ik eerstdaags eens in /etc/modprobe.d/aliases en aanverwanten duiken …
  • gevonden tijdens het surfen: een bash-script dat tweaks uitvoert om Ubuntu Dapper sneller te maken. Zou eens moeten kijken welke van die stappen toepasselijk zijn voor Feisty.
  • af en toe blokkeert het beestje bij het afsluiten, moet toch eens in die logfiles gaan pieren vrees ik …

En dat is het zo ongeveer. Xubuntu draait vlot en (niet onbelangrijk) volledig in de 320 Mb ram-geheugen (behalve bij uitgebreide Firefox-sessies). Hibernate werkt. Oude batterijen gaan toch weer even mee. Ik kan daar dus betrekkelijk vlotjes mee werken. Niet slecht voor een laptopje uit 2000, toch? Nu de broodkruimels nog uit dat haperende toetsenbord peuteren …

Firefox 3 vandaag weer stapje dichterbij

Firefox CommunityAls alles goed loopt, wordt later vandaag Firefox3 Alpha5 gereleaset. Er zitten heel wat nieuwe features in versie 3, die je ongetwijfeld al elders opgelijst staan. Wat ik alleszins nog niet wist is dat Firefox3 xmlhttprequest (de javascript-kern van AJAX) ook “crosssite” zal toelaten. En ja, dat is belangrijk! De release notes van Alpha5 staan al online, de downloadlinks werken nu (14h10) nog niet. Maar ik ga die voorlaatste Alpha straks wel eens installeren. Living on the edge eh 😉

i-merge wordt boondoggle en irriteert me nu al mateloos

Na enkele weken aanzwellend tromgeroffel op de eigen site en in blogland (dankzij de best leuke ‘kies uw pixel’ actie), werd vandaag het doek van the-agency-formerly-known-as-i-merge gehaald. Boondoggle heten ze nu (uitleg over die naam op de Some minor issues-blog) en ze hebben hun site ook al proper gerebrand.
En daar loopt het wat mij betreft al direct flink fout; niet enkel de Britse acteur in de intro (die je probeert te overtuigen je telefoonnummer achter te laten zodat hij je kan terugbellen om je op je Boondoggle te beoordelen), maar de HELE SITE is FLASH! Arggggggg! En waarom? Alleszins niet omwille van de nifty features op hun site; die bevat eigenlijk gewoon een paar pagina’s met wat tekst, een paar logo’s, een kleine applicatie en een link naar hun blog.
Misschien mis ik iets, misschien zit er zoveel aan te komen waarvoor een flash-only-site absoluut onontbeerlijk is, maar de nieuwe Boondoggle-site mist in al zijn flash-only launch-euforie alleszins volgende mogelijkheden (en ik zwijg nu even over oude stokpaardjes als accessibility en open standaarden):

  • printen: ik zie … een lege pagina. Ik wil ergens wel aannemen dat de associatie van de nieuwe brand met een onbeschreven blad potentieel heeft, maar ik veronderstel dat boondoggle -met de erfenis van het sterke i-merge- toch voor meer staat?
  • copy/pasten: Waarom ik dat zou willen? Om hun contactgegevens op te slagen op mijn computer bijvoorbeeld? Dat moeten ze toch kunnen appreciëren, niet?
  • seo: geen content in de html = geen google-hond die naar je content kraait. niks. nada. noppes. Of wacht, ik was te snel, er is blijkbaar toch tekstuele inhoud;

This content requires Flash Player 8. Get Flash and return when finished installing.

Maar ergens betwijfel ik of dit de SEO is die Boondoggle beoogt …
Ik ben ervan overtuigd dat dit kinderziektes zijn die Boondoggle de komende dagen/ weken wel zal oplossen, maar spijtig genoeg is flashonlysitus een resistent virus dat vooral onder marketeers ravage kan aanrichten. Misschien kan Boondoggle, na succesvolle bugfixing, zijn klanten genezen met een op eigen ervaring gebaseerde case?

Integratie van externe content of applicaties

Hoe integreer je externe content (of applicaties) het beste? Ik ga hier de komende tijd even induiken met wat eenvoudige demo’s en lijstjes met pro’s en con’s, maar ik zie alvast volgende mogelijkheden:

  1. server-side binnenhalen en alles in 1 html-pagina naar de browser duwen
  2. in een popup steken
  3. in een iframe zetten
  4. in een div en die vullen met behulp van een stukje ajax

De keuze voor een bepaalde oplossing hangt ongetwijfeld af van een aantal factoren:

  • is de externe content statisch of dynamisch
  • wordt die externe content snel of traag ‘opgediend’
  • is de content echt extern (i.e. van een ander domein) of gaat het over een ‘lokale’ applicatie die los van de rest van de content staat
  • wat is de impact op usability
  • wat is de impact op “searchability”

Soit, veel vragen maar nog geen mooie antwoorden (wel vage ideeën en enkele vooroordelen). Iedereen die hier een mening over heeft of links naar goeie info kent: schieten in de comments graag (staan sinds kort open voor iedereen). Ik ben er U -zoals steeds- eeuwig dankbaar voor en in ruil mogen jullie dan binnenkort een samenvatting van mijn bevindingen verwachten 🙂

Show me yours and i’ll show you my /etc/rc.local

/etc/rc.local is de file op een unix/linux-systeem waar de jongens van de mannen worden onderscheiden. Akkoord, de file heet niet meer altijd rc.local en staat ook niet persé in /etc, maar ge begrijpt wat ik bedoel, is het niet?
Alleszins; in mijn geval kan ik met trots Arno citeren;

‘k heb een kleintje maar ‘k schiet verre

Hier (op een oude Dell laptop met Ubuntu Feisty, in een latere post meer over het temmen van dat beestje) doet rc.local immers het volgende:

# swap less
echo “10” > /proc/sys/vm/swappiness
# put HD to sleep faster
hdparm -B 16 -S 12 /dev/hda
# set wireless into powersaving mode
iwconfig eth0 power on

Dit schenkt mij in eerste instantie extra batterij-leven en stemt daarnaast ook Al Gore een beetje gelukkig. Vreemd dat power management van o.a. HD en wireless (twee energie-vreters) niet gemakkelijker in 1 (Ubuntu-)schermpje te tunen zijn, maar misschien heb ik één of andere fancy gtk-wizard over het hoofd gezien?
En wat doet rc.local bij jullie? Of welke hacks staan er in files zoals /etc/conf.d/local.start (op Gentoo, dat lijkt een beetje uit te mode te raken eh?) of in andere super-bootscript-files in (/usr/local)/etc/init.d/?

Pinguïn-vrijheid op je dichtgetimmerde bedrijfslaptop

my butt-ugly homepage in firefox in ubuntu in qemu in windowsOmdat niet elk bedrijf even enthousiast is over de installatie van Linux op de corporate hardware, moet je soms de nodige flexibiliteit aan de dag leggen om toch de weg van De Ware Pinguïn te kunnen bewandelen. Zo ook hier dus.
Het recept om op min of meer te ontsnappen aan Windows, ziet er in mijn geval dan ook als volgt uit:
De ingrediënten:

De bereidingswijze:

  1. Brand de Ubuntu-image op een cdrom
  2. Unzip kqemu
  3. zoek in het kqemu-directory naar kqemu.sys en kqemu.inf. rechtermuisknop-klik op kqemu.inf en selecteer ‘install’ om de driver te installeren.
  4. Unzip qemu
  5. open een command-venster (dos-box) en ga naar het qemu-directory
  6. voer volgend commando uit om een ‘hard disk’ aan te maken:

    qemu-img.exe create -f qcow2 linuxhd.img 3G

    (wat zoveel wilt zeggen als “maak een virtuele harde schijf aan van 3 Gigabyte van het qcow2 type”)

  7. open in het qemu-directory ‘qemu-win.bat’
  8. pas het bestand aan zodat er dit staat en bewaar:
  9. @ECHO OFF
    SET SDL_VIDEODRIVER=directx
    SET SDL_AUDIODRIVER=dsound
    SET QEMU_AUDIO_DRV=dsound
    SET QEMU_AUDIO_LOG_TO_MONITOR=0
    net start kqemu
    qemu.exe -L . -m 256 -cdrom /dev/cdrom -hda linuxhd.img -boot d -kernel-kqemu -soundhw es1370 -localtime
    net stop kqemu

  10. Steek de Ubuntu-cd in je cdrom-lezer
  11. Dubbelklik op het net gewijzigde qemu-win.bat: qemu zal starten en in die virtuele PC zal de Ubuntu-cdrom gelezen worden.
  12. Ubuntu is opgestart, dubbelklik op het ‘install’ icoon op de desktop
  13. Volg de installatie-wizard en laat die op /dev/hda automagisch partities aanmaken en “heel den boel” installeren
  14. Als installatie gedaan is en Ubuntu voorstelt om te rebooten doe je dat, qemu zal gewoon stoppen.
  15. Wijzig qemu-win.bat opnieuw, deze keer naar:
  16. @ECHO OFF
    SET SDL_VIDEODRIVER=directx
    SET SDL_AUDIODRIVER=dsound
    SET QEMU_AUDIO_DRV=dsound
    SET QEMU_AUDIO_LOG_TO_MONITOR=0
    net start kqemu
    qemu.exe -L . -m 256 -hda linuxhd.img -kernel-kqemu -soundhw es1370
    net stop kqemu

    (je kunt -m eventueel op 512 zetten om meer geheugen toe te kennen aan de virtuele machine en ook “-cdrom /dev/cdrom” toevoegen als je nog aan de cdrom wilt kunnen)

  17. Dubbelklik opnieuw op qemu-win.bat en log in op je nieuwe Linux-installatie. Geluid en netwerk werken normaal gezien ‘out of the box’.
  18. Geniet van je herwonnen vrijheid! 😉

Extra info vind je onder andere op:

Levend vanop Webtech2007

Zit vandaag op Webtech 2007, een congres dat door cms-channel.be wordt georganiseerd. Heb er al een paar presentaties opzitten en terwijl Philip Achten de toehoorders de BIAC-case door de strot duwt, even de highlights tot nu toe opsommen:
Luc Van de Velde Director Developer & Platform group Microsoft Belgium had het over “Merging design and development in a 2.0 world”. Slotsom: MS biedt framework om aan alle behoeften te voldoen. Interessantste vond ik eigenlijk MS Silverlight, vroeger WPF/E, een browser-plugin (voor Windows en Mac, MSIE, Firefox, Opera, Safari, …) en vooral flash-killer. Maar daar kon/ wilde de man nog niet veel over vertellen, volgende week was het een grote conferentie daarover in Las Vegas.
Volgende spreker was Edwin Mol, freelance webdeveloper, zijn firma heet Siteware. Hij had het over de keuze van een framework en focuste daarbij op open source oplossingen. Naast Ruby on Rails had hij het vooral over een paar Java-frameworks, waaronder Google Web Toolkit, OpenLazlo, Wicket en Rife. Hij was vooral enthousiast over Rife, nadien nog even met hem gebabbeld en dat is een open source project van een Vlaming (moet nog opzoeken wie). Rife is stateless en component-oriented (in tegenstelling tot struts dat dan response/request-based is). Door middel van metadata die je aan je classes toevoegt, kun je -als ik het goed begrepen heb, ge kent mij- database-schema genereren en ook client-side validatie automatisch uit laten voeren door het framework. Veel meer info over Rife features staat hier. Wicket zou ook interessant zijn, is een open source framework van een Nederlands bedrijf blijkbaar, de volgende spreker had het daar ook over.
Voor de koffie-pauze hadden we nog een Nederlandse Apache en Java-guru op het programma; Ate Douma van Hippo. Hippo is een Nederlands bedrijf dat een open source CMS heeft en sinds kort ook een Portal oplossing. Moet hem straks nog eens aanspreken over wanneer hij vindt dat Portal-technologie ingezet moet/ kan worden. Zijn voorbeeld was alleszins ook weer voor een typisch intranet. Hij had het ook over de nieuwe portlet-specificaties (maar eentje onthouden; portlets asynchroon laden via ajax).
De mannen van Javablackbelt hebben ons hier op 20 minuten een cursus Hibernate gegeven. En straks proberen ze dat opnieuw, maar dan met Spring. Waarom ze dat doen? Omdat ze eigenlijk een developer knowledge website hebben, gratis voor developers maar betalend voor normale mensen. Ik snapte er geen bal van en toen ze kwamen vragen of ik een testje wilde komen afnemen (waarmee een blauw t-shirt te winnen viel) heb ik vriendelijk bedankt. Thomas en ik gaan pachten wel verplichten om zijn (verstofte) java-kennis te bewijzen 😉
Microsoft probeert ons nu, bij monde van Gunter Staes, te overdonderen met het gemak waarmee met Xaml, WPF, Ajax, Blend (een editor voor rich internet applications, beetje tegenhanger van flash/flex. De demo’s zijn straf, die Silverlight lijkt een krachtige plugin. Maar waarom naast Flash nog iets anders gebruiken? Beats me..
Terwijl de wireless hier wegviel, verliet Gunter Staes het podium en nam Noel Jaffré van Fatwire over. Hij had het over sattelite caches. Eigenlijk beschreef hij hier een door Fatwire gepatenteerde oplossing waarbij op ‘sattelite servers’ pagina componenten gecached worden ipv hele pagina’s. Niet helemaal duidelijk, maar lijkt erop neer te komen dat die sattelite servers eigenlijk minimale Fatwire presentatie logica bevatten en dat die, als een component niet beschikbaar is, dat aan het achterliggende systeem gaan vragen. Niet slecht, maar geen rocket science ook?
En dat was het voor mij, ik laat de Spring-cursus (zijn zelfs 2 sessies over) aan mij voorbijgaan. En de slides over GWT krijg ik wel, hopelijk.

GroenLicht & Porno: Truecrypt is your friend!

schoon madam eh?Op Groenlicht, een betrekkelijk jonge leuke groepsblog (och, was ik ook maar jong en leuk), vergeilen ze zich aan porno-liefhebberijen op bedrijfscomputers. Niet dat ik een expert in het omzeilen van filters ben, maar als het op het veilig bewaren van data neerkomt, kunnen we wel iets forceren.
Om te vermijden dat je corporate IT-vrienden bij de wekelijkse scan iets onoorbaars vinden, zou je al die mooie dames (en heren, als u dat meer zegt) in een zip-file-met-wachtwoord kunnen opsluiten. Niet moeilijk, maar vooral niet bulletproof: de lijst van files in een beveiligde zipfile is sowieso zonder wachtwoord te bekijken en de encryptie-algoritmes die standaard in zip-software gebruikt worden zijn veel te makkelijk te kraken (pdf).
Waarmee we bij een serieuzer oplossing komen; TrueCrypt! Met TrueCrypt (gratis en open source!) kun je virtuele filesystemen met zeer sterke encryptie aanmaken. Die Truecrypt-filesystemen kun je, mits correct wachtwoord natuurlijk, dan als extra hard disk ‘mounten’. Net zoals bij een usb memory stick, kun je die schijf dan in je Windows Verkenner zien en er al je geheime documenten en andere opwindende bestanden op bewaren. Na gebruik die schijf dismounten en niemand kan er ook maar iets mee doen.
En als de IT-nazi’s je komen vragen wat er in dat geëncrypteerd bestand zit? Makkelijk; je kunt in een TrueCrypt-volume een andere verborgen schijf aanmaken (TrueCrypt in TrueCrypt dus). Op de zichtbare schijf bewaar je dan enkele professionele documenten (“Om te voorkomen dat laptop-dieven bedrijfsgeheimen zouden kunnen inkijken, Mijnheer.”) en je eigen geheime pleziertjes staan dan vol ongeduld op jou te wachten op je verborgen schijf. En klaar is Kees! Zakdoekje jongen?

19 april: Ubuntu Feisty Feestje!

ubuntu logoMorgen (19 april) wordt de nieuwste Ubuntu 7.04, ook gekend onder codenaam “Feisty Fawn”, op de wereld losgelaten. Ik ga er zeker mee aan de slag; mijn Dell Latitude D620 met dualcore processor en 1Gb memory, schreeuwt om -met behulp van een bootable usb-stick- verlost te worden van die archaïsch geconfigureerde Window XP (dank aan onze corporate IT). Wie de stap ook wilt zetten maar wat hulp nodig heeft; laat gerust iets weten, ik probeer je er wel door te loodsen!