Skip to content

Introducing alternative installation methods of firedrake powered by nix #4235

@qbisi

Description

@qbisi

Hi, i am nixpkgs maintainer working on support the whole firedrakeProject in nixpkgs.

For now, i have built a private recipe repo and binary cache for the unstable firedrake project.
See https://github.com/qbisi/nur-fem.

Nix is a powerful package manager that you can custom your own firedrake implemention by easy override/overlay.

e.g. in provided firedrake init template

_module.args = {
  pkgs = import inputs.nixpkgs {
    inherit system;
    overlays = [
      inputs.nur-fem.overlays.default
      (final: prev: {
        petsc = prev.petsc.override {
          # mpi = prev.mpich;
          # blasProvider = prev.mkl;
          # scalarType = "complex";
          # withFullDeps = true;
          # debug = false;
        };
      })
    ];
    config = {
      allowUnfree = true;
    };
  };
};

you can uncomment those petsc ovrridable option and use your disired settings.

If your group have any plan to release a stable firedrake version, i can help packaging it on nixpkgs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions