From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

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

Hi,

 

I'm facing almost the same problem as mentionned in this thread of the Forum : NIPB: Custom location for ProcessingStage folder - NI Community

 

I'm working with TestStand Framework. When building sequences for specific projects, we have a dedicated repo and we build a package to deploy that project on the target PC. The source of the project and the PBS file are in the same folder hierarchie to simplify Source Code Control.

 

By creating the ProcessingStage folder in the folder of the pbs you have a copy of your TestStand sequences and code modules with a risk of that you have in the same based folder the sources and the temporary files generated by build in the same location. When developing you have a risk to point on the wrong file when teststand is searchning for a file based on search directories.

 

If we can't change the processing stage folder destination (information is already present in the xml of the PBS file) can we imagine to add at least an option to delete the Processing stage folder after build.

 

Without ability to change this destination, we have to manage folder to exclude from SCC for temporary files that serve nothing after building the package.

 

Best regards

When you create a solution with Ni Package Builder, you have the ability to create a Local Repository for a feed.

Everytime you build it it replace all.

 

For me, we missed a functionnality to update a feed. A feed is able to handle multiple version of a package, if you replace all, you lost the history.

Without this functionnality, you cannot mix sources of the package for the feed. In my case, I have a feed that contains package build with TS deployment tools and packages build with NI Package Builder. To include both packages, I have to build my own tool. If NI Pacakge builder was able to update existing feed, I can build all the packages of my solution and push it to the feed in one way.

 

Just hoping that i will have feedback !!!!

Inside NI Package Builder, you can define different packages for a solution.

Because you have a lot of option to configure and many are more just for information, it can be easier to be able to copy an already existing package than start from 0 for each package.

 

I don't think it cost a lot because .pbs are XML based. I don't want to build my one tool and modify the xml to be able to do that.

I ran into an issue where I needed cRIO driver set 19.6 for an older target, I only had 19.1 installed and a whole bunch of newer sets. 

The should be an option to install driver sets (for installation to a target) regardless if newer sets are installed. Not every customer uses the latest and greatest cRIOs.

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

image.png

I am building a custom offline installer for LabVIEW and Teststand and share it with people in my organization. I created a single installer which included both 32-bit and 64-bit LabVIEW versions and few add-ons that are required for the tools that we developed. The problem I see is if the user selects one version of LabVIEW, the add-ons for that bitness alone has to be selected automatically. But there is no option to specify such dependencies in the Package builder

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/

 

I find myself installing for virtual machines often lately and I'm trying to minimize installation of packages that aren't needed for the sake of space. It would be great to have a way to deselect all of the support packages for various IDEs. For example, if I only work in .NET, let me deselect LabVIEW support. I currently only develop in LabVIEW and scrubbing the list for all of the C or .NET support packages is super tedious.

picklecolor2_0-1619638732575.png

 

Cosmetic / Minor issue

 

I have a solution with one underscore character in its file name. It is properly displayed in the window title bar, but undescore is missing in most recently used files, under File menu.

 

NIPB_DisplayIssueInFileMenu.png

 

I made some complementary tests, with dummy solution files named Undescore_One.pbsUndescore_One_Two.pbs and Undescore_One_Two_Three.pbs. Only the first underscore in the file name is missing in menu display:

 

NIPB_DisplayIssueInFileMenu.png

 

I am using NI Package Builder 20.6.0.1227.

 

Regards, 

Maybe I'm doing it wrong, but every time I get a software activation prompt from NIPM, it has no recollection of which volume license server I connected to the last time. Shouldn't this be stored persistently so we don't have to enter the information repeatedly? I rarely remember the volume license server name off the top of my head because I don't activate things often enough.

 

Thanks,

 

Mr. Jim

 

VolumeLicense.png

You can add folders to the "inputs" in NIPB, and they will auto detect if files have been changed / added to the solution.

 

If you ad a folder (or a complex folder hierarchy) to a package, it disconnects ALL of the folders.  I completely understand why this might be done, but it creates a slightly unexpected disconnect between the "inputs" and the "package workspace"

 

If files are updated, those updates propagate between both locations -- Great!

 

