08-23-2019 08:31 AM
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:
..but that isn't very elegant or maintainable.
Thanks!
Solved! Go to Solution.
08-23-2019 11:50 AM
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.
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.
08-27-2019 08:10 AM
"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.
08-27-2019 09:12 AM
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?
08-29-2019 07:48 AM
"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?
08-30-2019 12:45 PM
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.