Blog entries published in 2006
Feeds: RSS | Atom

Why does Windows 2003 Server need the CD to remove things?

Published: 2006-12-07 15:00 UTC. Tags: software
Windows is full of surprises. Today I removed the DHCP server role from a Windows 2003 Server. The removal process asked me for the installation CDROM.



Installing Ubuntu on a machine with no CDROM drive

Published: 2006-11-29 21:35 UTC. Tags: software linux

Today I had to install Ubuntu on one of the older machines in the computer room. It's a 1U server without CDROM drive.

Ubuntu doesn't seem to ship any floppy images. It does ship a utility to boot from IDE CDROM drives in the case where the BIOS is too old or full of bugs preventing it to boot from the CDROM. You can do that by creating a floppy that has drivers for the CDROM and allows booting from the CD. To be specific, the image shipped with the CD contains Smartbootfloppy which has a webpage (sort of) at

However, since this machine had no CD at all, this didn't solve the problem.

My initial thought was to try using a CDROM drive connected to the USB port (at least the machine is new enough to have two USB ports). This however proved impossible due to the BIOS lacking functionality to recognize and boot from USB CDROM drives. And the boot manager from Ubuntu doesn't recognize USB drives either. Dead end.

I did some research on this, and found several places where people were asking how to do, but no places where people actually got good answers.

The solution to my problem was to create a boot floppy with etherboot. I went to and located my network card in the dropdown. I was lucky enough to know the exact PCI ID numbers of the network card which helped in finding the correct driver. If you don't know, try to locate the card by name in the list. Opt for a bootable floppy image, download it and then write it to a floppy per the instructions on the site.

You then need to configure a tftp server on another machine on the same network. The server should be configured to serve the contents of /install/netboot directory of the Ubuntu CD as root directory. This way, when the computer you are about to install asks for the file pxelinux.0, the pxelinux.0 in /install/netboot on the Ubuntu CD will be served.

I did this by installing the atftpd package, mounted my ubuntu CD on /media/cdrom and added /media/cdrom/install/netboot as commandline argument to in.tftpd in /etc/inetd.conf. Don't forget to restart inetd after doing this.

I then configured my DHCP server as follows:

host tobeinstalled {
        hardware ethernet 00:80:C8:F8:51:25;       
next-server myinstallhost;
        filename "pxelinux.0";
        allow bootp;
        allow booting;
This will make dhcpd tell the client that it should ask myinstallhost for pxelinux.0 at boot.

Inserted the floppy in the computer to be installed and rebooted it. It downloaded a bunch of files via TFTP, and then gave me the regular Ubuntu install prompt. Yay!


Sony Ericsson M600i - First Impressions, last?

Published: 2006-11-28 14:05 UTC. Tags: hardware review

Got a new phone at work today, a Sony Ericsson M600i. It's a 3G phone. Unfortunately, our cellular network provider (Tele2) requires you to change SIM-card to a new one when you want to use 3G instead of just GSM. The SIM-card has been ordered and will probably be in my hands tomorrow.

Eager to begin playing, erm, I mean working. with this new toy, erm, I mean "critical tool for my working environment", I tried to insert the GSM SIM-card I already had. It seemed to work well.

However, after a while, I noticed that the symbol for network coverage was going up, then down, then up, then down. Also, initiating calls only worked 1 out of 10 atttempts.

I phoned (one of the ten attempts) to the customer service, and they were quite sure the problem is that the phone simply doesn't work well with a GSM card.

Gah! How hard can it be to make a phone that works with GSM SIM-cards? I'm just asking! If the SIM-card says that it's just GSM, then use just GSM, and don't try to get 3G access. Grr!

On the same level of stupidity, it seems like you need to have a SIM-card inserted into the phone to be able to access anything else than the welcome screens (and possibly the emergency number, 112). That's very well thought out, since you also need a SIM-card to be able to transfer contacts etc. from your old phone to your new one via Bluetooth or IR. So, if you only have one SIM card, you have no simple way to transfer your contacts.


Apart from that, it seems to be a nice phone. I'll probably be back later with some more reviews of its functionality. Hopefully, I'll be able to synchronize it with some desktop application on Linux.


Sorry about the "new" entries in the feeds!

Published: 2006-11-27 21:50 UTC. Tags: general

An excuse to those of my readers who get this blog via one of the syndication feeds (RSS,Atom,etc):  I'm sorry about all the "new" entries yesterday and today. I've upgraded my blog software and removed lots of spam, and that caused the timestamps of the entries to be updated, which triggered new publication in the feeds.


Updated site to Plone 2.5.1

Published: 2006-11-27 19:46 UTC. Tags: plone

I finally have upgraded this site to Plone 2.5.1. There's no big changes for the casual viewer. About the only visual changes are in the blog, which I've upgraded from Quills 0.9 to Quills trunk. In the non-visual department, the syndication feeds now contain category names, which will make technorati happier. Speaking of technorati - I wonder why it doesn't pick up changes to this blog.

The blog software upgrade was not completely painless, so to speak. All entries in the blog were flagged by new in the syndication feeds, not to mention that they were displayed as html code. That problem went away when upgrading the basesyndication product as well.

I honestly don't know if this problem is present in Quills 1.5RC3, as I had some other strange error there. I do however think this was more related to a locally modified template.

Oh well.

Must.. Have.. New.. DIGITAL SLR!

Published: 2006-11-26 12:29 UTC. Tags: photography

My neighbours (and friends) Ola and Karin just got their Canon EOS 400D.

Boy, that piece is WAY FASTER than my poor EOS 300D. It's probably so much faster that I'll have to upgrade.

The lack of speed on the 300D, when taking pictures in serial or when viewing them on the display is very irritating, but it seems like Canon has managed to beef up the processing speed to fully acceptable levels in the 400D, even for RAW images.

Photography is one of these hobbies where the risk of having to open up your wallet now and then is very high..

Update: Oops, raised the Canon model number +50 by mistake =).


Why doesn't normal people find Open Source Software?

Published: 2006-11-07 21:01 UTC. Tags: open source software

I spoke to a customer today. He's head of the IT department for a middle-sized organization with 6000 users.

He had a project going on with the goal of finding and implementing a document management system for the whole organization.

The project group had reported back to him telling him that they had found three (yes, 3) candidates, and that the candidate they thought was best was some Microsoft product.

He was a little bit puzzled that they only had found three candidates. I had to agree, so I immediately made a quick search on Freshmeat for document management and got 105 hits.

I think this reflects a problem that the open source world has to pay more attention to - people don't know that there are alternatives to the products from Microsoft and the other big companies with large PR budgets.


En dagdröm

Published: 2006-11-03 21:06 UTC. Tags: in-swedish soaring

Jag sätter mig i planet och knäpper fast fyrpunktsbältet. Går igenom checklistan, kopplar bogserlinan och stänger huven. Ger OK-tecknet till killen vid vingen. Han signalerar till bogserplanet.

Bogserplanet drar på lite försiktigt tills linan är sträckt och ger sedan fullgas. Vi drar iväg. Det skumpar lite på gräset. Jag håller skevar lite för att hålla planet horisontellt, och styr lite med fötterna för att inte dra iväg åt fel håll.

Astiren skakar av sig marken alldeles själv. Jag håller mig nära marken tills bogserplanet lyft för att inte dra upp hans stjärt så att han får svårt att lyfta.

Vi bogserar till 600 meter. Det är god termik. Jag kommer på mig själv med att vissla under bogseringen. Jag drar i den gula knoppen som kopplar loss linan och gör en rejäl vänstersväng för att komma bort från bogserlinan. Kikar ut till höger och ser bogserplanet dyka ned mot marken. Hör på radion - "Finspång, Caesar-Martin, 600 meter" - hur bogsermaskinen rapporterar urkopplingshöjden. Fäller in hjulet.

Cirklar uppåt i termikblåsorna. Njuter av utsikten. Flyger längre och längre ifrån flygfältet med högre höjd. Hittar en blåsa över grustaget, precis som vanligt. Åker och tittar på Finspång. Det är ljust och bra sikt. En dryg timme bokstavligen flyger iväg.

Dags att landa. Cirklar mig nedåt över nedflygningssektorn. Fäller ut hjulet. Spanar in flygfältet, inga flygplan i vägen. Går ut på medvinden på 270 meter. Anmäler på radion - "Finspång, Helge Petter, medvinden för landning stråket 21". Får två klick tillbaka som bekräftelse på att flygledaren hört.

Trimmar farten. Håller koll på höjden. Bromsar lite för att hamna lagom högt i höjd med sättningspunkten. Trycker till rejält på sidorodret och skevar ordentligt för att göra första nittiograderssvängen när det är lagom. Bromsar lite till på baslinjen. Gör återigen en markerad nittiograderssväng. Kommer in på final. Tar ut lagom broms och siktar på sättningspunkten.

Tar tillbaka höjdrodret något och börjar flyta ut några meter över marken. Känner hur jag tappar fart alldeles lagom. Trycker ut lite mer broms och sätter mig mjukt på gräset med båda hjulen samtidigt. Perfekt!

Rullar ut och stannar.

Det är långt till sommaren...



Published: 2006-10-31 08:12 UTC. Tags: humor in-swedish

Tittade på ett inspelat avsnitt av Fråga Anders och Måns.

Kunde inte motstå. Var tvungen att göra min egen gurklykta.

Plone Development Experiences

Published: 2006-10-27 22:57 UTC. Tags: plone

For the last days, I've been doing some heavy Plone development for a community site that hopefully will be launched sometime during the next few days. Although I have done a fair amount of Plone development earlier, this time, I did learn a lot, especially about ArchGenXML.

Content Types

When I first started using Plone, I had trouble understanding the concept of "content types". All the documentation was talking about content types. Everybody was speaking about them, but I didn't want content types, I just wanted some scripts to create some users in an LDAP database. I ended up tacking ZPT files to existing content types. Ugly and very hackish.

