NI Package Management Idea Exchange

Community Browser
cancel
Showing results for 
Search instead for 
Did you mean: 

NI Package Management Idea Exchange


Post your ideas that are related to NI package management. This includes NI Package Manager, NI Package Builder, creating NI packages (.nipkg), distributing NI packages (.nipkg), managing feeds, and more.

Post an idea

We desperately need the ability to install the same package to multiple versions of LabVIEW. Specifically, we need support for symbolic paths as a destination (user.lib, vi.lib, instr.lib, etc). 

Basically duplicate the VI Package Manager's ability to install a package to multiple versions of LabVIEW. I think the VI Package Manager work flow should be duplicated as well.

 

FYI: 

https://labviewwiki.org/wiki/Package_Manager_Comparison

It would be super nice if NI would offer all their software through winget from Microsoft.

 

https://docs.microsoft.com/en-us/windows/package-manager/winget/

 

I understand that NI invested a lot in the NI Package Manager, so this idea could still simplify our lives even if NI would just offer to install the NI Package Manager through winget.

 

Currently, the flow is to:

  • Go to ni.com
  • Login (if not already logged in)
  • Go to the download page
  • Search for NI Package Manager
  • Download
  • Install

 

Using winget, a command like:

 

"winget install NI.PackgeManager"

 

would be the only thing to do to to install it.

 

Here is what's available currently through winget: https://winget.run/

 

If you haven't seen it, GPackage (https://gpackage.io) manager is a new package manager that has a tremendous amount of promise. It offers the ability to install different versions of the same package simultaneously to a version of LabVIEW. This allows the creation of "sandboxes" where on a per project basis I can tightly control which version of software I'm using. Another way of saying it, I can prevent the upgrading one version of a library from having unintended effects across different projects. 

 

I would love to see NI package manager \ LabVIEW support a per project "virtual environment". I could see this being accomplished by creating a per project user.lib and instr.lib. But that's just one idea...

 

I highly recommend NI examine, in detail, G Package manager and incorporate its per project capabilities into LabVIEW and NI Package manager. The ability to install multiple versions of the same package on a per project basis solves quite a few problems. That having been said we would also need the ability to install one package globally and resolve conflicts between the per project and global versions of a library.

 

FYI: please be aware of the labviewwiki.org article comparing the three different package managers:

https://labviewwiki.org/wiki/Package_Manager_Comparison

It would appear that NI Package Manager requires elevated privileges via User Account Control to even run.

Whilst clearly for some actions this will be required for some install/uninstall actions and e.g. changing registry entries, it isn't clear why this is needed simply to open Package Manager to view what is installed and for other actions which may only make JKI VI Package Manager type changes to VIs within vi.lib etc.

 

If the medium/long term plan is for NI Package Manager to replace JKI VI Package Manager then it needs to support the ability for developers to easily add/remove VI packages without requiring IT administrator assistance each time.

It would be much better if the application was structured such that elevation is only required when this is absolutely necessary for the actions being undertaken at that moment and/or the user is able to explicitly run the application with elevated privileges where these will be required.

I did try to post this in Additional NI Software Idea Exchange and that wasn't possible but please move this should there be somewhere more appropriate.

Let's say you have a really busy day and you need to test an application, but you need to install the LabVIEW or any other application like Test stand, for example, you go to your computer and use the Package Manager to install it. Then you have to go to another office, meanwhile, you let Package Manager take care of the installation that takes around 4-5 hours.

 

When you are back ready to run that test you found that there is an error saying that you have not stored available to install the software, and you wonder why NIPM did not check that requirement? There are literally thousands of software that have always performed that check before the installation some of then show a warning or they simply do not allow to start the installation. We really need this on NIPM.

 

Please help me with these guys.

When you have an update available for a package, you cannot access the details of the package. So you don't have access to the detils of the update. You must manually find the corresponding package in the product view and select the version to install to have access to the details.

 

At least a way to access to the product details page from the available update page.

I've been informed by NI support that current versions of LabVIEW can only be installed silently by installing Package Manager first and then using batch scripts for installation. Previous versions of labview supported silent installation using typical msiexec flags. The current tool, INSTALL.EXE only supports a passive switch which requires an interactive gui for it to successfully run an installer with application options other that the Package Manager. This is far from an ideal situation for mass deployment to computer labs and it ends up causing a waste of time and effort. Please add silent installation options to install.exe and add the ability for INSTALL.EXE to show installation parameters when it is passed some sort of common help parameter (such as --help, -h, -? ). 

Hello,

 

I want to distribute my packages with a specific feed. This can be very usefull to distribute application to customer and push updates. But if we use a specific feed, it's not straightforward. We can use the nipkg CLI command to add/remove the feed but it's not so easy to deploy to customer. It's often more easy to request IT to let NI Package Manager to have Admin right than to allow bat file for example.

 

So my idea is to give ability to install a package that also register the feed. After install the package, it can have access to updates more easily. If he uninstall the package it can interresting to unregister the feed. In this way, it can be also easy to update the feed by pushing an update of the package.

 

Note : I tried to do it with pre and post install command without success.

 

Best regards.

 

 

Allow uninstall packages where pre/post uninstall actions fail. Right now, if the package has been created with an error in the pre / post uninstall action, then the package can't be uninstalled - the user is stuck with this package and can't even upgrade it.

