AusLUG2012                   Streamline client deployments with                   customised installation packages        ...
AusLUG2011                                                                        AusLUG2012           About me           ...
AusLUG2012          The Lotus Notes client installation process          There are two parts to the installation of a Note...
AusLUG2012          The client installation process (cont.)Meet.Share.Learn                                    29th & 30th...
AusLUG2012       InstallShield® customisations                                              Windows Installer     Eclipse ...
AusLUG2012          Eclipse customisations            Windows Installer      Eclipse provisioning                         ...
AusLUG2012     The Windows Installer process    • Windows Installer package (MSI) is a relational database    • Interlinke...
AusLUG2012     The InstallShield® Tuner for IBM Lotus Notes    • Is used for the creation of transform files (MST)    • Cu...
AusLUG2012    Locate the InstallShield® Tuner on the Web     • InstallShield® Tuner needs to be downloaded from IBM Passpo...
AusLUG2012     Download the InstallShield® Tuner                                 • Select tick box next to the            ...
AusLUG2012          Setup the InstallShield® Tuner           • Execute downloaded file, which will launch the installation...
AusLUG2012          Setup the InstallShield® Tuner (cont.)          • Confirm your details and installation optionsMeet.Sh...
AusLUG2012          Setup the InstallShield® Tuner (cont.)         • Choose complete installation and click NextMeet.Share...
AusLUG2012          Setup the InstallShield® Tuner (cont.)          • Click Install and wait for the installation to compl...
AusLUG2012       Preparing the “development environment”       • For the purpose of package customisation create three fol...
AusLUG2012       Unpacking the Notes installation package         • Execute the Lotus Notes client setup         • Select ...
AusLUG2012 Unpacking the Notes installation package (cont.)         • This will extract the containing files from the pack...
AusLUG2012      Cancel Notes set-up       • Cancel the setup at this point and confirm with Yes       • We do not want to ...
AusLUG2012      Downloading the Tuner configuration file                   • Install Shield® Tuner is using a configuratio...
AusLUG2012    Downloading from Fix Central         • Leave default (Browse for fixes) and click ContinueMeet.Share.Learn  ...
AusLUG2012      Downloading from Fix Central (cont.)         • Select the Notes 853 ITWFile interim fix and click Continue...
AusLUG2012   Using the InstallShield® Tuner      • Launch the InstallShield® Tuner from the Windows        start menuMeet....
AusLUG2012   Using the InstallShield® Tuner (cont.)     • Confirm the path to the Tuner Configuration File (.itw)     • Th...
AusLUG2012   Creating transform file      • We do want to create a new transform fileMeet.Share.Learn                     ...
AusLUG2012   Creating transform file (cont.)     • Confirm path to Lotus Notes 8.5.3.msi located in the LN853Source direct...
AusLUG2012      Running the installation simulation         • You will see the usual Windows Installer dialogue         • ...
AusLUG2012       Running the installation simulation (cont.)         • Accept the License AgreementMeet.Share.Learn       ...
AusLUG2012         Running the installation simulation (cont.)           • We want to remove IBM from the Program Files an...
AusLUG2012       Running the installation simulation (cont.)         • We do want to include the Composite Application Edi...
AusLUG2012      Running the installation simulation (cont.)       • Finally we want to launch parts of Notes when the oper...
AusLUG2012       Running the installation simulation (cont.)        • There is one more attempt to make you believe that t...
AusLUG2012           Response transforms option               Response transform simulation        Ensure that the initial...
AusLUG2012       Running the Prevalidation         • Prevalidation ensures that you are aware of any issues that have not ...
AusLUG2012         Running the Prevalidation (cont.)         • Choose Full MSI Validation suite and All Internal Consisten...
AusLUG2012     Running the Prevalidation (cont.)      • Be prepared for a long list of Errors (68) and Warnings (156)Meet....
AusLUG2012      Customisation options      • Take some time to look at the options available      • There are some straigh...
AusLUG2012      Amending the installation path      •     The installation directory needs to be customised in the Setup P...
AusLUG2012       Amending the installation path (cont.)         • Customise settings according to you intended target dire...
AusLUG2012       Building a multi-user package         • If you want your package to always deploy as a multiuser set-up y...
AusLUG2012       Building a multi-user package (cont.)         • Double click the value and change it from OnlyCurrentUser...
AusLUG2012         Removing shortcuts          • Just click on a shortcut and hit delete to remove itMeet.Share.Learn     ...
AusLUG2012   Changing of shortcut targets     •     Customise the target of a shortcut to enhance user experience     •   ...
AusLUG2012                                                                              Start       The Noteslaunch script...
AusLUG2012    Configuration set by Noteslaunch.vbs          Notes.ini          [Notes]          Directory=C:UserscpettersA...
AusLUG2012       Adding additional files to the package       • Files and Folders section allows you to add files like not...
AusLUG2012       Adding additional files to the package (cont.)       • Just drag and drop the required files from the sou...
AusLUG2012         Adding additional files to the package (cont.)         • Note the component name of CST_COMPONENT      ...
AusLUG2012        Changing the component target         • Ensures that dynamic folder mapping is working         • CST_COM...
AusLUG2012         Changing the component target directory         • Change property to the Notes program directory (PROGD...
AusLUG2012     Running a Postvalidation      • We have applied all the changes we wanted      • It is time to run a quick ...
AusLUG2012     Running a Postvalidation (cont.)      • After the post validation is finished. Ensure that no additional er...
AusLUG2012      Creating a transformed package      • This step copies all necessary files to specified location      • Se...
AusLUG2012    Creating a transformed package (cont.)      • Click the Package button to create the packageMeet.Share.Learn...
AusLUG2012   Creating a transformed package (cont.)     • This will copy all required files and folders from the Source to...
AusLUG2012   Creating a transformed package (cont.)      • Once completed you should see the following resultMeet.Share.Le...
AusLUG2012         Eclipse customisations            Windows Installer      Eclipse provisioning                          ...
AusLUG2012         Customising Eclipse features        • Eclipse provisioning is initiated from Windows Installer        •...
AusLUG2012  Customising Eclipse features (cont.)   • The Installation Manifest on the example of the Roaming Service      ...
AusLUG2012     Including Sametime 8.5.2 IFR1      • A number of options are available to upgrade to Sametime 8.5.2 IFR1 du...
AusLUG2012      Extracting Update Site Manager      • Update Site Manager is provided as part of the Notes 8.5.3 package  ...
AusLUG2012       Getting a list of components        • Open a command prompt        • Run UpdatesiteMgr.exe -L to get a li...
AusLUG2012          Removing Sametime 8.5.1 from package          • Use UpdatesiteMgr -r Sametime to remove Sametime 8.5.1...
AusLUG2012      Removing Sametime 8.5.1 (cont.)                   • The 8.5.3 Update Site Manager has a bug that leaves a ...
AusLUG2012         Downloading Sametime 8.5.2 IFR1 add-on          • Download Sametime 8.5.2 IFR1 from Passport Advantage ...
AusLUG2012       Preparing Sametime 8.5.2 IFR1                            • The Update Site Manager only supports installa...
AusLUG2012         Preparing Sametime 8.5.2 IFR1 (cont.)          • There should now be 2 directories:                   •...
AusLUG2012          Adding Sametime 8.5.2 IFR1 to update site          • Run UpdateSiteMgr.exe to merge the features into ...
AusLUG2012   Confirming results     • The Lotus Notes installation manifest is now extended to include Sametime 8.5.2 IFR1...
AusLUG2012     Adding the IBM QuickNote Demo plug-in       • Using IBM’s QuickNote toolbar extensions demo       • We will...
AusLUG2012     A few words about trust       • All features and plug-ins need to be signed by a trusted certificate       ...
AusLUG2012      Creating a signer certificate      • Signer certificate and key store can be created using        keytool....
AusLUG2012       Creating a new keystore        • CTRL+N or File, New Keystore creates a new key store        • For the pu...
AusLUG2012       Generating a key pair        • Create a new key pair using Tools, Generate Key Pair        • Self signed ...
AusLUG2012         Generating a key pair (cont.)         • Confirm default Algorithm and Key SizeMeet.Share.Learn         ...
AusLUG2012         Defining certificate details         • Populate at least the common name         • Ensure validity matc...
AusLUG2012       Defining key label and password         • Provide meaningful label for your certificate         • Enter a...
AusLUG2012         Success         • Our key pair has been created successfully         • Next steps are to           - Sa...
AusLUG2012       Saving key store to disk         • Select File, Save Keystore As …         • Define a password to protect...
AusLUG2012         Saving key store to disk (cont.)         • Define path and file name for the key store file and save   ...
AusLUG2012         Exporting the public key         • To import the certificate to the installation trust store         • ...
AusLUG2012       Exporting the public key (cont.)         • Confirm Export Type and Export format         • Save certifica...
AusLUG2012         Opening the installation trust store         • Open the installation trust store and import the codesig...
AusLUG2012         Opening the installation trust store        • Enter the keystore password, which is ‘changeit’Meet.Shar...
AusLUG2012          Importing the codesigner certificate         • Select Tools, Import Trusted Certificate and choose the...
AusLUG2012         Importing the codesigner certificate (cont.)         • Since we are working with a self signed certific...
AusLUG2012         Importing the codesigner certificate (cont.)         • Confirm certificate details with OK and accept t...
AusLUG2012          Success         • Your codesigner certificate has now been added to the installation trust storeMeet.S...
AusLUG2012          Save and close installation trust store         • Select File, Save Keystore to save the changes to di...
AusLUG2012      Sign plug-ins and features using jarsigner.exe                   • Jarsigner.exe is part of the Java Devel...
AusLUG2012     Create AusLUG update site      • Select all items of the update site and combine it to a ZIP file named Aus...
AusLUG2012      Add feature to the installation manifest         • Edit the LN853TransformDeployinstall.xml installation m...
AusLUG2012         Customise advanced RCP settings            • Customise Java heap size settings to improve client perfor...
AusLUG2012     Define plug-in preferences • Edit plugin_customization.ini in Deploy folder to set Eclipse preferences to  ...
AusLUG2012        Define plug-in preferences (cont.)         • To hide the Getting Started screen add           com.ibm.rc...
AusLUG2012          Define plug-in preferences (cont.)          • Set default dictionary to en-GB:            com.ibm.coll...
AusLUG2012      Install package using msiexec      • We are using a batch command and Microsoft’s Windows Installer to ins...
AusLUG2012        The msiexec syntax         • In our case we are using           msiexec /i “Lotus Notes 8.5.3.msi” TRANS...
AusLUG2012      Create install.bat       • Open you Windows Explorer and browse to your transform directory (LN853Transfor...
AusLUG2012       Working with relative paths         • The %~dp0 macro allows use to determine the path of install.bat    ...
AusLUG2012         Performance considerations         • You can never change a first impression         • The installation...
AusLUG2012          Performance considerations         • Remove backup files from package              - install.xml.bak i...
AusLUG2012          Testing your package           • Building a deployment package is a development job           • You ne...
AusLUG2012         Deployment options         • There are various ways to deploy packages         • Every organisation has...
AusLUG2012     Reference links:     • Windows Installer reference       http://msdn.microsoft.com/en-       us/library/win...
AusLUG2012                   Questions ?Meet.Share.Learn                 29th & 30th March, Melbourne, Victoria,          ...
AusLUG2012          Thank you for listening!             Contact me at             Email:    info@cubetoon.com            ...
AusLUG2012         For copy and paste:         SET THISPATH=%~dp0         msiexec /i "%THISPATH%Lotus Notes 8.5.3.msi" TRA...
Upcoming SlideShare
Loading in …5
×

Streamline client deployments with customised installation packages

4,331 views

Published on

My AusLUG2012 presentation on customising the Lotus Notes installation package using InstallShield Tuner, customised Installation Manifests and Update Sites.

Published in: Technology, Business
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,331
On SlideShare
0
From Embeds
0
Number of Embeds
1,498
Actions
Shares
0
Downloads
90
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Streamline client deployments with customised installation packages

  1. 1. AusLUG2012 Streamline client deployments with customised installation packages Christian Petters Systems and Data Services ManagerMeet.Share.Learn Statistics NZ www.cubetoon.com 29th & 30th March, Melbourne, Victoria, Australia
  2. 2. AusLUG2011 AusLUG2012 About me • Christian Petters • Systems and Data Services Manager at Statistics New Zealand • Administration and Development using IBM products for almost a decade • Working with Notes/Domino, Sametime, LEI, Connections, … • Living in New Zealand with two kids and one wife • Born and raised in East GermanyMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  3. 3. AusLUG2012 The Lotus Notes client installation process There are two parts to the installation of a Notes client: 1. The Basic client installation using Windows Installer 2. Eclipse component provisioning Windows Installer Eclipse provisioning Additional components Sametime components Symphony components Notes Basic client Notes Standard componentsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  4. 4. AusLUG2012 The client installation process (cont.)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  5. 5. AusLUG2012 InstallShield® customisations Windows Installer Eclipse provisioning Additional components • Change the default target directory Sametime components • Add a scripting file to the program directory Symphony components • Change shortcuts Notes Basic client Notes Standard componentsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  6. 6. AusLUG2012 Eclipse customisations Windows Installer Eclipse provisioning Additional components • Add the IBM QuickNote Demo plug- in Sametime components Symphony components • Replace Sametime 8.5.1 embedded with version 8.5.2 IFR1 Notes Basic client • Remove Symphony from installation package Notes Standard componentsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  7. 7. AusLUG2012 The Windows Installer process • Windows Installer package (MSI) is a relational database • Interlinked tables containing installation instructions, configuration settings, program logic, registry keys, etc. • Binaries are compressed into cabinet files (CAB) • Transforms allow for the customisation of installation instructionsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  8. 8. AusLUG2012 The InstallShield® Tuner for IBM Lotus Notes • Is used for the creation of transform files (MST) • Customises the Windows installer set-up (Windows solution only) • Gives you the control required for an enterprise wide Lotus Notes deployment • Is FREE as part of the Lotus Notes licenseMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  9. 9. AusLUG2012 Locate the InstallShield® Tuner on the Web • InstallShield® Tuner needs to be downloaded from IBM Passport Advantage • Just log-in and search for it’s part number (C84T5NA)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  10. 10. AusLUG2012 Download the InstallShield® Tuner • Select tick box next to the Install Shield Tuner product • Select I agree • Click on Download nowMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  11. 11. AusLUG2012 Setup the InstallShield® Tuner • Execute downloaded file, which will launch the installation wizard for the InstallShield® TunerMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  12. 12. AusLUG2012 Setup the InstallShield® Tuner (cont.) • Confirm your details and installation optionsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  13. 13. AusLUG2012 Setup the InstallShield® Tuner (cont.) • Choose complete installation and click NextMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  14. 14. AusLUG2012 Setup the InstallShield® Tuner (cont.) • Click Install and wait for the installation to complete.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  15. 15. AusLUG2012 Preparing the “development environment” • For the purpose of package customisation create three folders: - LN853Source - LN853Transform - Sametime852IFR1 (will be used later)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  16. 16. AusLUG2012 Unpacking the Notes installation package • Execute the Lotus Notes client setup • Select the second option (Unpack the files … and don’t remove), specify the path to your LN853Source folder and click NextMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  17. 17. AusLUG2012 Unpacking the Notes installation package (cont.) • This will extract the containing files from the package and launch setup.exeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  18. 18. AusLUG2012 Cancel Notes set-up • Cancel the setup at this point and confirm with Yes • We do not want to run an installation but apply or customisations insteadMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  19. 19. AusLUG2012 Downloading the Tuner configuration file • Install Shield® Tuner is using a configuration (ITW) file • Notes 8.5.3 package is missing that file • You can get the Download from The Lotus Notes Client Install and Setup Team Blog (http://tiny.cc/missingITW) or • IBM Fix Central (http://www.ibm.com/support/fixcentral)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  20. 20. AusLUG2012 Downloading from Fix Central • Leave default (Browse for fixes) and click ContinueMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  21. 21. AusLUG2012 Downloading from Fix Central (cont.) • Select the Notes 853 ITWFile interim fix and click Continue to download the file • Store file in the LN853Source directory created earlierMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  22. 22. AusLUG2012 Using the InstallShield® Tuner • Launch the InstallShield® Tuner from the Windows start menuMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  23. 23. AusLUG2012 Using the InstallShield® Tuner (cont.) • Confirm the path to the Tuner Configuration File (.itw) • This is the file we downloaded a few moments agoMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  24. 24. AusLUG2012 Creating transform file • We do want to create a new transform fileMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  25. 25. AusLUG2012 Creating transform file (cont.) • Confirm path to Lotus Notes 8.5.3.msi located in the LN853Source directory • Define name and path to your transformation file in the same directory • Select Response Transform and click CreateMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  26. 26. AusLUG2012 Running the installation simulation • You will see the usual Windows Installer dialogue • This is just a simulation to capture the transform response • Click through the options based on your preferencesMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  27. 27. AusLUG2012 Running the installation simulation (cont.) • Accept the License AgreementMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  28. 28. AusLUG2012 Running the installation simulation (cont.) • We want to remove IBM from the Program Files and Data path • This can only be changed when running the simulation on a ‘clean’ systemMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  29. 29. AusLUG2012 Running the installation simulation (cont.) • We do want to include the Composite Application Editor but not Install IBM Symphony or IBM ConnectionsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  30. 30. AusLUG2012 Running the installation simulation (cont.) • Finally we want to launch parts of Notes when the operating system startsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  31. 31. AusLUG2012 Running the installation simulation (cont.) • There is one more attempt to make you believe that this is going to be a real installation … • Until you get the success prompt belowMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  32. 32. AusLUG2012 Response transforms option Response transform simulation Ensure that the initial transform is also triggers a number of custom created on a ‘clean’ image IBM actions Ensure that the source and destination systems do have They add additional information similar specifications to the properties table of the MST Properties may be platform and/or user related (red)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  33. 33. AusLUG2012 Running the Prevalidation • Prevalidation ensures that you are aware of any issues that have not been caused by your customisationsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  34. 34. AusLUG2012 Running the Prevalidation (cont.) • Choose Full MSI Validation suite and All Internal Consistency Evaluators (ICEs) and start validationMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  35. 35. AusLUG2012 Running the Prevalidation (cont.) • Be prepared for a long list of Errors (68) and Warnings (156)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  36. 36. AusLUG2012 Customisation options • Take some time to look at the options available • There are some straight forward customisations like the Company name etc.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  37. 37. AusLUG2012 Amending the installation path • The installation directory needs to be customised in the Setup Properties as well • Open Setup Properties section • Click on the header of the value column to order by value • Look for the lines with the installation pathMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  38. 38. AusLUG2012 Amending the installation path (cont.) • Customise settings according to you intended target directory • Double click on the cell to edit values • At this point in time the DATADIR and REDIR_DATADIR are still located within the Notes Program directory even for multi user installationsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  39. 39. AusLUG2012 Building a multi-user package • If you want your package to always deploy as a multiuser set-up you can pre-define the package for that • While in the Setup Properties, find the ApplicationUsers propertyMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  40. 40. AusLUG2012 Building a multi-user package (cont.) • Double click the value and change it from OnlyCurrentUser to AllUsers • This will permanently change your customisation to do a multi user installationMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  41. 41. AusLUG2012 Removing shortcuts • Just click on a shortcut and hit delete to remove itMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  42. 42. AusLUG2012 Changing of shortcut targets • Customise the target of a shortcut to enhance user experience • In this example noteslaunch.vbs is launched instead of notes.exeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  43. 43. AusLUG2012 Start The Noteslaunch script • Prepopulates the user’s notes.ini and notes.cfg files for new users Is New no • Downloads the user’s ID file from a central server User? location yes • Launches Notes.exe once all files and settings are in place Create Notes.ini and • This allows for a zero touch Notes set-up Notes.cfg Retrieve ID file from Network Launch Notes.exeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  44. 44. AusLUG2012 Configuration set by Noteslaunch.vbs Notes.ini [Notes] Directory=C:UserscpettersAppDataLocalLotusNotesData KeyFileName=C:UserscpettersAppDataLocalLotusNotesDataCPetters.id MailFile=mailCPetters.nsf MailServer=CN=ServerName/O=Organisation ConfigFile=C:UserscpettersAppDataLocalLotusNotesDatanotes.cfg SharedDataDirectory=C:ProgramDataLotusNotesDataShared DisabledPorts=SPX,COM1,COM2,COM3,COM4,COM5,LAN0 TCPIP=TCP,0,15,0 Notes.cfg LAN0=NETBIOS,0,15,0 UserName=Christian Petters/OU/Organisation SPX=NWSPX,0,15,0 AdditionalServices=-1 COM1=XPC,1,15,0 IM.Server=STServer/Organisation * COM2=XPC,2,15,0 IM.Port=1533 * COM3=XPC,3,15,0 IM.ConnectWhen=0 * COM4=XPC,4,15,0 IM.Protocol=0 * COM5=XPC,5,15,0 PORTS=TCPIP * Sametime settings are only required for Location=Online Sametime basic set-up th th 29 & 30 March, Melbourne, Victoria,Meet.Share.Learn IM_NO_SETUP=1 Australia
  45. 45. AusLUG2012 Adding additional files to the package • Files and Folders section allows you to add files like noteslaunch.vbs or a customised bookmark.ntf or pernames.ntfMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  46. 46. AusLUG2012 Adding additional files to the package (cont.) • Just drag and drop the required files from the source to the destination view • Destination Notes directory is ProgramFilesFolderIBMLotusNotes … even though we customised that earlier • The final mapping to the target directory is performed at installation timeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  47. 47. AusLUG2012 Adding additional files to the package (cont.) • Note the component name of CST_COMPONENT • CST_COMPONENT is being used for each custom component added to the package • Components are numbered e.g. CST_COMPONENT1, CST_COMPONENT2, …Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  48. 48. AusLUG2012 Changing the component target • Ensures that dynamic folder mapping is working • CST_COMPONENT is currently mapped to NOTES • This equals to ProgramFilesFolderIBMLotusNotesMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  49. 49. AusLUG2012 Changing the component target directory • Change property to the Notes program directory (PROGDIR) • PROGDIR will be mapped at installation time depending on target pathMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  50. 50. AusLUG2012 Running a Postvalidation • We have applied all the changes we wanted • It is time to run a quick post validationMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  51. 51. AusLUG2012 Running a Postvalidation (cont.) • After the post validation is finished. Ensure that no additional errors have been introduced by our customisation • Note that some new notifications can be ignored as they are caused by IBMs installation logicMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  52. 52. AusLUG2012 Creating a transformed package • This step copies all necessary files to specified location • Set ‘Network location’ to the LN853Transform folder created earlier todayMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  53. 53. AusLUG2012 Creating a transformed package (cont.) • Click the Package button to create the packageMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  54. 54. AusLUG2012 Creating a transformed package (cont.) • This will copy all required files and folders from the Source to the Target directory • Additional files (like the Noteslaunch.vbs) are added as an additional CAB archiveMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  55. 55. AusLUG2012 Creating a transformed package (cont.) • Once completed you should see the following resultMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  56. 56. AusLUG2012 Eclipse customisations Windows Installer Eclipse provisioning Additional components • Add the IBM QuickNote Demo plug- in Sametime components • Replace Sametime 8.5.1 embedded Symphony components with version 8.5.2 IFR1 • Remove Symphony from installation Notes Basic client package Notes Standard componentsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  57. 57. AusLUG2012 Customising Eclipse features • Eclipse provisioning is initiated from Windows Installer • Customisation is done outside of Install Shield® Tuner • Installation manifest (Install.xml) contains instructions for the provisioning of features and is located in deploy directory of the Notes package • UpdateSite.zip referenced by Install.xml can be found in the package rootMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  58. 58. AusLUG2012 Customising Eclipse features (cont.) • The Installation Manifest on the example of the Roaming Service …Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  59. 59. AusLUG2012 Including Sametime 8.5.2 IFR1 • A number of options are available to upgrade to Sametime 8.5.2 IFR1 during Lotus Notes 8.5.3 deployment 1. Chaining the Notes 8.5.3 and Sametime 8.5.2 IFR1 together - more details on http://tiny.cc/ChainInstall 2. Customise installation manifest (install.xml) to include ST ST 8.5.2 IFR1 - Consolidate Notes and Sametime upgrade sites or - Provision Sametime from additional update site - We will discuss this option todayMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  60. 60. AusLUG2012 Extracting Update Site Manager • Update Site Manager is provided as part of the Notes 8.5.3 package • UpdateSiteMgr.exe can be found in the NotesCustomizationKit_1_0.zip, which is located in the Utility directory • Open the zip file and extract the UpdateSiteMgr.exe to the LN853Transform directoryMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  61. 61. AusLUG2012 Getting a list of components • Open a command prompt • Run UpdatesiteMgr.exe -L to get a list of componentsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  62. 62. AusLUG2012 Removing Sametime 8.5.1 from package • Use UpdatesiteMgr -r Sametime to remove Sametime 8.5.1 component • Install.xml and UpdateSite.zip will be backed up as Install.xml.bak and UpdateSite.zip.bakMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  63. 63. AusLUG2012 Removing Sametime 8.5.1 (cont.) • The 8.5.3 Update Site Manager has a bug that leaves a few Sametime features still listed in the install.xml • Open install.xml in a text editor to remove the remaining features • Save and close fileMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  64. 64. AusLUG2012 Downloading Sametime 8.5.2 IFR1 add-on • Download Sametime 8.5.2 IFR1 from Passport Advantage (CI3YGML) • Find sametime.embedded.addon.win32_20111107-1901.zip in sametime.embeddedwindows directory • Extract content to Sametime852IFR1 folderMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  65. 65. AusLUG2012 Preparing Sametime 8.5.2 IFR1 • The Update Site Manager only supports installation packages that have an updateSite.zip and an install.xml file • The Sametime 8.5.2 IFR1 package comes with an install.addon.xml and sametime.embedded.addon.win32.20111107-1901.zip file In Sametime852IFR1 folder rename to In Sametime852IFR1Deploy folder rename toMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  66. 66. AusLUG2012 Preparing Sametime 8.5.2 IFR1 (cont.) • There should now be 2 directories: • LN853Transform directory - includes UpdateSiteMgr.exe - Sametime 8.5.1 references have been removed from updateSite.zip and install.xml • Sametime852IFR1 directory - renamed update site to updateSite.zip - renamed installation manifest to install.xmlMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  67. 67. AusLUG2012 Adding Sametime 8.5.2 IFR1 to update site • Run UpdateSiteMgr.exe to merge the features into one manifest and update site - UpdateSiteMgr <Source> <Destination> - Source being the path to the Sametime folder - Destination the path to the Notes folder • No news is good news – merging doesn’t report successMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  68. 68. AusLUG2012 Confirming results • The Lotus Notes installation manifest is now extended to include Sametime 8.5.2 IFR1 components • Individual components have been copied to updateSite.zip in the installer rootMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  69. 69. AusLUG2012 Adding the IBM QuickNote Demo plug-in • Using IBM’s QuickNote toolbar extensions demo • We will manually add the component to the installation manifest (install.xml) • Update site will be provided as a separate file (AusLUG.zip) • This is demonstrating an alternative way to add components to the installation manifestMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  70. 70. AusLUG2012 A few words about trust • All features and plug-ins need to be signed by a trusted certificate updateSite.zip RCP directory X • Custom components have to be signed • Signing certificate has to be added to the installation trust store • Java trust store is located in the Deploy folder of the installation packageMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  71. 71. AusLUG2012 Creating a signer certificate • Signer certificate and key store can be created using keytool.exe, which is part of the Notes JVM • I prefer to work in UIs, hence use Portecle (http://portecle.sourceforge.net) • Launch Portecle application form above website or download the Java appMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  72. 72. AusLUG2012 Creating a new keystore • CTRL+N or File, New Keystore creates a new key store • For the purpose of signing our jar files we want to use JCEKS format (Sun’s Java Cryptography Extension Key Store)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  73. 73. AusLUG2012 Generating a key pair • Create a new key pair using Tools, Generate Key Pair • Self signed certificates are good enough for your own deploymentsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  74. 74. AusLUG2012 Generating a key pair (cont.) • Confirm default Algorithm and Key SizeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  75. 75. AusLUG2012 Defining certificate details • Populate at least the common name • Ensure validity matches your requirements or use time stamped certificatesMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  76. 76. AusLUG2012 Defining key label and password • Provide meaningful label for your certificate • Enter a new Password for the keyMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  77. 77. AusLUG2012 Success • Our key pair has been created successfully • Next steps are to - Save the key store to disk for signing - Export the key for import into package trust storeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  78. 78. AusLUG2012 Saving key store to disk • Select File, Save Keystore As … • Define a password to protect the key storeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  79. 79. AusLUG2012 Saving key store to disk (cont.) • Define path and file name for the key store file and save • This key store with the containing codesigner certificate will later be used to sign the JAR files in our AusLUG update siteMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  80. 80. AusLUG2012 Exporting the public key • To import the certificate to the installation trust store • Right click on our certificate and choose ExportMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  81. 81. AusLUG2012 Exporting the public key (cont.) • Confirm Export Type and Export format • Save certificate on diskMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  82. 82. AusLUG2012 Opening the installation trust store • Open the installation trust store and import the codesigner certificate • Select File, Open Keystore File … and select .keystore.JCEKS.IBM_J9_VM.install from your LN853Transform directoryMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  83. 83. AusLUG2012 Opening the installation trust store • Enter the keystore password, which is ‘changeit’Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  84. 84. AusLUG2012 Importing the codesigner certificate • Select Tools, Import Trusted Certificate and choose the codesigner.cer file created beforeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  85. 85. AusLUG2012 Importing the codesigner certificate (cont.) • Since we are working with a self signed certificate we receive an invalid trusted root warningMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  86. 86. AusLUG2012 Importing the codesigner certificate (cont.) • Confirm certificate details with OK and accept the certificate as trusted • Enter an alias for the new certificate and click OKMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  87. 87. AusLUG2012 Success • Your codesigner certificate has now been added to the installation trust storeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  88. 88. AusLUG2012 Save and close installation trust store • Select File, Save Keystore to save the changes to disk and close Portecle applicationMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  89. 89. AusLUG2012 Sign plug-ins and features using jarsigner.exe • Jarsigner.exe is part of the Java Development Kit (JDK), which can be downloaded from www.oracle.com (Downloads) • Below instructions assume that the Update Site has already been exported from Eclipse • Sign jar file using: jarsigner -keystore StorePath -storetype jceks JarPath Alias • Use -verbose option to output progress • Use -signedjar option to create a copy of the signed jar • Repeat step for all plugins and features in the update siteMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  90. 90. AusLUG2012 Create AusLUG update site • Select all items of the update site and combine it to a ZIP file named AusLUG.zip • Copy AusLUG.zip to LN853Transform directoryMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  91. 91. AusLUG2012 Add feature to the installation manifest • Edit the LN853TransformDeployinstall.xml installation manifest • Add the following lines to the end of the install.xml, after the last </installfeature> and before </install> • Save and close install.xmlMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  92. 92. AusLUG2012 Customise advanced RCP settings • Customise Java heap size settings to improve client performance • Find jvm.properties file in Deploy directory of the installation package • Xmx defines the maximum size of the JVM heap • Xms sets the initial size of the JVM heap • Increase Xmx to 1024m, but no more then 50% of total RAM • Increase Xms to 256m, but not larger then Xmx • Save and close fileMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  93. 93. AusLUG2012 Define plug-in preferences • Edit plugin_customization.ini in Deploy folder to set Eclipse preferences to ensure they are effective immediately at first startupMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  94. 94. AusLUG2012 Define plug-in preferences (cont.) • To hide the Getting Started screen add com.ibm.rcp.jfaceex/overrideAutoStart=com.ibm.rcp.gettingstarted. GettingstartPerspectiveMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  95. 95. AusLUG2012 Define plug-in preferences (cont.) • Set default dictionary to en-GB: com.ibm.collaboration.realtime.spellchecker/ dictionaryLanguage=en- GB • To hide the Sametime Meeting shelf add com.ibm.rtc.meetings.shelf/hideUI=true • To disable Sametime location prompt add com.ibm.collaboration.realtime.location/showProfWindow=true • Save and close fileMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  96. 96. AusLUG2012 Install package using msiexec • We are using a batch command and Microsoft’s Windows Installer to install our package • Installation options are displayed when you run msiexec without any optionsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  97. 97. AusLUG2012 The msiexec syntax • In our case we are using msiexec /i “Lotus Notes 8.5.3.msi” TRANSFORMS=“Lotus Notes 8.5.3.mst” /qb- • This will: - Install an application package with the name of Lotus Notes 8.5.3.msi (/i) - Apply our transformation file during installation (TRANSFORMS=) - Display a basic user interface during installation with no modal dialogue (/qb-)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  98. 98. AusLUG2012 Create install.bat • Open you Windows Explorer and browse to your transform directory (LN853Transform) • Right click at the folder and create a new Text Document • Rename it to install.bat • Edit the documentMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  99. 99. AusLUG2012 Working with relative paths • The %~dp0 macro allows use to determine the path of install.bat • Important for deployment using SmartUpgradeMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  100. 100. AusLUG2012 Performance considerations • You can never change a first impression • The installation is the first thing users are going to see from the new version of Lotus Notes • The faster you get the package installed on the user’s machine the more likely (s)he is going to recommend the update to others or to accept the changesMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  101. 101. AusLUG2012 Performance considerations • Remove backup files from package - install.xml.bak in Deploy directory - updateSite.zip.bak in installation root • Remove language dependent mst and ini files - 0xnnnn.ini files - nnnn.mst files • Shrink size of the update site - run UpdateSiteMgr.exe –r Symphony if you don’t install it - run UpdateSiteMgr.exe –r Activities if you don’t install itMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  102. 102. AusLUG2012 Testing your package • Building a deployment package is a development job • You need to test, test and test once more to ensure that your customisations apply in a way you intended them to apply • Individual components can be tested independent from each other • Run a full test on a number of different machines • Run a pilot with a subset of usersMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  103. 103. AusLUG2012 Deployment options • There are various ways to deploy packages • Every organisation has their own preference and tools (e.g. Symantec Altiris, Novell ZCM, Microsoft SMS, Log-in scripts, etc.) • If you haven’t got any deployment solution in place already or even if you do I recommend to start looking at the SmartUpgrade functionality • Unfortunately there are only seconds left for this session, otherwise I could tell you a bit or two about SmartUpgrade (starting with version 8 it is working pretty well)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  104. 104. AusLUG2012 Reference links: • Windows Installer reference http://msdn.microsoft.com/en- us/library/windows/desktop/aa372860%28v=vs.85%29.aspx • Puttin’ on the Bits Blog, The Lotus Notes Client Install and Setup team blog http://www-10.lotus.com/ldd/installblog.nsf • The New Domino Admin (Marc Champoux), My first source of information when I started to customise Notes installation packages http://www.thenewdominoadmin.com/blog/?tag=install-shield-tuner • Andy Donaldson’s installation instruction, which apparently inspired Marc (TNDA) in first instance http://blog.macian.net • Customizing the Notes install kit documentation http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp?topic=%2Fcom.ibm.h elp.domino.admin85.doc%2FH_CUSTOMIZING_NOTES_8_INSTALL_FOR_ISV_OR_THIRD_ PARTY_ECLIPSE_FEATURES_9460_OVER.htmlMeet.Share.Learn th th 29 & 30 March, Melbourne, Victoria, Australia
  105. 105. AusLUG2012 Questions ?Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  106. 106. AusLUG2012 Thank you for listening! Contact me at Email: info@cubetoon.com Web: www.cubetoon.com Twitter: cubetoon Linkedin: nz.linkedin.com/in/cubetoonMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
  107. 107. AusLUG2012 For copy and paste: SET THISPATH=%~dp0 msiexec /i "%THISPATH%Lotus Notes 8.5.3.msi" TRANSFORMS="%THISPATH%Lotus Notes 8.5.3.mst" /qb- jarsigner -keystore C:ChristianAusLUGjceksstoreAusLUG.jceks -storetype jceks -verbose C:ChristianAusLUGWorkspaceAusLUG_UpdateSitefeaturescom.cubetoon.AusLUG_Quick Note_Demo_1.0.0.0.jar codesigner <installfeature default=“true" description="AusLUG Demo Feature" id="Quicknote" name="Quicknote" required=“true" show="true" version="1.0.0.0"> <requirements> <feature download-size="28" id="com.cubetoon.AusLUG_QuickNote_Demo" match="perfect" shared="true" size="28" url="jar:${installer.root}/AusLUG.zip!/" version="1.0.0.0"/> </requirements> </installfeature>Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia

×