Jump to content

How to enable native XNode development on Linux/Mac


Sparkette

Recommended Posts

TL;DR: Linux and Mac users, you can enable NI's hidden XNode development feature by adding the following line to your LabVIEW configuration file:

XNodeDevelopment_LabVIEWInternalTag=True

After doing this, you can create a new XNode from the File->New dialog, and edit existing ones without them just showing up as locked.

Original post:

LabVIEW's built-in XNode editing tools are enabled using a license file, rather than a simple INI toggle. Presumably they do this for stronger discouragement from unofficial use, as hacking one's way past that feels a lot more "shady" than just adding a line to a config file.

But what about the Linux and Mac versions? They don't have a license manager, so how is XNode development enabled there? One might guess that those features simply aren't compiled into the released builds of those versions, but there is actually precedent to suggest otherwise. VI Scripting used to be similarly restricted using a license, but then they made it public. At the time, LabVIEW didn't have a toggle in the Options for it. But they didn't need to release a patch to add one. Instead, they simply published their formerly-internal license file, and set their activation server to accept requests to activate it. And yet, Linux/Mac users weren't out of luck: it turned out that for them, it actually was just a configuration key.

The VI Scripting license had the internal name "LabVIEW_Scripting(_PKG)". The Linux/Mac configuration key was "Scripting_LabVIEWInternalTag".

At 17:48 in this video, several XNode-related configuration keys are shown, likely found in strings in the EXE or resource files. One of them is called "XNodeDevelopment_LabVIEWInternalTag". Guess what the internal name of the XNode Development license is.

I don't have the Linux/Mac version to test with, but I know a pattern when I see one. The following command was given in the readme for the VI Scripting package for Linux:

echo -e "labview.Scripting_LabVIEWInternalTag:\tTrue" >> ~/.labviewrc

Here are the Mac instructions:

scripting_mac.png.6649788bdd4e4f724566d070c44e055d.png

If you have either of those versions, it's probably worth a try: follow those instructions, but replace "Scripting" with "XNodeDevelopment", and see if you can open an XNode in the IDE, or create one from File->New. (Also, in the case of Mac, replace 8.6 with your actual LabVIEW version if necessary.)

(Here's where I got my information about enabling scripting: https://forums.ni.com/t5/LabVIEW-APIs-Documents/LabVIEW-Scripting/ta-p/3535340?profile.language=en)

Edited by flarn2006
Changed title again now that it's confirmed to work
  • Like 2
Link to comment
  • Sparkette changed the title to I might know how to enable native XNode development on Linux/Mac

You are right, I managed to successfully activate LabVIEW XNode entries with XNodeDevelopment_LabVIEWInternalTag=True token. Here are the screenshots taken on Ubuntu w/ LV 2019 64-bit.

File-New-Lin.jpg.8bc7eedc3379d25fb65b126c377e0e4d.jpg GVBP-Lin.jpg.665484ad290394ed57945ff7f6b457b9.jpg

And these are from Sierra w/ the same LV.

File-New-MacOS.jpg.cada8ed4e9ce93485c5cf8a8eb01263b.jpg GVBP-MacOS.jpg.39aa2d59ad66cdd5479416e816084528.jpg

In my case the preferences file was here:

- /home/<user name>/natinst/.config/LabVIEW-<LV version>/labview.conf (on Linux);

- /Users/<user name>/Library/Preferences/LabVIEW.app <LV version> 64-bit Preferences (on macOS).

Link to comment

And this is for Windows 😉

File-New-Win.jpg.ed4c4bf4d994b244841ba60bfbda122f.jpg GVBP-Win.jpg.c942dbdefa34f908248e422b48e320c7.jpg

I don't want to violate the rules, therefore I'm not going to describe how to achieve this functionality on Windows. If you really want to get it, take a closer look at those Scripting packages, find .lc there, then alter PACKAGE / INCREMENT tokens to LabVIEW_XNodeDevelopment_PKG and COMPONENTS token to LabVIEW_XNodeDevelopment in it. Sure you know what to do next.

Link to comment
  • Sparkette changed the title to How to enable native XNode development on Linux/Mac
  • 1 month later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.