NI Package Manager currently only allows you to upgrade to newer versions of a package, not downgrade to a previous one, regardless of whether it would be compatible with other packages or not. For users that need to support applications built in an earlier version of the development environment,  the ability to revert to a previous combination (to ensure compatibility/minimum differences when doing a change for example), would simplify that process a lot. -Instead of having to make real or virtual backups of these continuously. Come to think of it it would be really really nice if the NI Package Manager alternatively could allow you to manage such development-environment snapshots for you(!).

 

A  related solution/idea would be to allow users to override the uninstalls currently forced by NIPM when uninstalling a package these depend on.

 

-In my case I would sometime want to be able to do this just to be able to then install the same (if a repair fails anyway) or a previous version of the package anyway. NIPM can warn me that this will render some other package useless due to a dependency to the package I am uninstalling - but let me choose to do so anyway (because I know that it will be a temporary issue as I will fix that with a new install afterwards).


When I go to download a new piece of NI software, there is an online installer which:

1) Installs the latest version of NIPM

2) Registers any needed feeds

3) Presents an installer dialog to user

4) Installs product

5) exits gracefully.

 

And is <10 KB in size.

 

It would be incredibly useful to be able to create such an installer through on of the available builder interfaces that points to (for instance) network feeds, or a partner feed, or something like that.

 

There are currently some "work arounds" but they all are rather complex, clunky, and require a level of BAT file execution that's not really easy.

(I could probably do this easier through LV coding, but if the LVRuntime isn't installed, that doesn't really help me :-))

When adding a Package Installer, NI Package Builder is currently limited to only configuring the options on the top level, first page of a suited installer (i.e. "NI-IMAQdx", etc.), but not configuration of the second page "Additional items you may want to install:", where it lists "recommended" items.  This means one cannot create a fully customized NI Software suited installation (like was possible in the past with the .spec file).

 

NIPB needs to analyze the installer configuration and expose a list of recommends/suggests for each top-level package or for the whole installer itself, just like Install.exe does.

What: installing a package on a newly installed machine where only NIPM has been installed. Dependencies to e.g. DAQmx Runtime and Labview Runtime

The problem: the installation will fail as NI Package Manager does not know the feed locations for the dependent packages. If these packages had been installed previous and uninstalled, then the feeds would be known and the installation could pass.

Proposed solution: Whenever a package requires NI products as dependencies, the Package Manager should automatically search / add the feeds from NI.com and install them

Please add dialog box in which you can choose where to install your software.

image.png

the package manager seemed like cannot even populate nor remove installed packages without internet connection. is it a bug? as mentioned from the other ideas posted previously, not all operation computers are granted internet access. please look into it. thanks

 

just a suggestion, installer packages should be given the option to able to be installed/removed by itself, with the PM being a complementing tool, especially for inter-version compatibility during this transition period.

Hello

 

In addition to the idea mentioned in the following post, 

https://forums.ni.com/t5/Additional-NI-Software-Idea/NIPM-queued-amp-scheduled-download-amp-install/idc-p/3963380#M541

would like to propose that the NI offline package to be installed entirely in offline mode, rather than trying to connect and fail, whenever a connection seemed present. 

 

and on top of that, offline installers to be able to be integrated into a local repository in our own network, and packaged distributions can be directed to them, as not all operation PCs are given access to the internet. For the time being, let the browsers handle auto-resuming downloads. 

There are situations packages may have conflicts with each other. If we can specify the conflicted packages in the package build spec, It will be very helpful.

 

This is an existing feature on JKI's VI Package Manager. It uninstalls conflicted package with the new install.

Our IT department has now opened up using NI Package Manager to install LabVIEW, and is leaving it to us to do these installs, reducing their role largely to managing licensing. This even includes installing the IDE for our coders.

 

I can't complain that they've opened this up, except that there are a lot of choices to make, not just in what main elements to install, but in option selections in prompts presented by the installers. it would be nice if we could have NIPM build up a script of all the elements we're installing (IDE, extras, drivers) and all the selections we make during this process. It should then save the script when the NIPM session ends, and allow appending an existing script should a script be built up over multiple NIPM sessions that might be interrupted by a restart required by one of the installs.

 

Ideally these scripts, when run, would either bypass the restarts normally requested after some installs until the end of the complete process, or would auto-continue after restarts that couldn't be skipped. Also important would be having it gather together all license/agreement requirements into a single prompt at the start of the script so that they can all be accepted at the start of the process rather than being prompted as each element install starts, or, better yet, have the script do a "silent" install with all licensing considered to be accepted and no prompts appearing.

 

Additionally, these scripts should then be editable so that if users discover they need additional drivers or libraries, different versions, or don't need some elements, they can be added to, revised, or removed from the script. It would also be great if we could make scripts that included uninstallations in the script, so scripts to upgrade from one revision to another could be built.

 

My vision for these scripts is a simple collection of scripts that would let us quickly get any user or test system up and running with everything needed, whether it's a new employee or an existing user or system getting a computer refresh, with minimal hand-holding of the process and no (or minimal) mistakes. My thinking is we could have a small handful of installer scripts that would fit the needs of 90%+ of our different systems that all use LabVIEW, leaving one-off systems to need only a few NIPM runs to complete their setups.

 

Thanks,

Erik

displaying the package size in the feed list can give user an idea when to schedule installations/updates based on their network traffic trends, like in Update Service