linuxmint / cinnamon

A Linux desktop featuring a traditional layout, built from modern technology and introducing brand new innovative features.
GNU General Public License v2.0
4.48k stars 728 forks source link

Use blueman instead of blueberry #7451

Closed andreikop closed 4 years ago

andreikop commented 6 years ago
 * Cinnamon version (3.6.7)
 * Distribution - Linux Mint 18.3 Sylvia

Issue I've tried to use my bluetooth headphones with Cinamon, but the user experience is terrible.

See also #7258 and blueberry issues

Background Cinamon uses blueberry bluetooth manager. See a history of its appearance here

Expected Fix See Bluetooth problems on mint 18.2, LM 18 Bluetooth manager not working - Blueman works Bluetooth file receiving linux mint 18 Blueberry bluetooth issues in Linux Mint 18

People tend to uninstall blueberry and install blueman to get their devices working. My headset also "just works" after I've installed blueman.

Does it really make sense to try to maintain blueberry? blueman is much more advanced, more stable, has bigger community. Why don't Cinnamon switch to it?

NikoKrause commented 6 years ago

http://segfault.linuxmint.com/2015/03/blueberry/

jeroenst commented 6 years ago

I confirm that blueberry doesn't work, installed blueman instead and now bluetooth works.

truesarang commented 6 years ago

Yes, blueberry doesn't work, blueman is working

t1m0thyj commented 6 years ago

I can also confirm that blueman works better than blueberry. My Bluetooth mouse wouldn't stay connected to my laptop after waking up from sleep or rebooting. I tried changing Bluetooth settings in config files but nothing worked until I installed blueman to replace blueberry.

caltrop2075 commented 6 years ago

blueberry SUCKS visibility always on & other issues I tried turning off at the command line but always visible blueberry is so minimal it is amazing it works at all I don't like the way Mint is going, they don't listen to our grievances yeah, blueman!

FYI I'm using Mint Mate 18.2

FrogMcRibbit commented 5 years ago

I also end up replacing Blueberry for Blueman on my Manjaro Cinnamon (completely different distro, yet did the same) because I could not receive files on my laptop from my smartphone using Blueberry, but I can with Blueman.

https://github.com/linuxmint/blueberry/issues/76

Also, Blueberry uses the CPU way more than Blueman (which is something that has been confirmed by other users too).

https://github.com/linuxmint/blueberry/issues/55#issuecomment-471026775

icarter09 commented 4 years ago

Many thanks for submitting your feature request for Cinnamon. Your feature request has been documented and will be reviewed by the Linux Mint team.

For more information on our workflow and feature requests, read https://linuxmint-troubleshooting-guide.readthedocs.io/en/latest/faq.html.

richrarobi commented 4 years ago

This problem still seems to exist with Linux mint 19.3 Tricia. I just upgraded and my bluetooth keyboard and mouse became unusable. I uninstalled blueberry and installed blueman.... Seems ok so far - PC is a bit long in the tooth, but bluetooth wasn't crashing before the upgrade.

p.s. Sorry, please ignore my rant. Just be careful with Asus bluetooth dongle on Asus F1A75-M Motherboards. It would appear that the USB sockets are "a bit naff".

VA1DER commented 4 years ago

I hope this issue gets revisited. It's hard to see what problem Blueberry is solving. The original article describing blueberry speaks of not being able to use Blueman in Cinnamon. This is not the case. Blueman works well in both mate and cinnamon, is far more versatile, and presents a far more versatile UI without undue complexity. We don't need a mint-specific solution shoehorned in an all-night coding marathon that necessarily gets less ongoing attention just as a point of differentiation for mint. We should use a project that is made by people passionate about making the best bluetooth manager for users.

brbatv commented 4 years ago

I can confirm that all my issues with blueberry are solved using blueman. Great I have found this issue to know the solution. Blueberry GUI wasn't showing up since several weeks. And even when it was showing, connection were often tricky to activate.

Blueman is dope and works flawlessly

clefebvre commented 4 years ago

Blueberry isn't a mint-specific solution. It's an XApp project which is cross-DE and cross-distributions.

Blueberry also isn't the result of a rewrite-it-from-scratch marathon. It's a frontend to one of the oldest BT backends available in Linux: gnome-bluetooth.

