This repository contains some scripts I wrote to install software I use and contribute to in my research. The scripts also sets up local git repositories and links them to user forks (ORIGIN) and the project host repositories (UPSTREAM).
This set of scripts installs, builds, and tests (if possible) various nuclear reactor physics and related software. The scripts install the following:
-
builds python with debugging symbols turned on as a conda package. This is useful for using interactive debuggers (e.g.
gdb
) on software like PyNE that use both C and Python) -
note: since serpent is export-controlled software, you'll need to obtain the source code on your own. All information used to modify install flags and apply bug fixes can be found on the installation page in the Serpent wiki and the Serpent forums respectively. See
serpent/bugfixes/
for an itemized list of each bug.
- The user must have a fork of the desired software tool(s) (if a public repository exists) for the scripts to run successfully.
- The user must have conda installed for software that uses python. Currently, the software only works if with anaconda. The
anaconda3
folder must be located inhome
. I recommend using Sam Dotson's script ubuntu-post-installer to do this, as well as set up a few other useful pieces of software on ubuntu)
Assuming you have set up ssh keys, run the following in your terminal
git clone [email protected]:yardasol/ubuntu-nuclear-software-installer
Boom. You're done
The following variables should be set by the end user:
GITHUB_UNAME
ininstall.bash
To use the software, run the following in your terminal
cd ubuntu-nuclear-software-installer
bash ubuntu-nuclear-software-installer.bash CODENAME
If something went wrong and you want to try again, add the --clean
flag:
bash ubuntu-nuclear-software-installer.bash CODENAME --clean
Boom. You're done.
Please read CONTRIBUTING.md before making any changes
The ubuntu-post-installer and awesome-nuclear repositories inspired this project. The following wikis, forums, and docs were invaluable resources in writing these scripts:
openmc/
pyne/
cpython/
serpent/
saltproc/
- All of the above
- The SaltProc docs