Now, I think I've understood the concept. In Plone, all content is an instance of a content type. You need a page creating users in an LDAP database? It's a CreateUsersPage Content Type! That's how to do it with Plone. At least that's my current understanding.

For this project however, the idea of content types was very easy to apply to the problem. The community wants to build a database of applications that work in a specific environment (I'm a bit secretive on this project since it's not set in production yet) - that's a perfect match. Each application in the database is modelled as an AppDBApplication content type. There's AppDBCategory objects, and last but not least, the AppDB content type which holds AppDBCategory and AppDBApplication objects.

Working with ArchGenXML

ArchGenXML is a code generator for Plone, or more specifically for Archetypes-based content types. Archetypes is the framework for creating content types that is used in Plone, at least in recent versions.

Basically, you create an UML diagram using some UML editor such as ArgoUML. ArchGenXML then generates code based on the information in the UML diagram. This sounds complicated, and it has a somewhat steep learning curve, but once you get it, it's a very productive way to create Plone Products - A Product is another Plone concept. It's something you install in your Plone instance which keeps a bunch of related code together, for example some content types and their ZPT templates and some tools used by the content types together with for example custom workflows.

ArchGenXML generates all the boilerplate needed to create a product, including code to interact with the product installer inside Plone. Very handy.

If you haven't done so already, you really need to read the ArchGenXML tutorial

In this project, I created a class in the UML diagram for each type of content so there was one AppDB class, one AppDBApplication class and one AppDBCategory class. The AppDBApplication and AppDBCategory classes were then Associated (an UML term) with AppDB, which automatically makes AppDB a folder class that can hold objects of AppDBCategory and AppDBApplication.

Each class is then equipped with attributes and operations. The attributes end up as automatically generated input forms and automatically generated renderings of the data in the end. This is very handy! In my AppDBApplication for example, I added an attribute called 'version' for storing the version of the piece of software that each object in the database refers to. After generating the code with ArchGenXML, I end up with an Archetypes class that automatically creates an input form where for the version attribute, as well as an automatically generated page for viewing all the data, where the version field is included.

Customizing View and Edit Templates

Another thing I understood just recently was how you are supposed to edit the view and edit pages for Archetypes-based content types in a decent way. The HOWTO named How to Customize View or Edit on Archetypes Content Items is really a must read!

Using the templates in the HOWTO as a basis for your view and edit forms makes Archetypes development much easier since it takes care of some of the fuzz, such as making sure there are relevant variables already defined in your template.

Make sure you read the whole HOWTO, including its comments. There is one real goodie in one of the comments - the basis for how to create edit forms that don't look like all other edit forms in Archetypes. Here's how you do it:

  1. Create a new filesystem template named <nameofyourcontenttype> Place it in the skins folder of your product. Use the edit template in the HOWTO as base, or use this stripped-down version:

    <html xmlns=""
      <metal:head define-macro="topslot">
      <metal:head define-macro="javascript_head">
            <!-- body, editform , fields, buttons, the default macro
                 contains a number of slots which usually provide enough
                 ways to customise so often I use that macro and just
                 fill the slots
            <metal:body define-macro="body">
                <metal:default_body use-macro="here/edit_macros/macros/body">
                  <metal:block fill-slot="widgets">
                  <!-- This is where you'll add widgets -->
  2. Inside the <metal:block fill-slot="widgets"> tags, add one of these for each field in your schema that you want to appear in the edit forms:

<metal:fieldMacro use-macro="python:here.widget(<name of your field>, mode='edit')

Of course, replace <name of your field> with the name of the fields for which you want the input field to appear, as defined in the schema of your archetype class. You are free to use any html elements and css to position the widgets where you want them.

Customizing Widgets

In this project, I wanted some javascript to be triggered when one of the input fields is modified. It's a simple thing - I want some other input fields to enabled or disabled based on the value of the first input field (a radio button collection with two alternatives).

I had no idea on how to accomplish this, so I asked on the #archetypes IRC channel on freenode. The trick is to copy the ZPT template used to display the widget you are using to your own skins directory, naming it appropriately, then using the macro attribute on the widget in the archetypes schema, point to the new template. An example:

) I have a field named *operatingsystem in my archetypes

schema. It's defined as follows:

         label="Written for",
         description="The operating system the application originally was written for",

I'm using ATVocabularyManager in this project, hence the NamedVocabulary as vocabulary.

Note the line macro=appdb_widgets/appdbapplication_selection.

) Since the field is using a *SelectionWidget, I copied from <instance home>/Products/Archetypes/skins/archetypes/widgets into the directory appdb_widgets in the skins dir for my product and named the copied file

Note: Do not call the subdirectory in your skins dir widgets, since that will most likely give you an error because Plone will then try to find template files for other widgets in your skins directory, where they will not be available. This has to do with the search order in the plone skins tool.

) Now edit *appdb_widgets/ and add the
call to a javascript function.

Söndag morgon

Published: 2006-10-22 13:56 UTC. Tags: general in-swedish


Åker och handlar färskt bröd och gott pålägg på Konsum [1].

Avnjuter långsam frukost med Sambon. Läser söndags-DN.

Fortsätter läsa söndags-DN i soffan. Det är underbart med en tidning som tar minst en timme att läsa, innehållandes massor av artiklar om saker som man inte ens visste att man var intresserad av.

Byter vatten i akvarierna. Planterar om lite vattenväxter.

Vattnar blommorna.

Mmm.. söndag morgon.

[1]Visst hade det varit bättre med en lokal bagare, men det här är ju inte Frankrike, så Konsum får duga.

First Impression - Samsung ML-2571N B/W Laser Printer

Published: 2006-10-18 20:32 UTC. Tags: software hardware review

Me and my girlfriend ordered a printer a few weeks ago. Today, it finally arrived.

This is a Black&White Laser printer with network capabilities.

Network Capability

Why network capabilities? Because it's reliable! I'm running a Linux workstation at home, my girlfriend has a Windows XP box. I don't trust her machine being up, serving the printer when I need it. She doesn't trust my machine being up, serving the printer when she needs it. She's probably right :-). This poor machine is a bit experimental.

So, to avoid any computer-related trouble, we bought a printer with network connectivuty that could easily be hooked up in our little apartment-network. The printer speaks 100Mbit/s ethernet and was configured to get an IP via DHCP at start. Excellent!

Size and Weight

It's a nice little machine. It's very lightweight, so there's no trouble keeping it on a shelf above the screen. It's also quite small, so there were no trouble finding a place to put it.


Very fast! It prints in no time!


Oh.. well.. it's a black&white printer we'll use for documents, and as far as I can tell, it prints good enough for that.

Linux Drivers

This is where the, ehm, "fun" begins. I do have quite a lot of experience in printing on Linux, especially with CUPS, so I do have some opinions on how Linux printers should behave and how to install them.

When it comes to this printer and its Linux drivers, I'm both impressed and quite unimpressed.

I'm impressed, because there is official Linux support, and not only for Red Hat Linux 7.3 or some other ancient distribution, but for all kinds of distributions.

I'm not impressed, because they have missed quite a few things, and the installation procedure is far from obvious and also full of bugs.

When you insert the CD which claims to contain Linux drivers, you are at first impressed that they ship a autorun file for Linux. Then you are less than impressed by the fact that they have missed the fact that many modern Linux distributions mount CD's noexec. This of course makes the installation fail ungracefully.

Fortunately, I'm experienced enough to understand this, so after remounting with exec, I started the installation program Linux/

This fires up a QT-based installation program that first tries to locate a locally connected printer. In my case, it didn't find any such printer since the printer is connected via the network and not via USB or parallell port. It then gives the opportunity to search for network printers. Being curious, I fired up a ethereal to see how it did that, and found out that it broadcasted for printers using, I think, SLP (Service Location Protocol). Clever use of standard protocols! It did find the print after a short while. Impressive!

But after this, I'm unimpressed again. The installation program starts installing stuff. Yeah, that's right. Stuff. It doesn't tell much about what it's installing, and the manual ain't clear on that either. Too much magic.

When the installation program ends, I have two processes running as root doing.. I don't know! The printer has not been added in CUPS. If I try to print from my web browser, I get a well-designed but malfunctioning interface featuring a picture with the printer. I don't know how it got there, and it doesn't work - it tells me the printer is not started.

Oh, my. As usual, hardware manufacturers try to make everything so seamless and smooth that the result is that nothing works.

Here's my recepy on how printer manufacturers should support printers:

  1. Provide packages for the major Linux distributions with the PPD's and any CUPS filters needed.
  2. Provide a installation program that either installs the packages, if there is a package for this distribution, or tell the user a number of specified files will now be installed at a bunch of specified locations.
  3. Let the installation program locate and install the printer in CUPS.
  4. That's all, folks.

