commit 363fb6da3f21843e3c0e9f837dc6f518d1ca2533
parent b053bc2049efa270d8b37522ce46730ccf24b293
Author: Alexander Kojevnikov <alexander@kojevnikov.com>
Date: Thu, 13 May 2010 14:18:24 +1000
[win] Add programs/desktop and uninstall shortcuts
Diffstat:
3 files changed, 26 insertions(+), 5 deletions(-)
diff --git a/win/make-win32.sh b/win/make-win32.sh
@@ -73,16 +73,14 @@ echo "gtk-theme-name = \"MS-Windows\"" > etc/gtk-2.0/gtkrc
cd ..
#TODO:
-# * Desktop and Programs shortcuts
# * Figure out why icons don't work, may be install hi-color icon theme?
-# * Uninstall shortcut
# * Website link doesn't work
# Generate a wxs for files in msi-data
-"$WIX_PATH"/heat.exe dir msi-data -gg -srd -cg Files -dr INSTALLLOCATION -template fragment -o files.wxs || (popd; exit 1)
+"$WIX_PATH"/heat.exe dir msi-data -gg -ke -srd -cg Files -dr INSTALLLOCATION -template fragment -o files.wxs
# Make the MSI package
-"$WIX_PATH"/candle.exe spek.wxs files.wxs || (popd; exit 1)
-"$WIX_PATH"/light.exe -ext WixUIExtension.dll -b msi-data spek.wixobj files.wixobj -o spek.msi || (popd; exit 1)
+"$WIX_PATH"/candle.exe spek.wxs files.wxs
+"$WIX_PATH"/light.exe -ext WixUIExtension.dll -b msi-data spek.wixobj files.wixobj -o spek.msi
popd
\ No newline at end of file
diff --git a/win/spek.ico b/win/spek.ico
Binary files differ.
diff --git a/win/spek.wxs b/win/spek.wxs
@@ -9,6 +9,7 @@
<Package InstallerVersion="301" Compressed="yes" />
<Media Id="1" Cabinet="spek.cab" EmbedCab="yes" />
<Property Id="ALLUSERS" Value="1" />
+ <Property Id="ARPPRODUCTICON" Value="ProgramIcon" />
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLLOCATION" />
<UIRef Id="WixUI_InstallDir" />
<UIRef Id="WixUI_ErrorProgressText" />
@@ -21,7 +22,27 @@
<RemoveExistingProducts After="InstallInitialize" />
</InstallExecuteSequence>
+ <Icon Id="ProgramIcon" SourceFile="spek.ico"/>
+ <DirectoryRef Id="ProgramMenuSubfolder">
+ <Component Id="StartMenuShortcut" Guid="165DF12B-D970-49BC-B07B-880B62ABC308">
+ <Shortcut Id="StartMenuShortcut" Name="$(var.ProductName)" Icon="ProgramIcon" Target="[INSTALLLOCATION]bin/spek.exe" WorkingDirectory="bin"/>
+ <Shortcut Id="UninstallProduct" Name="Uninstall $(var.ProductName)" Target="[System64Folder]msiexec.exe" Arguments="/x [ProductCode]"/>
+ <RemoveFolder Id="ProgramMenuSubfolder" On="uninstall"/>
+ <RegistryValue Root="HKCU" Key="Software\$(var.Manufacturer)\$(var.ProductName)" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
+ </Component>
+ </DirectoryRef>
+ <DirectoryRef Id="DesktopFolder">
+ <Component Id="DesktopShortcut" Guid="ACCE1EDB-87E3-4FE5-B2BF-93113E767381">
+ <Shortcut Id="DesktopShortcut" Name="$(var.ProductName)" Icon="ProgramIcon" Target="[INSTALLLOCATION]bin/spek.exe" WorkingDirectory="bin"/>
+ <RegistryValue Root="HKCU" Key="Software\$(var.Manufacturer)\$(var.ProductName)" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
+ </Component>
+ </DirectoryRef>
+
<Directory Id="TARGETDIR" Name="SourceDir">
+ <Directory Id="ProgramMenuFolder">
+ <Directory Id="ProgramMenuSubfolder" Name="$(var.ProductName)"/>
+ </Directory>
+ <Directory Id="DesktopFolder" />
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLLOCATION" Name="$(var.ProductName)">
<Component Id="Main" Guid="CD5121AD-F799-4796-9DB8-0C24CA0A4C8E">
@@ -39,6 +60,8 @@
<Feature Id="All" Title="$(var.ProductName)" Level="1">
<ComponentRef Id="Main" />
<ComponentGroupRef Id="Files" />
+ <ComponentRef Id="StartMenuShortcut" />
+ <ComponentRef Id="DesktopShortcut" />
<MergeRef Id="GStreamer-Libraries" />
<MergeRef Id="GStreamer-Plugins-Base" />
<MergeRef Id="GStreamer-Plugins-Good" />