Bug 269033 - deskutils/calibre: should depend on security/py-pycryptodome
Summary: deskutils/calibre: should depend on security/py-pycryptodome
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Guido Falsi
URL: https://www.freshports.org/deskutils/...
Keywords:
Depends on:
Blocks:
 
Reported: 2023-01-18 18:54 UTC by Matthias Pfaller
Modified: 2023-01-20 08:11 UTC (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Pfaller 2023-01-18 18:54:43 UTC
There are some calibre plugins expecting security/py-pycryptodome to be installed. On debian this gets installed, when installing calibre.

Thank's alot for the upgrade to 6.11
Comment 1 Guido Falsi freebsd_committer freebsd_triage 2023-01-19 08:18:58 UTC
(In reply to Matthias Pfaller from comment #0)

Hi,

I was not aware of this.

I'm fine with adding it as a dependency to calibre, although, by your description, it would be a dependency of those plugins.

On the other hand, I see calibre listing pycryptodome in some of its source files (sources.json) so it is at least listed by it as a dependency, and that makes it reasonable for plugins to expect it.
Comment 2 Matthias Pfaller 2023-01-19 09:54:39 UTC
imho everything in sources.json should be present. I don't think a plugin can trigger an install of additional packages when you install it from the calibre UI.
Comment 3 Guido Falsi freebsd_committer freebsd_triage 2023-01-19 10:27:09 UTC
(In reply to Matthias Pfaller from comment #2)

In general, regarding manually installed software (including plugins):

The fact that a plugin cannot trigger a dependency install is irrelevant.

The user is installing the plugin manually so providing dependencies is a user responsibility, as with any other user installed 

By the way plugins installed manually can depend on anything. If a plugin depended on libreoffice, for whatever reason, that would not mean the ports system should provide libreoffice in any way.

If the plugin was provided by the ports tree as a separate port, then it would be that port responsibility to provide its dependencies, obviously.

In this case:

I already agreed to add the dependency since this one is reported in sopurces.json. I'll commit the change later.


Just for the sake of argument: This really looks as a grey area, I don't see why pycryptodome should be listed in sources.json if calibre itself is not using it, IMHO it should actually not be there, but here we're discussing a port and not upstream development practices, so I'll align with upstream as much as possible.
Comment 4 Guido Falsi freebsd_committer freebsd_triage 2023-01-19 10:54:48 UTC
(In reply to Guido Falsi from comment #3)

Sorry, my comment came out much harsher than I meant it to be.

I only wanted to explain my logic.

The important part is I accept your suggestion of adding a dependency on security/py-pycryptodome.

This is driven only by the fact that upstream lists security/py-pycryptodome as a requirement.
Comment 5 commit-hook freebsd_committer freebsd_triage 2023-01-20 08:10:05 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=ca7bf01cd357ee37b06b4d95d0dcf810bbb43abf

commit ca7bf01cd357ee37b06b4d95d0dcf810bbb43abf
Author:     Guido Falsi <madpilot@FreeBSD.org>
AuthorDate: 2023-01-20 08:08:42 +0000
Commit:     Guido Falsi <madpilot@FreeBSD.org>
CommitDate: 2023-01-20 08:08:42 +0000

    deskutils/calibre: Add missing dependency on security/py-pycryptodome

    It is listed as required by upstream and used by some plugins.

    While here, fix dependency on net/py-zeroconf.

    PR:             269033

 deskutils/calibre/Makefile | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
Comment 6 Guido Falsi freebsd_committer freebsd_triage 2023-01-20 08:11:43 UTC
Dependency added. Thanks for reporting!