Package Details: geant4 11.2.2-1

Git Clone URL: https://aur.archlinux.org/geant4.git (read-only, click to copy)
Package Base: geant4
Description: A simulation toolkit for particle physics interactions.
Upstream URL: http://geant4.cern.ch/
Keywords: matter montecarlo radiation transport
Licenses: custom: http://geant4.cern.ch/license/
Conflicts: geant4_devel
Submitter: Eothred
Maintainer: donpicoro
Last Packager: donpicoro
Votes: 19
Popularity: 0.000167
First Submitted: 2010-04-08 08:54 (UTC)
Last Updated: 2024-06-25 16:12 (UTC)

Dependencies (25)

Sources (2)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 .. 15 Next › Last »

donpicoro commented on 2021-07-09 17:20 (UTC)

Hello again @gipert:

I see your point with the LD_LIBRARY_PATH. For now I will not modify things as you seem to be the only one being affected by this. I will however investigate the possibility to add this in /etc/ld.so.conf.d/*.conf as it seems to be place to put it according to /etc/ld.so.conf and my simple understanding of this. I have never done this so let's see whether I manage for the next release in December.

As for the compilation standard... I meant that the minimum supported for the next version will be c++17 if I'm not mistaken. I misunderstood your remark. I myself have not fiddled with non-default standards but I'll give them a whirl for the next release as well.

Cheers,

gipert commented on 2021-07-09 16:56 (UTC)

Hi @donpicoro, thanks for the notes, I forgot Geant4 data is installed through separate packages. By the way, I know that you're just installing geant4.sh as it is. The problem is that setting LD_LIBRARY_PATH globally is bad practice and can break other software (see e.g. here). This happened to me lately (see here), and I had to remove geant4.sh to fix the issue.

Of course this should be somehow fixed/clarified in Geant4, and what I'm suggesting here is at least to just avoid sourcing geant4.sh by default, if the software is installed below /usr/local and is anyhow globally visible. You could add a warning printout during package installation and let the user decide what to do with it.

Le me know what you think and thanks for maintaining the package!

PS: on the C++ standard, I assume the official docs are wrong then?

donpicoro commented on 2021-06-30 21:28 (UTC)

Hello @gipert:

  • compiling with C++17 standard: Geant4 does not yet support that standard. This will come in version 11 in early december. Stay tuned.

  • LD_LIBRARY_PATH in /urs/bin/geant4.sh: I just source it because those as the instruction. The script is left 100% vanilla. NOTE that this script does not set the DATA environment variables. That I handle in separate scripts as they are optional dependencies... this was the easiest and most sustainable way to deal with this.

gipert commented on 2021-06-29 14:00 (UTC)

Sourcing /urs/bin/geant4.sh by default is a good idea, to get the Geant4 data env variables automatically set. That script is nasty though, because it sets LD_LIBRARY_PATH, which is both useless and possibly breaks other software. What about stripping that line from the script?

gipert commented on 2021-06-29 13:54 (UTC)

What about compiling with the C++17 standard?

hugo_loio commented on 2021-04-11 17:09 (UTC)

Thank you very much for the help @donpicoro!

donpicoro commented on 2021-04-09 13:01 (UTC)

Dear hugo_loio,

The way I set up the geant4 package by default it does not bring the data files. This is to keep the package size small for people not using those (sometimes massive) datasets. The script /urs/bin/geant4.sh sets some generic variables like LD_LIBRARY_PATH and so on.

To get the data files, please install the corresponding dataset package. They will bring their own /etc/profile.d/*.[c]sh files.

Please find the dataset packages in aur https://aur.archlinux.org/packages/?O=0&SeB=nd&K=geant4-&outdated=&SB=n&SO=a&PP=50&do_Search=Go

Cheers,

/Pico

hugo_loio commented on 2021-04-09 09:51 (UTC)

Geant4 environment variables aren't being loaded in my system. For example the printenv | grep G4command gives no output. I tried sourcing both /urs/bin/geant4.sh and /etc/profile.d/geant4_profile.sh and that didn't make a difference.

donpicoro commented on 2021-01-31 21:43 (UTC)

OK, this is I how I deal with this:

  • thanks for pointing out that I was not properly handling geant4make.[c]sh in the same way as geant4.[c]sh
  • geant4make.[c]sh is for in-source compilation (as opposed to geant4.[c]sh) that has been discourage since long time ago. If you clone and compile this package again both compilation ways get their enviromental variables removed.
  • the variables are now set automatically for you in /etc/profile.d/ by every data package. Either source the corresponding .[c]sh file once you install a data package or open a new terminal and it should happen automatically for you.
  • since now the geant4make.[c]sh script does not set environmental variables once you execute it, the values set by the /etc/profile.d/ should stay and your compilation should work.

I hope this works to your satisfaction. I want to keep it this way as moving file into the geant4 file tree is not recommended as many times the geant4 version changes but not the datasets.

Cheers,

/Pico

gvannoye commented on 2021-01-19 17:41 (UTC)

When installing the geant4-* optionnal dependencies and evaluating /usr/share/Geant4-10.7.0/geant4make/geant4make.sh, the definition of ressource file paths shell variables (G4NEUTRONHPDATA, G4LEDATA, …) is not correct.

I would suggest either copying the content of the /usr/share/geant4-*data/ folders to /usr/share/Geant${pkgver}/data/ or modifying the geant4make files (I don't know which other files would need to be changed, so the first option might be better).