##// END OF EJS Templates
pull-requests: add merge check that detects WIP marker in title. This will prevent merges in such case....
pull-requests: add merge check that detects WIP marker in title. This will prevent merges in such case. Usually WIP in title means unfinished task that needs still some work. This pattern is present in Gitlab/Github and is already quite common.

File last commit:

r3600:318aba2b default
r4099:c12e69d0 default
Show More
python-packages-overrides.nix
279 lines | 6.0 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";
localLicenses = {
repoze = {
fullName = "Repoze License";
url = http://www.repoze.org/LICENSE.txt;
};
};
in
self: super: {
"appenlight-client" = super."appenlight-client".override (attrs: {
meta = {
license = [ pkgs.lib.licenses.bsdOriginal ];
};
});
"beaker" = super."beaker".override (attrs: {
patches = [
./patches/beaker/patch-beaker-lock-func-debug.diff
./patches/beaker/patch-beaker-metadata-reuse.diff
];
});
"cffi" = super."cffi".override (attrs: {
buildInputs = [
pkgs.libffi
];
});
"cryptography" = super."cryptography".override (attrs: {
buildInputs = [
pkgs.openssl
];
});
"gevent" = super."gevent".override (attrs: {
propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
# NOTE: (marcink) odd requirements from gevent aren't set properly,
# thus we need to inject psutil manually
self."psutil"
];
});
"future" = super."future".override (attrs: {
meta = {
license = [ pkgs.lib.licenses.mit ];
};
});
"testpath" = super."testpath".override (attrs: {
meta = {
license = [ pkgs.lib.licenses.mit ];
};
});
"gnureadline" = super."gnureadline".override (attrs: {
buildInputs = [
pkgs.ncurses
];
patchPhase = ''
substituteInPlace setup.py --replace "/bin/bash" "${pkgs.bash}/bin/bash"
'';
});
"gunicorn" = super."gunicorn".override (attrs: {
propagatedBuildInputs = [
# johbo: futures is needed as long as we are on Python 2, otherwise
# gunicorn explodes if used with multiple threads per worker.
self."futures"
];
});
"nbconvert" = super."nbconvert".override (attrs: {
propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
# marcink: plug in jupyter-client for notebook rendering
self."jupyter-client"
];
});
"ipython" = super."ipython".override (attrs: {
propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
self."gnureadline"
];
});
"lxml" = super."lxml".override (attrs: {
buildInputs = [
pkgs.libxml2
pkgs.libxslt
];
propagatedBuildInputs = [
# Needed, so that "setup.py bdist_wheel" does work
self."wheel"
];
});
"mysql-python" = super."mysql-python".override (attrs: {
buildInputs = [
pkgs.openssl
];
propagatedBuildInputs = [
pkgs.libmysql
pkgs.zlib
];
});
"psycopg2" = super."psycopg2".override (attrs: {
propagatedBuildInputs = [
pkgs.postgresql
];
meta = {
license = pkgs.lib.licenses.lgpl3Plus;
};
});
"pycurl" = super."pycurl".override (attrs: {
propagatedBuildInputs = [
pkgs.curl
pkgs.openssl
];
preConfigure = ''
substituteInPlace setup.py --replace '--static-libs' '--libs'
export PYCURL_SSL_LIBRARY=openssl
'';
meta = {
license = pkgs.lib.licenses.mit;
};
});
"pyramid" = super."pyramid".override (attrs: {
meta = {
license = localLicenses.repoze;
};
});
"pyramid-debugtoolbar" = super."pyramid-debugtoolbar".override (attrs: {
meta = {
license = [ pkgs.lib.licenses.bsdOriginal localLicenses.repoze ];
};
});
"pysqlite" = super."pysqlite".override (attrs: {
propagatedBuildInputs = [
pkgs.sqlite
];
meta = {
license = [ pkgs.lib.licenses.zlib pkgs.lib.licenses.libpng ];
};
});
"python-ldap" = super."python-ldap".override (attrs: {
propagatedBuildInputs = attrs.propagatedBuildInputs ++ [
pkgs.openldap
pkgs.cyrus_sasl
pkgs.openssl
];
});
"python-pam" = super."python-pam".override (attrs: {
propagatedBuildInputs = [
pkgs.pam
];
# TODO: johbo: Check if this can be avoided, or transform into
# a real patch
patchPhase = ''
substituteInPlace pam.py \
--replace 'find_library("pam")' '"${pkgs.pam}/lib/libpam.so.0"'
'';
});
"python-saml" = super."python-saml".override (attrs: {
buildInputs = [
pkgs.libxml2
pkgs.libxslt
];
});
"dm.xmlsec.binding" = super."dm.xmlsec.binding".override (attrs: {
buildInputs = [
pkgs.libxml2
pkgs.libxslt
pkgs.xmlsec
pkgs.libtool
];
});
"pyzmq" = super."pyzmq".override (attrs: {
buildInputs = [
pkgs.czmq
];
});
"urlobject" = super."urlobject".override (attrs: {
meta = {
license = {
spdxId = "Unlicense";
fullName = "The Unlicense";
url = http://unlicense.org/;
};
};
});
"docutils" = super."docutils".override (attrs: {
meta = {
license = pkgs.lib.licenses.bsd2;
};
});
"colander" = super."colander".override (attrs: {
meta = {
license = localLicenses.repoze;
};
});
"pyramid-beaker" = super."pyramid-beaker".override (attrs: {
meta = {
license = localLicenses.repoze;
};
});
"pyramid-mako" = super."pyramid-mako".override (attrs: {
meta = {
license = localLicenses.repoze;
};
});
"repoze.lru" = super."repoze.lru".override (attrs: {
meta = {
license = localLicenses.repoze;
};
});
"python-editor" = super."python-editor".override (attrs: {
meta = {
license = pkgs.lib.licenses.asl20;
};
});
"translationstring" = super."translationstring".override (attrs: {
meta = {
license = localLicenses.repoze;
};
});
"venusian" = super."venusian".override (attrs: {
meta = {
license = localLicenses.repoze;
};
});
"supervisor" = super."supervisor".override (attrs: {
patches = [
./patches/supervisor/patch-rlimits-old-kernel.diff
];
});
# Avoid that base packages screw up the build process
inherit (basePythonPackages)
setuptools;
}