## mate-init mate-init — Functions used during initialisation of libmate and other platform libraries. |

## Synopsis

    #include <libmate/libmate.h>

    #define             LIBMATE_MODULE

    const MateModuleInfo * libmate_module_info_get        (void);
    const MateModuleInfo *  mate_matecomponent_module_info_get   (void);

    const char *        mate_user_dir_get                  (void);
    const char *        mate_user_private_dir_get          (void);
    const char *        mate_user_accels_dir_get           (void);

## Description

## Details

### LIBMATE_MODULE

    #define LIBMATE_MODULE libmate_module_info_get()

This macro wraps the call to `libmate_module_info_get()` and is the usual way of retrieving the MateModuleInfo returned by this function.

### libmate_module_info_get ()

    const MateModuleInfo * libmate_module_info_get        (void);

Retrieves the current libmate version and the modules it depends on.

Returns : | a new MateModuleInfo structure describing the version and the versions of the dependents.

### mate_matecomponent_module_info_get ()

    const MateModuleInfo *  mate_matecomponent_module_info_get   (void);

Retrieves the matecomponent module version and indicate that it requires the current libmate and its dependencies (although libmatecomponent does not depend on libmate, libmatecomponentui does and this will also be initialised when initialising a MATE app).

Returns : | a new MateModuleInfo structure describing the version of the matecomponent modules and its dependents.

### mate_user_dir_get ()

    const char *        mate_user_dir_get                  (void);

Retrieves the user-specific directory for MATE apps to use ($HOME/.mate2 is the usual MATE 2 value).

Returns : | An absolute path to the directory.

### mate_user_private_dir_get ()

    const char *        mate_user_private_dir_get          (void);

Differs from `mate_user_dir_get()` in that the directory returned here will have had permissions of 0700 (rwx------) enforced when it was created. Of course, the permissions may have been altered since creation, so care still needs to be taken.

Returns : | An absolute path to the user-specific private directory that MATE apps can use.

### mate_user_accels_dir_get ()

    const char *        mate_user_accels_dir_get           (void);

Retrieves the user-specific directory that stores the keyboard shortcut files for each MATE app. Note that most applications should be using MateConf for storing this information, but it may be necessary to use the `mate_user_accels_dir_get()` directory for legacy applications.

Returns : | The absolute path to the directory.