I uninstalled the whole thing (there was, and I'm happy and impressed by this, an shipped on the CD), located the PPD on the CD and copied it into CUPS' ppd directory, then restarted CUPS and added the printer via the CUPS web interface. Works as a charm.



Published: 2006-10-17 21:14 UTC. Tags: open source software humor in-swedish

SuSE är en konstig Linuxdistribution. De älskar att göra allting annorlunda och gärna på ett sätt som ställer till det för oss som vet hur man gör på alla andra distributioner. Don't get me started när det gäller deras kreativa tolkning av hur PAM och NSS ska fungera.

Det har inte blivit bättre sedan de blev uppköpta av Novell...

Nu har jag kommit på varför den är knäpp. Det hörs ju på namnet!



Jag borde verkligen sluta hänga med till Snoddas

Published: 2006-10-17 21:10 UTC. Tags: general in-swedish

Det här inlägget är en fetdissning. Riktigt rejäl.

I Linköping finns en restaurang som heter Snoddas. De ligger vid Vallarondellen, och har en Panpizza-buffe som är perfekt om man vill skaffa en rejäl lunchkoma. Det har jag i alla fall tyckt hittills.

Jag äter oftast matlåda, men ibland hänger jag med mina kollegor, och särskilt då om de ska till något ställe med god mat.

Det kriteriet tycker jag inte längre Snoddas uppfyller. Det kan ha att göra med att allmänt börjat äta mer vegetariskt, men deras panpizzor som oftast består av fett, korv och så nån korv, eller fett, korv och en oliv, eller fett, korv och nån annan korv, alltså.. Näe! Inte gott!

Dessutom har salladsbuffen som ingår blivit sämre. Ingen fetaost = dålig salladsbuffe. Till råga på allt så påstod de idag att mitt surt insparade bonuskort där det bara saknades en stämpel för att jag skulle få en gratismåltid inte gällde längre pga ägarbyte. Bra kundvård? Skulle inte tro det.

Dyrt är det också. Sjuttifem spänn. Blä. Och inte har de något annat gott att bjuda på heller.

Som sagt. Fetbort.


Yet Another Beatiful View

Published: 2006-10-07 22:59 UTC. Tags: photography

I was on a business trip to the east coast of Sweden last week. I took one photo from a place called Timmernabben.

It's very much the type of beautiful view you'll see in everybody's album :-). It almost looks like it's rendered using 3D Studio..

Larger version here


Möbler som klär dig.. Illa!

Published: 2006-10-07 22:45 UTC. Tags: general in-swedish review

Idag var jag åter en gång tvungen att brottas med vår TV-möbel. Den är köpt på Mio för några år sedan, och jag tror inte de har modellen kvar. Det är bra, för den är nämligen totalpuckad;

Standardbredden för alla typer av stereo- och videopryttlar är 43 centimeter. Den här TV-möbeln har en öppning fram som är 42 centimeter bred. Suck. Naturligtvis har den bara öppning för kablar på baksidan.

Jag får naturligtvis skylla mig själv som inte mätte innan köpet, men man kan tycka att de som ritar TV-möbler borde kolla upp hur bred en stereo typiskt är, och anpassa möbeln efter det. Puckon!

Efter en smått akrobatisk övning där jag först fick ta ut mellanhyllan inklusive fästpluppar, därefter på diagonalen peta in hårddiskvideon, för att sedan trycka upp den i taket på möbeln och pressa in hyllan igen, varpå montering av hyllplupparna fick göras med hårddiskvideon ståendes på hyllan fick jag i alla fall med en halv millimeter till godo in min KiSS DP-558, så nu slipper jag ha den på golvet där den samlar damm. Puh!


Lending Money to People who Need It, Made Easy

Published: 2006-09-28 22:02 UTC. Tags: general

Just found out about, an organization that gives micro-loans to poor people around the world.

The ideas is that you, yeah, you, go there and lend a small amount of money, say $25, to one of the businesses that need a loan. The loan is then transferred to the business in question via partners in the country, and the money is put to use. You will then get updates on how the business proceeds.

Once the loan is repayed, you get your money back. You can then choose to lend the money to another business, or get it back via Paypal.

Nice! I just lended $25 to a company in Uganda using my VISA card. I can do without that small amount, and the reward from helping someone in need is worth a lot!


Getting up Early in the Morning on Weekends..

Published: 2006-09-28 21:14 UTC. Tags: photography

...can sometimes be rewarding. Sunday morning this week I went up at 7 in the morning and got into the car driving down to the summer hut. The image to the right is one of the results.

Early autumn mornings can be very nice. Just cold enough to remind you it's autumn. Very quiet. Very beautiful.


A New Toy

Published: 2006-09-27 12:50 UTC. Tags: hardware

I just ordered a KiSS DP-588. It's a networked DVD-player with harddrive recorder. I have a colleague who has one, and he's very satisfied with it.

I'm afraid this will mean I'll no longer miss a single Mythbuster episode :-).

Hopefully it won't mean I spend more time watching TV, just that I watch more on TV programmes I really want to see.


Observations, 2006-09-22

Published: 2006-09-25 06:24 UTC. Tags: software hardware
  • The correct settings for talking to a Fujitsu-Siemens Primepower 250 (or a Sun VFire 250, or probably any sun) via the serial console port is 9600 8N1, no software handshake, no hardware handshake.
  • You know you're dealing with serious hardware when there's a setting for altitude in the system configuration. The Primepower 250 uses this setting to calculate how much the fans should rotate for a given system temperature.
  • Minicom does not handle UTF-8 xterm's or tty's very well.. LANG=C is recommended.

ZSI vs. SugarCRM, 1-0

Published: 2006-09-13 22:20 UTC. Tags: software sugarcrm soap

Yay! I've started to understand how to use the Zolera Soap Infrastructure to communicate with the SOAP interface of SugarCRM. Todays understatement is hereby delivered: It's not the easiest thing in the world. It doesn't help that most of the methods in the SOAP interface of SugarCRM are documented like this:


Well, they do tell which datatypes the expect as well, but not exactly how they should be filled.

Anyway, today I managed to create a meeting and connect it to the current user. Yay! Here's the code:

#!/usr/bin/env python

from sugarsoap_services import *
import md5

import sys

class LoginError(Exception): pass

def login(username, password):
    loc = sugarsoapLocator()

    portType = loc.getsugarsoapPortType()

    request = loginRequest()
    uauth = request.new_user_auth()
    request.User_auth = uauth

    uauth.User_name = username
    uauth.Password =
    uauth.Version = '1.1'

    response = portType.login(request)

    if -1 == response.Return.Id:
        raise LoginError(response.Return.Error)
    return (portType, response.Return.Id)

def add_meeting(portType, sessionid,
                date_start, time_start, name, duration_hours):

    gui_req = get_user_idRequest()
    gui_req.Session = sessionid
    user_id = portType.get_user_id(gui_req).Return

    print "user_id", user_id

    se_req = set_entryRequest()
    se_req.Session = sessionid
    se_req.Module_name = 'Meetings'

    se_req.Name_value_list = []
    for (n, v) in [('date_start', date_start),
                   ('time_start', time_start),
                   ('name', name),
                   ('duration_hours', duration_hours),
                   ('assigned_user_id', user_id)]:
        nvl = ns0.name_value_Def('name_value')
        nvl._name = n
        nvl._value = v

    se_resp = portType.set_entry(se_req)

    meeting_id = se_resp.Return.Id

    # Now let's associate this meeting with the current user, to make
    # it appear in this user's calendar

    sr_req = set_relationshipRequest()
    sr_req.Session = sessionid
    sr_req.Set_relationship_value = sr_req.new_set_relationship_value()
    sr_req.Set_relationship_value.Module1 = 'Meetings'
    sr_req.Set_relationship_value.Module1_id = meeting_id
    sr_req.Set_relationship_value.Module2 = 'Users'
    sr_req.Set_relationship_value.Module2_id = user_id

    sr_resp = portType.set_relationship(sr_req)

    return sr_resp

if "__main__" == __name__:
    (portType, sessionid) = login('username', 'password')
    response = add_meeting(portType, sessionid, '2006-09-14',
                           '15:00:00', 'Soap Meeting', 1)

Piece of cake, huh? :-)


Observations 2006-09-12

Published: 2006-09-12 20:58 UTC. Tags: software

Some notes from todays work...

  • Don't interrupt a running yum update with kill -9, that messes up things. Had to reinstall some, and remove some, packages, upgrading a machine from CentOS 4.3 to 4.4. Oh well..

    Btw, the error message from yum when it can't find any mirrors due to the nameserver being completely down is.. confusing! I don't have it here, though.

    YUM delenda est.

  • Playing around with SOAP, talking to SugarCRM, got much easier after reading the "guide.pdf", which is unfortunately only available in the mail archive (and I can't find a web archive with the pdf available to link to). Hopefully, it'll be added to the pywebsvcs web pages soon.

I'm thinking about writing a SugarCRM plugin for opensync. That would be cool. And useful. The code for moto-sync, in Python, is very readable and could serve as an example.


Observations 2006-09-11

Published: 2006-09-11 21:46 UTC. Tags: software

Some notes from todays work..

  • eDirectory is actually smart enough to keep track of alias objects. If you move or delete an object, the alias is updated/removed.
  • It's not at all recommended to try major upgrades of a remote Linux machine when the network goes up, down, up, down, up, down. Bah!
  • SOAP, which is an acronym for Simple Object Access Protocol, is of course, as many other protocols which has a name with Simple, not simple at all.
  • The SOAP implementation in SugarCRM has (at least one) bug. It doesn't send along a non-empty error field in the response to get_module_fields(). See this bug for a patch.

Getting Gnus Archive Messages on IMAP

Published: 2006-09-08 20:41 UTC. Tags: software

Now and then, I've made half an attempt to make my Gnus archive messages in an IMAP box, but so far, I've failed with various spectacular error messages.

Today I managed to get just the right keywords in my google query, and ended up at this blog post, which gave the answer:

(setq gnus-message-archive-group "nnimap+<select-method-name>:INBOX.Sent")

It seems to work, even after a restart of emacs. The real test is to see if it works tomorrow too! :-)

The funny part is that the blog post actually refers to my page on Gnus+nnimap+Courier IMAP+SSL. It's always funny when you're referred back to your own pages when looking for information about something you need help with :-).


A Small Collection of Wallpapers

Published: 2006-09-05 22:09 UTC. Tags: photography

I've started to collect some of my photos for use as wallpapers. Check out for the three photos I've added so far.



Published: 2006-08-27 13:42 UTC. Tags: general in-swedish

Det regnar. Hela tiden, och massor.

Tur att man är på humör för att sitta inne, dricka te och programmera.

Å andra sidan.. hade vädret varit strålande sol med massor av cumulus, så hade jag förmodligen varit på segelflyghumör i stället.


Ett brev jag längtat efter att få lägga på lådan

Published: 2006-08-27 13:35 UTC. Tags: in-swedish soaring

