Feature: Add bluetui integration and migration (#3207)

* Add bluetui integration and launch script

- Add omarchy-launch-bluetooth script to launch bluetui TUI
- Create migration scripts for bluetui installation
- Update omarchy-menu and waybar configuration for bluetui support
- Add bluetui to base packages

* Move unblock into launchers and reuse existing launch or focus setup

* Fix installer to remove blueberry and be more surgical with waybar changes

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
This commit is contained in:
Andrey Sologub
2025-11-19 09:41:12 +01:00
committed by GitHub
parent 335845bd26
commit 9af41afd06
8 changed files with 20 additions and 12 deletions

4
bin/omarchy-launch-bluetooth Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/bash
rfkill unblock bluetooth
exec setsid omarchy-launch-or-focus org.omarchy.bluetui "omarchy-launch-tui bluetui"

View File

@@ -1,3 +1,4 @@
#!/bin/bash
rfkill unblock wifi
exec setsid omarchy-launch-or-focus org.omarchy.impala "omarchy-launch-tui impala"

View File

@@ -174,14 +174,8 @@ show_setup_menu() {
case $(menu "Setup" "$options") in
*Audio*) omarchy-launch-or-focus org.omarchy.wiremix "omarchy-launch-tui wiremix" ;;
*Wifi*)
rfkill unblock wifi
omarchy-launch-wifi
;;
*Bluetooth*)
rfkill unblock bluetooth
blueberry
;;
*Wifi*) omarchy-launch-wifi ;;
*Bluetooth*) omarchy-launch-bluetooth ;;
*Power*) show_setup_power_menu ;;
*Monitors*) open_in_editor ~/.config/hypr/monitors.conf ;;
*Keybindings*) open_in_editor ~/.config/hypr/bindings.conf ;;

View File

@@ -102,7 +102,7 @@
"format-disabled": "󰂲",
"format-connected": "",
"tooltip-format": "Devices connected: {num_connections}",
"on-click": "blueberry"
"on-click": "omarchy-launch-bluetooth"
},
"pulseaudio": {
"format": "{icon}",

View File

@@ -3,7 +3,7 @@ windowrule = float, tag:floating-window
windowrule = center, tag:floating-window
windowrule = size 875 600, tag:floating-window
windowrule = tag +floating-window, class:(blueberry.py|org.omarchy.impala|org.omarchy.wiremix|org.omarchy.terminal|org.gnome.NautilusPreviewer|com.gabm.satty|Omarchy|About|TUI.float)
windowrule = tag +floating-window, class:(org.omarchy.bluetui|org.omarchy.impala|org.omarchy.wiremix|org.omarchy.terminal|org.gnome.NautilusPreviewer|com.gabm.satty|Omarchy|About|TUI.float)
windowrule = tag +floating-window, class:(xdg-desktop-portal-gtk|sublime_text|DesktopEditors|org.gnome.Nautilus), title:^(Open.*Files?|Open [F|f]older.*|Save.*Files?|Save.*As|Save|All Files|.*wants to [open|save].*|[C|c]hoose.*)
windowrule = float, class:org.gnome.Calculator

View File

@@ -8,7 +8,7 @@ asdcontrol
avahi
bash-completion
bat
blueberry
bluetui
brightnessctl
btop
clang

View File

@@ -1,4 +1,4 @@
# Turn on bluetooth service so blueberry works out the box
# Turn on bluetooth service so blueberry or bluetui works out the box
echo "Let's turn on Bluetooth service so the controls work"
if systemctl is-enabled --quiet bluetooth.service && systemctl is-active --quiet bluetooth.service; then
# Bluetooth is already enabled, nothing to change

9
migrations/1762417304.sh Normal file
View File

@@ -0,0 +1,9 @@
echo "Replace bluetooth GUI with TUI"
omarchy-pkg-add bluetui
omarchy-pkg-drop blueberry
if ! grep -q "omarchy-launch-bluetooth" ~/.config/waybar/config.jsonc; then
sed -i 's/blueberry/omarchy-launch-bluetooth/' ~/.config/waybar/config.jsonc
omarchy-restart-waybar
fi