- Make openjpeg dependency optional and off by default because it's been
vulnerable for a long time.
- Disable IJS option because print/hpijs, the last port that used it, has
been removed.
PR: 234013
Approved by: doceng (bcr)
This release fixes problems with argument handling, some unintended results
of the security fixes to the SAFER file access restrictions (specifically
accessing ICC profile files), and some additional security issues over the
recent 9.24 release.
PR: 231547
Exp-run by: antoine
MFH: 2018Q3
patch-010-bc3df07
For ICC profile validation, have cups id iteself as DeviceN.
patch-020-c8c01f8, patch-030-1341854
Add the ICCProfilesDir to the PermitReading list.
patch-040-9528102
Fix ps2epsi /undefined in --setpagedevice--.
PR: 231148
Make the path in the mappings relative to LOCALBASE/share/fonts so
print/gsfonts does not need to be installed. [1]
- Remove --enable-threadsafe from CONFIGURE_ARGS so thread-unsafe devices
like opvp (used by Canon printer drivers) are built. [2]
- Fix detection of dlopen on FreeBSD < 11.2 (which doesn't have libdl). [2]
- Remove reference to FAPI configuration from pkg-message. As far as I
can tell it is only useful in combination with UFST, a commercial font
renderer from Monotype and we don't (and can't) build with UFST support.
PR: 229211 [1], 229332 [2]
Tested by: Osamu Matsuda <omatsuda000@gmail.com>
update them to version 9.23. Share CMap data with graphics/poppler-data
and update that to 0.4.9.
Details for print/ghostscript9-agpl-base:
- Update to 9.23.
- Drop external epag device.
- Always use fontconfig to find fonts.
- Use ports openjpeg instead of bundled.
- Use bundled lcms2, because upstream forked it.
- Drop dependency on gsfonts. Newer versions of the fonts are already
included.
- Depend on poppler-data for CMap files. It has the same maps except
Identity-H, Identity-UTF16-H, and Identity-V.
- Resolve conflict with gambc by moving bin/gsc to bin/gs instead of
symlinking.
- Configure with --with-libiconv=maybe instead of --with-libiconv=native to
prevent detecting libiconv from converters/libiconv if it happens to be
installed. Also remove the ICONV option because it's part of the base
system in all supported versions of FreeBSD.
- Enable thread safety.
- Remove all driver options and simply build with --with-drivers=ALL. They
don't take up much space and don't require additional dependencies so
options don't provide much value. This makes the port a lot easier to
maintain.
- Set the internal font path to ${LOCALBASE}/share/fonts because the
upstream default doesn't make much sense on FreeBSD.
- Make dependency on libijs optional because it only seems to be used by
print/hpijs which is deprecated.
- Extract all directories and remove unwanted directories in post-patch so
contents can be examined after 'make extract'.
- Strip gs and libgs.so. Reported by stage-qa.
- Install color profiles in share/color/icc, where other programs can find
them.
- Remove old patches.
Details for print/ghostscript9-agpl-x11:
- Keep the Makefile similar to ghostscript9-agpl-base Makefile.
- Set PATCHDIR to ghostscript9-agpl-base/files so patches are shared.
Details for graphics/poppler-data:
- Update to 0.4.9.
- Replace post-patch with MAKE_ARGS.
- Add post-install to make all CMap files available in share/cmap so
Ghostscript can use them too. Unfortunately, Poppler requires these files
organised in subdirectories and Ghostscript wants them all in one
directory, hence the hardlinks.
PR: 228546
Approved by: maintainer timeout (15 days)
- Rename the LIBDANE option DANE because that's the name of the protocol
supported by libgnutls-dane and gnutls-cli. Also clarify the option
description.
- Add an IDN option.
- libgnutls-openssl has been removed in 3.4. Some ports used this library
in their LIB_DEPENDS but no port actually required it.
- Some old API functions have been removed. Ports that used these have been
updated or patched to use the new API.
- Add a patch to print/cups to prevent overlinking of libgnutls.so.
- Bump PORTREVISION on dependent ports.
net-im/jabber: This port used the old API to give users fine grained
control over which crypto algorithms were used via a configuration file.
It's not immediately obvious how to port this to the new API so the port
always uses the defaults now.
www/hydra: Mark BROKEN. This uses more removed calls than the other ports,
is said to be alpha quality and not fully functional and has been abandoned
10 years ago.
PR: 207768
Exp-run by: antoine
Approved by: portmgr (antoine)
changed the license to the AGPL 3 in version 9.07 so print/ghostscript9-base
is stuck at 9.06 which is almost 4 years old now.
Fix the logic in Uses/ghostscript.mk so "agpl" is treated as a real version
on its own instead of as a variant of other versions.
Fix print/ghostscript9-agpl-base to install eps2write.
Update math/asymptote to 2.37 to support newer Ghostscript.
PR: 208159
Exp-run by: antoine
Approved by: portmgr (antoine)
print/cups and update it to 2.1.3. Also remove print/cups-pstoraster,
improve print/cups-filters, print/foomatic-* and update print/hplip to
3.16.2.
Long description:
First some background. When you hand a file to cups it sets up a chain of
filter programs that converts the file to something a printer understands.
Each filter has a cost associated with it and cups tries to find the
cheapest chain. Costs used to be configured in such a way that files were
first converted to PostScript. This could then be manipulated further (e.g.
putting multiple pages on one sheet) before finally being sent to a
PostScript printer or another filter like pstoraster which produces a raster
format understood by non-PostScript printer drivers. Nowadays most filters
have been moved from cups to cups-filters and they have been configured to
use PDF as an intermediate format instead of PostScript.
Merging of cups-base, cups-client and cups-image into print/cups:
- cups-image provides a library to work with the cups raster format. It is
only used to implement filters and printer drivers and these only exist
in the context of a cups server so there's no need to separate this from
cups-base.
- cups-client provides a library that allows applications to print via cups.
It is possible to use the library to access a remote cups server without
running a local cups server, but such a setup is discouraged and the
configuration file to set this up has been marked deprecated. It is
better to run a local cups server and let that talk to the remote cups
server because then you have the benefits of local job queuing in case the
remote server is down or busy. Given this and the fact that without
filters cups-base is now smaller than it used to be it makes sense to
merge the ports. The patch also adds options IPPTOOL, DOCS and NLS which
when disabled make the new cups package smaller than the current
cups-client package. Merging the ports also prevents problems with
options like ZEROCONF being configured differently in both ports.
- print/cups was a metaport that depended on cups-base and some filters.
There isn't really a need for such a metaport so cups-base can be renamed
to cups. The filters can be depended on by printer drivers such as hplip
if they need them.
Additional changes to the new print/cups:
- Clean up the patches. They seem to have been regenerated with post-patch
changes included.
- Add a patch to prevent intermediate conversion to PDF when a PostScript
file is sent to a PostScript printer when cups-filters is installed.
- Fix the PAM configuration file.
- Add a patch to let the server search /usr/local/share/ppd like on Linux so
other ports don't have to add links to it.
- Remove ulpt(4) helper scripts. The port uses libusb with ugen(4).
- Remove support for mDNSResponder. cups-filters only supports Avahi.
- Combine ICONS and XDG_OPEN options into an X11 option to support WITHOUT_X11.
- Optionally depend on colord for ICC profile support.
- Various smaller changes.
Changes to print/cups-filters:
- Let the cups_browsed rc.d script depend on cupsd and avahi_daemon instead
of LOGIN.
- Development of foomatic-filters has been moved to cups-filters so let this
port install foomatic related files and add foomatic-filters to CONFLICTS.
- Fix location of liblouis tables.
- Add patch to fix ICC support.
Changes to print/cups-pstoraster:
This port is essentially an old version of Ghostscript plus a cups filter.
It's no longer developed. This commit removes it and changes existing
dependencies to print/cups-filters which depends on print/ghostscript* and
includes a gstoraster filter that can handle both PostScript and PDF.
Changes to print/foomatic-db*:
Remove old MASTER_SITES and dependencies and eliminate PKGNAMEPREFIX.
Changes to print/foomatic-filters:
Install beh backend with its original name again and add cups-filters to
CONFLICTS.
Changes to print/hplip:
- Stop installing hpijs/foomatic-rip support. This is no longer supported
upstream.
- Stop installing hpcups PPDs. These are now automatically generated. The
bundled PPDs are generated for an older version of cups.
- Rename the QT option to X11 to support WITHOUT_X11.
- Simplify the patches now that ports are installed in a staging area.
- Add a patch to set SO_REUSEPORT (next to SO_REUSEADDR) on the mDNS socket
like avahi-daemon does. This fixes Zeroconf support for HP network
printers.
PR: 207746
Exp-run by: antoine
Approved by: portmgr (antoine)
* print/ghostscript{7,8,9,9-agpl}-base
Installs Ghostscript binary, libgs, and related files.
These ports do not depend on X11 libraries (i.e. x11* devices
are not available). USES=ghostscript will set dependency on
one of them depending on GHOSTSCRIPT_DEFAULT.
The default device is set to "display" or "bbox".
* print/ghostscript{7,8,9,9-agpl}-x11
Installs a shared library which provides X11 support to
the installed Ghostscript binaries. x11* devices will be
enabled when the library is available.
This depends on *-base (RUN_DEPENDS). USES=ghostscript:x11
will set dependency on one of them.
- Fix integer overflow reported as CVE-2015-3228.
- Update Uses/ghostscript.mk:
* Add x11 keyword. nox11 keyword is now obsolete.
* Use packagename in *_DEPENDS line to prevent relationship between
-base and -x11 packages from being broken.
- Fix x11/nox11 keyword and bump PORTREVISION in ports using
USES=ghostscript to update dependency of pre-compiled packages.