Igår lade jag ett brev på postlådan. Det var adresserat till Luftfartsstyrelsen i Norrköping, och innehöll ett papper med titeln "Ansökan om utfördande av segelflygarcertifikat", ifyllt och påskrivet av en av mina segelflyglärare, och underskrivet av mig.

Eller med andra ord - jag är klar med mitt segelflygcert! Bara pappersarbete hos Luftis kvar, och så den facila avgiften på 3000 att betala innan jag får det i handen.


Synd att det regnar hela tiden..


Gilmore Girls - Aliens?

Published: 2006-08-22 21:02 UTC. Tags: general

My girlfriend enjoys watching Gilmore Girls on TV. I don't, but given the size of our apartment, I get to hear the conversation quite often..

One thing confuses me with the people in this sitcom - they talk 100% of the time. There's never time to breathe! How do they do it? Are they aliens equipped absorbing air via their feet, or do the actors have small tubes with air they insert into their lungs before recording every episode?

Must be painful.


En tanke om cykelsadlar

Published: 2006-08-22 20:50 UTC. Tags: humor in-swedish

Jag har kommit på hur man kan lösa problemet att distribuera vatten till katastrofområden.

Man ser på TV hur de kör tankbilar med vatten, men hur effektivt är det egentligen? Funkar ju inte alls när vägarna är kass.

Nä, lösningen är mycket enklare än så. Använd gamla cykelsadlar i stället. Det finns ingenting som kan lagra så mycket vatten som en cykelsadel med ett jättelitet hål i!

Det är skönt att lösa världsproblem ibland.


En valslogan

Published: 2006-08-10 18:52 UTC. Tags: humor in-swedish

Min syster kläckte just en ultimat valslogan:

- "Mera flint, mindre fett!"


Vi ska lägga ut en bombmatta med Göran Persson

Published: 2006-08-10 17:23 UTC. Tags: humor in-swedish

Så lär en anonym socialdemokratisk kampanjstrateg ha sagt till en journalist på Dagens Industri.

Man får ju en inre bild, liksom. Jag kan höra hur det låter när han slår i marken.


Men pallar han mer än en fällning?


Hemliga Laster

Published: 2006-08-02 19:59 UTC. Tags: general in-swedish

Jag gillar att äta Creme Fraiche. Rakt ur burken.

Dessutom är jag helt såld på djursjukhusprogram. Och på Chef Ramseys TV-program där han räddar krisrestauranger. Man måste beundra en man som säger saker som "I don't wanna see you employed by f-cking Jamie Oliver!"

..och så har vi ju bregott extrasaltat. Mmm..


Inte mogen?

Published: 2006-07-31 11:57 UTC. Tags: humor in-swedish
Blodcentralen i Linköping har ont om blod med blodgrupp 0, och vädjar till blodgivare att höra av sig.

Jag ringer ned för att kolla om jag kan hjälpa till, för jag har 0+.

- "Hmm.. nä, du är inte mogen förrän den 8:e september, men tack för att du ringde!"

Det var väl det jag misstänkte. Jag har alltid kännt mig lite omogen. Men den 8:e september är det alltså officielt slut på det!

En känsla

Published: 2006-07-17 11:59 UTC. Tags: humor in-swedish

Jag och sambon sitter i bilen och lyssnar på radio. Det är Lena Philipsson som sjunger låten som mest går ut på att "Jag heter Lena Philipsson...". Den är rätt kass.

Sambon: - "Jo, alltså, när man skriver en text, eller nått annat, så får man ju en känsla av om det man gör kommer att bli bra"

Jag: - Ja..

Sambon: - "Lena PH verkar sakna den känslan."


Nu vet jag hur set ser ut inuti moln

Published: 2006-07-03 22:49 UTC. Tags: in-swedish soaring

Det är grått. Och två plusgrader varmt.

Jag ägnade söndagen åt segelflyg. Jag var inbokad som flygledare, vilket betyder att jag tillsammans med en klubbmedlem till förväntas hålla ordning på verksamheten på fältet. Lite flyga blev det dock ändå.

Först hängde jag med en av lärarna, Christian, upp som passagerare. Baksitsen i Twin-Astir var faktiskt betydligt bekvämare än framsitsen, men det var lite avogt att flyga - pedalerna satt liksom inte där jag var van vid att de skulle sitta. Jag flög några termikvarv och lite rakkurs, men mest var det Christian som flög - han skulle upp och flyga moln, det var därför jag hängde med.

För att flyga moln måste man ha särskild behörighet, vilket Christian har. Precis som hörs på namnet, så får man flyga upp i molnen, i stället för att vara tvungen att ge sig iväg till nästa moln när man når till molnbasen. Så det gjorde vi.

Det är en speciell upplevelse att flyga i moln. Alla visuella referensramar försvinner, så det sinne man använder mest normalt sett för att veta att man flyger försvinner. För mig, som är ovan vid molnflygning, gav det effekten att jag satt en lång stund och trodde att vi flög på rakkurs. Efter en stund frågade jag Christian vad vi gjorde (han hade nämligen ett gyro att kolla på som talade om det för honom)

    • Vi ligger i en kraftig högersväng, och det har vi gjort en bra stund*


Rätt ballt faktiskt. Jag får nog fundera på att ta molnbehörighet så småningom. Tyvärr kom vi aldrig upp på ovansidan av molnet, men utsikten var helschysst ändå. Att flyga precis på sidan av ett moln var jättehäftigt och vackert!

När vi kom ned tog jag en paus. Sen gjorde jag en landningsövning med lärare vilket gick bra, varpå jag gjorde en EK-start, alltså en start utan lärare. Tyvärr hittade jag ingen termik utan fick landa mer eller mindre direkt.


Kul Reklam

Published: 2006-06-27 19:24 UTC. Tags: humor in-swedish

Det finns faktiskt en hel del reklam som är kul, problemet är kanske snarare att man får se den lite för ofta..

På min lista över roliga TV-reklam just nu:

  • Festis Deluxe - killen som har 25 flickvänner och ändå måste bedra dem.

  • Eniros gula sidorna - Alltså.. lite irriterande, men de där små figurerna är rätt kul ändå. Faktiskt.

    Öhm.. nä, förresten. Nu har jag nog fel.

  • Comhem-snubben. "Tyvärr madde, jag sa centraaaalt".

    Undrar vad han har för adress till den där websidan. Han kan få bo hos mig i Societetsområdet Lambohov, Linköping. Det finns ett litet utrymme mellan en bokhyllan billy (ek, "the new furu") och en byrå som skulle kunna funka. Han får trängas med en strykbräda, förstås.

Kan jag verkligen påstå att jag inte tittar så mycket på TV?


Autofs and LDAP

Published: 2006-06-27 18:55 UTC. Tags: software

Today I began working on replacing the NIS installation at work with an LDAP database.

As I've used the PAM and NSS LDAP modules a lot at customer sites integrating against eDirectory, I was rather comfortable with that part of the integration. What I didn't know much about was how the automounter integrates with LDAP.

It turns out that this was rather easy, although the documentation is sparse. Also, the fact that I have to cope with the rather old autofs in Red Hat Linux 7.3 complicated the installation a bit (I have one machine on the network that must run RHL 7.3. The rest of the machines are running a variety of modern Linux distributions)

Client Configuration

Instead of having to manually specify which mount points to automount in /etc/auto.master on each client, all configuration is stored in LDAP. To instruct autofs to read LDAP to find automountpoints, add ldap to the automount line in /etc/nsswitch.conf. In my case, the line looks like this:

automount: files ldap

This instructs automount to first check /etc/auto.master for mount points, and then search LDAP.

Which LDAP Server is Used?

Autofs has to know which LDAP server to use. It seems the method of aquiring this information is a bit different on different distributions. The Red Hat Linux machine read /etc/ldap.conf which is the configuration file for nss_ldap and pam_ldap, while my Debian sarge workstation reads /etc/ldap/ldap.conf which is configuration for the OpenLDAP libraries. I have yet to see which file is used by Fedora Core et. al.

It also seems like there's some support for finding which LDAP server via DNS RR records, but I haven't investigated this further.

Old Autofs - LDAP v2-style bind, but with LDAP v3?

One problem on the Red Hat Linux 7.3 machine was that it was trying to do a LDAP version 2-style bind over LDAP version 3. It was trying to bind as the DN of the ou for an automount map (more about this later), with a null password. My OpenLDAP didn't like this, expecting either a regular bind with DN and password, or an anonymous bind with null DN and null password.

I solved this problem by patching autofs. I could probably have upgraded autofs as well, but I'm not sure autofs 4 works with the current kernel version, so patching was easier. I still have to include the allow bind_v2 in the server configuration.

Data in LDAP

To find which mount points to handle, autofs will search LDAP for entries with the objectclas automountMap. It will then search for all entries under this DN with the objectclass automount, each of them representing a mount point for the automounter to handle.

Each of the automount entries under the automountMap entry points to another container in the LDAP tree, under which you store one automount entry per possible subdirectory to the mount point.

Confused? Let's show some example:

The automountMap and its subtree looks like this:

dn: ou=auto.master,ou=autofs,dc=example,dc=com
ou: auto.master
objectClass: top
objectClass: automountMap

dn: cn=/import,ou=auto.master,ou=autofs,dc=example,dc=com
objectClass: automount
cn: /import

dn: cn=/home,ou=auto.master,ou=autofs,dc=example,dc=com
objectClass: automount
cn: /home

This tells the automounter that it should handle /home, and that information about which directories are available to mount under /home is available on the LDAP server under the DN ou=auto.home,ou=autofs,dc=example,dc=com.

There's similar information for our second automount point, /import

Now, let's inspect ou=auto.home,ou=autofs,dc=example,dc=com

dn: ou=auto.home,ou=autofs,dc=cendio,dc=se
ou: auto.home
objectClass: top
objectClass: organizationalUnit

