## SnapdSystemInformation SnapdSystemInformation — System information class |

## Functions

const gchar * | snapd_system_information_get_binaries_directory ()
const gchar * | snapd_system_information_get_build_id ()
SnapdSystemConfinement | snapd_system_information_get_confinement ()
const gchar * | snapd_system_information_get_kernel_version ()
gboolean | snapd_system_information_get_managed ()
const gchar * | snapd_system_information_get_mount_directory ()
gboolean | snapd_system_information_get_on_classic ()
const gchar * | snapd_system_information_get_os_id ()
const gchar * | snapd_system_information_get_os_version ()
GDateTime * | snapd_system_information_get_refresh_hold ()
GDateTime * | snapd_system_information_get_refresh_last ()
GDateTime * | snapd_system_information_get_refresh_next ()
const gchar * | snapd_system_information_get_refresh_schedule ()
const gchar * | snapd_system_information_get_refresh_timer ()
GHashTable * | snapd_system_information_get_sandbox_features ()
const gchar * | snapd_system_information_get_series ()
const gchar * | snapd_system_information_get_store ()
const gchar * | snapd_system_information_get_version ()

## Properties

char * | binaries-directory | Read / Write / Construct Only
char * | build-id | Read / Write / Construct Only
SnapdSystemConfinement | confinement | Read / Write / Construct Only
char * | kernel-version | Read / Write / Construct Only
gboolean | managed | Read / Write / Construct Only
char * | mount-directory | Read / Write / Construct Only
gboolean | on-classic | Read / Write / Construct Only
char * | os-id | Read / Write / Construct Only
char * | os-version | Read / Write / Construct Only
GDateTime * | refresh-hold | Read / Write / Construct Only
GDateTime * | refresh-last | Read / Write / Construct Only
GDateTime * | refresh-next | Read / Write / Construct Only
char * | refresh-schedule | Read / Write / Construct Only
char * | refresh-timer | Read / Write / Construct Only
gpointer | sandbox-features | Read / Write / Construct Only
char * | series | Read / Write / Construct Only
char * | store | Read / Write / Construct Only
char * | version | Read / Write / Construct Only

## Types and Values

enum | SnapdSystemConfinement
| SnapdSystemInformation

## Object Hierarchy

        GEnum
        ╰── SnapdSystemConfinement
        GObject
        ╰── SnapdSystemInformation

## Includes

    #include <snapd-glib/snapd-glib.h>

## Description

A SnapdSystemInformation object contains the system information returned from snapd. It is requested using `snapd_client_get_system_information_sync()`.

## Functions

### snapd_system_information_get_binaries_directory ()

    const gchar *
    snapd_system_information_get_binaries_directory
                                   (SnapdSystemInformation *system_information);

Get the directory snap binaries are stored, e.g. "/snap/bin".

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a directory.

Since: 1.11

### snapd_system_information_get_build_id ()

    const gchar *
    snapd_system_information_get_build_id (SnapdSystemInformation *system_information);

Gets the unique build ID for the snap build, e.g. "efdd0b5e69b0742fa5e5bad0771df4d1df2459d1"

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a build ID.

Since: 1.40

### snapd_system_information_get_confinement ()

    SnapdSystemConfinement
    snapd_system_information_get_confinement
                                   (SnapdSystemInformation *system_information);

Get the level of confinement the system supports, e.g. `SNAPD_SYSTEM_CONFINEMENT_STRICT`.

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a SnapdSystemConfinement.

Since: 1.15

### snapd_system_information_get_kernel_version ()

    const gchar *
    snapd_system_information_get_kernel_version
                                   (SnapdSystemInformation *system_information);

Get the version of the kernel snapd is running on, e.g. "4.10.0-15-generic".

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a version string.

Since: 1.11

### snapd_system_information_get_managed ()

    gboolean
    snapd_system_information_get_managed (SnapdSystemInformation *system_information);

Get if snapd is running on a managed system.

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

`TRUE` if running on a managed system.

Since: 1.7

### snapd_system_information_get_mount_directory ()

    const gchar *
    snapd_system_information_get_mount_directory
                                   (SnapdSystemInformation *system_information);

Get the directory snaps are mounted, e.g. "/snap".

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a directory.

Since: 1.11

### snapd_system_information_get_on_classic ()

    gboolean
    snapd_system_information_get_on_classic
                                   (SnapdSystemInformation *system_information);

Get if this system is a classic system.

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

`TRUE` if running on a classic system.

Since: 1.0

### snapd_system_information_get_os_id ()

    const gchar *
    snapd_system_information_get_os_id (SnapdSystemInformation *system_information);

Get the operating system ID, e.g. "ubuntu".

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

an operating system ID.

Since: 1.0

### snapd_system_information_get_os_version ()

    const gchar *
    snapd_system_information_get_os_version
                                   (SnapdSystemInformation *system_information);

Get the operating system version, e.g. "16.04".

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a version string.

Since: 1.0

