36 lines
895 B
Nix
36 lines
895 B
Nix
{
|
|
description = "Sagemath flake";
|
|
|
|
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.05";
|
|
inputs.flake-utils.url = "github:numtide/flake-utils";
|
|
|
|
outputs = { self, nixpkgs, flake-utils}:
|
|
flake-utils.lib.eachDefaultSystem
|
|
(system:
|
|
let
|
|
pkgs = import nixpkgs {
|
|
inherit system;
|
|
config.allowUnfree = true;
|
|
};
|
|
python-packages = ps: with ps; [
|
|
jupyterlab
|
|
jupyterlab-git
|
|
jupyterlab-lsp
|
|
jupyterlab-widgets
|
|
];
|
|
in {
|
|
devShells.default = pkgs.mkShell {
|
|
buildInputs = with pkgs; [
|
|
sage
|
|
(python311.withPackages python-packages)
|
|
];
|
|
|
|
shellHook = ''
|
|
# sage --nodotsage -n --notebook-dir .
|
|
# TODO sage --nodotsage -n=jupyterlab --notebook-dir .
|
|
# exit
|
|
'';
|
|
};
|
|
}
|
|
);
|
|
}
|