## 17 Modules ¶

A module is an ASDF system that adds additional functionality to StumpWM. StumpWM searches for modules in the *data-dir*`/modules` directory. By default this is `~/.stumpwm.d/modules`.

Officially supported modules exist in a separate repository within the StumpWM organization on github. You can install the latest copy by issuing `make install-modules` from StumpWM’s root source directory. This will run:

    git clone git@github.com:stumpwm/stumpwm-contrib.git ~/.stumpwm.d/modules

Command: load-module name ¶

  Loads the contributed module with the given NAME.

Function: list-modules ¶

  Return a list of the available modules.

Variable: *load-path* ¶

  A list of paths in which modules can be found, by default it is populated by any asdf systems found in ‘*module-dir*’ set from the configure script when StumpWM was built, or later by the user using ‘add-to-load-path’

Command: add-to-load-path path ¶

  If ‘PATH’ is not in ‘*LOAD-PATH*’ add it, check if ‘PATH’ contains an asdf system, and if so add it to the central registry

Function: init-load-path path ¶

  Recursively builds a list of paths that contain modules, then add them to the load path. This is called each time StumpWM starts with the argument ‘*module-dir*’

Function: find-module name ¶

  nil