NI Package Manager (NIPM)

cancel
Showing results for 
Search instead for 
Did you mean: 

How to use NI Package Builder to create a customized 2019 NI Software installer for NI software deployment

Solved!
Go to solution

I would like to use NI Package Builder to create a customized 2019 NI Software installer that I can use to deploy a specific NI software lineup to number of PCs.  I want the options to be exactly the ones I would pick in the normal suited installer wizard.  I don't want to manually choose all of the options everytime.

 

The article Customize and Automate Installation of a Suited Installer leads to Automating an Online or Offline Installer which suggests a route of hand picking .nipkg's. Converting what is a clear option in the installer wizard (i.e. "NI-IMAQdx") to what feed this corresponds to (is it "ni-imaqdx_19.0.0.49152-0+f0_windows_all.nipkg", is it " ni-imaqdx-labview-2019-support_19.0.0.49152-0+f0_windows_x64.nipkg", is it "ni-imaqdx-development-support_19.0.0.49152-0+f0_windows_all.nipkg" is it,....).  This conversion looks like a nightmare.

 

The article Use NI Package Builder and NI Volume License Manager to Deploy NI Software is, on the other hand, very helpful.  It shows how to use NI Package Builder to automatically select the options on the first page (i.e. "NI-IMAQdx", etc.) and it will choose the correct .nipkg's for me.  This is what I'm looking for.  The only thing, is that it does not allow me to configure the second page "Additional items you may want to install:".  Here I require certain items to be deselected, for example the "NI-IMAQdx High-Performance GigE Vision Driver" which will overwrite my network card driver. I can't find a way to configure this in NI Package Builder.

 

How does one configure the "Additional items you may want to install"? 

 

My current "nuclear" workaround is to:

  1. Create a virtual machine
  2. Install the pieces I need
  3. Use NI Package Builder and choose the "Add packages" from the "Installers and Repositories" and select all the "Installed Packages".
  4. Build Package.

..but that isn't very elegant or maintainable.

 

Thanks!

0 Kudos
Message 1 of 6
(4,203 Views)

Short answer

My recommendation is to not use the "include recommended and suggested packages" option on packages you add to an NI Package Builder built installer, and control what is always or optionally installed at the top-level only.

 

Long answer

When you configure a package installer with NI Package Builder, you can add "top-level" packages to the installer. For each top-level item you can specify its installation behavior to be always, optionally checked, optionally unchecked, which controls the first dialog that an installer can potentially prompt a user.screenshot1.png

If any of the top-level items recommends or suggests other packages and those packages are included in the installer, the installer gives the user a second prompt with items to optionally install. You can configure whether to include the recommends/suggests for any top-level item by enabling the "include recommended and suggested packages" option. You cannot control what the top-level item already recommends and suggests.screenshot.png

 

 

Scott Richardson
Message 2 of 6
(4,153 Views)

"My recommendation is to... control what is always or optionally installed at the top-level only."

Unfortunately, that doesn't solve my problem.  For example, if I install IMAQdx, there are "recommended packages" I need (like LabVIEW support), and "recommended packages" packages I need to exclude (like the GIGE driver). 

 

"You cannot control what the top-level item already recommends and suggests."

Is that something that NI would add?  The software suite's Install.exe must already have the code to figure this out.  The Install.exe looks a lot like the "Installing New Package Installer" window in NIPB.  I wouldn't surprised if they are the same, and hopefully it wouldn't be much effort bringing in the full functionality of Install.exe to the NIPB.  Controlling what is "recommended" would get us up to the capability of the old "spec file" format which would be great to have.

 

 

0 Kudos
Message 3 of 6
(4,104 Views)

My recommendation based on the current capabilities exposed from NIPB would require you to determine which recommend packages you want to include and add them as top-level items that are configured to be optionally installed. I agree that this does not solve your issue, and that it is only an alternative to mitigate your issue.

 

Your ask would require NIPB to somehow analyze the installer configuration and expose a list of recommends/suggests for each top-level package or for the whole installer itself, and the user would select what to include. Could you add this to the NIPM/NIPB Idea Exchange to poll for interest?

Scott Richardson
0 Kudos
Message 4 of 6
(4,097 Views)

"require you to determine which recommend packages you want to include..."

There are 2,284 .nipkg files in the NI Software Platform SPR 2019\pool folder.  How do I determine which are the "recommend" package files that I want?

0 Kudos
Message 5 of 6
(4,071 Views)
Solution
Accepted by topic author D*

Sorry, I was incorrect in my last post to you. NI Package Builder limits you in that the Add Package dialog only allowing you to control the top-level items in an installer from disk and the Boolean option to either include recommended/suggested or none is not granular enough, so the only way to select specific optional top-level items is to choose from installed packages. So my previous recommendation is invalid and to selectively choose recommended packages you are back to still needing to choose some or all your items from installed products.

 

I have added this need to our backlog so that it can get researched and eventually prioritized. Thank you for let us know about this limitation.

Scott Richardson
Message 6 of 6
(4,042 Views)