... will ensure the relevant NetworkManager changes land in Fedora 20.

... will ensure the relevant NetworkManager changes land in Fedora 20.

+

+

* MATE team:

+

mate-bluetooth has not received much upstream attention recently and is likely to not get ported to BlueZ 5 in time for F20. However, the Fedora MATE maintainers are looking into switching back to using gnome-bluetooth, and creating a panel applet for MATE that uses gnome-bluetooth underneath. An initial prototype is available at https://github.com/NiceandGently/bluetooth-panel-applet

Current status

Detailed Description

The BlueZ project recently released BlueZ version 5. Compared to BlueZ version 4, the new release brings new features and improvements, however it is also accompanied by a significant API change. The BlueZ versions 4 and 5 are not parallel installable, and we need coordination between various parts of Fedora to switch over at the same time.

This is coming late after the Change Proposals Submission Deadline. As this affects various critical parts of the distribution (KDE, GNOME, NetworkManager, pulseaudio), we wanted to be sure it is feasible to switch everything over at the same time, and were considering postponing it to Fedora 21. However, upstreams have made good progress with porting over to BlueZ 5 and we feel it would be beneficial for Fedora to switch over during the Fedora 20 timeframe.

Benefit to Fedora

This keeps the Bluetooth stack in Fedora up to date. BlueZ 4 is no longer maintained upstream; switching to BlueZ 5 ensures we can get all the latest upstream bug fixes and enhancements.

Scope

BlueZ 5 uses a D-Bus API that's not compatible with BlueZ 4 and as such, management applications and a number of libraries and daemons need to be ported.

Proposal owners:

This is a change affecting many parts of the distribution. The proposal owners, supported by the rest of the Desktop SIG, are going to take care of updating the BlueZ package to version 5 and porting over gnome-bluetooth, NetworkManager, and PulseAudio packages.

KDE SIG:

The bluetooth stack for KDE is BlueDevil. It has a git branch with BlueZ 5 support and the Fedora KDE SIG will handle updating the package to a git snapshot.

Desktop SIG:

For GNOME 3.10, Gustavo Padovan and Bastien Nocera have been porting gnome-bluetooth, NetworkManager and PulseAudio to BlueZ 5, and the Fedora Desktop SIG will ensure these get updated to the BlueZ 5 versions in Fedora.

NetworkManager team:

... will ensure the relevant NetworkManager changes land in Fedora 20.

MATE team:

mate-bluetooth has not received much upstream attention recently and is likely to not get ported to BlueZ 5 in time for F20. However, the Fedora MATE maintainers are looking into switching back to using gnome-bluetooth, and creating a panel applet for MATE that uses gnome-bluetooth underneath. An initial prototype is available at https://github.com/NiceandGently/bluetooth-panel-applet

Other developers:

Bluez4 and Bluez5 are not parallel-installable, and incompatible, so
other applications relying on Bluez4 will need to be ported by their
respective maintainers.

Upgrade/compatibility impact

BlueZ ships a daemon and provides two main interfaces for applications
to use it:

libbluetooth shared library

The library ABI hasn't changed and the soname in 5.x is still the same
as was in 4.x: libbluetooth.so.3, so the upgrade/compatibility impact should be minimal.
Everything should be able to continue working without needing even a
simple rebuild.

BlueZ D-Bus API

The D-Bus API has had major changes. Most major consumers should be ported over during the Fedora 20 timeframe, with one exception:

How To Test

Testing the change requires having Bluetooth capable hardware. Major functionality should keep working without regressions, compared to BlueZ 4 in Fedora 19.

User Experience

User experience should change minimally.

Dependencies

This requires coordination between the kernel team, the Desktop team, the KDE team, and various other package maintainers. The proposal owners will handle the coordination.

Contingency Plan

If there are major regressions before Fedora 20 release, it is feasible to revert the BlueZ 5 related changes and revert back to BlueZ 4. The upstream GNOME release team is also keeping an eye open for regressions, and will revert back to BlueZ 4 for GNOME 3.10 (due in September) if there are major regressions in either GNOME, NetworkManager or PulseAudio.