On FreeBSD, calibre relied on HAL for the mounting of ereaders that use USB mass storage (usbms). HAL was deleted from the ports system back in February 2021, and it appears that it was never a formal requirement of the port (probably relied on it being pulled in from the Desktop.) I'm looking into replacing the HAL code with BSDisks/Udisks2, but I haven't been a programmer in a long, long time. I thought I'd file a bug report to see if someone with more current skills can help. On an installed calibre the files in question are /usr/local/lib/calibre/calibre/devices/usbms/device.py and hal.py in the same directory.
Hi, Thanks for the report. I'm actually aware of this, and was planning to do the same you propose (use libudisks and bsdisks), but I've been unable to make it work. Unluckily at present I can dedicate little time to this. Also add that I don't have good knowledge of python. If you want to try to create a patch even imperfect and post here I'll be happy to try to help.
To be more specific I had problems finding how to access bsdisk and libudidsks from python to get the information I need to actually mount the devices.
Created attachment 258762 [details] device mount patch v2 Hi! I've made some progress on this and created a patch that should work, and maybe acceptable to upstream. I've attached here a patch against the port so it can be tested. The patch against upstream is available at [1] as a draft pull request. I plan to promote it once I'm sure it works fine. If anyone could test it and report back that would be appreciated. [1] https://github.com/kovidgoyal/calibre/pull/2694
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=ea5a07ded849c996ed435fb8932bdda1690acd75 commit ea5a07ded849c996ed435fb8932bdda1690acd75 Author: Guido Falsi <madpilot@FreeBSD.org> AuthorDate: 2025-03-21 18:27:51 +0000 Commit: Guido Falsi <madpilot@FreeBSD.org> CommitDate: 2025-03-21 18:27:51 +0000 deskutils/calibre: Update to 8.0.1, add UDisks2 device mounting I submitted the DBus/UDisks2 device mounting code upstream here: https://github.com/kovidgoyal/calibre/pull/2694 PR: 258224 deskutils/calibre/Makefile | 8 +- deskutils/calibre/distinfo | 14 +- .../files/patch-UDisks2-Device-Mounting (new) | 288 +++++++++++++++++++++ deskutils/calibre/files/user-agent-data.json | 154 +++++------ deskutils/calibre/pkg-plist | 10 +- 5 files changed, 385 insertions(+), 89 deletions(-)
Device mounting code committed to port with latest update.
Hi, I just wanted to say thank you for all the work. It's really, *really* nice to not need to boot into my OpenSuSE partition to use Calibre with my Kobo anymore.