Spaces:
Runtime error
Runtime error
| { pkgs, ... }: { | |
| # Which nixpkgs channel to use. | |
| channel = "stable-24.05"; # or "unstable" | |
| # Use https://search.nixos.org/packages to find packages | |
| packages = [ | |
| pkgs.python311 | |
| pkgs.python311Packages.pip | |
| pkgs.python311Packages.virtualenv | |
| pkgs.python311Packages.black # Optional: Add a popular Python code formatter | |
| pkgs.python311Packages.isort # Optional: Add a Python code sorter | |
| pkgs.python311Packages.flake8 # Optional: Add a Python linter | |
| ]; | |
| # Sets environment variables in the workspace | |
| env = { | |
| PYTHONPATH = "$HOME/.local/lib/python3.11/site-packages"; | |
| }; | |
| idx = { | |
| # Search for the extensions you want on https://open-vsx.org/ and use "publisher.id" | |
| extensions = [ | |
| # "vscodevim.vim" # Uncomment if you want the Vim extension for VSCode | |
| ]; | |
| # Enable previews | |
| previews = { | |
| enable = true; | |
| previews = { | |
| # Example for running a Python script in a web preview: | |
| # web = { | |
| # command = ["python" "app.py"]; | |
| # manager = "web"; | |
| # env = { | |
| # # Set environment variables like PORT if needed | |
| # PORT = "$PORT"; | |
| # }; | |
| # }; | |
| }; | |
| }; | |
| # Workspace lifecycle hooks | |
| workspace = { | |
| # Runs when a workspace is first created | |
| onCreate = { | |
| # Example: Set up a virtual environment and install dependencies | |
| install_dependencies = '' | |
| python3 -m venv .venv | |
| . .venv/bin/activate | |
| pip install -r requirements.txt # Assuming a requirements.txt file exists | |
| ''; | |
| }; | |
| # Runs when the workspace is (re)started | |
| onStart = { | |
| # Example: Run a background task like starting a Python server | |
| # start-server = "python3 -m http.server"; | |
| }; | |
| }; | |
| }; | |
| } | |