dn: cn=wingel,ou=auto.home,ou=autofs,dc=cendio,dc=se
cn: wingel
objectClass: automount
automountInformation: -rsize=8192,wsize=8192,intr fileserver:/export/home/wingel
dn: cn=thomas,ou=auto.home,ou=autofs,dc=cendio,dc=se
cn: thomas
objectClass: automount
automountInformation: -rsize=8192,wsize=8192,intr fileserver:/export/home/thomas
dn: cn=forsberg,ou=auto.home,ou=autofs,dc=cendio,dc=se
cn: forsberg
objectClass: automount
automountInformation:  -rsize=8192,wsize=8192,intr fileserver:/export/home/thomas

As you can see, under the auto.home ou, there's one entry for each possible mount under /home. The automountInformation attribute contains the information the automounter uses to do the actual mount.


Dagens Rikspucko..

Published: 2006-05-26 18:30 UTC. Tags: general in-swedish

...finner vi hos Tele2Comviq, där denne någon kommit fram till att klockan 04 på morgonen, det är en riktigt bra tid att skicka ut SMS med fakturainformation till abbonenterna, för då är risken som allra minst att kunderna vaknar av pipet från mobilen!


Dagens Hushållstips

Published: 2006-05-23 20:29 UTC. Tags: general in-swedish

Om man knökar ned två vissna krukor basilika högst upp i soppåsen, så luktar soporna sedan gott!


Concert Photos

Published: 2006-05-17 22:14 UTC. Tags: photography

The excellent male choir Lihkören offered me two free tickets to their spring concert at the end of April in exchange for me taking some photos from the Concert. This was an offer I couldn't refuse! :-)

Not only Lihkören were performing on this concert, the A Capella group Riltons Vänner were there as their guests. That was a very pleasant surprise - I really have to recommend this group, they do fantastic music!

My photos from this concert can be found here


And they say men can't do more than one thing simultaneously..

Published: 2006-05-17 21:52 UTC. Tags: general

Today I was lying on the kitchen floor, eating peanuts while boiling pasta, all at the same time! That's three things: Lying down, eating peanuts and boiling pasta!

The myth about men not being able to do more than one thing at the same time is hereby BUSTED!


En bra start på dagen!

Published: 2006-04-28 08:13 UTC. Tags: humor in-swedish

På mitt skrivbord på jobbet står nu:

  • En kopp te.
  • En flaska vatten.
  • En flaska rödsprit.

Blir nog en bra dag, det här..


Alla är bra på något..

Published: 2006-04-27 21:08 UTC. Tags: humor in-swedish

..själv är jag bra på att göra illa mig så att det gör ont.

Det började redan när jag var liten. Jag tog trehjulingen och gasade på nedför grannens garagenedfart, och fick vid slutet av backen en högst konkret demonstration av hur det känns när en massa i rörelse (min kropp, mer konkret personifierad av mitt huvud, eller mer precist, min panna) möter ett fast föremål.

BONK. In och sy på akuten. Aj.

Några år senare, en valborgsmässoafton, så samlade jag upp pinnarna till de raketer som skjutits upp. Sommarkvällen var ljus, och pinnarna var som gjorda att användas som pilar till min pilbåge. Jag vässade och provskjöt. Tyvärr visade det sig att pinnen var av rätt kass kvalitet, så en flisa, ca 10 centimeter lång och kanske nån halvcentimeter på bredaste stället, ytterst vass i ändarna, frigjorde sig och gick in i mitt vänstra pekfinger, och sen ut genom samma finger, en bit ut.

In och sy på akuten. Det jag minns bäst är att när lokalbedövningen behövde ökas på så kom bedövningsmedlet ut genom hålet där de sprutat in bedövningsmedel första gången. Man minns så konstiga saker. Aj, förresten.

Ytterligare några år senare, troligen på mellanstadiet, så skulle en kompis till mig kasta en sån där trekant som man har när man spelar biljard till mig. Jag har osannolikt dåligt bollsinne så jag lyckades naturligtvis inte fånga den, utan i stället hamnade den precis under mitt ena öga, och detta dessutom med en vass kant (naturligtvis enda vassa kanten).

Fett med blod. Tror det räckte med tejp hos distriktssköterskan den här gången. Aj.

Sen gick det en massa år utan några så spektakulära olyckor att jag kommer ihåg dem. Det ändrade på sig när jag började åka Inlines..

Mina Inlines har skosnören med ett lås på vardera sidan vilket gör att man drar fast och låser snörena, och så behöver man inte knyta skosnörena så jättenoga. Eller jo förresten, det är just det man bör göra, har jag lärt mig..

En dag när jag var ute och åkte så släppte skosnöret på vänster inline och började hänga efter. Jag märkte väl inte så mycket av det, förrän skosnöret fastnade i hjul nummer två på höger inline.

TVÄRSTOPP, och en snabb lektion i hur det känns att flyga i en ballistisk bana. Ont i höger axel. Kunde inte sova på höger arm på ett år ungefär, men det har gått över nu.. Aj.

Cykla har jag alltid gillat att göra. Det har förstås gett upphov till och annat skrapat knä, men roligast var nog när jag fick en spricka i vänster strålbenshuvud när en dumt placerad gatstenskant attackerade mitt framhjul så att jag drog ikull och troligen fick styret hårt över vänsterarmen.

Det tog en fem minuter eller så, så var hela armen stel. Sjuktaxiresan var det mest smärtsamma jag varit med om tills dess, varje litet gupp gjorde ont som f-n! Aj

Dessutom var det fredag kväll, och både jag och min stackars flickvän som var med tänkte att här får vi väl vänta hela natten, men tydligen var det en sån där fredag som händer en gång vart tionde år då personalen går och har tråkigt för att det inte händer något. Var på hemväg efter 1½ timme med stränga order om att inte göra några tunga lyft de närmaste tre-fyra månaderna.

Två månader flyttade jag och flickvännen ihop. Fast jag bar ju inte så mycket, förstås..

Ytterligare en minnesvärd händelse var Inlinesolyckan för något år sedan på väg hem från flygfältet. Det var tidigt på säsongen, så jag hade inte riktigt vanan inne, och för sent ser jag att asfalten är borta i en knapp meter för att någon varit och lagt en kabel.

Landar på vänster höft och tar emot med vänster arm. Rullar ned i gräset i diket och känner att något är mycket mycket fel i armen. Axeln har liksom försvunnit. Där det brukar vara en nittiograders vinkel mellan axeln och vänster arm, så är det inte det, utan axeln går liksom direkt över i arm. Och ont gör det, något så förbannat. Aj

Ringer sambon. Låter enligt uppgift oerhört ynklig. Hon kommer i bil, men vi lyckas inte få upp mig i stående ställning. Ringer 112 och berättar läget. De skickar en ambulans.

Ambulansen kommer efter en halv evighet ungefär. Det första killen säger när han stiger ur är:


Så.. vänligt. Han konstaterar att axeln förmodligen är ur led.

Ambulansvårdaren vet var man ska lyfta för att få upp mig i ambulansen, och nu vidtar en ännu mer smärtsam resa än den i taxin något år tidigare, särskilt som någon vis person bestämt sig för att det ska vara vägarbete stora delar av den väg som alla ambulanser måste åka.

Kommer in på akuten och får ganska träffa en sköterska som med något vilt i blicken frågar "Ska'ru ha lite smärtis?", varpå hon skjuter in något i vänster arm som gör att det blir alldeles kallt i hela venen, varpå världen blir otroligt mjuk, skön och smärtfri, och lite rosa. Ahhhh.. MORFIN!

Sen rullar de in mig i gipsrummet och snackar glatt om att nu ska jag minsann få lustgas. "Det är jättekul, jag fick det när jag hade brutit benet!" säger den ena sköterskan. "Du kommer att skratta hela tiden och inte komma ihåg någonting" säger den andra. Låter ju klart lockande.

Tyvärr ploppar axeln i av sig själv när jag väl lyckas ligga på mage och kan lägga ned armen och dra lite i en tyngd, så jag missar det riktigt grova knarket. Klart besviken. Är man väl på akuten så vill man ju ha ut så mycket knark som möjligt för skattepengarna.

En vecka senare var det planerat att vi skulle flytta igen. Nä, jag gjorde inte så mycket den gången heller..

Vad lär man sig av det här? Jo, att man inte lär sig.


The Mystery of the Lost Content Types

Published: 2006-04-19 23:10 UTC. Tags: plone

I was puzzled yesterday when I uploaded a file via WebDAV. Since the file was equipped with a Content-Type header, I expected it to be parsed as reStructured Text. Instead, it appeared as a DTML document. The horror! The horror!

It turned out that the predicate list in the content_type_registry was empty. I don't know why. I recently upgraded the Plone instance from 2.1.0 to 2.1.2, that could be related.

By removing and then reinstalling the ATContentTypes product with the Add/Remove Products tool, the problem went away.



/etc/init.d/zope2.8 restart on Ubuntu

Published: 2006-04-18 18:08 UTC. Tags: plone

/etc/init.d/zope2.8 restart didn't work on my Ubuntu Server 5.10. It turns out that it's using Ubuntu's homebrewn dzhandle script to handle plone instances. You are supposed to create instances using dzhandle. If you do, there'll be a file named debian_policy in the etc directory of the instance, and if that file exists, dzhandle will recognize the instance and happily restart it.



Published: 2006-04-17 23:02 UTC. Tags: general in-swedish

Erik pysslar med datorn. Försöker få ljudet att funka.

Bäst att kolla så att kabeln sitter i. Böjer sig ned och lägger nyckelknippan (som har en ficklampa i sig) ovanpå datorn. Börjer sig ned längre ned och konstaterar att han behöver ha en ficklampa för att se någonting. Undrar var nyckelknippan med den praktiska lilla lampan är?

Panik! Letar förtvivlat i hela huset i ungefär 1 timme efter nyckelknippan. Blä!

Skiter i att leta mer. Kommer efter en stund på var nyckelknippan är..

Suck. Tankspridd? Inte då.



Published: 2006-04-10 14:13 UTC. Tags: general in-swedish

