-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathshell.nix
More file actions
48 lines (39 loc) · 1.25 KB
/
shell.nix
File metadata and controls
48 lines (39 loc) · 1.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
name = "deep-learning-super-resolution";
buildInputs = with pkgs; [
# Python and core packages
python313
python313Packages.pip
python313Packages.virtualenv
# System libraries that OpenCV needs
zlib
glib
xorg.libX11
xorg.libXext
xorg.libXrender
gtk3
# Python packages available in nixpkgs
python313Packages.numpy
python313Packages.opencv4
python313Packages.pillow
python313Packages.tkinter
python313Packages.flask
];
shellHook = ''
echo "Setting up Deep Learning Super Resolution environment..."
# Set up library paths for OpenCV
export LD_LIBRARY_PATH="${pkgs.zlib}/lib:${pkgs.glib}/lib:${pkgs.xorg.libX11}/lib:${pkgs.xorg.libXext}/lib:${pkgs.xorg.libXrender}/lib:${pkgs.gtk3}/lib:$LD_LIBRARY_PATH"
cd aaaa
# Create and activate virtual environment if it doesn't exist
if [ ! -d ".venv" ]; then
echo "Creating virtual environment..."
python -m venv .venv
fi
source .venv/bin/activate
# Install packages not available in nixpkgs
echo "Installing additional Python packages..."
pip install sewar
echo "Environment ready! You can now run: python main.py"
'';
}