GNOME Bugzilla – Bug 686584
Some extensions don't work if gio and gio-hardware are not enabled
Last modified: 2020-03-17 09:50:29 UTC
Some extensions don't work at all if gio and gio-hardware is not enabled when configuring banshee, like Dap.MassStorage. However, even if gio and gio-hardware are not enabled, they are built, and run at startup, which is: 1) misleading for the user (important) 2) unnecessary (less important) Now, how to fix this? The first issue is that MassStorage extension is actually hardcoded to "yes" in configure.in: Digital Audio Player (DAP) Support: Apple Device: ${enable_appledevice} (libgpod-sharp) Karma: ${enable_karmasharp} Mass Storage: yes MTP: ${enable_libmtp} Not only that, but enable_appledevice should depend on ${enable_gio} and ${enable_gio_hardware}. This is kind of complex, and boring to fix, TBH. However there's something we can do that would alleviate the problem: make gio and gio_hardware dependencies be enabled by default, unless their corresponging --disable-gio-hardware and --disable-gio flags are passed. I guess they were just detected and set at configure time (without any default) because in the past we had different kinds of hardware backends which were detected by the configure script. But right now, those old backends were deprecated, so we should try our best to make users be aware of these optional dependencies. I'll provide a patch.
Created attachment 226943 [details] [review] Patch for gio First patch: makes --disable-gio mandatory if no deps are met for gio. I'll post a second patch for gio-hardware.
Created attachment 226950 [details] [review] Patch for gio-hardware This one is for gio-hardware.
Created attachment 230913 [details] [review] Patch for gio v2 Just an update to the patch, with a clearer commit message.
Created attachment 230914 [details] [review] Patch for gio-hardware v2 Just an update to the patch, with a clearer commit message.
Are you sure Mass Storage and MTP don't work without gio-hardware?
Comment on attachment 230913 [details] [review] Patch for gio v2 http://git.gnome.org/browse/banshee/commit/?id=48e1951b6a12b8a183b0587301933c9d5350cc58
Comment on attachment 230914 [details] [review] Patch for gio-hardware v2 http://git.gnome.org/browse/banshee/commit/?id=ad957935908cdc71425ff5a62a193301ee6ec0b3 (In reply to comment #5) > Are you sure Mass Storage and MTP don't work without gio-hardware? MassStorage: yes (I just tested it again just in case). And when I say it doesn't work I mean: yes, it compiles and runs, but the event of "device has been plugged" doesn't arrive to Banshee, so it doesn't appear in the player. MTP, to be honest, I'm not sure, but I was expecting the same to happen (not receive the hardware "event").
(In reply to comment #7) > (In reply to comment #5) > > Are you sure Mass Storage and MTP don't work without gio-hardware? > > MTP, to be honest, I'm not sure, but I was expecting the same to happen (not > receive the hardware "event"). BTW, anyway I never asserted in the bug anything about MTP. I was mainly referring to Dap.MassStorage and AppleDevice :)
Banshee is not under active development anymore and had its last code changes more than three years ago. Its codebase has been archived. Closing this report as WONTFIX as part of Bugzilla Housekeeping to reflect reality. Please feel free to reopen this ticket (or rather transfer the project to GNOME Gitlab, as GNOME Bugzilla is being shut down) if anyone takes the responsibility for active development again. See https://gitlab.gnome.org/Infrastructure/Infrastructure/issues/264 for more info.