Commit graph

72717 commits

Author SHA1 Message Date
Maxim Cournoyer d7354701dc
gnu: intel-xed: Update to 12.0.1.
This fixes the build on Python 3.9.

* gnu/packages/assembly.scm (intel-xed): Update to 12.0.1.
2021-02-01 11:53:50 -05:00
Maxim Cournoyer 97bb78ad7c
gnu: python-hyperkitty: Do not set PYTHONPATH.
* gnu/packages/mail.scm (python-hyperkitty)
[phases]{check}: Do not set PYTHONPATH.
2021-02-01 11:53:50 -05:00
Maxim Cournoyer 96bc1b499f
gnu: graphite2: Do not alter PYTHONPATH.
* gnu/packages/fontutils.scm (graphite2)[arguments]: Remove field.
2021-02-01 11:53:50 -05:00
Maxim Cournoyer 3d9e8062bf
gnu: python-django-url-filter: Do not alter PYTHONPATH.
* gnu/packages/django.scm (python-django-url-filter)
[phases]: Delete trailing #t.
{check}: Do not alter PYTHONPATH.
2021-02-01 11:53:50 -05:00
Maxim Cournoyer 1df75a20b0
gnu: python-django-statici18n: Do not read PYTHONPATH.
* gnu/packages/django.scm (python-django-statici18n)
[phases]{check}: Do not read PYTHONPATH from environment.  Do not set
build/lib explicitly (the install site path is already in the Guix
PYTHONPATH).
2021-02-01 11:53:49 -05:00
Maxim Cournoyer f7f507b577
gnu: python-django-appconf: Do not alter PYTHONPATH.
* gnu/packages/django.scm (python-django-appconf)
[phases]{check}: Do not alter PYTHONPATH.
2021-02-01 11:53:49 -05:00
Maxim Cournoyer 283d5ac97f
gnu: python-django-sortedm2m: Do not alter PYTHONPATH.
* gnu/packages/django.scm (python-django-sortedm2m)
[phases]{check}: Do not alter PYTHONPATH.  Remove trailing #t.
2021-02-01 11:53:49 -05:00
Maxim Cournoyer de66b6fedb
gnu: python-django-pipeline: Do not alter PYTHONPATH.
* gnu/packages/django.scm (python-django-pipeline): Remove trailing #t.
[phases]{check}: Do not alter PYTHONPATH.
2021-02-01 11:53:49 -05:00
Maxim Cournoyer 905127eb18
gnu: python-django-contact-form: Do not alter PYTHONPATH.
* gnu/packages/django.scm (python-django-contact-form):
[phases]{check}: Do not alter PYTHONPATH.
2021-02-01 11:53:49 -05:00
Maxim Cournoyer fbf120aad8
gnu: python-pytest-django: Do not alter PYTHONPATH.
* gnu/packages/django.scm (python-django): Remove trailing #t.
[phases]{check}: Do not alter PYTHONPATH.
2021-02-01 11:53:49 -05:00
Maxim Cournoyer 774812df96
gnu: python-django: Do not alter PYTHONPATH.
* gnu/packages/django.scm (python-django): Remove trailing #t.
[phases]{pre-check,check}: Do not alter PYTHONPATH.
2021-02-01 11:53:48 -05:00
Maxim Cournoyer 0b701d77e7
gnu: python-rpy2: Do not set PYTHONPATH.
* gnu/packages/statistics.scm (python-rpy2)[arguments]: Remove the '#:modules'
argument.
[phases]{check}: Do not set PYTHONPATH.
2021-02-01 11:53:48 -05:00
Maxim Cournoyer e3bc7881f2
gnu: ghmm: Do not set PYTHONPATH.
* gnu/packages/machine-learning.scm (ghmm): Remove trailing #t.
[phases]: Do not reorder the check phase after the install phase.
{fix-PYTHONPATH}: Remove phase.
2021-02-01 11:53:48 -05:00
Maxim Cournoyer 4327f06ed5
gnu: tensorflow: Do not alter PYTHONPATH.
* gnu/packages/machine-learning.scm (tensorflow)[phases]: Delete trailing #t.
{fix-python-build}: Do not alter PYTHONPATH.
2021-02-01 11:53:48 -05:00
Maxim Cournoyer a658d38b13
gnu: python-libtmux: Do not set PYTHONPATH.
* gnu/packages/tmux.scm (python-libtmux)[phases]{check}: Do not set PYTHONPATH.
2021-02-01 11:53:48 -05:00
Maxim Cournoyer df09535fc9
gnu: python-pyhamcrest: Update to 2.0.2.
* gnu/packages/check.scm (python-pyhamcrest): Update to 2.0.2.
[propagated-inputs]: Remove python-six.
[phases]{check}: Do not set PYTHONPATH.
(python2-pyhamcrest): Remove variable.
2021-02-01 11:53:48 -05:00
Maxim Cournoyer 25c18d5385
gnu: behave: Do not set PYTHONPATH.
* gnu/packages/check.scm (behave)[arguments]: Remove the '#:phases' argument.
[propagated-inputs]: Remove python-importlib-metadata and python-six.
2021-02-01 11:53:48 -05:00
Maxim Cournoyer 1ed567c872
gnu: ganeti: Do not set PYTHONPATH.
* gnu/packages/virtualization.scm (ganeti): Remove trailing #t.
[phases]{build-bash-completions}: Do not set PYTHONPATH.
{pre-check}: Do patch PYTHONPATH from script.
{wrap}: Use the new GUIX_PYTHONPATH environment variable.
2021-02-01 11:53:47 -05:00
Maxim Cournoyer 40b67a1f2a
gnu: linkchecker: Do not set PYTHONPATH.
* gnu/packages/web.scm (linkchecker): Remove trailing #t.
[phases]: Do not reorder the check phase after the install phase.
{check}: Do not set PYTHONPATH.
2021-02-01 11:53:47 -05:00
Maxim Cournoyer 220a153c2f
gnu: python-cffi: Do not set PYTHONPATH.
* gnu/packages/libffi.scm (python-cffi): Remove trailing #t.
[phases]{check}: Do not set PYTHONPATH.
2021-02-01 11:53:47 -05:00
Maxim Cournoyer fcaec1c756
gnu: python-xmlschema: Do not set PYTHONPATH.
* gnu/packages/xml.scm (python-xmlschema): Remove trailing #t.
[phases]{check}: Do not set PYTHONPATH.
2021-02-01 11:53:47 -05:00
Maxim Cournoyer 44db90b39f
gnu: python-loompy: Do not set PYTHONPATH.
* gnu/packages/bioinformatics.scm (python-loompy)
[phases]{check}: Do not set PYTHONPATH.
2021-02-01 11:53:47 -05:00
Maxim Cournoyer 21ce20bd2f
gnu: python-scanpy: Do not set PYTHONPATH.
* gnu/packages/bioinformatics.scm (python-scanpy)[phases]
{check}: Do not set PYTHONPATH.
2021-02-01 11:53:47 -05:00
Maxim Cournoyer 3c0b373310
gnu: python-screed: Adjust following Python build system changes.
* gnu/packages/bioinformatics.scm (python-screed)[arguments]: Remove field, no
longer necessary.
2021-02-01 11:53:47 -05:00
Maxim Cournoyer 5e47bebf3b
gnu: bamm: Update following changes to the Python build system.
* gnu/packages/bioinformatics.scm (bamm): Delete trailing #t.
[phases]{check}: Override rather than delete phase.  Remove trailing #t.
{post-install-check}: Delete phase.
{wrap-executable}: Also wrap with the new GUIX_PYTHONPATH.
2021-02-01 11:53:46 -05:00
Maxim Cournoyer 98769a7709
gnu: python-pysam: Adjust following Python build system changes.
* gnu/packages/bioinformatics.scm (python-pysam)[arguments]: Remove the
'#:modules' argument.
[phases]: Remove trailing #t.
{check}: Do not manually set PYTHONPATH.
2021-02-01 11:53:46 -05:00
Maxim Cournoyer 25798ca0e0
gnu: python-pybedtools: Streamline following Python build system changes.
* gnu/packages/bioinformatics.scm (python-pybedtools): Remove trailing #t.
[phases]{check}: Do not manually set PYTHONPATH.
[arguments]: Remove the '#:modules' argument.
2021-02-01 11:53:46 -05:00
Maxim Cournoyer 3016f1f21a
gnu: intel-xed: Adjust build phase.
* gnu/packages/assembly.scm (intel-xed)
[phases]: Delete trailing #t.
{build}: Do not read PYTHONPATH from environment.
2021-02-01 11:53:46 -05:00
Maxim Cournoyer 0a3226e8fc
gnu: solaar: Do not read PYTHONPATH from environment.
* gnu/packages/admin.scm (solaar)
[phases]{setenv-PATH}: Do not read PYTHONPATH from environment.
2021-02-01 11:53:46 -05:00
Maxim Cournoyer 6f54af26ce
gnu: python2-virtualenv: Fix build.
* gnu/packages/python-xyz.scm (python2-virtualenv)[arguments]{phases}: Remove
argument.
2021-02-01 11:53:46 -05:00
Lars-Dominik Braun 73068c77f1
gnu: python2-packaging-bootstrap: Add missing dependency
* gnu/packages/python-xyz.scm (python2-packaging-bootstrap)
[propagated-inputs]: Add python2-six-bootstrap.
2021-02-01 11:53:45 -05:00
Lars-Dominik Braun 42b89fbf30
gnu: python-traceback2: Add missing dependency.
* gnu/packages/python-xyz.scm (python-traceback2)[propagated-inputs]:
Add python-six.
2021-02-01 11:53:45 -05:00
Lars-Dominik Braun 1ea198f862
gnu: python-packaging-bootstrap: Remove dependency.
* gnu/packages/python-xyz.scm (python-packaging-bootstrap) [arguments]:
Remove dependency from setup.py, which we do not provide for this
variant.
2021-02-01 11:53:45 -05:00
Lars-Dominik Braun e97e6c05cd
gnu: python-automat: Remove broken console script.
* gnu/packages/python-xyz.scm (python-automat) [arguments]: Patch
setup.py.
2021-02-01 11:53:45 -05:00
Lars-Dominik Braun 0868479d08
gnu: python-twisted: Remove broken console scripts.
* gnu/packages/python-xyz.scm (python-twisted) [arguments]: Patch
setup.py.
2021-02-01 11:53:45 -05:00
Lars-Dominik Braun 1ae919ec21
gnu: python-idna-ssl: Add missing input.
* gnu/packages/python-xyz.scm (python-idna-ssl)[propagated-inputs]: Add
python-idna.
2021-02-01 11:53:45 -05:00
Lars-Dominik Braun 32fcc9ba57
gnu: python-traitlets: Add missing input.
* gnu/packages/python-xyz.scm (python-traitlets)[propagated-inputs]:
Add python-six.
2021-02-01 11:53:44 -05:00
Lars-Dominik Braun 02b39eaafb
gnu: python-black: Remove blackd.
* gnu/packages/python-xyz.scm (python-black) [arguments]: Add new phase
to prevent installation of blackd.
2021-02-01 11:53:44 -05:00
Lars-Dominik Braun 9dd5fa2ea6
gnu: python-websockets: Fix Python package name.
* gnu/packages/python-web.scm (python-websockets) [arguments]: Add new
phase to fix package name.
2021-02-01 11:53:44 -05:00
Lars-Dominik Braun 774277ac79
gnu: python-slugify: Add missing input.
* gnu/packages/python-web.scm (python-slugify) [propagated-inputs]: Add
python-text-unidecode.
2021-02-01 11:53:44 -05:00
Lars-Dominik Braun cfe2cf2a29
gnu: python-pyfakefs: Disable unreliable test
* gnu/packages/check.scm (python-pyfakefs) [arguments]: Add new phase to
skip single test.
2021-02-01 11:53:44 -05:00
Lars-Dominik Braun 355d87a0a5
gnu: python-pytest-pep8: Fix package.
* gnu/packages/check.scm (python-pytest-pep8)[arguments]: Remove
dependency on pytest-cache and add proper 'check phase.
2021-02-01 11:53:44 -05:00
Lars-Dominik Braun da3c8e53c4
gnu: python-fixtures-bootstrap: Do not sanity check.
* gnu/packages/check.scm (python-fixtures-bootstrap)
[phases]{sanity-check}: Delete.
2021-02-01 11:53:44 -05:00
Lars-Dominik Braun 1a9d771f99
gnu: python-pytest-xdist: Add missing input, relax pytest requirement.
* gnu/packages/check.scm: (python-pytest-xdist)
[arguments]: Relax pytest version requirements.
[propagated-inputs]: Add python-pytest-forked.
2021-02-01 11:53:43 -05:00
Lars-Dominik Braun 09448c0994
build/python: Add a sanity check phase.
Add a new phase validating the usability of installed Python packages.

