FHS F4.2: bluez storage to /var/lib/bluetooth

bluez configure storagedir flipped to /var/lib/bluetooth (Arch
convention for paired-device state). post_makeinstall_target plants
the bridge symlink to /storage/.cache/bluetooth so pairings persist
on the rw overlay across reboots.

archr-config forgetBT helper and backuptool default list also point
at the FHS path.

tmpfiles z_05_bluez.conf intentionally keeps creating
/storage/.cache/bluetooth as the real overlay dir.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Douglas Teles
2026-06-23 16:14:04 -03:00
parent cd87193b86
commit 918e3158e9
3 changed files with 10 additions and 3 deletions
@@ -274,7 +274,7 @@ fi
if [[ "$command" == "forgetBT" ]]; then
systemctl stop bluetooth bluetooth-agent
rm -rf /storage/.cache/bluetooth/* /storage/roms/backups/bluetooth.tar
rm -rf /var/lib/bluetooth/* /storage/roms/backups/bluetooth.tar
systemctl start bluetooth bluetooth-agent
exit 0
fi
@@ -22,7 +22,7 @@ mkdir -p ${BACKUPFOLDER}
DEFAULT=(
/storage/.config/fancontrol.conf
/storage/.config/backuptool.conf
/storage/.cache/bluetooth/*
/var/lib/bluetooth/*
/storage/.cache/connman*
/storage/.config/system/configs/system.cfg
/storage/.config/ppsspp/*
@@ -45,7 +45,7 @@ PKG_CONFIGURE_OPTS_TARGET="--disable-dependency-tracking \
--enable-hid \
--with-gnu-ld \
${BLUEZ_CONFIG} \
storagedir=/storage/.cache/bluetooth"
storagedir=/var/lib/bluetooth"
pre_configure_target() {
# bluez fails to build in subdirs
@@ -81,6 +81,13 @@ post_makeinstall_target() {
# bluez looks in /etc/firmware/
ln -sf /usr/lib/firmware ${INSTALL}/etc/firmware
# FHS bridge: bluez storagedir is baked at configure to /var/lib/bluetooth
# (Arch convention). tmpfiles z_05_bluez.conf creates the backing dir
# /storage/.cache/bluetooth so the symlink resolves on first boot and
# paired devices persist across reboots.
mkdir -p ${INSTALL}/var/lib
ln -sf /storage/.cache/bluetooth ${INSTALL}/var/lib/bluetooth
# libbluetooth required for bluez-alsa
# sed -i 's/-lbluetooth//g' ${PKG_BUILD}/lib/bluez.pc
cp -P ${PKG_BUILD}/lib/bluez.pc ${SYSROOT_PREFIX}/usr/lib/pkgconfig