We want to customize the "My Site" templates for different roles, say Students and Teachers. So basically we want to have one Site Def. for each and when they press "My Site" we want to create a new site using a different template depending on the role of the user (Student vs. Teacher). Does anybody know if this is even possible? Or any work-arounds that could work?
I know that it's possible to execute code during the process, I've seen lots of examples of this, but we want to do some stuff before that happens...
EDIT: Would it be possible to override the link to "my site" and then create a new site manually?
You can't create a custom site definition for mysite. The way to go is described here on the SharePoint team blog.
Then in the code to be executed, you can activate features based on the current user role.
That's the easiest (and supported) way I can think of.