I have recently used MySiteCreate 1.0 Production from Community Kit for SharePoint to apply a new Master page to MySites.
You can visit CodePlex to download MySiteCreate feature:
This feature site template associate new features and functionality to existing templates.
Two features involved in the process:
o "Staplee" feature: This feature contains the functionality that you want to add to an existing site template.
o "Stapler" feature: This feature contains the "FeatureSiteTemplateAssociation" XML tags which bind the Staplee feature to a particular site template. Basically, it’s a feature that says “for all Personal Sites provisioned henceforth, they shall have the staplee feature.”
This solution worked beautifully in a SharePoint website we did for a client.
Step 1: Copy the Feature to Features folder:
Copy MySiteStaplee and MySiteStapler folders to corresponding feature folder in 12 hive:
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURES\
Step 2: MySite setup default master page.
Create a new customised Master page with the look and feel that will be applied to MySites.
I started with the top Site Collection Master page, taken from SharePoint Designer, then I have applied the new layout to this page. I saved this page under MySiteStaplee feature folder (default.master).
Change MySiteStaplee/feature.xml to the location of your default master file:
<Property Key="MasterName" Value="default.master"/>
Note that if you copy the Master file using SharePoint designer it inserts some unwanted characters, the best solution is to copy the content (ctrl c) and paste (ctrl v) into the new Master file.
Step 3: Run installation and activation for MySiteStaplee and MySiteStapler features:
· Install and activate the MySiteStaplee feature by running Install.bat; it uses the installfeature and activatefeature switches with stsadm to do so. When you activate it, do so to the web application that hosts MySites.
· Add the two assemblies that were created (the feature activation assembly and the custom ASP.NET web part assembly) to the Global Assembly Cache.
· Add the following SafeControl entry to the web.config for the web application that hosts My Sites:
<SafeControl Assembly="MySiteCreatePart, Version=18.104.22.168, Culture=neutral, PublicKeyToken=cb1bdc5f7817b18b" Namespace="Microsoft.IW" TypeName="*" Safe="True" AllowRemoteDesigner="True" />
Step 4: Create MySite for a user:
Click MySite and view the created MySite using new master pages.
If something went wrong then MySite will not show, this may be because your Master page may be corrupted. You can always delete MySite using either actions (below) then update the Master file and create new MySite:
Go to the URL for Mysite: http://sharepoint.com/personal/me/_layout/settings.aspx
Run the Command: stsadm -o deletesite –url http://sharepoint.com/personal/me/default.aspx