33-AzureML-2/flake.nix

101 lines
2.6 KiB
Nix

{
description = "A Nix-flake-based Jupyter development environment";
inputs.nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.*.tar.gz";
outputs = {
self,
nixpkgs,
}: let
supportedSystems = ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"];
forEachSupportedSystem = f:
nixpkgs.lib.genAttrs supportedSystems (system:
f {
pkgs = import nixpkgs {inherit system;};
});
in {
devShells = forEachSupportedSystem ({pkgs}: {
default = pkgs.mkShell {
venvDir = "venv";
packages = with pkgs;
[python311 virtualenv azure-cli]
++ (with pkgs.python311Packages; [
pip
python-lsp-server
python-lsp-ruff
venvShellHook
requests
jupyter
pandas
matplotlib
mlflow
seaborn
scikit-learn
plotnine
arrow
polars
pyarrow
ydata-profiling
pydot
graphviz
pydash
marshmallow
opencensus
opencensus-ext-azure
msrest
anyio
azure-common
azure-mgmt-authorization
azure-mgmt-core
typing-extensions
azure-core
six
isodate
azure-appconfiguration
azure-keyvault-secrets
cryptography
msrestazure
requests
psutil
opentelemetry-api
azure-eventhub
aiohttp
mlflow
msal
msal-extensions
azure-keyvault-certificates
azure-keyvault-keys
pyyaml
jsonschema
tqdm
strictyaml
colorama
pyjwt
azure-storage-blob
azure-storage-file-share
azure-mgmt-resource
opentelemetry-sdk
opentelemetry-instrumentation
opentelemetry-instrumentation-django
opentelemetry-instrumentation-fastapi
opentelemetry-instrumentation-flask
#opentelemetry-instrumentation-psycopg2
azure-nspkg
azure-mgmt-nspkg
websocket-client
avro
uamqp
yarl
azure-identity
openai
dnspython
numpy
jsonpath-ng
(python311.pkgs.callPackage ./pkgs/azureml-mlflow/default.nix {})
(python311.pkgs.callPackage ./pkgs/azure-ai-ml/default.nix {})
]);
};
});
};
}