{ config, pkgs, ... }: let sshManagerShell = pkgs.mkShell { name = "ssh-manager-shell"; buildInputs = [ pkgs.python311 pkgs.python311Packages.pip pkgs.python311Packages.virtualenv ]; shellHook = '' # Wechsel ins Projektverzeichnis, falls nötig cd /home/leo/Documents/Dev/ssh-manager # Falls kein virtueller Umgebung existiert, wird eine erstellt if [ ! -d "venv" ]; then echo "Creating virtual environment..." ${pkgs.python311}/bin/python -m venv venv fi # Virtuelle Umgebung aktivieren source venv/bin/activate # Falls die Anforderungen noch nicht installiert wurden, installiere sie if [ ! -f "venv/requirements_installed" ]; then echo "Installing requirements..." pip install --upgrade pip pip install -r requirements.txt touch venv/requirements_installed fi echo "Virtual environment activated. Run 'python main.py' to start the SSH manager." ''; }; in { # Optional: Füge das DevShell-Umfeld zu deinen Systempaketen hinzu, # sodass du es z.B. via "nix-shell -p ssh-manager-shell" aufrufen kannst. environment.systemPackages = with pkgs; [ sshManagerShell ]; }