Python development mode stopped working with direnv

I have the following shell.nix file (assume there’s a nixpkgs in the environment):

  pythonPkgs.buildPythonPackage rec {
    name = "my-shell";
    checkInputs = [ python3Packages.numpy ];
  }

This used to work fine in combination with use nix with direnv. As of late (cannot really say since where), it just outputs:

direnv: error unmarshal() base64 decoding: illegal base64 data at input byte 8

This is sort of a huge blow for my development workflow. Was there some change wrt. development mode?

Could it be that you are mixing python versions here? Maybe try pythonPkgs.numpy instead.

@pimiddy this is a know issue with direnv. See direnv: error unmarshal() base64 decoding: illegal base64 data at input byte 0 · Issue #519 · direnv/direnv · GitHub

Look at the shellHook and make sure it doesn’t output anything on stdout (redirect everything to stderr).