WS-KCNHUB/machines/kcnhub/packages/python.nix

94 lines
2.6 KiB
Nix

{config, lib, pkgs, ...}: {
options = {
pythonPackages = lib.mkOption {
type = lib.types.anything;
default = p: with p; [];
example = p: with p; [ numpy scipy ];
description = "List of Python Packages installed";
};
};
config = {
environment.systemPackages = with pkgs; [
((pkgs.python3.withPackages config.pythonPackages).override (args: { ignoreCollisions = true; }))
];
pythonPackages = (p: with p; [
# Common Python Libraries
numpy
scipy
scikit-learn
pandas
openpyxl
matplotlib
ipympl
matplotlib-inline
seaborn
# Neural Data Processing Libraries
# Temporarily broken?: https://github.com/NixOS/nixpkgs/issues/259812
mne-python
edfio
nibabel
# View niftis!
ipyniivue
neo
# Neurosimulators
neuronpy
# nest with MPI is incompatible with Jupyter:
# https://www.nest-simulator.org/pynest-api/_modules/nest.html
# see pynestkernel comments about their workaround
(nest.override {
withMpi = false;
})
brian2
# SpiNNaker simulator
spynnaker
# fetching neuromorphic data:
tonic
# Librairies to deal with mesh
#pymeshlab
trimesh
# dependencies trimesh
lxml # Parse XML documents.
networkx # Pure Python graph library
shapely # Bindings to GEOS for 2D spatial stuff
rtree # Query ND rectangles with a spatial tree
httpx # Do network queries in trimesh.exchange.load_remote
sympy # Evaluate symbolic algebra
xxhash # Quickly hash arrays, used for our cache checking, easy,
charset-normalizer # When we fail to decode text as UTF-8
colorlog # Printing logs with colors., easy,
pillow # Reading raster images for textures and render polygons into raster images., easy,
jsonschema # Validating our exports for formats like GLTF., easy,
pycollada # Parse dae files., easy,
meshio # Load additional mesh formats.
scikit-image # Used in voxel ops
#mapbox #earcut, Triangulate 2D polygons
psutil # Get current memory usage
#ruff # A static code analyzer and formatter
#manifold3d # A binding for the Manifold mesh boolean engine
#openctm # A binding for OpenCTM loaders enabling .ctm loading
# Machine learning toolkits:
tensorflow
tensorboard
keras
edward
transformers
tflearn
torch
torchvision
torchsde
torchmetrics
torchio
torchdiffeq
botorch
lion-pytorch
pycuda
accelerate
datasets
]);
};
}