https://github.com/pythops/bluetui
🛜 TUI for managing bluetooth on Linux
https://github.com/pythops/bluetui
bluetooth bluez linux ratatui rust tui
Last synced: 1 day ago
JSON representation
🛜 TUI for managing bluetooth on Linux
- Host: GitHub
- URL: https://github.com/pythops/bluetui
- Owner: pythops
- License: gpl-3.0
- Created: 2024-02-21T23:02:07.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-19T22:05:24.000Z (26 days ago)
- Last Synced: 2025-04-12T11:59:32.723Z (2 days ago)
- Topics: bluetooth, bluez, linux, ratatui, rust, tui
- Language: Rust
- Homepage:
- Size: 127 KB
- Stars: 621
- Watchers: 5
- Forks: 18
- Open Issues: 10
-
Metadata Files:
- Readme: Readme.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-ratatui - bluetui - A TUI for managing Bluetooth devices. (💻 Apps / 🚀 Productivity and Utilities)
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/pythops/bluetui - Bluetooth manager (CLI/TUI Apps / Other)
README
![]()
TUI for managing bluetooth on Linux
![]()
## 💡 Prerequisites
A Linux based OS with [bluez](https://www.bluez.org/) installed.
> [!NOTE]
> You might need to install [nerdfonts](https://www.nerdfonts.com/) for the icons to be displayed correctly.## 🚀 Installation
### 📥 Binary release
You can download the pre-built binaries from the release page [release page](https://github.com/pythops/bluetui/releases)
### 📦 crates.io
You can install `bluetui` from [crates.io](https://crates.io/crates/bluetui)
```shell
cargo install bluetui
```### 🐧 Arch Linux
You can install `bluetui` from the [extra repository](https://archlinux.org/packages/extra/x86_64/bluetui/):
```shell
pacman -S bluetui
```### 🐧 Gentoo
You can install `bluetui` from the [lamdness Gentoo Overlay](https://gpo.zugaina.org/net-wireless/bluetui):
```sh
sudo eselect repository enable lamdness
sudo emaint -r lamdness sync
sudo emerge -av net-wireless/bluetui
```### ⚒️ Build from source
Run the following command:
```shell
git clone https://github.com/pythops/bluetui
cd bluetui
cargo build --release
```This will produce an executable file at `target/release/bluetui` that you can copy to a directory in your `$PATH`.
## 🪄 Usage
### Global
`Tab`: Switch between different sections.
`j` or `Down` : Scroll down.
`k` or `Up`: Scroll up.
`s`: Start/Stop scanning.
`?`: Show help.
`esc`: Dismiss the help pop-up.
`ctrl+c` or `q`: Quit the app.
### Adapters
`p`: Enable/Disable the pairing.
`o`: Power on/off the adapter.
`d`: Enable/Disable the discovery.
### Paired devices
`u`: Unpair the device.
`Space`: Connect/Disconnect the device.
`t`: Trust/Untrust the device.
`e`: Rename the device.
### New devices
`p`: Pair the device.
## Custom keybindings
Keybindings can be customized in the config file `$HOME/.config/bluetui/config.toml`
```toml
toggle_scanning = "s"[adapter]
toggle_pairing = "p"
toggle_power = "o"
toggle_discovery = "d"[paired_device]
unpair = "u"
toggle_connect = " "
toggle_trust = "t"
rename = "e"[new_device]
pair = "p"
```## ⚖️ License
GPLv3