Redan i femman fick jag veta att jag inte har något bollsinne. Det var min jumpalärare som berättade det för mig och min far på ett kvartssamtal.

Nu verkar oförmågan ha smittat. Igår skulle Maria, min sambo, kasta en boll på mig. Hon tänkte träffa lite lagom hårt i brösthöjd på mig, men missade och träffade någon helt annanstans. Längre ned, typ.


Jag blir nog tvungen att dra in hennes garnlicens i minst en vecka.


Orättvis välvilja

Published: 2006-04-09 18:09 UTC. Tags: general in-swedish

Jag träffade mina föräldrar idag. De hade en födelsedagspresent till mig, och en påskpresent till min sambo.

Min sambo fick en påse jättefina och goda påskägg. Själv fick jag... tada en månadsförbrukning astaxin, vilket är nått mirakelmedel mot typ allt (fotsvett, världskrig och förkylningar).


Fast de menar ju väl :-).

Dagens knark: Astaxin


Förstörd Världsbild

Published: 2006-04-08 17:13 UTC. Tags: in-swedish aquarium

För några månader sedan var jag och sambon och skulle handla fiskar till mitt akvarium på en av de lokala djuraffärerna. Eller snarare, jag skulle handla fiskar, och min stackars sambo fick vänta under tiden jag väntade på att få handla fiskar.

Före mig i kön var ett äldre par som också skulle handla fiskar. De hade med sig dotter och barnbarn. Barnbarnet var ungefär en meter gammalt.

Min sambo fick då höra följande konversation

En meter barn: Mamma, mamma! Jag har hittat Nemo!!!!

... lite senare:

Mormor till en meter barn: Hade du hittat någon fisk du tyckte om? Vi kanske kan köpa en sådan?

En meter barn: Jag vill ha NEEEEEMO!

Här ser man hur akvariehandlaren genomgår en inre kris, lite som Karl-Bertil Jonsson på julafton - "sälja en fisk som kommer att äta upp alla andra fiskar? Näe! Rakryggat berätta sanningen? Jaa!"

Akvariehandlaren: Jo, du förstår lille vän, att den här fisken är inte så snäll mot andra fiskar i akvariet"

..varpå en meter barn springer bort till mamma, storgråtandes:


Snacka om förstörd världsbild.


Linux Networking on Dell Poweredge 1855 (blade server)

Published: 2006-03-15 21:00 UTC. Tags: general

A few days ago I visited a customer, installing Fedora Core 4 on a Dell Poweredge 1855, a blade server. This proved to be rather difficult when it came to network connectivity.

The Linux kernel recognized two Intel e1000 interfaces, but did not detect any link. Also, ethtool's list of supported ports only includes "FIBRE", which was kind of wrong. At least one of the ports should be "TP".

We fiddled around for a while upgrading the kernel and trying various versions of the e1000 driver, with no success. We gave up, wrote some mail to the people at Intel, connected the server with a USB network card and did what we were there to do - although we had to visit the server once every 30 minutes or so because the USB network card ceased to function now and then. Oh well, 3com..

Anyway, the day after we got a response from Intel. It turned out that if you connected the server to a Gigabit port in a switch, and locked that port to Full Duplex, the card began to work. Hooray!

Note: I won't take false credit for the solution to this problem. My colleage Pierre Ossman did most of the hard work.


Det är enklare att koka chokladsås om man slår på plattan först

Published: 2006-03-12 17:39 UTC. Tags: humor in-swedish

Jag har provat.


RSH - an unpleasant guest from the past

Published: 2006-03-04 13:25 UTC. Tags: software sugarcrm

Yesterday I spent some time evaluating the Open Source version of SugarCRM, since the salespeople at work wants to see if a CRM can help them.

I installed an extension called ZuckerMail to allow reading of mail stored on our IMAP server, and was irritated by the long time it took to get the list of mail, or to read a single mail.

I did some strace:ing, but that didn't help very much - it only revealed the fact that something was waiting for 10 seconds. A process listing however revealed that there was several rsh procesess trying to contact the IMAP server. Also, my firewall's log had blocked several connection attempts from this machine to the IMAP server on port 22 (ssh).

Aha.. but why!

It turns out that the IMAP library for PHP is built on top of the ancient c-client library from the UW IMAP. If you're trying to make an connection without explicitly telling it that you want to connect with ssl (something the GUI for configuring the connection did not have an option for - only STARTTLS, which is another thing), the c-client library tries to run rimapd on the host via rsh. There is a /usr/bin/rsh on the machine, linked to /usr/bin/ssh via /etc/alternatives (Debian sarge).

You can turn this behaviour off in a configuration file for c-client. I solved the problem a bit more drastically - by removing /usr/bin/rsh. This made all IMAP operations go much faster.

2 comments. - now with nice looking titles on WebDAV-uploaded HTML!

Published: 2006-02-28 21:10 UTC. Tags: plone

Plone 2.1-2.1.2 has an irritating bug - HTML files uploaded via WebDAV gets the filename as page title, which looks very ugly.

I've now created a patch for this that restores the behaviour of Plone 2.0.x, where the title is extracted from the <title> tag.

Check out for the patches. I'm now eagerly awaiting feedback from the Plone developer responsible for the bug.


På X2000 kan du alltid boka fjortisfri avdelning! (in swedish)

Published: 2006-02-27 20:43 UTC. Tags: humor in-swedish

SJ kör just nu en reklam med en fjortis som sitter och skriker i sin telefon i ett tåg, och så avslutas det hela med "På X2000 kan du alltid boka telefonfri avdelning!"

SJ har missuppfattat källan till problemet.


Ett vårtecken!

Published: 2006-02-26 12:55 UTC. Tags: general in-swedish

Var ute på promenad med sambon i det vackra vintervädret, och fick se det första säkra vårtecknet - Två snubbar var ute och åkte skateboard :-).


Melodifestivalen - en intressant upplevelse (in swedish)

Published: 2006-02-25 23:52 UTC. Tags: general in-swedish

Ibland är man för snäll för sitt eget bästa. Idag var en sådan dag. Min syster är en stor fan av melodifestivalen, och var idag TV-lös, och dessutom var hon trött efter en tenta och det var lite allmänt synd om henne, så jag kom med förslaget att hon skulle komma hem hit och titta på melodifestivalen. Det gjorde hon ju, tyvärr, gärna..

Jag är normalt sett absolut ingen melodifestivalstittare. Snarare tvärt om. Baserat på erfarenheter som är några år gamla så har jag tyckt att musiken är kass och tillställningen rent allmänt tråkig, så jag har undvikit att titta på den i flera år.

Kvällens upplevelse gav nya insikter. Det som jag inte trodde var möjligt har hänt - det har blivit ännu sämre.

Till att börja med - Lena Philipsson, som leker presentatör. Suck. Är det en parodi eller den riktiga som SVT har hyrt in? Det var misstänkt likt Killinggängets variant.. Jag Skrrrrver mina egna lååtarrrr, srrr mina egna kläderrrr

(Vet ni förresten vad man kallar en bunt höns som bildat en komikergrupp? Kyllinggänget naturligtvis. Ja, jag kommit på den själv. Sambon bara suckade när jag drog den. Jag förstår inte varför?)

Musiken är av två typer. Den ena är traditionell schlager med exempelvis Kicki Danielsson. Henne har jag ändå någon slags respekt för. Även om hennes musik inte är någonting jag lyssnar på, så kan hon sin sak. Mycket riktigt så gick hon också vidare till final utan problem.

Den andra typen är, öh, ja.. vad ska man kalla den? Antingen helt otroligt jättekass, eller någon slags porrmusik i Baccara-klass (Ni vet, Yes sir, I can boogie, boogie-woogie all-night long).

Det mest lysande exemplet på det första (helt otroligt jättekass, alltså) var nog "The Elephantz" med den fantastiska sången "Oh Yeah". Jag är mållös. Två snubbar, den ena iförd en osannolikt ful leopardmönstrad hatt, till det en matchande neongrön nånting och givetvis ett par solglasögon. Vad den andre snubben hade på sig minns jag inte, men helt omotiverat så slet han av sig på överkroppen mitt i låten, förmodligen menat som reklam för sin andra, sannolikt mer framgångsrika, karriär som personlig tränare. Pekka Heino som var speaker läste innantill ur manus och kallade det "Nakenchock".

Just det - jag glömde nämnda de tre till elefanter utklädda dansarna som stod bakom och, öh, gjorde elefantrörelser.

Vad som kanske är mest skrämmande är att detta uppenbarligen ansågs bland de 32 bästa av 3000 bidrag. Jag vill inte veta mer.

I dötiden då tittarna förväntas ringa in och rösta så har SVT placerat in inslag av "humor". Väl insatta källor låter meddela att grundmaterialet är hämtat från den revy som klass 6B i Örkeljunga lät sätta upp för ett par veckor sedan för att samla in pengar till sin skolresa (som i år går till Gävle reningsverk). Högklassigt var ordet. Särskilt det krystade förinspelade lilla "reportaget" där vi får höra hur Lena PHs i efterhand skrattar åt sitt "spontana" misstag - att påa en nionde låt - inlagt direkt efter "misstaget", känns definitivt som ett stycke humor av den kvalitet som vi har vant oss vid från SVTs sida. Det långa reportaget om det deprimerade mikrofonstället och hans spritproblem ska vi inte ens tala om.

Kan man ringa Radiotjänst i Kiruna och be att få TV-licensavgiften för idag återbetalad? Jag har nog faktiskt hellre en snigel på ögat än tittar på fler avsnitt av melodifestivalen.



Published: 2006-02-25 12:39 UTC. Tags: general

February is the month where you get the papers from the swedish study loan authority with information about how much you're supposed to pay back this year.

It's REALLY REALLY PAINFUL to sum them up!


Peter Stormare - the King of Weird Roles

Published: 2006-02-24 22:21 UTC. Tags: general

