1+ # generated using pypi2nix tool (version: 2.0.4)
2+ # See more at: https://github.com/nix-community/pypi2nix
3+ #
4+ # COMMAND:
5+ # pypi2nix -e pydantic
6+ #
7+
8+ { pkgs ? import <nixpkgs> { } ,
9+ overrides ? ( { pkgs , python } : self : super : { } )
10+ } :
11+
12+ let
13+
14+ inherit ( pkgs ) makeWrapper ;
15+ inherit ( pkgs . stdenv . lib ) fix' extends inNixShell ;
16+
17+ pythonPackages =
18+ import "${ toString pkgs . path } /pkgs/top-level/python-packages.nix" {
19+ inherit pkgs ;
20+ inherit ( pkgs ) stdenv ;
21+ python = pkgs . python3 ;
22+ } ;
23+
24+ commonBuildInputs = [ ] ;
25+ commonDoCheck = false ;
26+
27+ withPackages = pkgs' :
28+ let
29+ pkgs = builtins . removeAttrs pkgs' [ "__unfix__" ] ;
30+ interpreterWithPackages = selectPkgsFn : pythonPackages . buildPythonPackage {
31+ name = "python3-interpreter" ;
32+ buildInputs = [ makeWrapper ] ++ ( selectPkgsFn pkgs ) ;
33+ buildCommand = ''
34+ mkdir -p $out/bin
35+ ln -s ${ pythonPackages . python . interpreter } \
36+ $out/bin/${ pythonPackages . python . executable }
37+ for dep in ${ builtins . concatStringsSep " "
38+ ( selectPkgsFn pkgs ) } ; do
39+ if [ -d "$dep/bin" ]; then
40+ for prog in "$dep/bin/"*; do
41+ if [ -x "$prog" ] && [ -f "$prog" ]; then
42+ ln -s $prog $out/bin/`basename $prog`
43+ fi
44+ done
45+ fi
46+ done
47+ for prog in "$out/bin/"*; do
48+ wrapProgram "$prog" --prefix PYTHONPATH : "$PYTHONPATH"
49+ done
50+ pushd $out/bin
51+ ln -s ${ pythonPackages . python . executable } python
52+ ln -s ${ pythonPackages . python . executable } \
53+ python3
54+ popd
55+ '' ;
56+ passthru . interpreter = pythonPackages . python ;
57+ } ;
58+
59+ interpreter = interpreterWithPackages builtins . attrValues ;
60+ in {
61+ __old = pythonPackages ;
62+ inherit interpreter ;
63+ inherit interpreterWithPackages ;
64+ mkDerivation = args : pythonPackages . buildPythonPackage ( args // {
65+ nativeBuildInputs = ( args . nativeBuildInputs or [ ] ) ++ args . buildInputs ;
66+ } ) ;
67+ packages = pkgs ;
68+ overrideDerivation = drv : f :
69+ pythonPackages . buildPythonPackage (
70+ drv . drvAttrs // f drv . drvAttrs // { meta = drv . meta ; }
71+ ) ;
72+ withPackages = pkgs'' :
73+ withPackages ( pkgs // pkgs'' ) ;
74+ } ;
75+
76+ python = withPackages { } ;
77+
78+ generated = self : {
79+ "pydantic" = python . mkDerivation {
80+ name = "pydantic-1.7.3" ;
81+ src = pkgs . fetchurl {
82+ url = "https://files.pythonhosted.org/packages/67/da/955ec31a0c8989da0926192bf08e30359fb3f15ed2fab1bc2ced87d7bd76/pydantic-1.7.3.tar.gz" ;
83+ sha256 = "213125b7e9e64713d16d988d10997dabc6a1f73f3991e1ff8e35ebb1409c7dc9" ;
84+ } ;
85+ doCheck = commonDoCheck ;
86+ format = "setuptools" ;
87+ buildInputs = commonBuildInputs ++ [
88+
89+ ] ;
90+ propagatedBuildInputs = [ ] ;
91+ meta = with pkgs . stdenv . lib ; {
92+ homepage = "https://github.com/samuelcolvin/pydantic" ;
93+ license = licenses . mit ;
94+ description = "Data validation and settings management using python 3.6 type hinting" ;
95+ } ;
96+ } ;
97+ } ;
98+ localOverridesFile = ./requirements_override.nix ;
99+ localOverrides = import localOverridesFile { inherit pkgs python ; } ;
100+ commonOverrides = [
101+ ( let src = pkgs . fetchFromGitHub { owner = "nix-community" ; repo = "pypi2nix-overrides" ; rev = "90e891e83ffd9e55917c48d24624454620d112f0" ; sha256 = "0cl1r3sxibgn1ks9xyf5n3rdawq4hlcw4n6xfhg3s1kknz54jp9y" ; } ; in import "${ src } /overrides.nix" { inherit pkgs python ; } )
102+ ] ;
103+ paramOverrides = [
104+ ( overrides { inherit pkgs python ; } )
105+ ] ;
106+ allOverrides =
107+ ( if ( builtins . pathExists localOverridesFile )
108+ then [ localOverrides ] else [ ] ) ++ commonOverrides ++ paramOverrides ;
109+
110+ in python . withPackages
111+ ( fix' ( pkgs . lib . fold
112+ extends
113+ generated
114+ allOverrides
115+ )
116+ )
0 commit comments