[banshee] windows: Check for .NET 3.5 SP1 or 4.0



commit 768822dfeaa7240e263ab5a6048536d38ddd8140
Author: Gabriel Burt <gabriel burt gmail com>
Date:   Thu Feb 3 15:08:30 2011 -0600

    windows: Check for .NET 3.5 SP1 or 4.0
    
    Also add option to launch Banshee after installer is done.

 build/windows/InstallerDefinition.wxs |   23 +++++++++++++++++++----
 build/windows/build-installer.js      |    4 ++--
 2 files changed, 21 insertions(+), 6 deletions(-)
---
diff --git a/build/windows/InstallerDefinition.wxs b/build/windows/InstallerDefinition.wxs
index 9e7a63b..e431835 100644
--- a/build/windows/InstallerDefinition.wxs
+++ b/build/windows/InstallerDefinition.wxs
@@ -16,10 +16,11 @@
     <Package Id="*" Compressed="yes" Description="$(var.ProductShortName) $(var.ProductVersionText) ($(var.ProductVersion))" InstallerVersion="200" ShortNames="no" Manufacturer="$(var.Manufacturer)" />
     <Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />
 
-    <!-- Ensure .Net 3.5 is installed -->
-    <PropertyRef Id="NETFRAMEWORK35" />
-    <Condition Message="This setup requires the .NET Framework 3.5 to be installed.">
-      Installed OR NETFRAMEWORK35
+    <!-- Ensure .Net 3.5 SP1 or higher is installed -->
+    <PropertyRef Id="NETFRAMEWORK35_SP_LEVEL" />
+    <PropertyRef Id="NETFRAMEWORK40FULL" />
+    <Condition Message="This setup requires the .NET Framework 3.5 SP1 or higher to be installed.">
+      <![CDATA[Installed OR (NETFRAMEWORK35_SP_LEVEL and NOT NETFRAMEWORK35_SP_LEVEL = "#0") OR NETFRAMEWORK40FULL]]>
     </Condition>
 
     <!-- Major upgrade -->
@@ -28,6 +29,13 @@
       <UpgradeVersion Minimum="0.0.0" IncludeMinimum="yes" IncludeMaximum="no" Property="OLDERVERSIONBEINGUPGRADED" />
     </Upgrade>
 
+    <!-- Option to launch when finished with setup -->
+    <CustomAction Id="StartAppOnExit" Directory="bin" ExeCommand="Nereid.exe" Execute="immediate" Impersonate ="yes" Return="asyncNoWait" />
+    <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch Banshee when setup exits" />
+    <UI>
+      <Publish Dialog="ExitDialog" Control="Finish" Order="1" Event="DoAction" Value="StartAppOnExit">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed</Publish>
+    </UI>
+
     <Directory Id="TARGETDIR" Name="SourceDir">
       <Directory Id="ProgramFilesFolder">
         <Directory Id="INSTALLLOCATION" Name="Banshee" FileSource="$(var.BuildRoot)\bin">
@@ -36,11 +44,17 @@
               <!-- Place Banshee path into registry -->
               <RegistryValue Root='HKLM' Key='SOFTWARE\Novell\Banshee' Type='string' Name='Version' Value='$(var.ProductVersion)' />
               <RegistryValue Root='HKLM' Key='SOFTWARE\Novell\Banshee' Type='string' Name='Path' Value='[INSTALLLOCATION]' />
+
+              <!-- App Paths to support Start,Run -> "banshee" -->
+              <RegistryValue Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\banshee.exe" Value="[INSTALLLOCATION]bin\Nereid.exe" Type="string" />
+              <RegistryValue Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\banshee.exe" Name="Path" Value="[INSTALLLOCATION]bin" Type="string" />
+
             </Component>
           </Directory>
         </Directory>
       </Directory>
 
+      <!-- Define directory structure for Start menu shortcut, and create shortcut -->
       <Directory Id="ProgramMenuFolder" Name="PMenu">
         <Directory Id="ProgramMenuDir" Name='$(var.ProductShortName)'>
           <Component Id="StartMenuShortcut" Guid="165DF12B-D970-49BC-B03B-880B62ABC308">
@@ -51,6 +65,7 @@
         </Directory>
       </Directory>
 
+      <!-- Define directory structure for Desktop shortcut, and create shortcut -->
       <Directory Id="DesktopFolder">
         <Component Id="DesktopShortcut" Guid="ACCE1EDB-87E3-4FE5-B2BF-93113E767381">
           <Shortcut Id="DesktopShortcut" Name="$(var.ProductShortName)" Icon="Nereid.exe" Target="[INSTALLLOCATION]bin\Nereid.exe" WorkingDirectory="bin"/>
diff --git a/build/windows/build-installer.js b/build/windows/build-installer.js
index 4f49a16..7ea70f5 100644
--- a/build/windows/build-installer.js
+++ b/build/windows/build-installer.js
@@ -16,8 +16,8 @@ var heat = "\"" + env("WIX") + "bin\\heat.exe\"";
 //build ("..\\..\\Banshee.sln");
 
 // Delete some files that might be created by running uninstalled
-if (fs.FileExists (bin + "\\registry.bin")) fs.DeleteFile (bin + "\\registry.bin");
-if (fs.FolderExists (bin + "\\addin-db-001")) fs.DeleteFolder (bin + "\\addin-db-001");
+if (fs.FileExists (bin + "\\bin\\registry.bin")) fs.DeleteFile (bin + "\\bin\\registry.bin");
+if (fs.FolderExists (bin + "\\bin\\addin-db-001")) fs.DeleteFolder (bin + "\\bin\\addin-db-001");
 
 // We can't just heat the entire dir b/c it would include the .git/ directory
 heatDir ("bin");



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]