Watched The Brothers Grimm on DVD. Peter Stormare is really the King of Weird Roles. In this movie He's playing a very Monty Python'ish italian guy, specializing in the art of torture. I also remember him as the weird eye doctor in Minority Report - it's very funny when his assistant is singing "Små Grodorna, Små Grodorna" :-).


Sometimes, there's a Product Just For You

Published: 2006-02-23 18:13 UTC. Tags: plone

Today, the marketing person at work came and told me that he wanted a signup form for a usergroup meeting we're planning. Something simple that mailed him with the relevant information.

  • "OK, I'll go see if I can fix something like that.."

I had heard about PloneFormMailer earlier, so I did some quick research on it, including asking on #plone to verify that it works in Plone 2.1, and installed it in my staging instance.

It solved my problem perfectly!

This is one of the things I like about plone - very often, someone else has already solved the web publishing problem you're having right now, and you can use an existing product instead of having to create your own.

PloneFormMailer uses Formulator, which also looks very interesting for some of my needs - for example, I have a custom-written product that fiddles with some LDAP values, and I could probably use Formulator or some other similar product. this HOWTO seems interesting.


Changing Lanes - Yet Another Movie featuring a Stupid Fire Sprinkler System

Published: 2006-02-12 09:44 UTC. Tags: general

Gah! Watched Changing Lanes yesterday. It was quite OK, especially since I was quite tired - any movie would probably have done :-).

In one of the scenes, Ben Affleck triggers a fire sprinkler with a burning piece of paper. And as usual, every sprinkler on the floor starts spreading huge amounts on water over everything, and everyone has to evacutate, which is very convenient for Affleck's role person since he can then go and read some secret file in the office of his boss. Oh well..

I'm sorry, Hollywood, but fire sprinklers simply don't work that way. Read this page for example, where its clearly stated that only the sprinklers that are activated by the fire's heat will start spreading water. Usually, each sprinkler has a valve that is opened when a small pipe filled with a fluid is destroyed when the fluid expands because of the heat.

By the way, The Matrix also has stupid movie sprinklers - they're even more stupid, because all the sprinklers in the whole building are activated when one sprinkler goes off.


Living with a "Knitting Guru"

Published: 2006-02-11 15:03 UTC. Tags: general

My Girlfriend is very interested in knitting. Today, she took the What Kind of Knitter Are You test at, and was rated Knitting Guru. I think the best sentence from the motivation was It can be hard to tell where the yarn ends and you begin.

How very true. For example, every time I want to sit in our livingroom couch, I must be very careful to make sure I don't sit on one of the several knitting needles that are very often located there. Not to mention that I found some traces of yarn in the freezer the other day.

But I'm not complaining - I have my habits as well..


I don't like early mornings

Published: 2006-02-06 08:27 UTC. Tags: general

One has to wonder - who invented early mornings?


'locate' on SuSE-based Distributions

Published: 2006-01-30 13:01 UTC. Tags: software linux

One of the things that always get me irritated when I have to work with a SuSE-based Linux distribution is the missing locate command.

For future reference, it's available in the findutils-locate package, so the next time I forget the name of the package, I can search my blog :-).


Borra.. borra.. borra.. BORRA BORRA BORRA! (in swedish)

Published: 2006-01-29 22:08 UTC. Tags: general in-swedish

I helgen har jag monterat hyllor i arbetsrummet, i hörnet. Ena väggen består av sviktande gipsskivor, andra väggen av Stångåstadens patenterade betong, hårdast i världen.

Om det är något man inte ska spara in på när det gäller betongväggar och hål, så är det borren. Det är mycket man med fördel kan köpa på Biltema, men betongborr hör inte dit.


New Keyboard at Home - trying out the Microsoft Natural Ergonomic Keyboard 4000

Published: 2006-01-21 21:13 UTC. Tags: hardware linux

I accidentally poured too much water into my old trusty MS Natural Keyboard (bought sometime in 1999 or so). Very sad, since I very much enjoyed it. I still use this kind of keyboard at work, though.

I tried to take it apart to let it dry, but unfortunately, it didn't help. Must be some corrosion somewhere in the layers of metal-covered plastic that keep track of which key was pressed, since only some of the keys are malfunctioning.

As a side note, the old keyboard had the text "Keytronics" printed on some of its internal parts.

Since I've really enjoyed this keyboard, I decided to try the new generation of MS Natural Keyboard, and tried a MS Natural Ergonomic Keyboard 4000 at a local hardware store. It felt nice, so I bought it.

I unpacked it yesterday, and to much irritation, the F3-F12 buttons didn't work at all, not giving any keycode back. Mumbling about Microsoft doing stupid things, I went to bed.

This morning, after doing some google queries, I found out that you must have the "F Lock" button pressed to get all F-keys working. Not 100% obvious, if you ask me.. but I guess that's what I guess for not following the instructions about installing the software before plugging the keyboard in. Not that I expect a Linux version of the software on the CD.. :-)

There are some keys on the keyboard that don't give any keysyms, including the zoom key in the middle. There seems to be ongoing work on a Linux driver for this hardware, that will enable this as well. All important keys do however work.

So, what about the ergonomics and feeling of the keyboard? Well, after typing a while, my initial impression is that I really like it. I've had to adjust my armrest's positions a bit to compensate for the slightly higher keyboard (I'm currently trying it using the piece of plastic that makes it higher in the end faced to me. It does make the keyboard look like an UFO, but it feels right!).

The feeling of each keystroke is quite similar to the old one, perhaps being a little bit softer. The space button is a bit harder to press down, and the enter key is a bit smaller, but so far, I haven't managed to hit it.

I usually don't enjoy products from Microsoft, being a user mostly of Linux and other UNIX derivatives, but their keyboards are very good.


Liberty Increases Security

Published: 2006-01-18 22:43 UTC. Tags: general

Found a link to this blog entry in the blog of Bruce Schneier. It's about research showing that countries with limited liberty are good at producing terrorists, while countries that may be poor but with a tradition of protecting civil liberties are less likely to produce terrorists.

This is worth thinking about, in a time where every government (including the swedish, especially our dear minister of Justice - Thomas Bodström, who is trying very hard to impress his idols in the U.S. government) seems eager to limit the liberty of their citizens in the "war against terrorism".

Perhaps the billions spent on listening to decent people's phone calls and bombing empty caves in Afghanistan, would have been better spent in supporting development of societies with lot's of freedom?


Narnia and Dan Brown

Published: 2006-01-15 00:22 UTC. Tags: general

Just got back from watching the Narnia movie.

Great stuff. I'd say it's not as good as, but still in the same division as Lord of the rings. A lot of beautiful scenery and heavy battle scenes. Definitely a film that you want to see in a large movie theater with good sound and large screen!

The pre-movie commercials were (among other things) for the Da Vinci Code. I may actually go see it, even though the book is irritating to read - Dan Brown simply isn't a good writer. The story is quite OK, but his english and book-writing skills are not. I've actually read some of his other books as well, both Deception Point and Digital Fortress, and I have to say that both of them suck bigtime!

I hope they have managed to make the Da Vinci movie better than the book - with Audrey Tautou, Jean Reno and Tom Hanks, one could hope it's not a total pain to view.


Fixed the Comment Problem

Published: 2006-01-15 00:21 UTC. Tags: plone

Finally managed to fix the problem with VisitorComments and Quills, so now it's possible to comment on this blog in a decent manner again.

I've written about the solution to the problem on the Quills mailing list.


En ny last

Published: 2006-01-14 19:19 UTC. Tags: general in-swedish

Jag har en ny last. Bregott extrasaltat är verkligen jättegott!


Blog-Trouble! Re-post, again!

Published: 2006-01-07 20:43 UTC. Tags: plone


I tried to install VisitorComments to allow anonymous users to leave their name when they commented blog entries.

By some, yet to be known, reason, this f*cked up my something in the blog, so comments are now added to the root of the blog instead of to the relevant entry. Uninstalling VisitorComments didn't help :-(.

This seems to be a known problem according to Olivier Ozoux on the quills mailing list, but his proposed solution - to remove the blog and then re-post all the entries, doesn't work for me, now when I decided to give it a try, even though it's a rather annoying thing to do..


VMware workstation 5.5.1 - improved kernel module compilation!

Published: 2006-01-07 20:35 UTC. Tags: general

Wohoo! Just upgraded to VMware Workstation 5.5.1 at work (where I use VMware a lot for testing ThinLinc features on different operating systems).

The best feature with 5.5.1 compared to version I ran previously is that it manages to compile its kernel modules for the stock Debian 2.6.8-2 kernel. Earlier, I had to run 2.6.8-1 for this to work, with known security holes :-(.

I generally try to use Open Source software, but VMware is one of the exceptions. Especially since my employer pays the license.. :-)


No more guppies in the aquarium!

Published: 2006-01-07 20:30 UTC. Tags: aquarium

I gave away my guppies today to a guy I know from LysKOM. He had a brand new tank and wanted some free fish for it.

That's a good solution. I didn't want the guppies, but I'm not steel-hearted enough to kill them. Now they'll get a nice new home :-).

Now I'll have to think about what other fish I can add to my tank.


Moving more content from Lysator to

Published: 2006-01-07 20:29 UTC. Tags: general

Today I've moved most of the mail-related stuff as well as the Linux-related and Version Control System related content from Lysator to my Writings Area.

This is rather boring work, but it's nice to get all my published documents well organized and all available in one place.


På besök hos mina analoga föräldrar

Published: 2006-01-07 20:29 UTC. Tags: general in-swedish

(This entry is in swedish)

Jag var hemma hos mina föräldrar över julen. Där finns inte någon fungerande dator, och än mindre nån fungerande internetuppkoppling.

Ett par dar är det bara skönt att slippa vara uppkopplad, men sen började jag få lite halvtråkigt och började knacka lite kod på min medhavda laptop. Då vill man gärna ha tillgång till nätet för att kunna läsa referensmanualer och annat..

