Skip to content

Bluetooth

Library for monitoring bluez over dbus.

Installation

  1. install dependencies
sh
sudo pacman -Syu meson vala gobject-introspection
sh
sudo dnf install meson gcc valac gobject-introspection-devel
sh
sudo apt install meson valac gobject-introspection

INFO

Although bluez is not a direct build dependency, it should be self-explanatory that the daemon is required to be available at runtime.

  1. clone repo
sh
git clone https://github.com/aylur/astal.git
cd astal/lib/bluetooth
  1. install
sh
meson setup build
meson install -C build

TIP

Most distros recommend manual installs in /usr/local, which is what meson defaults to. If you want to install to /usr instead which most package managers do, set the prefix option:

sh
meson setup --prefix /usr build

Usage

You can browse the Bluetooth reference.

CLI

There is no CLI for this library, use the one provided by bluez.

sh
bluetoothctl --help

Library

js
import Bluetooth from "gi://AstalBluetooth"

const bluetooth = Bluetooth.get_default()

for (const device of bluetooth.get_devices()) {
    print(device.name)
}
py
from gi.repository import AstalBluetooth as Bluetooth

bluetooth = Bluetooth.get_default()

for device in bluetooth.get_devices():
    print(device.get_name())
lua
local Bluetooth = require("lgi").require("AstalBluetooth")

local bluetooth = Bluetooth.get_default()

for _, d in ipairs(bluetooth.devices) do
    print(d.name)
end
vala
// Not yet documented