# ukui-greeter

[中文版](README_zh.md)

ukui-greeter is a LightDM greeter for the UKUI desktop environment, written in Qt6. It provides a graphical login interface with support for biometric authentication, multi-monitor layouts, and network configuration.

## Features

- LightDM-based login screen for UKUI
- Biometric authentication (fingerprint, face recognition)
- Multi-monitor and display layout support
- Virtual keyboard
- Network management integration (via kylin-nm)
- Agreed policy dialog for terms acceptance

## Build Dependencies

- Qt 6 (qt6-base-dev, qt6-sensors-dev, qt6-svg-dev, qt6-tools-dev-tools)
- libglib2.0-dev
- libgsettings-qt6-dev
- libimlib2-dev
- libkf6networkmanagerqt-dev
- libkylin-nm-base
- kylin-nm-plugin-dev
- libkysdk-base-dev, libkysdk-system-dev
- liblightdm-gobject-dev
- libnm-dev
- libopencv-dev
- libx11-dev, libxi-dev, libxrandr-dev, libxtst-dev
- pkgconf
- debhelper-compat (= 13)

## Building from Source

```shell
cd ukui-greeter
mkdir build && cd build
qmake6 ..
make -j$(nproc)
sudo make install
```

## Debian Packaging

This project supports Debian packaging with git-buildpackage and Salsa CI.

```shell
# Build the Debian package
gbp buildpackage

# Import a new upstream release
gbp import-orig --pristine-tar ../ukui-greeter_<version>.orig.tar.gz
```

## Project Structure

```
ukui-greeter/
├── debian/                     # Debian packaging files
├── greeter-nm-helper/          # NetworkManager helper
├── tests/                      # Test suite
├── ukui-greeter/               # Main greeter application
│   ├── BiometricAuth/          # Biometric authentication module
│   ├── common/                 # Shared utilities
│   ├── display-switch/         # Multi-monitor management
│   ├── greeter/                # Login UI components
│   ├── kylin-nm/               # Network management integration
│   ├── liblightdm-qt/          # Qt bindings for LightDM
│   ├── man/                    # Manual pages
│   ├── translations/           # i18n files
│   └── VirtualKeyboard/        # On-screen keyboard
├── ukui-greeter-daemon/        # Greeter background service
├── COPYING                     # License text
└── ukui-greeter.pro            # Top-level qmake project file
```

## License

This project is licensed under the GPL-3.0-or-later license. See [COPYING](COPYING) for details.

## Links

- Homepage: https://gitee.com/openkylin/ukui-greeter
- Bug Tracker: https://gitee.com/openkylin/ukui-greeter/issues
- Salsa: https://salsa.debian.org/kylin-team/ukui-greeter
