##// END OF EJS Templates
py3: packaging, further fixes for newer code....
py3: packaging, further fixes for newer code. - bumped svn to 1.14.0 - bumped libgit2 to 1.0.1 and pygit2

File last commit:

r986:5009dce2 python3
r986:5009dce2 python3
Show More
python-packages-overrides.nix
112 lines | 2.9 KiB | text/x-nix | NixLexer
/ pkgs / python-packages-overrides.nix
# Overrides for the generated python-packages.nix
#
# This function is intended to be used as an extension to the generated file
# python-packages.nix. The main objective is to add needed dependencies of C
# libraries and tweak the build instructions where needed.
{ pkgs
, basePythonPackages
}:
let
sed = "sed -i";
in
self: super: {
"cffi" = super."cffi".override (attrs: {
buildInputs = with self; attrs.buildInputs ++ [
pkgs.libffi
];
});
"dogpile.cache" = super."dogpile.cache".override (attrs: {
# dogpile wants to be both a regular module and namespace package
postPatch = ''
rm dogpile/core.py
substituteInPlace dogpile/cache/__init__.py \
--replace "from .. import __version__" "__version__ = '0.9.0'"
substituteInPlace dogpile/cache/region.py \
--replace "from . " "from dogpile.cache " \
--replace "from .. " "from dogpile.lock "
'';
});
"gevent" = super."gevent".override (attrs: {
propagatedBuildInputs = with self; attrs.propagatedBuildInputs ++ [
# NOTE: (marcink) odd requirements from gevent aren't set properly,
# thus we need to inject psutil manually
self."psutil"
];
});
"hgsubversion" = super."hgsubversion".override (attrs: {
propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
pkgs.sqlite
#basePythonPackages.sqlite3
self.mercurial
];
});
"subvertpy" = super."subvertpy".override (attrs: {
SVN_PREFIX = "${pkgs.subversion.dev}";
nativeBuildInputs = with self; attrs.nativeBuildInputs ++ [
pkgs.apr.dev
pkgs.aprutil
pkgs.subversionrc
];
buildInputs = with self; attrs.buildInputs ++ [
pkgs.subversionrc
];
});
"mercurial" = super."mercurial".override (attrs: {
nativeBuildInputs = with self; attrs.nativeBuildInputs ++ [
# self.python.modules.curses
];
postInstall = ''
rm -f $out/${self.python.sitePackages}/hgext3rd/__pycache__/__init__.*.pyc
'';
});
"hg-evolve" = super."hg-evolve".override (attrs: {
postInstall = ''
rm -f $out/${self.python.sitePackages}/hgext3rd/__init__.py
rm -f $out/${self.python.sitePackages}/hgext3rd/__init__.pyc
'';
});
"dulwich" = super."dulwich".override (attrs: {
patches = [
./patches/dulwich/handle-dir-refs.patch
];
});
"pygit2" = super."pygit2".override (attrs: {
nativeBuildInputs = with self; attrs.nativeBuildInputs ++ [
pkgs.libffi
pkgs.libgit2rc
];
buildInputs = with self; attrs.buildInputs ++ [
pkgs.libgit2rc
];
});
"py" = super."py".override (attrs: {
buildInputs = with self; attrs.buildInputs ++ [
self."setuptools-scm"
];
});
"zipp" = super."zipp".override (attrs: {
buildInputs = with self; attrs.buildInputs ++ [
self."toml"
];
});
# Avoid that base packages screw up the build process
inherit (basePythonPackages)
setuptools;
}