| here's my default.nix
{ pkgs ? import <nixpkgs> { } }:
let
poetry2nix = pkgs.callPackage (builtins.fetchTarball
"https://github.com/nix-community/poetry2nix/archive/master.tar.gz") { };
python312 = pkgs.python312;
keyrings = pkgs.python312Packages.keyrings-google-artifactregistry-auth;
gexEnv = poetry2nix.mkPoetryEnv {
projectDir = ./.;
editablePackageSources = { gex = ./gex; };
python = python312;
pyproject = ./pyproject.toml;
poetrylock = ./poetry.lock;
preferWheels = true;
};
in pkgs.mkShell {
buildInputs = [ gexEnv pkgs.google-cloud-sdk keyrings ];
shellHook = ''
# keyrings are available here and I'm authenticated in google cloud
'';
}
|