Hi, I would like your comments about removal of ghostscript*-nox11 ports, more specifically, whether many people think X11 library dependency is annoying or not. After trying to fix -nox11 ports in the end of last month and then investigating them more carefully, I also reached a conclusion that they should be removed as several ports committers suggested.
These -nox11 ports have originally been provided to build
pre-compiled packages for people who want GS with no (heavy) X11
dependency. However, they have made dependency handling complicated
because a package which depends on both X11 library and GS by default
requires GS w/ X11 support in the dependency chain, but GS w/ and w/o
X11 cannot co-exist. This means that the -nox11 packages do not work
well with pre-complied packages which require GS though they work if
all of them are built w/o X11 support consistently on a system. If
ports are built manually with OPTIONS_UNSET=X11,
print/ghostscript*-nox11 ports are not useful anymore.
So I would suggest either of the following two plans:
Plan A: Just remove print/ghostscript*-nox11.
Currently ghostscript depends on X11 libraries of ice, sm, x11,
xext, and xt. While one can still eliminate these dependency by
disabling X11 in PORT_OPTIONS, the pre-complied packages always
depend on them.
Pros: Simple.
Cons: GS always depends on the X11 libraries.
Plan B: Remove print/ghostscript*-nox11 and split the X11-dependent
part of print/ghostscript9 into another port.
Ghostscript can be built into two parts; one is a part without X11
libraries and another is a shared library for X11-dependent
functionality. GS will find the shared library and transparently
enable x11* devices only when available. So we can split
ghostscript ports into base and X11 part like this:
print/ghostscript9-base: no X11 dependency
print/ghostscript9-x11: installs the shared library only
Ports which require ghostscript can safely depend on
ghostscript9-base regardless of X11 support. If they need X11
support in GS (print/gv, for example), USES=ghostscript:x11 picks up
ghostscript9-x11 as an additional dependency.
Pros: Minimal dependency.
Cons: People may confuse what -base and -x11 mean and which package
should be installed when they want ghostscript.
I have created patches for the both and confirmed technical
feasibility but still wondering which looks better to people who are
using ghostscript. Any comments and/or questions are welcome.
-- Hiroki
pgpyErztv5AQr.pgp
Description: PGP signature