Så.. tänkte jag, på nått sätt borde det väl gå att fixa åtminstone en modemuppkoppling?

Laptopen har ett inbyggt modem. Tyvärr bara ett windowsmodem, så jag började med att boota om till Windows. Filer jag plockar ned där kan jag ju hämta in till Linux med NTFS-drivrutinen, tänkte jag.

Jag lyckades efter en stunds konfererande med min far hitta lappen med modempoolsnummer och användarnamn/lösenord. Jag gissade lite bland de tre eller fyra modempoolsnummer som stod uppskrivna (Telenordia, som väl är uppköpta av Glocalnet nuförtiden, öhm, tror jag har bytt modempoolsnummer ungefär fjorton gånger de senaste två-tre åren) och lyckades komma fram till en modempool.

Jag skapade en fjärranslutning och petade in rätt användnamn och lösenord, och ringde upp.

Pft! Ogiltigt användarnamn/lösenord.

Jaha, tänkte jag, men har inte Telia ett abbonemang där man inte behöver något abbonemang, så att säga. Jo, "Telia Internet för Alla". Ringde 90200 och tryckte mig fram i talsvarsdjungeln, och fick tag i telefonnumret till modempoolen.

Tut, tut, tut, tut, tyckte det numret. Gav upp för kvällen.

Nästa morgon pratade jag mer med min far, som först då erinrade sig att "Öhm, ja just det, jag har ju sagt upp internetabbonemanget". Inte konstigt att jag fick "ogiltigt användarnamn/lösenord".

Ringde Telias kundtjänst och kom fram efter 2 teliaminuter.


2 teliaminuter = 7 vanliga minuter

Naturligtvis så är "Telia Internet för Alla" inte för alla, utan bara för Teliakunder. Och eftersom mina föräldrar även betalar för abbonemanget till en annan operatör än Telia, så är de inte Teliakunder.


Det visar sig också att man när man inte är Teliakund slipper listas på Däremot finns man på Ännu fler skäl att använda, alltså.

Jag fick lösa min internetklåda genom att låna lite internet på skolan.


Ceratophyllum demersum L. in the Fishtank

Published: 2006-01-07 20:27 UTC. Tags: aquarium

A few weeks ago I bought two plants of Ceratophyllum demersum L. (hornsärv in swedish) at one of the local aquarium shops. I hadn't seen it before, and they told me it would grow fast and take its nutritions from the water, not having any roots.

I read a bit about it on the net as well, and according to some sources, it would fight for nutrition against the algae and probably win.

Boy, they were not kidding. It's growing 10-15 centimeters per week, and the amount of algae is constantly decreasing. Wow!


Network Solutions and their routines for outbound domain transfers

Published: 2006-01-07 20:27 UTC. Tags: general

At work, I had a .com domain registered with Network Solutions Inc. (from now on referred to as NSI). This was not by purpose, but for historical reasons - it was registered at a time when the only .com registrar was networksolutions.

It was getting near the time of renewal, so yesterday I decided I should try to move it to GANDI, where we have the rest of our .com-domains registered. We like GANDI, they are easy to deal with and their web interface is designed to be as helpful as possible, not to make it hard to do things, something which seems to be the main design criteria for the web site of NSI.

That GANDI, who are based in France, sometimes forgets to translate one or two words from french to english, and that the word order of some of the sentences are french rather than english is just.. charming! :-)

The process of changing domain registrar turned out to be really time-consuming, mostly because of NSI doing all they can to keep their customers by confusing them. In a perfect world, companies would compete by providing advantages to the customer, not by making it extremely difficult to switch to another, competing, company.

To transfer a domain from NSI to GANDI, you have to:

  1. Unlock the domain from unathourized transfer at NSI.

    Now, to do that, you must login as a user which is the primary contact. In my case, that was not the user I had access to, but fortunately, I had access to the e-mail account registered with that user, so I could fetch a new password and login.

    This is the first overcomplicated part of the NSI administrative website - it has too many roles, with too many configurable permissions. It probably fits big hierarchial american companies, but for small users, it just sucks. Keep It Simple, Stupid (KISS!)

  2. Wait for NSI to update their whois records. In my case, this took about 24 hours. Well done, NSI. I guess they stick a piece of paper with the domain name change to go into whois to a turtle who has to crawl a hundred meters over a highway before reaching the next administrative station where they actually change the data in whois.

    My turtle must have been killed in the first run, because I had to try twice.

    Poor turtle.

  3. Initiate the transfer at Gandi. You can't do that until the WHOIS information is updated, because it says the domain is locked from domain transfer.

  4. Find out that the whois data is still flawed - the primary administrative contact, which the NSI website indicated I was logged in as, had a correct mail adress listed. In whois, another, incorrect mail adress was listed. It turned out that there were two accounts with the name 'AAA BBBBBBB', and the second one, the one with the incorrect mail address, was listed in whois.

    After a while, I found a part of the NSI website which was completely new to me, where you could actually change which information was set in whois. Again, overcomplicated - one administrative contact should be enough, always being the same in both the web interface and in whois.

    This time, they sent another turtle (a cousin of the first turtle) with a small rocket motor attached, which flew over the highway to the whois department, because this change, got into whois almost at once. Unfortunately, the poor turtle smashed into the wall of the whois department and was killed.

    Poor turtle. Not only was he mourning his cousin. Now he was himself killed in the dangerous whois update business.

  5. Re-initiate transfer.

  6. Receive mail from Gandi to confirm that domain should be moved. Reply to this with accept code. Get confirmation from Gandi that reply mail was received.

    At this stage, you have been assigned a dynamic web page at Gandi where you can see the status of the transfer.

  7. Wait for NSI to send a porcupine, which is slightly faster than a turtle, over to the department who sends domain transfer confirmation e-mails. As a side note, this porcupine was a near friend of the turtle killed in step 4, so it's a very unhappy porcupine.

    At the domain transfer confirmation e-mail team, a collection of university dropouts who were specially recruited because of their unique combination of being unable to write understandable sentences while maintaing a high level of legal bullshit, handwrites each transfer confirmation mail to make it amazingly hard to understand.

    The general idea seems to be that the reader should be given the impression that the only thing that can be done is to cancel the transfer, that way keeping the domain at NSI.

    The secret hidden inside the long letter is that the website address which is used to cancel the transfer is actually also used to accept transfers. So, visit the URL and think twice before clicking on the correct button.

    The domain name for this site is not under Odd.

    Each time a customer accepts a transfer, they kill the messenger (i.e., the poor unhappy porcupine).

    I'm feeling bad about killing a porcupine.

  8. Gandi sends a mail about the completion of the domain transfer.

  9. Now, if it's time for renewal, NSI sends a mail where they tell you that you can renew the domain that were transferred. I'd guess that clicking one of the links in this letter will activate the jet-fueled department of incoming transfer, which will re-transfer the domain back to NSI in just about 0.2 seconds.

I'm a happier person now, even though I've implicitly killed two turtles and one porcupine.


*Must* have PasswordResetTool, or installation of PlonePAS will fail.

Published: 2006-01-07 20:27 UTC. Tags: general

svn co svn:// PluggableAuthService

svn co svn:// PluginRegistry


A funny sound

Published: 2006-01-07 20:27 UTC. Tags: general

The sound generated when you use the vacuum-cleaner to clean away a large amount of rice is.. funny!

Don't ask.


Todays laugh

Published: 2006-01-07 20:27 UTC. Tags: general

By randomly following links in, I stumbled into this article about the inner workings of the Death Star on Howstuffworks.

That was the first laugh. Very interesting article, and it's funny that Howstuffworks has an article on this issue :-).

The article about the Death Star lead me further to this article about the inappropriates of the waste disposal system on the Death Star. Also very funny :-).


The XDG Menu Standard Parsers in KDE and Gnome

Published: 2006-01-07 20:26 UTC. Tags: general

The XDG Menu parser in KDE is, in at least one respect, much more forgiving, than the one in Gnome.

Given an example menu file:


..KDE will happily use it as a Directory file, i.e. a file which describes a submenu rather than an application, even though the file is incorrectly named, and even though the filenames inside <Directory> tags are supposed to be relative according to the standard.

Gnome 2.10 on the other hand, will freeze in a 99% CPU-consuming endless loop. 2.12 behaves better, but still won't use the desktop file, instead showing the YYXXZZ, i.e. the name in the <Name> tag, as name of the menu.

If the desktop file is given as a Relative Path, and has a name that ends in .directory, and has a Type=Directory line, then it is used by Gnome.

KDE is, in this case, better at following Postel's Law - "be liberal in what you accept and conservative in what you put out".

My Job is varied. Today I was reading the source code of Gnome. Last week, I was reading the source code of KDE. Personally, I run neither, but just a plain Sawfish.


Evaluating Photo Albums for Plone

Published: 2006-01-07 20:26 UTC. Tags: plone
  • ZPhotoSlides: Well, seems rather competent. Documentation hints about ability to read photos from file system, but how? Very hard to understand where to find that functionality. That would be very useful, though.

    Adding a ZPhotoSlidesFolder doesn't seem to work at all, possibly because of trying to use ZPhotoSlides under Plone 2.1.

    Webpage of product seems to be quite outdated. The only "working demo" of version 2.0 gives a 404. Hmm..

  • AT Photo Album: Adding an AtPhotoAlbum object gives me a folder-like object without any possibility to edit anything. I think product is not Plone 2.1-ready.

  • ATPhoto: Doesn't seem to have much functionality. Fails to display the single photo I added in view mode.

  • CMFPhotoAlbum: 0.5.0 fails to install due to missing navigation_properties in Plone 2.1. Trunk from SVN installs, but trying to add a Photo Album gives a 404.

    Trying to find the canonical web page for CMFPhotoAlbum seems impossible.

  • The built in photo album view in Plone 2.1 is not good enough for my demands.

Nah, I'll stick with the album generated by Kofoto for a while. Here's my photos.