### snapd_system_information_get_refresh_hold ()

    GDateTime *
    snapd_system_information_get_refresh_hold
                                   (SnapdSystemInformation *system_information);

Get the time refreshes will be applied at, or `NULL` if they are applied immediately.

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a GDateTime.

[transfer none][allow-none]

Since: 1.42

### snapd_system_information_get_refresh_last ()

    GDateTime *
    snapd_system_information_get_refresh_last
                                   (SnapdSystemInformation *system_information);

Get the time the last refresh occurred, or `NULL` if has not occurred.

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a GDateTime.

[transfer none][allow-none]

Since: 1.42

### snapd_system_information_get_refresh_next ()

    GDateTime *
    snapd_system_information_get_refresh_next
                                   (SnapdSystemInformation *system_information);

Get the time the next refresh is scheduled for, or `NULL` if none has been scheduled.

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a GDateTime.

[transfer none][allow-none]

Since: 1.42

### snapd_system_information_get_refresh_schedule ()

    const gchar *
    snapd_system_information_get_refresh_schedule
                                   (SnapdSystemInformation *system_information);

Get the schedule when snap refreshes will occur.

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a Snap refresh schedule string.

[allow-none]

Since: 1.42

### snapd_system_information_get_refresh_timer ()

    const gchar *
    snapd_system_information_get_refresh_timer
                                   (SnapdSystemInformation *system_information);

Get the timer that refreshes are running to.

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a Snap refresh timer string.

[allow-none]

Since: 1.42

### snapd_system_information_get_sandbox_features ()

    GHashTable *
    snapd_system_information_get_sandbox_features
                                   (SnapdSystemInformation *system_information);

Gets the sandbox features that snapd provides. Each backend in snapd provides a list of features that it supports. For example, the "confinement-options" backend may provide "classic", "devmode" and "strict".

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a hash table of string arrays keyed by backend name.

[transfer none][element-type utf8 GStrv]

Since: 1.42

### snapd_system_information_get_series ()

    const gchar *
    snapd_system_information_get_series (SnapdSystemInformation *system_information);

Get the series of snapd running, e.g. "16".

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a series string.

Since: 1.0

### snapd_system_information_get_store ()

    const gchar *
    snapd_system_information_get_store (SnapdSystemInformation *system_information);

Get the store being used by snapd, e.g. "Ubuntu"

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a store id or `NULL`.

[allow-none]

Since: 1.7

### snapd_system_information_get_version ()

    const gchar *
    snapd_system_information_get_version (SnapdSystemInformation *system_information);

Get the version of snapd running, e.g. "2.11+ppa174-1".

#### Parameters

system_information | a SnapdSystemInformation. |

#### Returns

a version string.

Since: 1.0

## Types and Values

### enum SnapdSystemConfinement

Confinement used by a snap.

#### Members

SNAPD_SYSTEM_CONFINEMENT_UNKNOWN | the confinement of the system is unknown. |
SNAPD_SYSTEM_CONFINEMENT_STRICT | the system supports strict confinement. |
SNAPD_SYSTEM_CONFINEMENT_PARTIAL | the system supports partial confinement. |

Since: 1.15

### SnapdSystemInformation

    typedef struct _SnapdSystemInformation SnapdSystemInformation;

SnapdSystemInformation contains information about the system snapd is running on.

Since: 1.0

## Property Details

### The `“binaries-directory”` property

      “binaries-directory”       char *

Directory with snap binaries.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“build-id”` property

      “build-id”                 char *

Unique build ID for snap build.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“confinement”` property

      “confinement”              SnapdSystemConfinement

Confinement level supported by system.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: SNAPD_SYSTEM_CONFINEMENT_UNKNOWN

### The `“kernel-version”` property

      “kernel-version”           char *

Kernel version.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“managed”` property

      “managed”                  gboolean

TRUE if snapd managing the system.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: FALSE

### The `“mount-directory”` property

      “mount-directory”          char *

Directory snaps are mounted in.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“on-classic”` property

      “on-classic”               gboolean

TRUE if running in a classic system.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: FALSE

### The `“os-id”` property

      “os-id”                    char *

Operating system ID.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“os-version”` property

      “os-version”               char *

Operating system version.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“refresh-hold”` property

      “refresh-hold”             GDateTime *

Time refreshes will be applied.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

### The `“refresh-last”` property

      “refresh-last”             GDateTime *

Last time a refresh occurred.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

### The `“refresh-next”` property

      “refresh-next”             GDateTime *

Next time a refresh is scheduled for.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

### The `“refresh-schedule”` property

      “refresh-schedule”         char *

Refresh schedule.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“refresh-timer”` property

      “refresh-timer”            char *

Refresh timer.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“sandbox-features”` property

      “sandbox-features”         gpointer

Sandbox features.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

### The `“series”` property

      “series”                   char *

Snappy release series.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“store”` property

      “store”                    char *

Snap store.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL

### The `“version”` property

      “version”                  char *

Snappy version.

Owner: SnapdSystemInformation

Flags: Read / Write / Construct Only

Default value: NULL