If files are added, those updates propagate to the Inputs, but NOT the workspace.

 

This can be pretty frustrating, especially for deeply nested folder structures...

 

My request is not that this is entirely switched, but rather an option to add a linked folder to the workspace... My thought is that this would function much like the "autopopulating folders" from labVIEW (vs snapshots) -- Though it would be nice if the base added folder could have it's name changed and still maintain the link (though not required).

 

 

Hope the package management interface has a choosing install path option.

 

 

David 

This feature is available in the LabVIEW package builder (very cool!), but it would be helpful to have this exposed in the NI Package Builder UI as well...

 

Currently my work around is to either

(a) Use the SystemLink REST API and (really requires a good development pipeline for automation)

(b) Target the feed at the SystemLink internal repository folder, which will create a "hidden" repository that is unavailable in the SystemLink Browser, but can still be referenced... While not too terrible for testing, this is probably not a great approach from a security point of view...

I created a package in LabVIEW 2020 which (obviously) depends on LabVIEW runtime and other things.  When I create the feed from LabVIEW, it includes all of these -- Excellent!

 

I have additional packages that I want to create in NI Package Builder which are add-ons to the LV solution to support a Plugin Architecture.

I can include the LabVIEW package as a dependency (assuming it's installed), but when I create the feed, it does NOT include the nested dependencies.

 

It would be very nice to include an option for dependencies to "Detect and Include dependencies" 

Right now I can only add package dependencies that are either 

(a) Currently Installed

(b) In the solution being created

 

It would be extremely useful to:

(a) Select a package dependency from disk

(b) Select a package from a currently registered feed

 

On a development system, I often DON"T want to actually install the packages i'm developing, and if I have several related "solutions" I need a way to define dependency relationship between them.

 

Right now I either have to develop everything in the same solution (which means every time I build, it builds everything), or am forced to install the packages that I want to include as dependencies.... neither of which are desirable behaviors

Hi forum, would like to propose the idea above 👆

 

A brief explanation of the the idea would be, if the NIPM package is opened from an ISO of a local repository (running install.exe from a mounted ISO), NIPM should install the entire package from that ISO, unless the package have a mismatch inside the ISO. this applies for offline installers, where user is responsible to check the ISO's hash once it is downloaded.

 

if the package installation is requested from the feed list inside of NIPM, only then it should download from NI through the internet

 

just an idea... to reduce possible installation errors

Currently, there is an option to ignore all errors in a customExecute step.

However, if you are including an installer as a step, sometimes it returns code 3010 (which isn't an actual error). It would be helpful to be able to ignore the 3010 return code (for example), but not ignore others to indicate that the install was a failure.

In the Item View, if some files are insert in a folder, you need to open all folder to make sure your solution is up to date :

MaximeR_0-1607090694572.png

 

Why not add the Blue Dot to the folder too :

 

MaximeR_1-1607090878057.png MaximeR_2-1607090907881.png

 

I don't know also if it's a good idea to allow to have file in multiple location in this view. This can be confusing.

 

Regards

 

 

 

 

Inside a solution, you have to build all the packages inside the solution.

 

If you split your project in different packages, it's easier to manage it inside only one solution for managing dependecies between packages. But building a fix of a small package will force to build all packages. So if you don't want to change version of other pacakges, you need to manually manage all the version by hand and make sure you are not replacing the previous pacakge that you don't want to rebuild.

 

Having abaility to rebuild only the selected pacakges, willl help to create patches for only a part of a bigger project well divided in smaller components.

 

MaximeR

Hello,

 

I used to distribute a software with non-package installer. Then, we switched to a package installer. It is built using NI Package Builder.
Unfortunately, NI Package builder doesn't uninstall previous versions as it doesn't know the relationship.

 

Please, could you implement in the UI the possibility to specify "conflicts" and "replaces" relationships as described in this document?
http://www.ni.com/documentation/en/ni-package-manager/latest/manual/control-file-attributes/ 

 

Also discussed on the forum: https://forums.ni.com/t5/NI-Package-Manager-NIPM/Nothing-but-confusion-about-building-and-using-packages/m-p/3938499/highlight/true?profile.language=fr#M91 

 

Romain