After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 686584 - Some extensions don't work if gio and gio-hardware are not enabled
Some extensions don't work if gio and gio-hardware are not enabled
Status: RESOLVED WONTFIX
Product: banshee
Classification: Other
Component: Device (general)
git master
Other Linux
: Normal normal
: ---
Assigned To: Banshee Maintainers
Banshee Maintainers
gnome[unmaintained]
Depends on:
Blocks:
 
 
Reported: 2012-10-21 17:46 UTC by Andrés G. Aragoneses (IRC: knocte)
Modified: 2020-03-17 09:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch for gio (3.61 KB, patch)
2012-10-21 19:50 UTC, Andrés G. Aragoneses (IRC: knocte)
none Details | Review
Patch for gio-hardware (2.66 KB, patch)
2012-10-22 00:27 UTC, Andrés G. Aragoneses (IRC: knocte)
none Details | Review
Patch for gio v2 (3.63 KB, patch)
2012-12-06 20:02 UTC, Andrés G. Aragoneses (IRC: knocte)
committed Details | Review
Patch for gio-hardware v2 (2.73 KB, patch)
2012-12-06 20:03 UTC, Andrés G. Aragoneses (IRC: knocte)
committed Details | Review

Description Andrés G. Aragoneses (IRC: knocte) 2012-10-21 17:46:21 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.
Comment 1 Andrés G. Aragoneses (IRC: knocte) 2012-10-21 19:50:47 UTC
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.
Comment 2 Andrés G. Aragoneses (IRC: knocte) 2012-10-22 00:27:36 UTC
Created attachment 226950 [details] [review]
Patch for gio-hardware

This one is for gio-hardware.
Comment 3 Andrés G. Aragoneses (IRC: knocte) 2012-12-06 20:02:16 UTC
Created attachment 230913 [details] [review]
Patch for gio v2

Just an update to the patch, with a clearer commit message.
Comment 4 Andrés G. Aragoneses (IRC: knocte) 2012-12-06 20:03:10 UTC
Created attachment 230914 [details] [review]
Patch for gio-hardware v2

Just an update to the patch, with a clearer commit message.
Comment 5 Alexander Kojevnikov 2012-12-10 01:05:04 UTC
Are you sure Mass Storage and MTP don't work without gio-hardware?
Comment 6 Andrés G. Aragoneses (IRC: knocte) 2012-12-11 00:21:34 UTC
Comment on attachment 230913 [details] [review]
Patch for gio v2

http://git.gnome.org/browse/banshee/commit/?id=48e1951b6a12b8a183b0587301933c9d5350cc58
Comment 7 Andrés G. Aragoneses (IRC: knocte) 2012-12-11 00:23:56 UTC
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").
Comment 8 Andrés G. Aragoneses (IRC: knocte) 2012-12-11 00:51:16 UTC
(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 :)
Comment 9 André Klapper 2020-03-17 09:50:29 UTC
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.