Installation and dependences¶
It would be a good idea to create and switch to a new python virtual environment before the installation.
The latest release of the package can be obtained simply with:
pip install aiida-siesta
In this case, make sure to refer to the appropriate documentation part (“stable”, not “latest”).
Because the package is under development, in order to enjoy the most recent features one can clone the github repository (https://github.com/siesta-project/aiida_siesta_plugin) and install from the top level of the plugin directory with:
pip install -e .
As a pre-requisite, both commands above will install an appropriate version of the
aiida-core python framework, if this is not already installed.
In case of a fresh install of
aiida-core, follow the AiiDA documentation
in order to configure aiida.
In any case, do not forget to run the following commands after the installation:
reentry scan -r aiida verdi daemon restart
Since version 1.2.0,
aiida-siesta also depends on
sisl (https://github.com/zerothi/sisl). For the moment
sisl is used only to facilitate the management of basis orbitals, but a closer integration among the
two packages is foreseen in the future.
This plugin is open-source and contributions are welcomed. Before starting the development, the following steps are suggested:
- After cloning from github, install with
pip install .[dev]. This will download all the tools for testing.
- Install pre-commit hooks. This will “force” to follow some python standards we require. In fact, the hooks will impede to commit unless the required standards are met.
- Make sure to run all the tests (simply
pytest test/from the main folder of the package) to make sure the contribution is not breaking any part of the code. Ideally, write tests for the new part implemented.