2020-07-18 06:41:26 +00:00
|
|
|
{
|
|
|
|
|
2020-10-03 19:11:50 +00:00
|
|
|
description = "Create highly reproducible python environments";
|
2020-07-18 06:41:26 +00:00
|
|
|
|
2020-10-03 19:11:50 +00:00
|
|
|
inputs.flake-utils.url = "github:numtide/flake-utils";
|
2020-10-03 19:16:46 +00:00
|
|
|
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
2020-11-25 08:27:46 +00:00
|
|
|
inputs.pypi-deps-db = {
|
|
|
|
url = "github:DavHau/pypi-deps-db";
|
|
|
|
flake = false;
|
|
|
|
};
|
2020-07-18 06:41:26 +00:00
|
|
|
|
2020-10-03 19:11:50 +00:00
|
|
|
outputs = { self, nixpkgs, flake-utils, ... }:
|
|
|
|
flake-utils.lib.eachDefaultSystem (system:
|
|
|
|
let
|
|
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
2020-10-09 15:18:34 +00:00
|
|
|
mach-nix-default = import ./default.nix {inherit pkgs;};
|
2020-10-14 11:57:29 +00:00
|
|
|
in rec
|
2020-10-03 19:11:50 +00:00
|
|
|
{
|
|
|
|
devShell = import ./shell.nix {
|
|
|
|
inherit pkgs;
|
|
|
|
};
|
2020-11-25 07:09:40 +00:00
|
|
|
packages = flake-utils.lib.flattenTree rec {
|
|
|
|
inherit (mach-nix-default)
|
|
|
|
mach-nix
|
|
|
|
pythonWith
|
|
|
|
shellWith
|
|
|
|
dockerImageWith;
|
|
|
|
"with" = pythonWith;
|
2021-03-12 05:37:07 +00:00
|
|
|
sdist = pkgs.runCommand "mach-nix-sdist"
|
|
|
|
{ buildInputs = mach-nix-default.pythonDeps; }
|
|
|
|
''
|
|
|
|
mkdir src
|
|
|
|
cp -r ${./.}/* src
|
|
|
|
cd src
|
|
|
|
python setup.py sdist -d $out
|
|
|
|
'';
|
2020-10-07 05:18:02 +00:00
|
|
|
};
|
2020-07-18 06:41:26 +00:00
|
|
|
|
2020-10-20 10:27:53 +00:00
|
|
|
defaultPackage = packages.mach-nix;
|
2020-07-18 06:41:26 +00:00
|
|
|
|
2020-10-14 11:57:29 +00:00
|
|
|
apps.mach-nix = flake-utils.lib.mkApp { drv = packages.mach-nix.mach-nix; };
|
2020-10-20 10:27:53 +00:00
|
|
|
defaultApp = { type = "app"; program = "${defaultPackage}/bin/mach-nix"; };
|
|
|
|
|
|
|
|
lib = {
|
2020-11-25 07:09:40 +00:00
|
|
|
inherit (mach-nix-default)
|
|
|
|
mkPython
|
|
|
|
mkPythonShell
|
|
|
|
mkDockerImage
|
|
|
|
mkOverlay
|
|
|
|
mkNixpkgs
|
|
|
|
mkPythonOverrides
|
|
|
|
|
|
|
|
buildPythonPackage
|
|
|
|
buildPythonApplication
|
|
|
|
fetchPypiSdist
|
|
|
|
fetchPypiWheel
|
|
|
|
;
|
2020-10-20 10:27:53 +00:00
|
|
|
};
|
2020-10-03 19:11:50 +00:00
|
|
|
}
|
|
|
|
);
|
2020-10-20 10:27:53 +00:00
|
|
|
}
|