### Function

# GLib environ_setenv

since: 2.32

#### Declaration

    gchar**
    g_environ_setenv (
      gchar** envp,
      const gchar* variable,
      const gchar* value,
      gboolean overwrite
    )

#### Description

Sets the environment variable `variable` in the provided list `envp` to `value`.

Available since: 2.32

#### Parameters

`envp`

  Type: An array of `filename`

      an environment list that can be freed using `g_strfreev()` (e.g., as
      returned from g_get_environ()), or `NULL` for an empty
      environment list.

  The argument can be `NULL`.
  The array must be `NULL`-terminated.
  The called function takes ownership of the data, and is responsible for freeing it.
  Each element is a file system path, using the OS encoding.

`variable`

  Type: `const gchar*`

  The environment variable to set, must not contain ‘=’

  The data is owned by the caller of the function.
  The value is a file system path, using the OS encoding.

`value`

  Type: `const gchar*`

  The value for to set the variable to.

  The data is owned by the caller of the function.
  The value is a file system path, using the OS encoding.

`overwrite`

  Type: `gboolean`

  Whether to change the variable if it already exists.

#### Return value

Type: An array of `filename`

    the updated environment list. Free it using g_strfreev().

The array is `NULL`-terminated.
The caller of the function takes ownership of the data, and is responsible for freeing it.
Each element is a file system path, using the OS encoding.