Hi folks,
I’m working on a project, for which one of the Python deps I’m using is “broken”, hence I’m trying to setup a shell.nix
file that installs this particular package in development mode, so that I can take a crack at fixing any bugs that I encounter.
The shell.nix
file I’m trying to use for this is:
{ pkgs ? import <nixpkgs> { } }:
pkgs.python3Packages.buildPythonPackage rec {
pname = "oceanwaves";
version = "1.0.0rc6";
src = ../../../../../../Source/oceanwaves-python;
doCheck = false;
propagatedBuildInputs = with pkgs.python3Packages;
[ docopt numpy scipy xarray
ipython
dask
matplotlib
netcdf4
pandas
python-language-server
joblib
];
}
Only the first line of propagatedBuildInputs
is required by the package at install time, the rest are just other things I need for this particular project.
Whenever I drop into a nix-shell
env though, it looks like many of these things (including oceanwaves, the package I’m trying to edit) aren’t actually getting installed. For example, ipython is unavailable, and neither is oceanwaves:
Python 3.8.9 (default, Apr 2 2021, 11:20:07)
[GCC 10.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import oceanwaves
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'oceanwaves'
>>>
Wondering if anybody has some wisdom on what I’m doing wrong here.