* gnu/packages/aux-files/python/sanity-check.py: New file.
* Makefile.am (AUX_FILES): Register it.
* guix/build-system/python.scm (sanity-check.py): New variable.
(lower): Add the script as an implicit input.
* guix/build/python-build-system.scm: Remove trailing #t.
(sanity-check): New phase.
(%standard-phases): Use it.
* tests/builders.scm: (make-python-dummy)
(dummy-ok, dummy-dummy-nosetuptools, dummy-fail-requirements)
(dummy-fail-import, dummy-fail-console-script): New variables.
("python-build-system: dummy-ok")
("python-build-system: dummy-dummy-nosetuptools")
("python-build-system: dummy-fail-requirements")
("python-build-system: dummy-fail-import")
("python-build-system: dummy-fail-console-script"): Add tests.
2021-02-01 11:53:43 -05:00
Maxim Cournoyer 8a15ecf0e3
build/python: Adjust wrap phase to use the new GUIX_PYTHONPATH.
* guix/build/python-build-system.scm (wrap): Adjust to use the new
GUIX_PYTHONPATH.  Remove trailing #t.
2021-02-01 11:53:43 -05:00
Maxim Cournoyer 15dcffecf2
build/python: Add the installation bin directory to PATH.
This also to reduce the need for boilerplate code found in check phase
overrides.

