diff --git a/docker/mpes/.webtop.profile b/docker/mpes/.webtop.profile new file mode 100644 index 0000000000000000000000000000000000000000..487133edc4408b89e38783e14ae4ade0f943fec9 --- /dev/null +++ b/docker/mpes/.webtop.profile @@ -0,0 +1,7 @@ +# if running bash +if [ -n "$BASH_VERSION" ]; then + # include .bashrc if it exists + if [ -f "$HOME/.bashrc" ]; then + . "$HOME/.bashrc" + fi +fi \ No newline at end of file diff --git a/docker/mpes/02-exec-igor b/docker/mpes/02-exec-igor old mode 100644 new mode 100755 index 91c751db80cb6f3279f2adcf8638f1550073a526..a05da0427e3ba46cbe9696fde6dd752043aeae1b --- a/docker/mpes/02-exec-igor +++ b/docker/mpes/02-exec-igor @@ -1,4 +1,39 @@ #!/usr/bin/with-contentenv bash # Add the command to run an app on startup -echo "wine /config/.wine/drive_c/Program\ Files/WaveMetrics/Igor\ Pro\ 8\ Folder/IgorBinaries_x64/Igor64.exe" > /config/.config/openbox/autostart \ No newline at end of file +cat << EOF > /config/.config/openbox/autostart +rm -rf "/config/.wine/drive_c/users/abc/Documents/WaveMetrics/Igor Pro 8 User Files" +ln -s "/mnt/pcshare/igor/Igor Pro 8 User Files" "/config/.wine/drive_c/users/abc/Documents/WaveMetrics/Igor Pro 8 User Files" +wine /config/.wine/drive_c/Program\ Files/WaveMetrics/Igor\ Pro\ 8\ Folder/IgorBinaries_x64/Igor64.exe +EOF + +cat << EOF > /config/.config/openbox/menu.xml +<?xml version="1.0" encoding="utf-8"?> +<openbox_menu xmlns="http://openbox.org/3.4/menu"> +<menu id="root-menu" label="MENU"> +<item label="xterm" icon="/usr/share/icons/hicolor/48x48/apps/xterm-color.png"><action name="Execute"><command>/usr/bin/xterm</command></action></item> +<item label="Featherpad" icon="/usr/share/icons/hicolor/scalable/apps/featherpad.svg"><action name="Execute"><command>/usr/bin/featherpad</command></action></item> +<item label="Firefox" icon="/usr/share/icons/hicolor/48x48/apps/firefox.png"><action name="Execute"><command>/usr/bin/firefox</command></action></item> +<item label="OBConf" icon="/usr/share/pixmaps/obconf.png"><action name="Execute"><command>/usr/bin/obconf</command></action></item> +<item label="Igor" icon="/usr/share/pixmaps/obconf.png"><action name="Execute"><command>wine /config/.wine/drive_c/Program\ Files/WaveMetrics/Igor\ Pro\ 8\ Folder/IgorBinaries_x64/Igor64.exe</command></action></item> +<item label="Reload OB"><action name="Reconfigure"/></item> +</menu> +</openbox_menu> +EOF + +cat << EOF > /config/.config/openbox/rc.xml +<context name="Desktop"> + <mousebind button="Up" action="Click"> + <action name="GoToDesktop"> + <to>previous</to> + <wrap>no</wrap> + </action> + </mousebind> + <mousebind button="Down" action="Click"> + <action name="GoToDesktop"> + <to>next</to> + <wrap>no</wrap> + </action> + </mousebind> +</context> +EOF \ No newline at end of file diff --git a/docker/mpes/30-config b/docker/mpes/30-config index ac3b3590e8d752e2debb6907107815287ca9afdb..1875a923a70d669b6e81caa8e316b8885ffa1269 100644 --- a/docker/mpes/30-config +++ b/docker/mpes/30-config @@ -20,4 +20,8 @@ touch /lock.file # permissions PERM=$(stat -c '%U' /config/.config) [[ "${PERM}" != "abc" ]] && \ - chown -R abc:abc $(ls -a /config | awk '{if($1 != "." && $1 != ".." && $1 != "pcshare" && $1 != "localDataStore"){ print "/config/$1" }}') + chown -R abc:abc $(ls -a /config | awk '{if($1 != "." && $1 != ".." && $1 != "pcshare" && $1 != "localDataStore" && $1 != "topfloor"){ print "/config/$1" }}') + +echo `cat << EOF +alias igor="wine /config/.wine/drive_c/Program\ Files/WaveMetrics/Igor\ Pro\ 8\ Folder/IgorBinaries_x64/Igor64.exe" +EOF` >> /config/.bashrc diff --git a/docker/mpes/Dockerfile b/docker/mpes/Dockerfile index 42a9940dc066c41af15d2f2881579713514a08b4..c001637134068cbe2d47ab4108f07bad8123a3c8 100644 --- a/docker/mpes/Dockerfile +++ b/docker/mpes/Dockerfile @@ -1,17 +1,14 @@ FROM gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/webtop:v0.0.1 -COPY requirements.webtop.in ./ -COPY requirements.jupyter.in ./ +COPY requirements.webtop.txt ./ RUN apt-get update -y \ && apt-get install -y git pip qt5-default python3-pyqt5 pyqt5-dev-tools cargo unzip \ && apt-get clean && rm -rf /var/lib/apt/lists/* -RUN pip install -r requirements.jupyter.in -RUN pip install -r requirements.webtop.in +RUN pip install -r requirements.webtop.txt RUN jupyter nbextension enable --py widgetsnbextension \ && jupyter serverextension enable jupyterlab_h5web \ && jupyter lab build -RUN rm requirements.webtop.in -RUN rm requirements.jupyter.in +RUN rm requirements.webtop.txt COPY 02-exec-cmd /config/custom-cont-init.d/02-exec-cmd WORKDIR /config diff --git a/docker/mpes/Dockerfile.fhi b/docker/mpes/Dockerfile.fhi index b658cd08af8938755de96d940155af4c792eb1fd..bd257e25116869c1b0a3c3b978b00b73fb9ee290 100644 --- a/docker/mpes/Dockerfile.fhi +++ b/docker/mpes/Dockerfile.fhi @@ -1,23 +1,21 @@ FROM gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/webtop:v0.0.1 -COPY requirements.webtop.in ./ -COPY requirements.jupyter.in ./ +COPY requirements.webtop.txt ./ RUN apt-get update -y \ - && apt-get install -y git pip qt5-default python3-pyqt5 pyqt5-dev-tools cargo unzip \ + && apt-get install -y git pip qt5-default python3-pyqt5 pyqt5-dev-tools cargo unzip vim \ && apt-get clean && rm -rf /var/lib/apt/lists/* -RUN pip install -r requirements.jupyter.in -RUN pip install -r requirements.webtop.in +RUN pip install -r requirements.webtop.txt RUN jupyter nbextension enable --py widgetsnbextension \ && jupyter serverextension enable jupyterlab_h5web \ && jupyter lab build -RUN rm requirements.webtop.in -RUN rm requirements.jupyter.in +RUN rm requirements.webtop.txt COPY 02-exec-cmd /config/custom-cont-init.d/02-exec-cmd WORKDIR /config ENV PGID=5050 COPY 30-config /etc/cont-init.d/30-config +COPY --chown=1000:5050 .webtop.profile /config/.profile RUN ln -s /config/pcshare /mnt/pcshare RUN mkdir /scratch RUN ln -s /config/localDataStore /scratch/localDataStore diff --git a/docker/mpes/Dockerfile.igor b/docker/mpes/Dockerfile.igor index 865da3e9b2e003522b2162c66fdc8ba43e3669d2..3d2b43fe88796ab6fe8c16804f53c475c9bdaf78 100644 --- a/docker/mpes/Dockerfile.igor +++ b/docker/mpes/Dockerfile.igor @@ -1,6 +1,6 @@ FROM gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/webtop:v0.0.1 -RUN apt-get update -y && apt-get install -y wget +RUN apt-get update -y && apt-get install -y wget vim RUN dpkg --add-architecture i386 && \ mkdir -pm755 /etc/apt/keyrings && \ wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key && \ @@ -16,8 +16,9 @@ WORKDIR /config ENV PGID=5050 COPY 30-config /etc/cont-init.d/30-config +COPY --chown=1000:5050 .webtop.profile /config/.profile RUN ln -s /config/pcshare /mnt/pcshare RUN mkdir /scratch RUN ln -s /config/localDataStore /scratch/localDataStore -RUN mkdir /etc/sed -RUN ln -s /mnt/pcshare/sed/config.yaml /etc/sed/config.yaml \ No newline at end of file +RUN ln -s /config/topfloor /mnt/topfloor +RUN ln -s "/mnt/pcshare/igor/Igor Pro 8 User Files" "/config/.wine/drive_c/users/abc/Documents/WaveMetrics/Igor Pro 8 User Files" \ No newline at end of file diff --git a/docker/mpes/example/mpes.scheme.archive.yml b/docker/mpes/example/mpes.scheme.archive.yml index ad13375b988fba7ccf795acd307d08b3a025cb3e..4fd29d4b58cb203444fd51554ace3498f0f633a4 100644 --- a/docker/mpes/example/mpes.scheme.archive.yml +++ b/docker/mpes/example/mpes.scheme.archive.yml @@ -114,11 +114,6 @@ definitions: eln: component: NumberEditQuantity defaultDisplayUnit: "1/angstrom" - slow_axes: - type: str - m_annotations: - eln: - component: StringEditQuantity Source: section: sub_sections: diff --git a/docker/mpes/requirements.jupyter.in b/docker/mpes/requirements.jupyter.in index cccb48a05130e2a6238eb2b9c4499dd500239c1f..411ecefc762903490044333653c775d6d94d8b98 100644 --- a/docker/mpes/requirements.jupyter.in +++ b/docker/mpes/requirements.jupyter.in @@ -1,5 +1,5 @@ nodejs -pynxtools>0.0.3 +pynxtools>0.0.4 ipywidgets<8.0.0,>=7.0.1 h5glance>=0.8 h5grove>=1.1.0 diff --git a/docker/mpes/requirements.jupyter.txt b/docker/mpes/requirements.jupyter.txt index c9aedd6932b58883a562196d29ff2e8e16ccef69..02452b7f302199f285eccec064579c9b6db08597 100644 --- a/docker/mpes/requirements.jupyter.txt +++ b/docker/mpes/requirements.jupyter.txt @@ -640,7 +640,7 @@ pygments==2.15.1 # ipython # nbconvert # sphinx -pynxtools==0.0.4 +pynxtools==0.0.5 # via # -r requirements.jupyter.in # sed @@ -752,7 +752,7 @@ scipy==1.8.1 # sed # sparse # symmetrize -sed @ git+https://github.com/OpenCOMPES/sed.git@mpes-merged +sed @ git+https://github.com/OpenCOMPES/sed.git@87e793e # via -r requirements.jupyter.in send2trash==1.8.2 # via diff --git a/docker/mpes/requirements.webtop.txt b/docker/mpes/requirements.webtop.txt new file mode 100644 index 0000000000000000000000000000000000000000..21f155f54e8b743af2f6289d284e078686eb16de --- /dev/null +++ b/docker/mpes/requirements.webtop.txt @@ -0,0 +1,1085 @@ +# +# This file is autogenerated by pip-compile with Python 3.8 +# by the following command: +# +# pip-compile +# +aiofiles==22.1.0 + # via ypy-websocket +aiosqlite==0.19.0 + # via ypy-websocket +alabaster==0.7.13 + # via sphinx +ansi2html==1.8.0 + # via nexpy +anyio==3.7.1 + # via jupyter-server +argon2-cffi==21.3.0 + # via + # jupyter-server + # nbclassic + # notebook +argon2-cffi-bindings==21.2.0 + # via argon2-cffi +arpes @ git+https://github.com/FAIRmat-Experimental/arpes.git + # via -r requirements.in +arrow==1.2.3 + # via isoduration +asciitree==0.3.3 + # via zarr +ase==3.21.1 + # via + # arpes + # ifes-apt-tc-data-modeling + # pynxtools +asteval==0.9.31 + # via lmfit +astropy==5.2.2 + # via + # arpes + # mpes + # photutils + # symmetrize +asttokens==2.2.1 + # via stack-data +attrs==23.1.0 + # via + # cattrs + # jsonschema + # referencing + # requests-cache +babel==2.12.1 + # via + # jupyterlab-server + # sphinx +backcall==0.2.0 + # via ipython +backports-zoneinfo==0.2.1 + # via + # pytz-deprecation-shim + # tzlocal +beautifulsoup4==4.12.2 + # via nbconvert +bleach==6.0.0 + # via nbconvert +blosc2==2.0.0 + # via tables +bokeh==2.4.3 + # via + # arpes + # dask + # mpes + # sed +cattrs==23.1.2 + # via requests-cache +certifi==2023.7.22 + # via + # netcdf4 + # requests +cffi==1.15.1 + # via argon2-cffi-bindings +cftime==1.6.2 + # via netcdf4 +charset-normalizer==3.2.0 + # via requests +click==8.1.6 + # via + # dask + # distributed + # pynxtools +cloudpickle==2.2.1 + # via + # dask + # distributed +colorama==0.4.6 + # via arpes +colorcet==3.0.1 + # via arpes +comm==0.1.4 + # via + # ipykernel + # ipywidgets +commonmark==0.9.1 + # via recommonmark +contourpy==1.1.0 + # via matplotlib +coverage==7.2.7 + # via mpes +cramjam==2.7.0 + # via fastparquet +cycler==0.11.0 + # via matplotlib +cython==3.0.0 + # via tables +dask[array,complete]==2022.12.1 + # via + # distributed + # hyperspy + # kikuchipy + # mpes + # orix + # pyxem + # sed +debugpy==1.6.7 + # via ipykernel +decorator==5.1.1 + # via + # ipyparallel + # ipython +deepdish==0.3.7 + # via mpes +defusedxml==0.7.1 + # via nbconvert +diffpy-structure==3.1.0 + # via + # diffsims + # kikuchipy + # orix +diffsims==0.5.2 + # via + # kikuchipy + # pyxem +dill==0.3.7 + # via + # arpes + # hyperspy +distributed==2022.12.1 + # via dask +docutils==0.18.1 + # via + # recommonmark + # sphinx + # sphinx-rtd-theme +entrypoints==0.4 + # via + # ipyparallel + # jupyter-client + # numcodecs +exceptiongroup==1.1.2 + # via + # anyio + # cattrs +executing==1.2.0 + # via stack-data +fabio==2023.6.0 + # via + # pyfai + # silx +fastdtw==0.3.4 + # via + # mpes + # sed +fasteners==0.18 + # via zarr +fastjsonschema==2.18.0 + # via nbformat +fastparquet==0.8.3 + # via + # mpes + # sed +flatdict==4.0.1 + # via pynxtools +fonttools==4.42.0 + # via matplotlib +fqdn==1.5.1 + # via jsonschema +fsspec==2023.6.0 + # via + # dask + # fastparquet + # hyperspy +funcy==2.0 + # via mpes +future==0.18.3 + # via uncertainties +gitdb==4.0.10 + # via gitpython +gitpython==3.1.32 + # via pynxtools +h5glance==0.8.1 + # via -r requirements.in +h5grove==1.3.0 + # via + # -r requirements.in + # jupyterlab-h5web +h5py==3.9.0 + # via + # -r requirements.in + # arpes + # h5glance + # h5grove + # hdf5plugin + # hyperspy + # ifes-apt-tc-data-modeling + # jupyterlab-h5web + # kikuchipy + # mpes + # nexpy + # nexusformat + # nionswift + # orix + # punx + # pyfai + # pynxtools + # sed + # silx +hdf5plugin==4.1.3 + # via + # jupyterlab-h5web + # nexusformat + # silx +htmlgen==2.0.0 + # via h5glance +hyperspy==1.7.5 + # via + # kikuchipy + # pynxtools + # pyxem +idna==3.4 + # via + # anyio + # jsonschema + # requests +ifes-apt-tc-data-modeling==0.0.9 + # via pynxtools +igor==0.3 + # via mpes +imageio==2.27.0 + # via + # arpes + # hyperspy + # kikuchipy + # mpes + # nionswift + # nionswift-io + # nionui + # scikit-image +imagesize==1.4.1 + # via sphinx +importlib-metadata==6.8.0 + # via + # hyperspy + # jupyter-ydoc + # jupyterlab-server + # nbconvert + # nexpy + # sphinx +importlib-resources==6.0.1 + # via + # jsonschema + # jsonschema-specifications + # matplotlib + # radioactivedecay +ipykernel==6.25.0 + # via + # ipyparallel + # nbclassic + # nexpy + # notebook + # qtconsole +ipympl==0.9.3 + # via sed +ipyparallel==8.6.1 + # via hyperspy +ipython==8.12.2 + # via + # hyperspy + # ipykernel + # ipympl + # ipyparallel + # ipywidgets + # jupyterlab + # nexpy +ipython-genutils==0.2.0 + # via + # ipympl + # ipywidgets + # nbclassic + # notebook + # qtconsole +ipywidgets==7.8.0 + # via + # -r requirements.in + # arpes + # ipympl + # pyxem + # sed +isoduration==20.11.0 + # via jsonschema +jedi==0.19.0 + # via ipython +jinja2==3.1.2 + # via + # bokeh + # dask + # distributed + # hyperspy + # jupyter-server + # jupyterlab + # jupyterlab-server + # nbclassic + # nbconvert + # notebook + # sphinx +joblib==1.3.1 + # via + # scikit-learn + # sed +json5==0.9.14 + # via jupyterlab-server +jsonpointer==2.4 + # via jsonschema +jsonschema[format-nongpl]==4.19.0 + # via + # jupyter-events + # jupyterlab-server + # nbformat +jsonschema-specifications==2023.7.1 + # via jsonschema +jupyter-client==7.4.9 + # via + # ipykernel + # ipyparallel + # jupyter-server + # nbclassic + # nbclient + # notebook + # qtconsole +jupyter-core==5.3.1 + # via + # ipykernel + # jupyter-client + # jupyter-server + # jupyterlab + # nbclassic + # nbclient + # nbconvert + # nbformat + # notebook + # qtconsole +jupyter-events==0.7.0 + # via jupyter-server-fileid +jupyter-server==1.24.0 + # via + # jupyter-server-fileid + # jupyterlab + # jupyterlab-h5web + # jupyterlab-server + # nbclassic + # notebook-shim +jupyter-server-fileid==0.9.0 + # via jupyter-server-ydoc +jupyter-server-ydoc==0.8.0 + # via jupyterlab +jupyter-ydoc==0.2.5 + # via + # jupyter-server-ydoc + # jupyterlab +jupyterlab==3.6.5 + # via -r requirements.in +jupyterlab-h5web[full]==8.0.0 + # via -r requirements.in +jupyterlab-pygments==0.2.2 + # via nbconvert +jupyterlab-server==2.24.0 + # via jupyterlab +jupyterlab-widgets==1.1.5 + # via ipywidgets +kikuchipy==0.8.7 + # via pynxtools +kiwisolver==1.4.4 + # via matplotlib +lark==1.1.7 + # via pynxtools +lazy-loader==0.3 + # via scikit-image +llvmlite==0.38.1 + # via numba +lmfit==1.2.2 + # via + # arpes + # mpes + # nexpy + # pyxem + # sed +locket==1.0.0 + # via + # distributed + # partd +lxml==4.9.3 + # via + # punx + # pyresttable +mako==1.2.4 + # via silx +markupsafe==2.1.3 + # via + # jinja2 + # mako + # nbconvert +matplotlib==3.7.2 + # via + # arpes + # ase + # diffsims + # hyperspy + # ipympl + # kikuchipy + # matplotlib-scalebar + # mpes + # mplcursors + # nexpy + # orix + # pyfai + # pyxem + # radioactivedecay + # sed + # silx + # symmetrize +matplotlib-inline==0.1.6 + # via + # ipykernel + # ipython +matplotlib-scalebar==0.8.1 + # via orix +mistune==3.0.1 + # via nbconvert +mpes==1.1.4 + # via -r requirements.in +mplcursors==0.5.2 + # via nexpy +mpmath==1.3.0 + # via sympy +msgpack==1.0.5 + # via + # blosc2 + # distributed +natsort==8.4.0 + # via + # hyperspy + # mpes + # sed +nbclassic==1.0.0 + # via + # jupyterlab + # notebook +nbclient==0.8.0 + # via nbconvert +nbconvert==7.7.3 + # via + # jupyter-server + # nbclassic + # notebook +nbformat==5.9.2 + # via + # jupyter-server + # nbclassic + # nbclient + # nbconvert + # notebook +nest-asyncio==1.5.7 + # via + # ipykernel + # jupyter-client + # nbclassic + # notebook +netcdf4==1.6.4 + # via arpes +networkx==3.1 + # via + # radioactivedecay + # scikit-image +nexpy==1.0.4 + # via -r requirements.in +nexusformat==1.0.2 + # via nexpy +niondata==0.15.3 + # via + # nionswift + # nionswift-io +nionswift==0.16.8 + # via pynxtools +nionswift-io==0.15.1 + # via nionswift +nionui==0.6.10 + # via nionswift +nionutils==0.4.6 + # via + # niondata + # nionswift + # nionswift-io + # nionui +nodejs==0.1.1 + # via -r requirements.in +nose==1.3.7 + # via mpes +notebook==6.5.5 + # via + # jupyterlab + # widgetsnbextension +notebook-shim==0.2.3 + # via nbclassic +numba==0.55.2 + # via + # arpes + # diffsims + # hyperspy + # kikuchipy + # mpes + # orix + # pyxem + # sed + # sparse +numcodecs==0.11.0 + # via zarr +numexpr==2.8.5 + # via + # hyperspy + # pyfai + # tables +numpy==1.21.6 + # via + # -r requirements.in + # arpes + # ase + # astropy + # bokeh + # cftime + # contourpy + # dask + # deepdish + # diffsims + # fabio + # fastdtw + # fastparquet + # h5grove + # h5py + # hyperspy + # ifes-apt-tc-data-modeling + # imageio + # ipympl + # kikuchipy + # lmfit + # matplotlib + # mpes + # netcdf4 + # nexpy + # nexusformat + # niondata + # nionswift + # nionswift-io + # nionui + # numba + # numcodecs + # numexpr + # numpy-quaternion + # opencv-python + # orix + # pandas + # photutils + # punx + # pyerfa + # pyfai + # pynxtools + # pyopencl + # pyqtgraph + # pyresttable + # pywavelets + # pyxem + # radioactivedecay + # scikit-image + # scikit-learn + # scipy + # sed + # silx + # sparse + # symmetrize + # tables + # tifffile + # xarray + # zarr +numpy-quaternion==2022.4.3 + # via orix +opencv-python==4.8.0.74 + # via + # mpes + # symmetrize +optional-django==0.1.0 + # via nodejs +orix==0.11.1 + # via + # diffsims + # kikuchipy + # pyxem +orjson==3.9.3 + # via h5grove +packaging==23.1 + # via + # arpes + # astropy + # bokeh + # dask + # distributed + # fastparquet + # hyperspy + # ipykernel + # jupyter-server + # jupyterlab + # jupyterlab-server + # matplotlib + # nbconvert + # pooch + # qtconsole + # qtpy + # scikit-image + # sphinx + # tables +pandas==1.5.3 + # via + # arpes + # dask + # fastparquet + # ifes-apt-tc-data-modeling + # mpes + # pynxtools + # sed + # xarray +pandocfilters==1.5.0 + # via nbconvert +param==1.13.0 + # via pyct +parso==0.8.3 + # via jedi +partd==1.4.0 + # via dask +pexpect==4.8.0 + # via ipython +photutils==1.8.0 + # via + # mpes + # symmetrize +pickleshare==0.7.5 + # via ipython +pillow==10.0.0 + # via + # bokeh + # imageio + # ipympl + # matplotlib + # nexpy + # nionswift + # scikit-image + # silx +pint==0.21.1 + # via + # arpes + # hyperspy +pkgutil-resolve-name==1.3.10 + # via jsonschema +platformdirs==3.10.0 + # via + # jupyter-core + # pooch + # pyopencl + # pytools + # requests-cache +pooch==1.7.0 + # via + # kikuchipy + # orix +prettytable==3.8.0 + # via hyperspy +prometheus-client==0.17.1 + # via + # jupyter-server + # nbclassic + # notebook +prompt-toolkit==3.0.39 + # via ipython +psutil==5.9.5 + # via + # diffsims + # distributed + # ipykernel + # ipyparallel + # pyxem + # sed +ptyprocess==0.7.0 + # via + # pexpect + # terminado +punx==0.3.0 + # via -r requirements.in +pure-eval==0.2.2 + # via stack-data +py-cpuinfo==9.0.0 + # via tables +pycifrw==4.4.5 + # via diffpy-structure +pycparser==2.21 + # via cffi +pyct==0.5.0 + # via colorcet +pyerfa==2.0.0.3 + # via astropy +pyfai==2023.5.0 + # via pyxem +pygments==2.16.1 + # via + # ipython + # nbconvert + # qtconsole + # sphinx +pylatexenc==2.10 + # via nexpy +pynxtools==0.0.5 + # via + # -r requirements.in + # sed +pyopencl==2023.1.1 + # via silx +pyopengl==3.1.7 + # via silx +pyparsing==3.0.9 + # via matplotlib +pyqt5==5.15.0 + # via + # arpes + # silx +pyqt5-sip==12.12.2 + # via pyqt5 +pyqtgraph==0.12.4 + # via arpes +pyresttable==2020.0.8 + # via punx +python-dateutil==2.8.2 + # via + # arrow + # hyperspy + # ipyparallel + # jupyter-client + # matplotlib + # pandas + # silx +python-json-logger==2.0.7 + # via jupyter-events +pytools==2023.1.1 + # via pyopencl +pytz==2023.3 + # via + # babel + # nionswift + # pandas + # pynxtools +pytz-deprecation-shim==0.1.0.post0 + # via tzlocal +pywavelets==1.4.1 + # via scikit-image +pyxem==0.15.1 + # via pynxtools +pyyaml==6.0.1 + # via + # astropy + # bokeh + # dask + # distributed + # hyperspy + # jupyter-events + # kikuchipy + # pynxtools + # sed +pyzmq==24.0.1 + # via + # ipykernel + # ipyparallel + # jupyter-client + # jupyter-server + # nbclassic + # notebook + # qtconsole +qtconsole==5.4.3 + # via + # nexpy + # silx +qtpy==2.3.1 + # via + # nexpy + # qtconsole +radioactivedecay==0.4.19 + # via ifes-apt-tc-data-modeling +recommonmark==0.7.1 + # via symmetrize +referencing==0.30.2 + # via + # jsonschema + # jsonschema-specifications + # jupyter-events +requests==2.31.0 + # via + # hyperspy + # jupyterlab-server + # pooch + # punx + # pynxtools + # requests-cache + # sphinx +requests-cache==1.1.0 + # via pynxtools +rfc3339-validator==0.1.4 + # via + # jsonschema + # jupyter-events +rfc3986-validator==0.1.1 + # via + # jsonschema + # jupyter-events +rpds-py==0.9.2 + # via + # jsonschema + # referencing +rx==3.2.0 + # via arpes +scikit-image==0.21.0 + # via + # hyperspy + # kikuchipy + # mpes + # pyxem + # symmetrize +scikit-learn==1.3.0 + # via + # arpes + # kikuchipy + # pyxem +scipy==1.8.1 + # via + # arpes + # ase + # deepdish + # diffsims + # hyperspy + # kikuchipy + # lmfit + # mpes + # nexpy + # nexusformat + # niondata + # nionswift + # orix + # pyfai + # pynxtools + # pyxem + # radioactivedecay + # scikit-image + # scikit-learn + # sed + # silx + # sparse + # symmetrize +sed @ git+https://github.com/OpenCOMPES/sed.git@87e793e + # via -r requirements.in +send2trash==1.8.2 + # via + # jupyter-server + # nbclassic + # notebook +silx[full]==1.1.2 + # via + # -r requirements.in + # mpes + # pyfai +six==1.16.0 + # via + # asttokens + # bleach + # diffpy-structure + # python-dateutil + # rfc3339-validator + # url-normalize +smmap==5.0.0 + # via gitdb +sniffio==1.3.0 + # via anyio +snowballstemmer==2.2.0 + # via sphinx +sortedcontainers==2.4.0 + # via distributed +soupsieve==2.4.1 + # via beautifulsoup4 +sparse==0.14.0 + # via hyperspy +sphinx==6.2.1 + # via + # mpes + # recommonmark + # sphinx-rtd-theme + # sphinxcontrib-jquery + # symmetrize +sphinx-rtd-theme==1.2.2 + # via symmetrize +sphinxcontrib-applehelp==1.0.4 + # via sphinx +sphinxcontrib-devhelp==1.0.2 + # via sphinx +sphinxcontrib-htmlhelp==2.0.1 + # via sphinx +sphinxcontrib-jquery==4.1 + # via sphinx-rtd-theme +sphinxcontrib-jsmath==1.0.1 + # via sphinx +sphinxcontrib-qthelp==1.0.3 + # via sphinx +sphinxcontrib-serializinghtml==1.1.5 + # via sphinx +stack-data==0.6.2 + # via ipython +symmetrize==0.5.5 + # via + # mpes + # sed +sympy==1.12 + # via + # hyperspy + # radioactivedecay +tables==3.8.0 + # via deepdish +tblib==2.0.0 + # via distributed +terminado==0.17.1 + # via + # jupyter-server + # nbclassic + # notebook +threadpoolctl==3.2.0 + # via + # mpes + # scikit-learn + # sed +tifffile==2022.10.10 + # via + # h5grove + # hyperspy + # scikit-image + # sed +tinycss2==1.2.1 + # via nbconvert +titlecase==2.4 + # via arpes +tomli==2.0.1 + # via jupyterlab +toolz==0.12.0 + # via + # dask + # distributed + # hyperspy + # partd +tornado==6.3.2 + # via + # bokeh + # distributed + # ipykernel + # ipyparallel + # jupyter-client + # jupyter-server + # jupyterlab + # nbclassic + # notebook + # terminado +tqdm==4.65.0 + # via + # arpes + # diffsims + # hyperspy + # ipyparallel + # kikuchipy + # mpes + # orix + # sed +traitlets==5.9.0 + # via + # comm + # ipykernel + # ipympl + # ipyparallel + # ipython + # ipywidgets + # jupyter-client + # jupyter-core + # jupyter-events + # jupyter-server + # matplotlib-inline + # nbclassic + # nbclient + # nbconvert + # nbformat + # notebook + # qtconsole +traits==6.4.1 + # via hyperspy +transforms3d==0.4.1 + # via + # diffsims + # pyxem +typing-extensions==4.7.1 + # via + # bokeh + # cattrs + # ipython + # pytools +tzdata==2023.3 + # via pytz-deprecation-shim +tzlocal==4.3 + # via + # nionswift + # pynxtools +uncertainties==3.1.7 + # via lmfit +uri-template==1.3.0 + # via jsonschema +url-normalize==1.4.3 + # via requests-cache +urllib3==2.0.4 + # via + # distributed + # requests + # requests-cache +wcwidth==0.2.6 + # via + # prettytable + # prompt-toolkit +webcolors==1.13 + # via jsonschema +webencodings==0.5.1 + # via + # bleach + # tinycss2 +websocket-client==1.6.1 + # via jupyter-server +widgetsnbextension==3.6.5 + # via ipywidgets +xarray==0.20.2 + # via + # arpes + # mpes + # pynxtools + # sed +y-py==0.6.0 + # via + # jupyter-ydoc + # ypy-websocket +ypy-websocket==0.8.4 + # via jupyter-server-ydoc +zarr==2.16.0 + # via hyperspy +zict==3.0.0 + # via distributed +zipfile37==0.1.3 + # via pynxtools +zipp==3.16.2 + # via + # importlib-metadata + # importlib-resources + +# The following packages are considered to be unsafe in a requirements file: +# pip +# setuptools