fieldpoc/flake.nix
2023-06-17 20:51:05 +02:00

112 lines
3.0 KiB
Nix

{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
mitel-ommclient2 = {
url = "git+https://git.clerie.de/clerie/mitel_ommclient2.git";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, mitel-ommclient2, ... }: {
packages.x86_64-linux = let
pkgs = import nixpkgs {
system = "x86_64-linux";
};
in {
fieldpoc = pkgs.python3Packages.buildPythonPackage {
pname = "fieldpoc";
version = "0.11.0";
src = ./.;
format = "pyproject";
buildInputs = [ pkgs.python3Packages.hatchling ];
propagatedBuildInputs = [
mitel-ommclient2.packages.x86_64-linux.mitel-ommclient2
pkgs.python3Packages.sqlalchemy
self.packages.x86_64-linux.ywsd
self.packages.x86_64-linux.diffsync
];
};
ywsd = pkgs.python3Packages.buildPythonApplication rec {
pname = "ywsd";
version = "0.12.2";
src = pkgs.fetchFromGitHub {
owner = "eventphone";
repo = pname;
rev = "v${version}";
sha256 = "sha256-VkL7MhK6Z0Y1Hnnoq0Ukyclk9gfc4u8qav6yNj+LCJg=";
};
propagatedBuildInputs = [
pkgs.python3Packages.aiopg
pkgs.python3Packages.aiohttp
self.packages.x86_64-linux.python-yate
pkgs.python3Packages.pyyaml
pkgs.python3Packages.sqlalchemy
];
doCheck = false;
};
python-yate = pkgs.python3Packages.buildPythonPackage rec {
pname = "python-yate";
version = "0.4.1";
src = pkgs.python3Packages.fetchPypi {
inherit pname version;
sha256 = "sha256-rx0hcmP4SmvCkKXawyiMTKCVpTKTAgZVpbdQFdxV+hs=";
};
propagatedBuildInputs = [
pkgs.python3Packages.aiohttp
pkgs.python3Packages.async-timeout
];
pythonImportsCheck = [ "yate" ];
};
diffsync = pkgs.python3Packages.buildPythonPackage rec {
pname = "diffsync";
version = "1.5.1";
src = pkgs.python3Packages.fetchPypi {
inherit pname version;
sha256 = "84a736d03d385bd07cf7c86f57385d4130c3c3273bf7bc90febe2fa530ee1aa6";
};
propagatedBuildInputs = [
pkgs.python3Packages.pydantic
(pkgs.python3Packages.override {
overrides = (self: super: {
structlog = super.structlog.overrideAttrs (old: rec {
version = "21.5.0";
src = pkgs.fetchFromGitHub {
owner = "hynek";
repo = "structlog";
rev = "refs/tags/${version}";
sha256 = "0bc5lj0732j0hjq89llgrncyzs6k3aaffvg07kr3la44w0hlrb4l";
};
});
});
}).structlog
pkgs.python3Packages.colorama
pkgs.python3Packages.redis
];
pythonImportsCheck = [ "diffsync" ];
};
};
hydraJobs = {
inherit (self)
packages;
};
};
}