move desktop client specific stuff to core, for now