diff options
| -rw-r--r-- | default.nix | 41 | ||||
| -rw-r--r-- | pkgs/python3Packages/ascii.nix | 30 | ||||
| -rw-r--r-- | pkgs/python3Packages/pyease-grpc.nix | 33 |
3 files changed, 99 insertions, 5 deletions
diff --git a/default.nix b/default.nix index f90dda0..a834752 100644 --- a/default.nix +++ b/default.nix @@ -1,13 +1,44 @@ { pkgs ? import <nixpkgs> { }, }: +let + + recursiveMerge = + with pkgs.lib; + attrList: + let + f = + attrPath: + zipAttrsWith ( + n: values: + if tail values == [ ] then + head values + else if all isList values then + unique (concatLists values) + else if all isAttrs values then + f (attrPath ++ [ n ]) values + else + last values + ); + in + f [ ] attrList; + callPackage = pkgs.lib.callPackageWith (recursiveMerge [ + pkgs + packages + ]); + packages = { + python3Packages = { + ascii = callPackage ./pkgs/python3Packages/ascii.nix { }; + pyease-grpc = callPackage ./pkgs/python3Packages/pyease-grpc.nix { }; + pyexecjs = callPackage ./pkgs/python3Packages/pyexecjs.nix { }; + }; + + sorremacs = callPackage ./pkgs/sorremacs { }; + }; +in { lib = import ./lib { inherit pkgs; }; modules = import ./modules; overlays = import ./overlays; - - python3Packages = { - pyexecjs = pkgs.callPackage ./pkgs/python3Packages/pyexecjs.nix { }; - }; - sorremacs = pkgs.callPackage ./pkgs/sorremacs { }; } +// packages diff --git a/pkgs/python3Packages/ascii.nix b/pkgs/python3Packages/ascii.nix new file mode 100644 index 0000000..e5b455b --- /dev/null +++ b/pkgs/python3Packages/ascii.nix @@ -0,0 +1,30 @@ +{ + lib, + python3Packages, + fetchPypi, +}: +python3Packages.buildPythonPackage rec { + pname = "ascii"; + version = "3.6"; + pyproject = true; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-tf/EyyCsF4nKyAqRMZNF8mo+jzxtb+/zoiDBtsUFYUE="; + }; + + build-system = [ + python3Packages.setuptools + ]; + + dependencies = with python3Packages; [ + pillow + urllib3 + ]; + + meta = { + homepage = "https://github.com/mkaminsky11/ascii"; + description = "Turns images into ascii art"; + license = lib.licenses.mit; + }; +} diff --git a/pkgs/python3Packages/pyease-grpc.nix b/pkgs/python3Packages/pyease-grpc.nix new file mode 100644 index 0000000..758c4b5 --- /dev/null +++ b/pkgs/python3Packages/pyease-grpc.nix @@ -0,0 +1,33 @@ +{ + lib, + python3Packages, + fetchFromGitHub, +}: +python3Packages.buildPythonPackage rec { + pname = "pyease-grpc"; + version = "1.7.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "dipu-bd"; + repo = "pyease-grpc"; + rev = "v${version}"; + sha256 = "sha256-IE6Dryqz4wcoTbHv0HMhVYH99iq2KPYCjWhC+usc2aQ="; + }; + + build-system = [ + python3Packages.setuptools + ]; + + dependencies = with python3Packages; [ + requests + protobuf + grpcio + ]; + + meta = { + homepage = "https://github.com/dipu-bd/pyease-grpc"; + description = "Easy to use requests-like gRPC client in python"; + license = lib.licenses.mit; + }; +} |
