34 lines
1.1 KiB
Nix
34 lines
1.1 KiB
Nix
{
|
|
description = "An flake to use a Python poetry project in an FHS environment when poetry2nix is uncooperative";
|
|
inputs = {
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
nixpkgs.url = "github:NixOS/nixpkgs/240b1d794bbfca3522dec880a3aa300932bbfd98";
|
|
};
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
flake-utils,
|
|
}:
|
|
flake-utils.lib.eachDefaultSystem (system: let
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
fhsEnv =
|
|
(pkgs.buildFHSUserEnv rec {
|
|
name = "cv-analysis-service";
|
|
targetPkgs = pkgs: (with pkgs; [
|
|
poppler_utils
|
|
zlib
|
|
poetry
|
|
libuuid
|
|
# add the system package here that are needed for the Python package dependencies
|
|
libz # needed for 'numpy'
|
|
]);
|
|
profile = ''
|
|
export LD_LIBRARY_PATH="/lib:$LD_LIBRARY_PATH:${pkgs.lib.makeLibraryPath [pkgs.libuuid]}"
|
|
poetry install # add --no-root here if this is just a metapackage
|
|
source "$(poetry env info --path)"/bin/activate
|
|
'';
|
|
})
|
|
.env;
|
|
in {devShells.default = fhsEnv;});
|
|
}
|