##// END OF EJS Templates
artifacts: expose a special auth-token based artifacts download urls....
artifacts: expose a special auth-token based artifacts download urls. This will allow sharing download to external locations used new generated artifact download tokens. This feature allows also serving downloads using secret urls with all the fancy logic of our auth tokens.

File last commit:

r3600:318aba2b default
r4003:09f31efc 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;
}