API Documentation

Documentation for developing SailfishOS applications

Sailfish User Manager Daemon

Daemon for handling Sailfish OS device users.

This daemon provides D-Bus API for adding, removing and editing additional Sailfish OS device users. The main system user is created during the first boot of the device. This user can then use this API to add additional users which have access only to some of the available functionality and services.

Using Sailfish User Manager Daemon

Sailfish User Manager Daemon is used through org.sailfishos.usermanager D-Bus service.

D-Bus API

See SailfishUserManager for more information about org.sailfishos.usermanager interface.

There is <sailfishusermanagerinterface.h> header that provides useful definitions for the D-Bus API.

User types

By default devices have only device owner which has permissions to do anything on the device unless prohibited by a device policy. SailfishUserManager::addUser can be used to create additional users that have less permissions and to whom disk quota applies. In addition to these there can be one guest user for which any data created by the user is destroyed at the end of session. Guest user is enabled and disabled with separate interface SailfishUserManager::enableGuestUser. Any restrictions that apply to additional user also apply to guest user.

Operation

Systemd launches the daemon automatically when a call to the interface is made. In the case of an error a D-Bus error is responded. The daemon quits after one minute if there are no more incoming messages.

Quota

By default new users are set to have quota for /home partition and they may reserve at most 20 % of blocks or 2 GB whichever is smaller. Hard limit is set to 120 % of the soft limit but soft limit will become hard limit after grace period (default is 7 days). Quota limits are set only on user creation and can be adjusted with setquota afterwards. If kernel does not support quota or it is not enabled on /home partition the limits are not set.

We use cookies to improve your user experience and to help us to develop our services. By continuing to browse the site, you approve of our use of cookies.