# ukui-bluetooth

[English](README.md)

ukui-bluetooth 是 UKUI 桌面环境的蓝牙管理工具，基于 Qt6 开发。提供系统托盘小程序、控制面板设置界面和后台 D-Bus 服务，支持设备发现、配对、文件传输和音频路由。

## 功能特性

- 设备发现、配对和移除
- 通过 OBEX 进行文件传输
- 系统托盘小程序，支持快速连接菜单
- 控制面板蓝牙设置界面
- 后台 D-Bus 服务，支持系统级蓝牙管理
- 音频配置切换（A2DP、HFP/HSP）

## 构建依赖

- Qt 6 (qt6-base-dev, qt6-declarative-dev, qt6-base-dev-tools, qt6-tools-dev-tools)
- KDE Frameworks 6 (libkf6bluezqt-dev, libkf6windowsystem-dev)
- libglib2.0-dev
- libgsettings-qt6-dev
- libkysdk-applications-dev, libkysdk-system-dev
- libukcc-dev
- libukui-quick-dev
- libukui-log4qt-dev
- libxrandr-dev, libxinerama-dev, libxi-dev, libxcursor-dev
- debhelper-compat (= 13)

## 从源码构建

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

## Debian 打包

本项目支持使用 git-buildpackage 进行 Debian 打包，并集成了 Salsa CI。

```shell
# 构建 Debian 软件包
gbp buildpackage

# 导入新的上游版本
gbp import-orig --pristine-tar ../ukui-bluetooth_<version>.orig.tar.gz
```

## 项目结构

```
ukui-bluetooth/
├── data/                        # D-Bus 配置、GSettings schema、桌面文件
├── debian/                      # Debian 打包文件
├── man/                         # 手册页
├── service/                     # 后台 D-Bus 服务 (bluetoothService)
│   ├── adapter.*                #   适配器管理
│   ├── bluetoothagent.*         #   BlueZ Agent
│   ├── bluetoothobexagent.*     #   OBEX 文件传输 Agent
│   ├── device.*                 #   设备模型
│   ├── filesess.*               #   文件传输会话
│   └── daemon.*                 #   服务入口
├── ukcc-bluetooth/              # 控制面板蓝牙设置界面
│   ├── bluetooth.*              #   面板入口
│   ├── bluetoothbottomwindow.*  #   底部状态栏
│   ├── bluetoothdeviceitem.*    #   设备列表项
│   └── bluetoothmainloadingwindow.*  # 加载指示器
├── ukui-shortcut-bluetooth/     # 系统托盘小程序
│   ├── plugin/                  #   托盘插件接口
│   ├── widget/                  #   快速连接弹窗
│   └── translations/            #   国际化文件
├── COPYING                      # 许可证文本
└── ukui-bluetooth.pro           # 顶层 qmake 项目文件
```

## 许可证

本项目基于 GPL-3.0-or-later 许可证。详见 [COPYING](COPYING)。

## 链接

- 主页：https://gitee.com/openkylin/ukui-bluetooth
- 问题追踪：https://gitee.com/openkylin/ukui-bluetooth/issues
- Salsa：https://salsa.debian.org/kylin-team/ukui-bluetooth