I'm not against the idea of replacing blueberry with blueman in Linux Mint (note that this issue isn't related to Cinnamon), but you need to be precise and explain EXACTLY what blueman is doing for you that gnome-bt/blueberry aren't.

clefebvre commented 4 years ago

On our side I think most of the issues we have with blueman are related to integration:

Blueman uses python, GTK3 and gsettings so we could propose PRs to address these. If their dev team welcomes these changes we could consider leaving blueberry.

brbatv commented 4 years ago

I'm not against the idea of replacing blueberry with blueman in Linux Mint (note that this issue isn't related to Cinnamon), but you need to be precise and explain EXACTLY what blueman is doing for you that gnome-bt/blueberry aren't.

just from a noob user perspective :

using a bluetooth headset (bose ae2 soundlink) was sometime unstable/not reliable, my headset was sometimes thinking it was receiving a call for no reason, so I needed to disconnect reconnect to make it work. Some other times (I can't give reproducible errors i'm sorry it's just based on my memory over months / years of use) connection was just impossible and I had to restart my computer.

but my biggest issue was when i was launching blueberry from the menu these past weeks on mint 19.2, I saw the GUI was loading but it never showed up. I couldn't access it or see it. My headset even connected by itself at some point but overall it was basically impossible to predict or force a connection. Maybe this was not directly blueberry related and more because of something broken on my computer, but still installing blueman instead immediately fixed everything.

So to answer the question I would say that blueman seems to be much more reliable and stable.

It also gives more options and statistics about the connection, for example for my bose headset i can choose the Audio Profile between "Headset Head Unit" and " High Fidelity Playback " by right clicking my device. I don't remember seeing this option on blueberry ; in fact now that I'm playing with these options I understand why my headset was thinking it was receiving a call, it's probably because blueberry connected to my device using this " Headset Head Unit " mode.

I can see that i'm not the only one reporting better performance using headsets https://forum.endeavouros.com/t/blueman-instead-of-blueberry/3238

The only downside is that these options and stats may be too complicated for simple users, but overall given its stability i still think it's a better choice

cschramm commented 4 years ago

On our side I think most of the issues we have with blueman are related to integration:

  • support for dark themes (symbolic icons)

What's necessary there? To my knowledge there are themes like Ubuntu-Mono-Dark that ship fitting Bluetooth icons and that works just fine.

  • support for xappstatusicon

Makes sense, at least if we keep a fallback to GtkStatusIcon to keep the dependency optional but that's easy.

  • not showing a tray icon when no bt adapter is present

What's the issue there?

Blueman uses python, GTK3 and gsettings so we could propose PRs to address these. If their dev team welcomes these changes we could consider leaving blueberry.

You're absolutely welcome.

clefebvre commented 4 years ago

Hi Christopher,

Thanks for being here. I kinda threw this out there and didn't really test much. I didn't think you'd be reading me and asking for feedback that early. If I had known, I would have checked the latest version of Blueman before writing this and tested much more in detail.

Symbolic icons

The symbolic icons adapt to their background dynamically. Most themes are either light or dark. But some themes are both dark and light: Mint-Y-Darker for instance have white context menus but dark toolbars. Colorful icons work everywhere but if you want to achieve a "mono" look the only valid option is to use symbolic icons.

If you provide a set of light mono icons and a set of dark mono icons (like Ubuntu and Mint do), you fix most of the issue... icons are visible in light themes and dark themes, but you have a problem when it comes to mixed themes (like Mint-Y-Darker).

If you look closely, there's also an issue in most themes using mono icons.. they don't highlight dynamically.

Here's a menu using symbolic icons:

image

And here's one using mono icons:

image

As you can can see, at first sight they kind of look the same.. but if you look closely, the mono icons are static, they don't adapt to the highlighted selection. That folder icon should be white, not black.

We're all taking shortcuts and we're doing our best to juggle with different themes, icons, applications, and trying to make everything look good. Overall it does look pretty good, but if we want to nail this and make it look really clean, we only have two options... either we use colorful icons everywhere (and they're really hard to make) or we use symbolic icons. Mono icons just don't work as well. GNOME is also pushing towards a removal of icons on Gtk menus.. but that's another story :)

When symbolic icons were introduced I remember people cringed. In their early incarnations they were completely black and they weren't very popular outside of GNOME. Years have passed since and I think people are embracing them a little more than before. That said, I know some people don't want to switch to them, especially in distributions which opted for traditional desktops and colorful icons. The fact that you're using gsettings makes it easy for something like this to be an optional setting which can be set via a schema override.

XAppStatusIcon

If you use an XAppStatusIcon and there is no XAppStatus applet it falls back to xembed (GtkStatusIcon) automatically.

Libxapp is present in pretty much any distributions out there, but depending on what we use we'll need to check the version of libxapp and make sure it doesn't introduce dependencies which aren't present in the releases you're supporting.

If the dependency on a particular version of libxapp is an issue, or on the library itself (if a distribution doesn't have it), we can make this a runtime option. As you said this is pretty easy to do.

Bugs

I shouldn't have mentioned the tray icon being visible when no BT adapters are present. It's a vague memory from 2015. If that was a bug at the time, I'm sure it's been fixed since.

I need to properly test Blueman before coming back to you and mentioning bugs and I'm sorry I mentioned that one.

Features

Blueberry is definitely light on features and it's missing many. But that's OK in a way.. look at Transmission, look at Celluloid, look at Xed... we have Deluge, we have VLC, we have Geany in the repositories which work just as well and provide way more.

Blueman is a complete BT solution and that's OK as well.

Either of them could be installed by default, on the condition that Blueberry provides the core features most people require and that Blueman's exhaustive list of features doesn't get in the way of an easy and comfortable user experience.

To make that choice we need to test both applications in detail and review them. It's not really a process that has been done with Blueman because of our history with gnome-bt. We've always been using gnome-bt... when Cinnamon started it inherited cinnamon-bt from shell, and that already was a frontend to gnome-bt. When gnome-bt (the application) lost its frontend and became useless outside of GNOME, we just had to throw a couple of lines of code to resurrect it in MATE/Xfce, and we already knew the backend.

Backend

We've had issues with gnome-bt when it comes to stability. We're also concerned with OBEX in 20.04.. I haven't tested this in depth yet, I'd rather not talk about it yet, but it's on the horizon and it could have an impact on our timing.

Development

We're quite limited in terms of empowerment. Blueberry isn't even a frontend to a library with a stable API, it's a wrapper application around a gnome-bt widget which developers only develop with GNOME in mind. It's been working fine for years, but it's not ideal. Joining forces and supporting a complete cross-DE project like Blueman instead makes a lot of sense in that respect.

Timing

Mint 20 is coming in June... this is the worst timing ever :) I can't promise anything for this release, but we will look at Blueman and consider it as a potential replacement for Blueberry before Christmas.

We'll look at its features, its ease of use, its interface and integration. If we want to keep Blueberry, it won't mean much in terms of negatives for Blueman. Picking one app as default doesn't mean it's the best (We've had that discussion about Celluloid vs VLC recently).

If we want to move to Blueman, we'll ask ourselves what changes we'd like to see, if any, and we'll ask the Blueman team if they're OK with that before submitting PRs.

It might take time, it might not but we will review Blueman going forward.

cschramm commented 4 years ago

Thanks for being here. I kinda threw this out there and didn't really test much. I didn't think you'd be reading me

:smirk: This thread drew my attention a while ago. I'm not even sure how anymore.

Regarding symbolic icons I'm a little lost what we can do from the upstream side. I got mono vs. symbolic, thanks for your explanation, and suppose that the way we handle icons makes it possible to override them with mono but not with symbolic ones. I currently have no idea how to improve that, though.

I shouldn't have mentioned the tray icon being visible when no BT adapters are present.

I'm not sure if the expectation is that the icon is visible or not visible. No visibility makes sense to me as there's basically nothing the applet could do for the user if there is no adapter. There have been issues with the icon visibility in the past though.

Either of them could be installed by default, on the condition that Blueberry provides the core features most people require and that Blueman's exhaustive list of features doesn't get in the way of an easy and comfortable user experience.

Independent of whether you'd switch to blueman or not, we'd be eager to hear if you think anything gets in the way of an easy and comfortable user experience.

If we want to move to Blueman, we'll ask ourselves what changes we'd like to see, if any, and we'll ask the Blueman team if they're OK with that before submitting PRs.

It might take time, it might not but we will review Blueman going forward.

You're welcome any time.

andreikop commented 4 years ago

My issues with blueberry were all about stability, not about GUI style. Some concrete problems are listed in my first post. See also links to mintforums.

clefebvre commented 4 years ago

It also gives more options and statistics about the connection, for example for my bose headset i can choose the Audio Profile between "Headset Head Unit" and " High Fidelity Playback " by right clicking my device. I don't remember seeing this option on blueberry ; in fact now that I'm playing with these options I understand why my headset was thinking it was receiving a call, it's probably because blueberry connected to my device using this " Headset Head Unit " mode.

@brbatv Agreed on feedback and statistics. With Blueberry you don't get much in the way of stats or even error messages. The audio profile has nothing to do with BT though, that's typically something you select in the Sound Options, it's a pulseaudio sink profile. It's nice to see you can swap it directly in Blueman without going to the sound options, though a link to open the sound settings would be nice as well to troubleshoot issues. Testing this here on 19.3 Cinnamon, PA switches the default sink away from by BT headset when I switch profiles towards Headset Unit, that's something I can't fix or understand from Blueman alone but which is pretty explicit/clear if I look at the sound settings. Regarding PA and BT, mileage varies also greatly from adapter to adapter or even from release to release... testing this headset on my Mint 19.3 desktop computer I get it fully working with A2DP but I get cracking noises with HSF. Testing the very same headset on a macbook with Mint 20, and it's HSF which works out of the box this time, and A2DP gives cracking noises... different chipsets, different PA/kernel/stacks versions.

clefebvre commented 4 years ago

@brbatv My apologies, what I said was true to some extent but incomplete. After testing more in depth, I see it's not only the audio profile which is at play here, and configurable in pulse audio (audio settings) but also the BT connection profile... and that's something you can choose in Blueman, but neither in Blueberry nor anywhere else in the desktop settings. I can reproduce a case of delayed and crackling playback here on a projector which isn't solvable via UI with blueberry and the DE alone.

clefebvre commented 2 years ago

@cschramm it's been two years and recent changes just popped up so I thought I'd give you some feedback.

First, we continued to get user feedback and they confirmed what we saw here. The simplistic UI design in blueberry is perfect for simple use cases and when everything works but when people have issues we actually tell them to switch to blueman. The most common issues are related to the backend, devices which fail to pair or to connect, and audio connections with crackling noises or audio lag.

Because blueberry worked for most users and other WIP took priority, testing the migration to blueman was postponed during the 20.1, 20.2, 20.3 and LMDE 5 cycles. Today we got news from Fedora that blueberry no longer works with gnome-bluetooth 42. Even if Mint 21 / Ubuntu 22.04 ship with GNOME 41 this is an issue for blueberry in the long term. It can use the same API used by GNOME Shell, but if we're to continue with it, it will require changes no matter what.

Mint 21 is planned for August and this will become more of a priority.

clefebvre commented 2 years ago

@cschramm are you available for a quick chat on IRC or Discord? I'm preparing a PR for symbolic icons but I'd like to know if you want to keep fullcolor icons as an option, and in which parts of the app.

cschramm commented 2 years ago

@clefebvre: Sure. clem on SpotChat?

clefebvre commented 2 years ago

ok, I'll join #blueman there.

clefebvre commented 2 years ago

@cschramm I finished the French translations for the main/ branch in Weblate. Do I need to finish the 2.2 branch also?

cschramm commented 2 years ago

Cool, thanks. There's currently no plan for another 2.2 release (disclaimer: there wasn't before 2.2.4 either :see_no_evil:). The UI changes we discussed will definitely go into 2.3, so main is fine.

cschramm commented 9 months ago

During a lengthy discussion (https://github.com/blueman-project/blueman/discussions/2186, no need to read it) I just realized that blueman does not play well with the notification system that Cinnamon seems to have inherited from Gnome 3.

blueman uses notifications as dialogs for pairing, service authorizations (for untrusted devices) and incoming file transfers. However, by default Cinnamon's notification daemon ignores notification timeouts and puts everything into a pile of past notifications in the tray after displaying it for a configurable period of 4 seconds, even if the notification has actions. You can configure that notifications get removed when they time out, but you cannot change the fact that they are always displayed for a fixed period.

Is that known and accepted? :sweat_smile: