Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at master 2.9 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 6 # nativeBuildInputs 7 pyqtwebengine, 8 9 # build-system 10 setuptools, 11 12 # dependencies 13 aiohttp, 14 asyncssh, 15 atomicwrites, 16 bcrypt, 17 chardet, 18 cloudpickle, 19 cookiecutter, 20 diff-match-patch, 21 fzf, 22 intervaltree, 23 ipython-pygments-lexers, 24 jedi, 25 jellyfish, 26 keyring, 27 matplotlib, 28 nbconvert, 29 numpy, 30 numpydoc, 31 packaging, 32 pickleshare, 33 psutil, 34 pygithub, 35 pygments, 36 pylint-venv, 37 pyls-spyder, 38 pyopengl, 39 python-lsp-black, 40 python-lsp-ruff, 41 python-lsp-server, 42 pyuca, 43 pyzmq, 44 qdarkstyle, 45 qstylizer, 46 qtawesome, 47 qtconsole, 48 qtpy, 49 rope, 50 rtree, 51 scipy, 52 spyder-kernels, 53 superqt, 54 textdistance, 55 three-merge, 56 watchdog, 57 yarl, 58}: 59 60buildPythonPackage rec { 61 pname = "spyder"; 62 version = "6.1.0"; 63 pyproject = true; 64 65 src = fetchPypi { 66 inherit pname version; 67 hash = "sha256-UgDGJJuwNzB0VfAMgGM/UIhNarQ6da18XKE9JGJXRjY="; 68 }; 69 70 patches = [ ./dont-clear-pythonpath.patch ]; 71 72 nativeBuildInputs = [ pyqtwebengine.wrapQtAppsHook ]; 73 74 build-system = [ setuptools ]; 75 76 pythonRelaxDeps = [ 77 "ipython" 78 "python-lsp-server" 79 ]; 80 81 dependencies = [ 82 aiohttp 83 asyncssh 84 atomicwrites 85 bcrypt 86 chardet 87 cloudpickle 88 cookiecutter 89 diff-match-patch 90 fzf 91 intervaltree 92 ipython-pygments-lexers 93 jedi 94 jellyfish 95 keyring 96 matplotlib 97 nbconvert 98 numpy 99 numpydoc 100 packaging 101 pickleshare 102 psutil 103 pygithub 104 pygments 105 pylint-venv 106 pyls-spyder 107 pyopengl 108 pyqtwebengine 109 python-lsp-black 110 python-lsp-ruff 111 python-lsp-server 112 pyuca 113 pyzmq 114 qdarkstyle 115 qstylizer 116 qtawesome 117 qtconsole 118 qtpy 119 rope 120 rtree 121 scipy 122 spyder-kernels 123 superqt 124 textdistance 125 three-merge 126 watchdog 127 yarl 128 ] 129 ++ python-lsp-server.optional-dependencies.all; 130 131 # There is no test for spyder 132 doCheck = false; 133 134 postInstall = '' 135 # Add Python libs to env so Spyder subprocesses 136 # created to run compute kernels don't fail with ImportErrors 137 wrapProgram $out/bin/spyder --prefix PYTHONPATH : "$PYTHONPATH" 138 ''; 139 140 dontWrapQtApps = true; 141 142 preFixup = '' 143 makeWrapperArgs+=("''${qtWrapperArgs[@]}") 144 ''; 145 146 meta = { 147 description = "Scientific python development environment"; 148 mainProgram = "spyder"; 149 longDescription = '' 150 Spyder (previously known as Pydee) is a powerful interactive development 151 environment for the Python language with advanced editing, interactive 152 testing, debugging and introspection features. 153 ''; 154 homepage = "https://www.spyder-ide.org/"; 155 downloadPage = "https://github.com/spyder-ide/spyder/releases"; 156 changelog = "https://github.com/spyder-ide/spyder/blob/v${version}/changelogs/Spyder-6.md"; 157 license = lib.licenses.mit; 158 maintainers = [ ]; 159 platforms = lib.platforms.linux; 160 }; 161}