Bug 204696 - graphics/xpdf: pdfinfo and friends not in exec path.
Summary: graphics/xpdf: pdfinfo and friends not in exec path.
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Cy Schubert
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-11-20 09:18 UTC by Aldis Berjoza
Modified: 2015-11-20 14:25 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (cy)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Aldis Berjoza 2015-11-20 09:18:50 UTC
There are couple of very useful utilities that comes with xpdf such as
* pdfinfo
* pdftohtml
* pdftopng
etc

However these are installed in /usr/local/libexec/xpdf/ thus are not executable by default, because they are not in any of standard execution paths.

In fact /usr/local/bin/xpdf is link to /usr/local/libexec/xpdf/xpdf.

Manuals for these utilities are available (i.e. man pdfinfo).
I think this is quite confusing.
I really needed pdfinfo but couldn't find it until I looked at xpdf ports pkg-plist.

Why don't these utils deserve link in /usr/local/bin/ ?
Comment 1 Cy Schubert freebsd_committer freebsd_triage 2015-11-20 13:39:28 UTC
This intentional, see r296465 and r322740. The reason is that if a person wants to install gnome and xpdf they cannot because xpdf conflicted with poppler-utils and poppler. Poppler-utils is required by tracker which in turn is required by nautilus, gnome-documents, gnome-photos, texlive-base (and the whole texlive family of ports), cups-filters (and ports which require them), and libreoffice and many others, but most importantly nautilus. So, if a user wants to install gnome AND xpdf, you can't.

Back in the old days, prior to pkgng, one could force the install of packages overwriting files belonging to other packages. In terms of best practice, this is questionable at the best of times. Come along pkgng and bad behavior is simply not allowed (this is a good thing). So, a user had a choice: install xpdf or install gnome, the texlive family of ports, the ports which require cups, and libreoffice, but not both.

I'm open to suggestions. One I can think of myself is optionally install them in their proper place. This, of course, cannot be the default as any standard binary package will simply make xpdf mutually exclusive with gnome, the texlive family of ports, the ports which require cups, and libreoffice and probably many other packages. In other words, xpdf can only be installed on a very basic system without a lot of other useful software installed.

A second option might be another package to symlink the files to ${LOCALBASE}/bin and a third option may be not to install the utilities at all and expect the user to install poppler-utils and poppler.

It think the current state of xpdf allows users the flexibility to manually create symlinks if they so desire while allowing others to install complete suites of other software that requires poppler-utils.

If you think that having a non-default option to install the binaries in ${LOCALBASE}/bin is worthwhile, I can implement but to make make xpdf mutually exclusive with a host of other software will surely limit who can install it.
Comment 2 Aldis Berjoza 2015-11-20 13:49:56 UTC
Thanks for expiation.
That sound very reasonable.

I can only suggest to add some info in pkg-message and tell the user where to find these utils.

As for me - I just created proper symlinks in ~/bin.
Comment 3 Aldis Berjoza 2015-11-20 13:50:48 UTC
Thanks for explanation.
That sound very reasonable.

I can only suggest to add some info in pkg-message and tell the user where to find these utils.

As for me - I just created proper symlinks in ~/bin.
Comment 4 commit-hook freebsd_committer freebsd_triage 2015-11-20 14:25:02 UTC
A commit references this bug:

Author: cy
Date: Fri Nov 20 14:24:43 UTC 2015
New revision: 402084
URL: https://svnweb.freebsd.org/changeset/ports/402084

Log:
  Make reference to the fact that the binaries are created in
  ${LOCALBASE}/libexec/xpdf.

  PR:		204696

Changes:
  head/graphics/xpdf/Makefile
  head/graphics/xpdf/pkg-message
Comment 5 Cy Schubert freebsd_committer freebsd_triage 2015-11-20 14:25:29 UTC
Pkg-message created.