* guix/build/python-build-system.scm (add-install-to-path): New phase.
(%standard-phases): Order it before the check phase.
2021-02-01 11:53:43 -05:00
Maxim Cournoyer 91cf9d17f0
build/python: Always add the install prefix to the Guix PYTHONPATH.
This is to remove the need for common boilerplate code in check phase
overrides.

* guix/build/python-build-system.scm
(add-installed-pythonpath): Streamline.  This phase depends on the presence of
a "python" input; thus GUIX_PYTHONPATH is guaranteed to be defined.  Update doc.
(add-install-to-pythonpath): New phase.
(%standard-phases): Order it before the check phase.
2021-02-01 11:53:43 -05:00
Maxim Cournoyer 18e9979970
build/python: Replace PYTHONPATH by GUIX_PYTHONPATH.
* guix/build/python-build-system.scm (add-installed-pythonpath): Replace
"PYTHONPATH" by "GUIX_PYTHONPATH".
2021-02-01 11:53:43 -05:00
Maxim Cournoyer cb72f9a773
gnu: python: Replace PYTHONPATH by GUIX_PYTHONPATH.
Using PYTHONPATH as a mean to discover the Python packages had the following
issues:

        1. It is not versioned, so different versions of Python would clash if
        installed in a shared profile.

        2. It would interfere with the host Python site on foreign
        distributions, sometimes preventing a a user to login their GDM
        session (!).

        3. It would take precedence over user installed Python packages
        installed through pip.

        4. It would leak into Python virtualenvs, which are supposed to create
        isolated Python environments.

This changes fixes the above issues by making use of a sitecustomize.py
module.  The newly introduced GUIX_PYTHONPATH environment variable is read
from the environment, filtered for the current Python version of the
interpreter, and spliced in 'sys.path' just before Python's own site location,
which provides the expected behavior.

* gnu/packages/aux-files/python/sitecustomize.py: New file.
* Makefile.am: Register it.
* gnu/packages/python.scm (customize-site)
(guix-pythonpath-search-path): New procedures.
(python-2.7)[phases]{install-sitecustomize.py}: New phase.
[native-inputs]{sitecustomize.py}: New input.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
(python-3.9)[native-search-paths]: Likewise.
[phases]{install-sitecustomize}: Override with correct version.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
* gnu/packages/commencement.scm (python-boot0):
[phases]{install-sitecustomize}: Likewise.
[native-inputs]{sitecustomize.py}: New input.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
* guix/build/python-build-system.scm (site-packages): Do not add a trailing
'/'.

squash! gnu: python: Replace PYTHONPATH by GUIX_PYTHONPATH.
2021-02-01 11:53:42 -05:00