This seems like as good a place as any for this.
I’m currently a package maintainer for Geant4 for the NixOS distribution of Linux.
I’m currently subscribed to the Geant4 Releases mailing list. However, this mailing list does not seem to include updates to the datafiles (NDL, EMLOW, etc).
Is there a separate mailing list for this information? It would help me keep the distribution up to date.
There are occasionally data sets which get updated in the course of the yearly development cycle. However, these are not officially announced. It is also extremely rare for a patch announcement to include dataset updates.
The official release each December (as well as the beta release in June) also includes the list of datasets needed for that release. When you do the release build, it will download any required new datasets automatically if you have the appropriate CMake variables defined. For my releases, I use the following:
That way, the datasets end up in a common, shared directory for all builds, and not duplicated deep inside the /share/Geant4-10.x.y/…` path.
When you do it this way, the release build process will notice whether a required dataset is already in place (e.g., if it’s the same as a previous release), and won’t download it again.
Thanks for the CMake suggestion. I appreciate it. However, I did already know about that, and I cannot use it.
The build system in NixOS is based on compilation being bit for bit repeatable and pure, meaning that data not explicitly defined by the NixOS build file (derivation in jargon) is disallowed. So downloading data via CMake, and reusing data from a previous build are both no good.
Your tip did lead me to digging into the cmake modules, and I found Geant4DatasetDefinitions.cmake, which is an interesting file. I suppose I could just watch this file for changes (on gitlab or something), then manually apply them. But if you say that the datafiles don’t really update between versions, then I probably won’t bother