This is certainly a chicken-egg problem. No developer will ever put Categories in his .desktop-files if they go unused on the N900. But if only one applications/launcher such as yours starts using them... You could start a revolution. Anyway, once you allow users to move around applications, you need a place to store the current location of the app. The .desktop file is a good place for this... So why not write to the .desktop file in case it doesn't already include a category (or in case the category needs to be changed) and then always read from the .desktop file when you have to determine where to put an application?