qp_plugins

This command deals with all external plugins of Quantum Package. Plugin repositories can be downloaded, and the plugins in these repositories can be installed/uninstalled or created.

Usage

qp_plugins list [-i] [-u] [-q]
qp_plugins download <url>
qp_plugins install <name>...
qp_plugins uninstall <name>
qp_plugins create -n <name> [-r <repo>] [<needed_modules>...]
list

List all the available plugins.

-i, --installed

List all the installed plugins.

-u, --uninstalled

List all the uninstalled plugins.

-q, --repositories

List all the downloaded repositories.

download <url>

Download an external repository. The URL points to a tar.gz file or a git repository, for example:

install <plugin_name>

Install the plugin plugin_name.

uninstall <plugin_name>

Uninstall the plugin plugin_name.

update

Update the repositories of the plugins. Should be followed by a re-compilation.

-n, --name=<plugin_name>

Create a new plugin named plugin_name (in local repository by default).

-r, --repository=<repo>

Specify in which repository the new plugin will be created.

Example

Let us download, install and compile some specific external plugins from https://gitlab.com/eginer/qp_plugins_eginer .

First, download the git repo associated to these plugins. To do so, first go to the plugins directory in the Quantum Package and execute:

qp_plugins download https://gitlab.com/eginer/qp_plugins_eginer

This will create in the directory plugins a local copy of the git repo located at the URL you indicated. Then, go in qp_plugins_eginer/stable/

cd qp_plugins_eginer/stable/

In the directory stable, there are many directories which all correspond to a specific plugin that have been developed by the person in charge of the repository. All these plugins might use some global variables and routines contained in the core modules of the Quantum Package.

Now let us install the plugin rsdft_cipsi:

qp_plugins install rsdft_cipsi

This will link this directory to the Quantum Package which means that when the code will be compiled, this plugin will be compiled to and therefore all the executables/scripts/input keywords contained in this module will be available as if there were part of the core of the Quantum Package.

Then, to compile the new plugin, just recompile the Quantum Package as usual by going at the root of the Quantum Package directory:

cd $QP_ROOT
ninja

Finally, if you go back to the plugin directory you just installed, you should see all the executables/scripts which have been created and which are now available with the qp_run command.