Difference between revisions of "Skype"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(Skype Personal Version (EXE))
Line 4: Line 4:
  
 
This is a silent installer for the Skype. Download it from [http://www.skype.com www.skype.com].
 
This is a silent installer for the Skype. Download it from [http://www.skype.com www.skype.com].
 +
  
 
<source lang="xml">
 
<source lang="xml">
Line 15: Line 16:
 
         priority="10">
 
         priority="10">
 
         <check type="file" condition="exists" path="%PROGRAMFILES%\Skype\Phone\unins000.exe" />
 
         <check type="file" condition="exists" path="%PROGRAMFILES%\Skype\Phone\unins000.exe" />
         <install cmd='%SOFTWARE%\SkypeSetup.exe /norestart /silent /sp-' />
+
         <install cmd='%SOFTWARE%\SkypeSetup.exe /VERYSILENT' />
         <upgrade cmd='%SOFTWARE%\SkypeSetup.exe /norestart /silent /sp-' />
+
         <upgrade cmd='%SOFTWARE%\SkypeSetup.exe /VERYSILENT' />
 
         <remove cmd='%PROGRAMFILES%\Skype\Phone\unins000.exe /SILENT' />
 
         <remove cmd='%PROGRAMFILES%\Skype\Phone\unins000.exe /SILENT' />
 
  </package>
 
  </package>
 
</packages>
 
</packages>
 
</source>
 
</source>
 
  
 
=Skype for Business (MSI)=
 
=Skype for Business (MSI)=

Revision as of 14:39, 2 July 2011

Skype is a software application that allows users to make voice calls over the Internet. Calls to other users within the Skype service are free, while calls to both traditional landline telephones and mobile phones can be made for a fee using a debit-based user account system. Skype has also become popular for its additional features which include instant messaging, file transfer, and video conferencing.

Skype Personal Version (EXE)

This is a silent installer for the Skype. Download it from www.skype.com.


<?xml version="1.0" encoding="UTF-8"?>
<packages>
 <package
        id="skype"
        name="Skype"
        revision="1"
        reboot="false"
        priority="10">
        <check type="file" condition="exists" path="%PROGRAMFILES%\Skype\Phone\unins000.exe" />
        <install cmd='%SOFTWARE%\SkypeSetup.exe /VERYSILENT' />
        <upgrade cmd='%SOFTWARE%\SkypeSetup.exe /VERYSILENT' />
        <remove cmd='%PROGRAMFILES%\Skype\Phone\unins000.exe /SILENT' />
 </package>
</packages>

Skype for Business (MSI)

If you prefer to work with MSI files, download the Skype for Business version at http://c.skype.com/download/skype/windows/business/ (downloading requires a valid skype account or to create a new one)

Skype provides an IT Administrator guide that includes a table of registry keys for controlling policies such as automatic updates and becoming a supernode: http://www.skype.com/go/administrators.guide

The additional install commands below modify the registry to disable automatic updates, supernodes and running at login by default.

When using the MSI installer, you will get an MSI error 1638 when doing a minor version upgrade (say from 5.0.152 to 5.0.156), however since the product code doesn't change between minor versions, you can get around this by uninstalling based on the product code first before running the normal installer like this:

<install cmd='msiexec /qn /x{9C538746-C2DC-40FC-B1FB-D4EA7966ABEB}'><exit code="1605" /></install> <!-- 5.0 product code -->

Version 5.0

<package
  id="skype"
  name="Skype"
  revision="5.0.32.156"
  reboot="false"
  priority="50">

  <variable name="version" value="5.0.32.156" />

  <check type='logical' condition='and'>
         <check type="uninstall" condition="exists" path="Skype.*" />
         <check type='logical' condition='or'>
                <check type="file" condition="versiongreaterorequal" path="%ProgramFiles%\Skype\Phone\Skype.exe" value="%version%" />
                <check type="file" condition="versiongreaterorequal" path="%ProgramFiles(x86)%\Skype\Phone\Skype.exe" value="%version%" />
         </check>
  </check>
    
  <install cmd='msiexec /qn /i "%SOFTWARE%\skype\SkypeSetup-%version%.msi"' /> 
  <install cmd='%COMSPEC% /C reg add "HKLM\Software\Policies\Skype\Phone" /v "DisableVersionCheckPolicy" /d "1" /t REG_DWORD /f' />
  <install cmd='%COMSPEC% /C reg add "HKLM\Software\Policies\Skype\Phone" /v "DisableSupernodePolicy" /d "1" /t REG_DWORD /f' />
  <install cmd='%COMSPEC% /C reg delete "HKU\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Run" /v "Skype" /f' />

  <upgrade cmd='msiexec /qn /i "%SOFTWARE%\skype\SkypeSetup-%version%.msi"' /> 

  <remove cmd='"%PROGRAMFILES%\Skype\Phone\Skype.exe" /shutdown' />
  <remove cmd='msiexec /x{9C538746-C2DC-40FC-B1FB-D4EA7966ABEB} /qn /norestart' /> 
</package>

version 4.1

The following is an update for version 4.1

<?xml version="1.0" encoding="UTF-8"?>

<packages>
	<package
		id="skype"
		name="Skype"
		revision="4.1"
		reboot="false"
		priority="0"> 
		<!-- Skype uses the special TM character in its Add/Remove Programs DisplayName, and WPKG does not like that, so I am doing a version check on Skype.exe. -->
		<check type="file" condition="versiongreaterorequal" path="%PROGRAMFILES%\Skype\Phone\Skype.exe" value="4.1.32.179" /> 
		<install cmd='msiexec.exe /i "%SOFTWARE%\skype\SkypeSetup.msi" INSTALLLEVEL=1 ALLUSERS=1 TRANSFORMS=:RemoveDesktopShortcut.mst;:RemoveStartup.mst /qn' /> 
		<upgrade cmd='msiexec.exe /i "%SOFTWARE%\skype\SkypeSetup.msi" INSTALLLEVEL=1 ALLUSERS=1 TRANSFORMS=:RemoveDesktopShortcut.mst;:RemoveStartup.mst /qn' /> 
		<remove cmd='"%PROGRAMFILES%\Skype\Phone\Skype.exe" /shutdown' />
		<remove cmd='msiexec.exe /x{5C474A83-A45F-470C-9AC8-2BD1C251BF9A} /qn /norestart' /> 
	</package>
 
</packages>

version 3.8

The following package should work for Skype 3.8. Note that I added extra parameters to the installation string to eliminate the installation of everything except the Skype application and Start/Send To shortcuts.

<?xml version="1.0" encoding="UTF-8"?>

<packages>

	<package
		id="skype"
		name="Skype"
		revision="380"
		reboot="false"
		priority="0">

		<!-- Skype uses the special TM character in its Add/Remove Programs DisplayName, and WPKG does not like that, so I am doing a version check on Skype.exe. -->
		<check type="file" condition="versiongreaterorequal" path="%PROGRAMFILES%\Skype\Phone\Skype.exe" value="3.8" />
	
		<install cmd='msiexec.exe /i "%SOFTWARE%\SkypeSetup.msi" INSTALLLEVEL=1 ALLUSERS=1 TRANSFORMS=:RemoveDesktopShortcut.mst;:RemoveStartup.mst /qn' />

		<upgrade cmd='msiexec.exe /i "%SOFTWARE%\SkypeSetup.msi" INSTALLLEVEL=1 ALLUSERS=1 TRANSFORMS=:RemoveDesktopShortcut.mst;:RemoveStartup.mst /qn' />

		<remove cmd='"%PROGRAMFILES%\Skype\Phone\Skype.exe" /shutdown' />
		<remove cmd='msiexec.exe /x{375943E2-B268-4AD7-B7A4-0FD90E9C2AC7} /qn /norestart' />

	</package>

</packages>

notes

The following information was found in Skype forum. Post by andreskaasik at Tue May 15 2007, 13:00. Remember it only works on MSI.

Installation directory
* The property INSTALLDIR determines the root directory of the Skype installation.
msiexec /i SkypeSetup.msi INSTALLDIR=c:\temp\skype

Installation for All Users
* Adding ALLUSERS=1 causes an installation for all users. By default, the non-interactive installation install the package just for the current user.
msiexec /i SkypeSetup.msi ALLUSERS=1

Feature Selection
* A number of properties allow selection of features to be installed, reinstalled, or removed. The set of features for the Skype installer is
+ Phone - the Skype executable with preloaded graphics and contacts.
+ IEPlugin - the Internet Explorer plugin
+ FFPlugin - the Mozilla Firefox plugin

Administrative installation
* Use the following command to initiate an "administrative" (network) installation:
msiexec /a SkypeSetup.msi TARGETDIR=c:\temp\skype

The files get unpacked into the target directory (which should be a network directory), but no other modification is made to the local system. In addition, another (smaller) msi file is generated in the target directory, which clients can then use to perform a local installation. Currently, there is no user interface for administrative installations, so the target directory must be passed on the command line. There is no specific uninstall procedure for an administrative install - just delete the target directory if no client uses it anymore. Yo can use the "feature properties" and install level to control what features preselected and available for installation.
1. Installs only Skype, plugin features are hidden from end user.
msiexec /a SkypeSetup.msi TARGETDIR=c:\temp FEATURE_IEPLUGIN=0 FEATURE_FFPLUGIN=0 INSTALLLEVEL=1
2. Installs only Skype, plugin features are visible to end user.
msiexec /a SkypeSetup.msi TARGETDIR=c:\temp INSTALLLEVEL=1
3. Installs Skype, IE and FF plugins.
msiexec /a SkypeSetup.msi TARGETDIR=c:\temp INSTALLLEVEL=10

Customization transforms

To install without desktop shortcut
Use the RemoveDesktopShortcut.mst transformation to remove Desktop icon.
msiexec /i SkypeSetup.msi TRANSFORMS=:RemoveDesktopShortcut.mst

To install without any shortcuts
Use the RemoveAllShortcuts.mst transformation to remove all shortcuts in "Start" and "Send To" menus and the Desktop icon.
msiexec /i SkypeSetup.msi TRANSFORMS=:RemoveAllShortcuts.mst

To disable starting Skype automatically at logon
Use the RemoveStartup.mst transformation to disable Skype starting automatically after user has logged in.
msiexec /i SkypeSetup.msi TRANSFORMS=:RemoveStartup.mst

Launching Skype after installation
* The property STARTSKYPE can be used to control the Skype launch at the end of installation (full user interface only). For example, the following command disables Skype launch after installation ends.
msiexec /i SkypeSetup.msi STARTSKYPE=FALSE /qf

Removing previous Skype installations
* The Skype MSI package is designed to remove old Skype (Inno) setups on install. The SKYPEREMOVAL=[DEFAULT|INNO|SCRIPT] property was introduced to control how this removal works.
By default the version of installed Skype package determines the removal method: if version < 2.6 then custom uninstall script is run else the Inno uninstall action is executed. For example, the following command forces Skype to use custom JScript to remove previous installation.
msiexec /i SkypeSetup.msi SKYPEREMOVAL=SCRIPT /qf