Bug 256218 - textproc/wordnet: missing Tk dependency
Summary: textproc/wordnet: missing Tk dependency
Status: In Progress
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Mikhail T.
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-05-28 12:11 UTC by Jack
Modified: 2024-01-19 15:39 UTC (History)
5 users (show)

See Also:
portmaster: maintainer-feedback? (mi)


Attachments
Patch to add tk86 as a dependency if GUI is selected (415 bytes, patch)
2021-06-04 20:55 UTC, Jack
mi: maintainer-approval-
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jack 2021-05-28 12:11:09 UTC
WordNet needs tk86 but it's not listed as a dependency
Comment 1 Mikhail Teterin freebsd_committer freebsd_triage 2021-05-28 17:02:31 UTC
Some parts of WordNet will not work without Tk available at runtime. But other parts -- will. Requiring Tk86 at all times would be wrong, wouldn't it? Those, who want the GUI, can install Tk, and then the GUI-parts of WordNet will "just work"...
Comment 2 Jack 2021-05-28 19:23:50 UTC
(In reply to Mikhail Teterin from comment #1)
Maybe there needs to be a knob for gui operation so the user doesn't get some strange error that file does not exist if they try to launch the gui?
Comment 3 Mikhail Teterin freebsd_committer freebsd_triage 2021-05-28 19:27:26 UTC
That's a typical Unix error for when the interpreter requested by the first line of the script (with the #!/foo/bar) does not exist.

Nothing unique to WordNet. I suppose, a message could be put into pkg-message, but who really reads those, anyway?
Comment 4 Jack 2021-05-28 19:35:27 UTC
(In reply to Mikhail Teterin from comment #3)
Yep, thats why I suggest we add a knob in the make config. If user wants a gui, they can select gui and it will automatically depend on tk86
Comment 5 Chris Hutchinson 2021-06-04 17:41:24 UTC
@Fernando
The title currently says
textproc/wordet: missing tk86 dependency
shouldn't it actually say:
textproc/WordNet missing tk86 dependency

:-)
Comment 6 Mikhail Teterin freebsd_committer freebsd_triage 2021-06-04 17:58:23 UTC
How about I create pkg-message with this text in it:

> The GUI parts of WordNet, such as wnb, require Tk to be installed.
Comment 7 Jack 2021-06-04 20:55:12 UTC
Created attachment 225553 [details]
Patch to add tk86 as a dependency if GUI is selected

This option makes it more user friendly than a pkg-message
Comment 8 Mikhail Teterin freebsd_committer freebsd_triage 2021-06-04 20:57:53 UTC
Comment on attachment 225553 [details]
Patch to add tk86 as a dependency if GUI is selected

I don't want to bother with options just for this. Your change makes nothing better -- the option is off by default anyway, so will only "help" people building the port by hand.

Technically the patch is also wrong because it hardcodes the version of wish -- instead of using ${TCL_VER}. Neah...
Comment 9 Fernando Apesteguía freebsd_committer freebsd_triage 2021-06-04 21:13:58 UTC
(In reply to Chris Hutchinson from comment #5)
Damn!

Yeah, I missed the 'n'
Comment 10 Chris Hutchinson 2021-06-04 21:58:14 UTC
(In reply to Fernando Apesteguía from comment #9)
> Damn!
> 
> Yeah, I missed the 'n'
Not your fault. You just need to get a smarter keyboard. ;-)
Comment 11 Jack 2021-06-04 22:08:59 UTC
(In reply to Mikhail Teterin from comment #8)
head /usr/local/bin/wnb
#!/usr/local/bin/wish8.6

But does it work with a different version of wish?
Comment 12 Mikhail T. 2023-11-28 01:55:35 UTC
How about I modify wnb to use tclsh instead of wish, and try loading Tk at runtime like this:

#!/usr/local/bin/tclsh8.6

if {[catch {package require Tk} err]} {
        puts stderr "Error initializing GUI: $err\n\nThis program requires Tk.\
            Please, install the x11-toolkits/tk[string map {. {}} $tcl_version] port."
        exit 1
}

This will give the user a fair explanation without adding the OPTIONS and creating multiple versions of the package? Because even with your patch, if the user declines the GUI-option, the port would still install wnb -- just as unusable as it is currently...
Comment 13 Jack 2023-11-28 02:11:16 UTC
(In reply to Mikhail T. from comment #12)
I figure it would be more user friendly to install the required Tk version for them if they chose the GUI path but if they chose non GUI and tried to start it up in GUI mode, that could work too.
Comment 14 Mark Linimon freebsd_committer freebsd_triage 2024-01-19 15:39:38 UTC
^Triage: assign to committer that is investigating.