Nexus: Package executables in with Nexus libraries#5851
Nexus: Package executables in with Nexus libraries#5851brockdyer03 wants to merge 12 commits intoQMCPACK:developfrom
Conversation
…tial still broken
There was a problem hiding this comment.
I hesitate to relocate nexus scripts. I don't expect packaging to change source codes layout.
When using virtual environment, scripts are expected to be installed under <venv>/bin not <venv>/lib/python3.12/site-packages/nexus/bin
One option I can think of is relaxing the nexus library location check in the scripts if installed in a virtual environment by commenting out the line of find_nexus_modules() call.
The scripts are installed in
I wouldn't worry about it at all. I've checked and double checked everything I could think of with the movement, and every change indicates that the associations between the scripts and the Nexus libraries are still solid. I've checked many times, the only way for the scripts to be available is by moving them in with the libraries. |
|
Another side effect of relocation. nexus installation via QMCPACK is broken. |
To be clear, it's not a side effect of relocation, but rather a bug in my PR. This just requires some code changes that I'll try to get to tonight or tomorrow. |
With a bit more thinking, relocation is probably OK. However, we might need the install script to modify the search path based on how QMCPACK installs its subset of scripts and its own copy of nexus. |
|
I know I'm a broken record regarding this topic, but I'd like to note that once again this is an extremely frustrating result of the uncommon use of Given the bin packaging is now trivial, would it really be so difficult to just require that users use the highly convenient package installation method for using the scripts? |
Proposed changes
This is the long-anticipated (since about 5 minutes ago when #5742 was merged) bin packaging PR. With this, users who install Nexus will now be able to use the Nexus scripts (e.g.
qmca,nxs-sim,qdens, etc.) when they are in their virtual environments.What type(s) of changes does this code introduce?
Does this introduce a breaking change?
What systems has this change been tested on?
Laptop, Fedora 43, Python 3.14.2, Numpy 2.4.2, uv 0.9.42
Checklist