-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pip install firedrake #4011
base: master
Are you sure you want to change the base?
pip install firedrake #4011
Conversation
|
|
|
Due to actions/setup-python#871. Can't find libpython.so
* Fix path for IO tests (as not running from root of repo any more) * macOS prep * complex arch
pip install firedrake
pip install firedrake
"bison": { | ||
LINUX_APT_X86_64: PETSC_AUTODETECT, | ||
LINUX_APT_AARCH64: PETSC_AUTODETECT, | ||
MACOS_HOMEBREW_ARM64: "/opt/homebrew", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be the output of brew --prefix
because users can have a nonstandard location.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For macOS on ARM this is the only supported location:
The script installs Homebrew to its default, supported, best prefix (/opt/homebrew for Apple Silicon, /usr/local for macOS Intel and /home/linuxbrew/.linuxbrew for Linux)
Homebrew say:
Technically, you can just extract (or git clone) Homebrew wherever you want. However, you shouldn’t install outside the default, supported, best prefix.
So I think it is extremely unlikely that a user will not have this path.
In general I have been taking a very hard-line approach to limiting what goes in firedrake-configure
. We only support (and test!) a very restricted set of platforms (Ubuntu 24 on x86 and ARM and MacOS on ARM). We can add niceties like detecting compilers and package manager paths but we won't be able to test the functionality.
If this is unpopular I can change this.
Die
firedrake-install
! Die! Die! Die!Description
pip
.firedrake-configure
script to facilitate installation.firedrake-install
/firedrake-update
remain but spit out a deprecation warning.Unlike
firedrake-install
,firedrake-configure
is designed to be very, very dumb. All it does is take in a specification of a desired package manager (apt-x86_64
,apt-aarch64
,brew-arm64
) and "arch" (default
orcomplex
) and spits out a string of appropriate system dependencies (--show-system-dependencies
) or PETSc configure options (--show-petsc-configure-options
). You can also pass--no-package-manager
if you aren't using a supported system and this will give you a set of PETSc configure options where everything is downloaded.TODOs