Date: Fri, 21 Aug 2015 02:25:21 +0900 (JST) From: Hiroki Sato <hrs@FreeBSD.org> To: ports@FreeBSD.org Subject: Removal of print/ghostscript*-nox11 Message-ID: <20150821.022521.792759762853683209.hrs@allbsd.org>
next in thread | raw e-mail | index | archive | help
----Security_Multipart(Fri_Aug_21_02_25_21_2015_230)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit 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 ----Security_Multipart(Fri_Aug_21_02_25_21_2015_230)-- Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEABECAAYFAlXWDYEACgkQTyzT2CeTzy0ALgCeOdiKkSUqe+HldQrUUi3ICT33 44sAni4oCRxZhzvuQTM50pH8Ww36z6x2 =plIS -----END PGP SIGNATURE----- ----Security_Multipart(Fri_Aug_21_02_25_21_2015_230)----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150821.022521.792759762853683209.hrs>