Files
nix/hosts/common/shells/python/default.nix
Nikolaos Karaolidis bd174523f5 Add viya4-ark
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
2025-01-31 13:06:51 +00:00

25 lines
704 B
Nix

{ pkgs, ... }:
pkgs.mkShell {
packages = with pkgs; [
(python3.withPackages (python-pkgs: with python-pkgs; [ pip ]))
];
shellHook = ''
if git rev-parse --is-inside-work-tree &> /dev/null; then
TOP="$(git rev-parse --show-toplevel)"
if ! grep -q "^\.venv$" "$TOP/.gitignore" "$TOP/.git/info/exclude"; then echo ".venv" >> "$TOP/.git/info/exclude"; fi
else
TOP="$(pwd)"
fi
if [ -d "$TOP/.venv" ]; then
source "$TOP/.venv/bin/activate"
else
python -m venv "$TOP/.venv"
source "$TOP/.venv/bin/activate"
pip install --upgrade pip
if [ -f "$TOP/requirements.txt" ]; then pip install -r "$TOP/requirements.txt"; fi
fi
'';
}