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

With the NI Package Manager we can now create packages for a variety of purposes (libraries, tools, APIs, stand-alone applications, plugins...).

 

However, there's currently a limitation with the dependencies. For example, if you want to create a .nipkg file that relies on the LabVIEW Runtime Engine that successfully deploys to any PC, you have 2 choices:

- manually install the LV RTE from NIPM on the deployment machine

- add the LV RTE (and your app) to a custom feed, and manually add that feed to NIPM on the deployment machine.

 

In any case, there's a manual operation for a user. This is because NIPM does not automatically search for NI feeds when installing a custom package (it only looks into already installed feeds).

 

There should be (at least) an option like this in NIPM (ideally it should be the default behavior)!

NIPM Options.png

 

This way, NIPM would behave pretty much like any other package manager (think Linux or mobile platforms)...

 

Useful links:

https://forums.ni.com/t5/SystemLink/Use-the-NI-feeds-to-find-package-dependencies/td-p/3811361

https://forums.ni.com/t5/NI-Package-Management/NI-Package-Management-Portal-READ-THIS-FIRST/ta-p/3805952

 

--Eric

We should be able to filter the Packages displayed by Feed. This would allow users to focus on their internal feeds and find packages quicker. Particularly when basic LabVIEW\TestStand shows 90+ packages (300+ with hidden shown), the drowns out the internal packages. This would allow for more categorization than the Maintainer and limited Categories (improvement idea) afford us currently.

2019-07-25_11h45_46.png

GitHub Releases is a place where we can host downloadable packages for our projects.

 

NI is already using it:

https://github.com/ni/niveristand-scan-engine-ethercat-custom-device/releases/

 

Each package is given a nice clear URL like
https://github.com/ni/niveristand-scan-engine-ethercat-custom-device/releases/download/v19.0.0/ni-scan-engine-veristand-2018-support_19.0.0.11_windows_all.nipkg

 

How nice it would be if my NIPM feed could point to GitHub-hosted packages! This way, I don't need to maintain my own file server. I created a custom feed to try it out; this is what my Packages.gz contains:

 

Architecture: windows_all
CompatibilityVersion: 190006
Description: Provides support for the NI Scan Engine and EtherCAT custom device for NI VeriStand 2018.
DisplayName: NI Scan Engine and EtherCAT for VeriStand 2018
DisplayVersion: 19.0.0
Eula: eula-ni-standard
Filename: https://github.com/ni/niveristand-scan-engine-ethercat-custom-device/releases/download/v19.0.0/ni-scan-engine-veristand-2018-support_19.0.0.11_windows_all.nipkg
Homepage: http://www.ni.com
LanguageSupport: en
MD5sum: be9d301d98465ac3157fbb8b6cee370b
Maintainer: National Instruments <support@ni.com>
Package: ni-scan-engine-veristand-2018-support
Plugin: file
Priority: standard
Section: Add-Ons
Size: 38198876
UserVisible: yes
Version: 19.0.0.11

 

 

Alas, although NIPM accepted the feed, it did not allow the package to be downloaded ("Redirection to another URL is forbidden"):

 

nipkg-redirection-forbidden.png

 

It turns out that the nice URL above actually redirects to an Amazon cloud storage location, and the final URL is like

https://github-production-release-asset-2e65be.s3.amazonaws.com/150638172/d0544200-8d25-11e9-9a52-585a4992b432?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190701%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190701T040716Z&X-Amz-Expires=300&X-Amz-Signature=c830c14d99beb20df55c4fbabb756d3e179953224b70c1fc7cc021cf74bca9f0&X-Amz-SignedHeaders=host&actor_id=2548865&response-content-disposition=attachment%3B%20filename%3Dni-scan-engine-veristand-2018-support_19.0.0.11_windows_all.nipkg&response-content-type=application%2Foctet-stream

 

Could the restriction on redirections be lifted somehow? Perhaps there could be an optional property in the feed to specify that a particular Filename is allowed to redirect elsewhere. Perhaps the feed creator can nominate one or more "whitelisted" domains for a particular Filename's redirection.

 

(originally posted in the NIPM forum)

Ability to request to be (automatically) notified via email of patches and updates to a particular software or driver package.  NI Package Manager will only give me updates if I am online and for software I have installed.

 

 

This *may* be a niche request, I think a few people may find this useful...

 

Basically, I would like the "Browse Products" section of the NI Package Manager, but with the ability to run the application from that same window and allow it to display MY built applications. I essentially want a singular place to easily manage and navigate the stand-alone VIs I have deployed onto a machine that my students can access. Oh! And allow non-admin users to access this. 

What I envision is a package manager-like program (I'll refer to it as the Application Manager) where an end user can subscribe to feeds of packages (as is currently the case in NIPM). When this Application Manager is opened, it allows you to 1) view the programs already installed on your machine via this feed and provides a link OPEN this file (or just go to the folder where it is stored) on your PC, 2) install programs from the feed(s) you subscribe to and 3) make any updates to programs from the feed that have an update.

For example, a student opens up this Application Manager that has been subscribed to the "Mech Engineering" feed, which contains the package for temperature, voltage and distance sensing VIs. The "browse products" window displays these three VIs, and the user can open each of these VIs from this window. If the Temperature program has an update, some indicator will show that, and they can install the update and then open the updated version.

can NIPM separate the download and install as 2 separate processes? for instance, download (or queued for download, with scheduled to avoid congestion) into local storage, and install (or scheduled for install, normally after work hours once download is completed) from storage once download is finished. and while at it, allow a local PC to be the repository (that can be set to automatically update itself) and all deployment package can be pointed to download from that storage instead. 

 

an auto-resuming download manager would be nice too...

 

I am currently facing difficulties upgrading/downloading LV2019 using NIPM and have to break down the 'steak' into 'flakes' due to slow and unstable connection, because the NIPM restarted every time it encounters a problem.