# ukui-session-manager

ukui-session-manager provides the session manager components for the UKUI
desktop environment.

## Components

* `ukui-session`: starts at the beginning of a UKUI session and launches or
  monitors the required desktop components.
* `ukui-session-tools`: handles session actions such as logout, shutdown,
  reboot, suspend, hibernate, lock screen and user switching.
* `ukuismserver`: provides the session management server used by UKUI.

## Dependencies

The project is built with CMake, Qt 6 and KF6. On Debian-based systems, the
packaging metadata lists the current build dependencies in `debian/control`.

## Build & Install

### cmake

```sh
cd ukui-session-manager
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_INSTALL_RUNSTATEDIR=/run "-GUnix Makefiles" -DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
make
sudo make install
```

### debuild

```sh
cd ukui-session-manager
uscan --download-current-version # or you can change the word in debian/source/format from 'quilt' to 'native'
debuild
cd ..
sudo dpkg -i ukui-session-manager_{version}_{arch}.deb
```

## License

The default project license is GPL-2+. Some files use other compatible licenses
such as GPL-3+, LGPL-2.1+ or Expat. See `debian/copyright` and the source file
headers for the complete per-file license information.

## Issues

[ukui-session-manager issues](https://gitee.com/openkylin/ukui-session-manager/issues)
