Skip to content

Add installation scripts + update documentation with Zensical#8

Merged
stuitje merged 68 commits intomainfrom
ks/fix_installation
Mar 23, 2026
Merged

Add installation scripts + update documentation with Zensical#8
stuitje merged 68 commits intomainfrom
ks/fix_installation

Conversation

@stuitje
Copy link
Copy Markdown

@stuitje stuitje commented Mar 21, 2026

Description

This PR introduces a more complete installation and documentation workflow for SPIDER.

1. Add installer scripts for SPIDER and PETSc

This PR adds the scripts get_spider.sh and get_petsc.sh to provide a more consistent installation path for SPIDER. It aligns the standalone SPIDER installation process with the workflow already documented in PROTEUS. The scripts:

  • support building SPIDER either as a standalone checkout or within a PROTEUS/SPIDER repository layout
  • reduce manual setup for users by automatically installing PETSc (3.19) when needed, so that the user only has to run ./tools/get_spider.sh.
  • provide clearer error handling and logging during installation and build steps.

Specifically, most of the output (i.e. warnings due to deprecation issues, etc) during installation are now logged in a file to keep the terminal clean. On the long term these deprecation issues should probably be fixed.

This closes #3.

2. Add Zensical support and expand the documentation

This PR also implements Zensical and significantly expands the SPIDER documentation.

New and updated files:

  • How-to/installation.md has been updated with the new scripts
  • How-to/quadruple_installation.md is a new file with the quadruple precision installation
  • How-to/external_mesh_input explains how to use an external mesh file as explained in the README
  • How-to/test.md explains how to test SPIDER
  • 'Tutorials/first_run.md` is a small first-run tutorial mostly taken from the README
  • getting_started.md is a new getting started page with a quick path and options
  • proteus_framework.md contains info about PROTEUS and is the landing page for other modules
  • Explanations/ contains many new files so that the model overview, directly converted from the LaTeX files in the notes/, is complete. Could use updates in the future, of course

mkdocs.yml and .github/workflows/docs.yaml have been updated accordingly, and there is a new css extra to configure the style.

Finally I have added a new job in CI.yml to test the new installation script alongside the normal build.

Validation

I have installed SPIDER and PETSc myself using these scripts and tested everything. In my case, everything worked (Linux on the Habrok cluster).

stuitje added 30 commits March 16, 2026 14:08
…rd to find as they are placed in the root directory
stuitje and others added 2 commits March 21, 2026 20:08
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Member

@nichollsh nichollsh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this, @stuitje. The doc pages look much better and the scripts work. SPIDER and PETSc run fine on my Linux laptop with Python 3.12.

Minor comment below.

Copy link
Copy Markdown
Member

@timlichtenberg timlichtenberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few comments, looks great otherwise. I will give the explanations part and how-to another look once i update it for further Zalmoxis coupling

@timlichtenberg
Copy link
Copy Markdown
Member

I also tested the install scripts on macos; all works well for me. Good new logic, much improved from the PROTEUS one; I will see if I can take some of this over into PROTEUS at the next PR.

@stuitje
Copy link
Copy Markdown
Author

stuitje commented Mar 21, 2026

A few comments, looks great otherwise. I will give the explanations part and how-to another look once i update it for further Zalmoxis coupling

Thanks!

I'll incorporate your suggestions by tomorrow (and will try to fix the suddenly failing check 😢)

@stuitje
Copy link
Copy Markdown
Author

stuitje commented Mar 22, 2026

@nichollsh @timlichtenberg I believe everything is covered now :)

@timlichtenberg timlichtenberg self-requested a review March 22, 2026 20:06
Copy link
Copy Markdown
Member

@timlichtenberg timlichtenberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Let's go!

@stuitje stuitje requested a review from nichollsh March 23, 2026 08:44
@stuitje stuitje merged commit c9a3fd4 into main Mar 23, 2026
2 checks passed
@stuitje stuitje deleted the ks/fix_installation branch March 23, 2026 10:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement tools/get_spider.sh into SPIDER

4 participants