
96BoardsGPIO accerciser adaptx ade adolc aelfred aer-inject Agda alembic alkimia allegro alure amtk analyzeMFT angelscript anjuta anjuta-extras ansible ansible-cmdb ansifilter ant-junit5 antlr-bootstrap antlr-maven-plugin antlr3 antlr3-bootstrap antlr3-java antlr3c apache-commons … 2020. If anyone objects to this I'm happy to reopen and consider ways forward.Ntplib python example.

I haven't, I just trust the members of that community to do a decent job (especially since the whole stack is open source), just as you trust the members of the Ubuntu community to do theirs.Īnyway, that's all a big aside, for now I will suggest that we close this issue and recommend use of conda or virtualenv to install both napari and its dependencies. btw for the open alternatives of miniforge and mamba-forge, you can see the recipe for making the installers here, though it's not very illuminating unless you go fish around to see what constructor does. Pillow, an image reader library that we depend on, has seen plenty of security issues, and of course, anything that did logging in Java was massively compromised - including stuff installed with apt.Ĭonda btw installs in user space (no sudo required), and fully open implementations such as mamba exist to do the same thing.
SUDO APT GET INSTALL PYQT5 DEV TOOLS CODE
Literally anything you install with pip can execute arbitrary code on install or import, including its dependencies, including proprietary binary blobs. At the very least it overestimates the security practices of napari, scikit-image, and any number of related libraries that you install via pip. Tbh I find this to be a red herring argument. since they install via the "download and run this untrusted 50mb shell script" technique.) (nor looking to install just for this lib, esp. In short, one day, I hope you can do sudo apt install python-napari and stuff will Just Work, but until then, I think mixing pip and apt is a recipe for broken Python installs. I don't think we want to encourage this installation path as supported, as it's very uncommon in Python circles. ModuleNotFoundError: No module named 'PyQt5.pyrcc_main' > 178 from PyQt5.pyrcc_main import processResourceFileġ80 # could not capture stdout no matter what I tried, so using a temp file. They provide access via a helper function in `pyrcc_main`. ~/.local/lib/python3.9/site-packages/napari/_qt/qt_resources/_icons.py in _compile_qrc_pyqt5(qrc)ġ76 PyQt5.pyrcc. > 229 return _compile_qrc_pyqt5(qrc).replace(b'PyQt5', b'qtpy')Ģ31 return _compile_qrc_pyside2(qrc).replace(b'PySide2', b'qtpy')

~/.local/lib/python3.9/site-packages/napari/_qt/qt_resources/_icons.py in compile_qrc(qrc)Ģ27 """Compile a qrc file into a resources.py bytes""" ~/.local/lib/python3.9/site-packages/napari/_qt/qt_resources/_icons.py in _compile_napari_resources(save_path)ģ24 with _temporary_qrc_file(svgs, prefix='themes') as qrc: > 388 resources = _compile_napari_resources(save_path=persist and save_path)ģ90 _clear_resources = globals()


~/.local/lib/python3.9/site-packages/napari/_qt/qt_resources/_icons.py in _register_napari_resources(persist, force_rebuild)ģ86 _clear_resources = getattr(mod, "qCleanupResources") ~/.local/lib/python3.9/site-packages/napari/_qt/qt_event_loop.py in get_app(app_name, app_version, icon, org_name, org_domain, app_id, ipy_interactive)ġ83 # this will register all of our resources (icons) with Qt, so that theyġ84 # can be used in qss files and elsewhere.ġ87 _app_ref = app # prevent garbage collection ~/.local/lib/python3.9/site-packages/napari/_qt/qt_main_window.py in _init_(self, viewer, show)Ĥ02 def _init_(self, viewer: 'Viewer', *, show: bool = True):Ĥ03 # create QApplication if it doesn't already exist This is needed to keep window off pydantic model > 54 self._window = Window(self, show=show)ĥ6 # Expose private window publically. ~/.local/lib/python3.9/site-packages/napari/viewer.py in _init_(self, title, ndisplay, order, axis_labels, show)
