mirror of
https://github.com/CHN-beta/nixos.git
synced 2024-10-22 23:18:44 +08:00
modules.packages.lammps: init
This commit is contained in:
parent
3e29d59895
commit
88aefc1dfc
25
modules/packages/lammps.nix
Normal file
25
modules/packages/lammps.nix
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
inputs:
|
||||||
|
{
|
||||||
|
options.nixos.packages.lammps = let inherit (inputs.lib) mkOption types; in mkOption
|
||||||
|
{
|
||||||
|
type = types.nullOr (types.submodule {});
|
||||||
|
default = if inputs.config.nixos.system.gui.enable then {} else null;
|
||||||
|
};
|
||||||
|
config = let inherit (inputs.config.nixos.packages) lammps; in inputs.lib.mkIf (lammps != null)
|
||||||
|
{
|
||||||
|
nixos.packages._packages =
|
||||||
|
let cuda = let inherit (inputs.config.nixos.system.nixpkgs) cuda; in cuda.enable && cuda.capabilities != null;
|
||||||
|
in
|
||||||
|
if cuda then [((inputs.pkgs.lammps-mpi.override { stdenv = inputs.pkgs.cudaPackages.backendStdenv; })
|
||||||
|
.overrideAttrs (prev:
|
||||||
|
{
|
||||||
|
cmakeFlags = prev.cmakeFlags ++ inputs.lib.optionals cuda
|
||||||
|
[
|
||||||
|
"-DPKG_GPU=on" "-DGPU_API=cuda" "-DCMAKE_POLICY_DEFAULT_CMP0146=OLD"
|
||||||
|
];
|
||||||
|
nativeBuildInputs = prev.nativeBuildInputs ++ inputs.lib.optionals cuda
|
||||||
|
[ inputs.pkgs.cudaPackages.cudatoolkit ];
|
||||||
|
}))]
|
||||||
|
else [ inputs.pkgs.lammps-mpi ];
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user