aboutsummaryrefslogtreecommitdiff
path: root/print
diff options
context:
space:
mode:
Diffstat (limited to 'print')
-rw-r--r--print/Makefile4
-rw-r--r--print/R-cran-textshaping/Makefile16
-rw-r--r--print/R-cran-textshaping/distinfo6
-rw-r--r--print/a2ps/Makefile2
-rw-r--r--print/auctex/Makefile2
-rw-r--r--print/brlaser/Makefile2
-rw-r--r--print/brlaser/distinfo6
-rw-r--r--print/cups-filters/Makefile12
-rw-r--r--print/cups-filters/distinfo18
-rw-r--r--print/cups-filters/files/patch-0001-c3d2f07399da170
-rw-r--r--print/cups-filters/files/patch-0002-qpdf12292
-rw-r--r--print/cups-filters/files/patch-cupsfilters_colormanager.c4
-rw-r--r--print/cups/Makefile2
-rw-r--r--print/cups/distinfo6
-rw-r--r--print/freetype2/Makefile2
-rw-r--r--print/freetype2/distinfo6
-rw-r--r--print/freetype2/pkg-plist2
-rw-r--r--print/ghostscript10/Makefile2
-rw-r--r--print/ghostscript10/distinfo6
-rw-r--r--print/ghostscript10/files/patch-base_ocr.mak11
-rw-r--r--print/ghostscript10/files/patch-configure22
-rw-r--r--print/gspdf/Makefile2
-rw-r--r--print/hplip-plugin/Makefile1
-rw-r--r--print/hplip/Makefile2
-rw-r--r--print/hyperlatex/Makefile2
-rw-r--r--print/ipp-usb/Makefile2
-rw-r--r--print/latex-biber/Makefile6
-rw-r--r--print/latex-biber/distinfo6
-rw-r--r--print/latex-biber/pkg-plist59
-rw-r--r--print/libraqm/Makefile2
-rw-r--r--print/libraqm/distinfo6
-rw-r--r--print/libraqm/pkg-plist2
-rw-r--r--print/lilypond-devel/Makefile2
-rw-r--r--print/lilypond-devel/distinfo6
-rw-r--r--print/linux-rl9-cups-libs/Makefile4
-rw-r--r--print/linux-rl9-cups-libs/distinfo18
-rw-r--r--print/lyx/Makefile1
-rw-r--r--print/miktex/Makefile2
-rw-r--r--print/paps/Makefile30
-rw-r--r--print/paps/distinfo8
-rw-r--r--print/pdf-tools/Makefile2
-rw-r--r--print/pdfarranger/Makefile7
-rw-r--r--print/pdfarranger/distinfo6
-rw-r--r--print/pdfarranger/pkg-plist5
-rw-r--r--print/pdfcpu/Makefile4
-rw-r--r--print/pdfcpu/distinfo10
-rw-r--r--print/pdfcpu/pkg-message5
-rw-r--r--print/plasma6-print-manager/Makefile6
-rw-r--r--print/plasma6-print-manager/distinfo6
-rw-r--r--print/plasma6-print-manager/pkg-plist16
-rw-r--r--print/plutobook/Makefile39
-rw-r--r--print/plutobook/distinfo3
-rw-r--r--print/plutobook/pkg-descr3
-rw-r--r--print/plutobook/pkg-plist8
-rw-r--r--print/ppa6/Makefile19
-rw-r--r--print/ppa6/Makefile.crates186
-rw-r--r--print/ppa6/distinfo375
-rw-r--r--print/ppa6/pkg-descr7
-rw-r--r--print/py-fontaine/Makefile4
-rw-r--r--print/py-fontbakery/Makefile11
-rw-r--r--print/py-fontbakery/distinfo6
-rw-r--r--print/py-fonttools/Makefile4
-rw-r--r--print/py-fonttools/distinfo6
-rw-r--r--print/py-frescobaldi/Makefile17
-rw-r--r--print/py-frescobaldi/distinfo6
-rw-r--r--print/py-frescobaldi/files/patch-frescobaldi_portmidi_____init____.py (renamed from print/py-frescobaldi/files/patch-frescobaldi__app_portmidi_____init____.py)4
-rw-r--r--print/py-pypdf/Makefile2
-rw-r--r--print/py-pypdf/distinfo6
-rw-r--r--print/py-python-ly/Makefile3
-rw-r--r--print/py-python-ly/distinfo6
-rw-r--r--print/py-python-ly/files/patch-pyproject.toml9
-rw-r--r--print/py-relatorio/Makefile4
-rw-r--r--print/py-reportlab/Makefile1
-rw-r--r--print/py-ufolib2/Makefile16
-rw-r--r--print/py-ufolib2/distinfo6
-rw-r--r--print/py-ufolib2/files/patch-pyproject.toml11
-rw-r--r--print/py-ufolib2/files/patch-setup.cfg9
-rw-r--r--print/py-ufomerge/Makefile2
-rw-r--r--print/py-ufomerge/distinfo6
-rw-r--r--print/py-weasyprint/Makefile1
-rw-r--r--print/qpdf/Makefile2
-rw-r--r--print/qpdf/distinfo2
-rw-r--r--print/qpdf/pkg-plist2
-rw-r--r--print/rubygem-afm0/Makefile19
-rw-r--r--print/rubygem-afm0/distinfo3
-rw-r--r--print/rubygem-afm0/pkg-descr1
-rw-r--r--print/rubygem-pdf-reader/Makefile5
-rw-r--r--print/rubygem-pdf-reader/distinfo6
-rw-r--r--print/rubygem-prawn-svg/Makefile4
-rw-r--r--print/rubygem-prawn-svg/distinfo6
-rw-r--r--print/rubygem-prawn-svg036/Makefile25
-rw-r--r--print/rubygem-prawn-svg036/distinfo3
-rw-r--r--print/rubygem-prawn-svg036/pkg-descr3
-rw-r--r--print/scribus/Makefile6
-rw-r--r--print/scribus/distinfo8
-rw-r--r--print/scribus/pkg-plist1
-rw-r--r--print/sioyek/Makefile2
-rw-r--r--print/tex-luatex/Makefile10
-rw-r--r--print/tex-xetex/Makefile7
-rw-r--r--print/texinfo/Makefile13
-rw-r--r--print/texinfo/distinfo10
-rw-r--r--print/texinfo/files/patch-tp-Texinfo-XS-Makefile.in13
-rw-r--r--print/texinfo/files/patch-tp-Texinfo-XS-parsetexi-api.c12
-rw-r--r--print/texinfo/pkg-plist137
-rw-r--r--print/xreader/Makefile3
-rw-r--r--print/xreader/distinfo6
-rw-r--r--print/yatex/Makefile2
107 files changed, 1530 insertions, 382 deletions
diff --git a/print/Makefile b/print/Makefile
index 0e1d3e6f1f2b..13c53b642479 100644
--- a/print/Makefile
+++ b/print/Makefile
@@ -158,8 +158,10 @@
SUBDIR += pkfonts400
SUBDIR += pkfonts600
SUBDIR += plasma6-print-manager
+ SUBDIR += plutobook
SUBDIR += pnm2ppa
SUBDIR += posterazor
+ SUBDIR += ppa6
SUBDIR += ps2eps
SUBDIR += pscal
SUBDIR += psdim
@@ -203,7 +205,6 @@
SUBDIR += rlpr
SUBDIR += rtf2latex2e
SUBDIR += rubygem-afm
- SUBDIR += rubygem-afm0
SUBDIR += rubygem-color
SUBDIR += rubygem-color-tools
SUBDIR += rubygem-color_diff
@@ -223,6 +224,7 @@
SUBDIR += rubygem-prawn-rails
SUBDIR += rubygem-prawn-security
SUBDIR += rubygem-prawn-svg
+ SUBDIR += rubygem-prawn-svg036
SUBDIR += rubygem-prawn-table
SUBDIR += rubygem-prawn-templates
SUBDIR += rubygem-prawn24
diff --git a/print/R-cran-textshaping/Makefile b/print/R-cran-textshaping/Makefile
index a3df2b38dd3c..16a38ba54496 100644
--- a/print/R-cran-textshaping/Makefile
+++ b/print/R-cran-textshaping/Makefile
@@ -1,5 +1,5 @@
PORTNAME= textshaping
-DISTVERSION= 1.0.1
+DISTVERSION= 1.0.4
CATEGORIES= print
DISTNAME= ${PORTNAME}_${DISTVERSION}
@@ -9,19 +9,19 @@ WWW= https://github.com/r-lib/textshaping
LICENSE= MIT
-CRAN_DEPENDS= R-cran-cpp11>=0.2.1:devel/R-cran-cpp11 \
- R-cran-lifecycle>0:devel/R-cran-lifecycle \
- R-cran-stringi>0:textproc/R-cran-stringi \
- R-cran-systemfonts>=1.1.0:devel/R-cran-systemfonts
-BUILD_DEPENDS= ${CRAN_DEPENDS}
+BUILD_DEPENDS= R-cran-cpp11>=0.2.1:devel/R-cran-cpp11 \
+ R-cran-systemfonts>=1.0.0:devel/R-cran-systemfonts
LIB_DEPENDS= libfreetype.so:print/freetype2 \
libfribidi.so:converters/fribidi \
libharfbuzz.so:print/harfbuzz
-RUN_DEPENDS= ${CRAN_DEPENDS}
+RUN_DEPENDS= R-cran-lifecycle>0:devel/R-cran-lifecycle \
+ R-cran-stringi>0:textproc/R-cran-stringi \
+ R-cran-systemfonts>=1.3.0:devel/R-cran-systemfonts
TEST_DEPENDS= R-cran-covr>0:devel/R-cran-covr \
R-cran-knitr>0:print/R-cran-knitr \
R-cran-rmarkdown>0:textproc/R-cran-rmarkdown \
- R-cran-testthat>=3.0.0:devel/R-cran-testthat
+ R-cran-testthat>=3.0.0:devel/R-cran-testthat \
+ xorg-fonts-truetype>0:x11-fonts/xorg-fonts-truetype
USES= cran:auto-plist,compiles pkgconfig
diff --git a/print/R-cran-textshaping/distinfo b/print/R-cran-textshaping/distinfo
index 43ebdb3fb323..2cc1d0bcb822 100644
--- a/print/R-cran-textshaping/distinfo
+++ b/print/R-cran-textshaping/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1746104183
-SHA256 (textshaping_1.0.1.tar.gz) = 7bbf50926c7a48cc957958e98403169ddcc76916b45b35e0833acd2e8cfba82f
-SIZE (textshaping_1.0.1.tar.gz) = 75793
+TIMESTAMP = 1760168713
+SHA256 (textshaping_1.0.4.tar.gz) = 34093bf6ec82840f6e80ec6dced1d5ead26637fae5abe63562958c7274e1b8fb
+SIZE (textshaping_1.0.4.tar.gz) = 76738
diff --git a/print/a2ps/Makefile b/print/a2ps/Makefile
index 2256b704a5c7..a276f0a43c62 100644
--- a/print/a2ps/Makefile
+++ b/print/a2ps/Makefile
@@ -1,6 +1,6 @@
PORTNAME= a2ps
PORTVERSION= 4.15.7
-PORTREVISION= 0
+PORTREVISION= 1
CATEGORIES= print
MASTER_SITES= GNU LOCAL/hrs/a2ps/:i18n
diff --git a/print/auctex/Makefile b/print/auctex/Makefile
index 8e731e3b21a0..e91db3e86bbe 100644
--- a/print/auctex/Makefile
+++ b/print/auctex/Makefile
@@ -1,6 +1,6 @@
PORTNAME= auctex
DISTVERSION= 13.3
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= print elisp
MASTER_SITES= GNU
PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX}
diff --git a/print/brlaser/Makefile b/print/brlaser/Makefile
index 9f2aa4fdbc5b..096de07ee89c 100644
--- a/print/brlaser/Makefile
+++ b/print/brlaser/Makefile
@@ -1,6 +1,6 @@
PORTNAME= brlaser
DISTVERSIONPREFIX= v
-DISTVERSION= 6.2.7
+DISTVERSION= 6.2.8
CATEGORIES= print
MAINTAINER= madpilot@FreeBSD.org
diff --git a/print/brlaser/distinfo b/print/brlaser/distinfo
index bcb9c3c8d184..af9b34cc7190 100644
--- a/print/brlaser/distinfo
+++ b/print/brlaser/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1737547964
-SHA256 (Owl-Maintain-brlaser-v6.2.7_GH0.tar.gz) = e67c5726fc1fe53574c2e8b5f72634f1359d0f53586a555eb2489fafd7c81640
-SIZE (Owl-Maintain-brlaser-v6.2.7_GH0.tar.gz) = 27306
+TIMESTAMP = 1760469525
+SHA256 (Owl-Maintain-brlaser-v6.2.8_GH0.tar.gz) = 16dae855aa7fff0eef0c05398fab37678243d7d610fa5f9af0d3a2cc9bf08cb0
+SIZE (Owl-Maintain-brlaser-v6.2.8_GH0.tar.gz) = 29401
diff --git a/print/cups-filters/Makefile b/print/cups-filters/Makefile
index d7e4f8a260e3..5287ae5e8483 100644
--- a/print/cups-filters/Makefile
+++ b/print/cups-filters/Makefile
@@ -1,6 +1,6 @@
PORTNAME= cups-filters
PORTVERSION= 1.28.17
-PORTREVISION= 9
+PORTREVISION= 10
CATEGORIES= print
MASTER_SITES= https://github.com/OpenPrinting/cups-filters/releases/download/${DISTVERSION}/
@@ -15,7 +15,15 @@ PATCHFILES= 9799398713b941557642d0b2bdbef360837ece0c.diff:-p1 \
770ec883e68e505c1d1856a42b78f9323dc326a6.diff:-p1 \
2076627d33477212f21352ad39e9d305adb63af3.diff:-p1 \
10fb02eaaee52e0be9b16917b38aa8ec5bddd87f.diff:-p1 \
- b7461ec2a8d1f2aa627b24e01e118ec4cca78ec0.diff:-p1
+ b7461ec2a8d1f2aa627b24e01e118ec4cca78ec0.diff:-p1 \
+ 6fd2bdfbdce76149af531ce9fca9062304238451.patch:-p1 \
+ 3534e01cb41ddfa61ac78d32052b8822df71d97d.patch:-p1 \
+ b378f09c9b8aaa8dccb5eb557938b30da874101d.patch:-p1 \
+ c8522bb128546a1910bca538a504a2c9363ebb22.patch:-p1 \
+ dccb537afe85af3ea01e3f274974d9d1f53f8e14.patch:-p1 \
+ d5cc66b410a3246e74b71f718e86504d08e4bfa3.patch:-p1 \
+ 86b060d2ac20d6dee757c609286cfaaa17d65428.patch:-p1 \
+ d43610f82e1757b45925a8830ac297ff9dc4abca.patch:-p1
MAINTAINER= tijl@FreeBSD.org
COMMENT= Additional backends, filters and other software for CUPS
diff --git a/print/cups-filters/distinfo b/print/cups-filters/distinfo
index a22a9c9614d5..db3d2ef4cbda 100644
--- a/print/cups-filters/distinfo
+++ b/print/cups-filters/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1727810333
+TIMESTAMP = 1755616897
SHA256 (cups-filters-1.28.17.tar.xz) = 270a3752a960368aa99d431fb5d34f4039b2ac943c576d840612d1d8185c9bb9
SIZE (cups-filters-1.28.17.tar.xz) = 1516052
SHA256 (9799398713b941557642d0b2bdbef360837ece0c.diff) = c9a061b3c415ff547161360c4fc90e0584c65efbfea90564ec34eb0e2edddf77
@@ -23,3 +23,19 @@ SHA256 (10fb02eaaee52e0be9b16917b38aa8ec5bddd87f.diff) = 6e16e9f046a8bfcbd1552d9
SIZE (10fb02eaaee52e0be9b16917b38aa8ec5bddd87f.diff) = 460
SHA256 (b7461ec2a8d1f2aa627b24e01e118ec4cca78ec0.diff) = 9d6d64a20ee0859767ce48df665b429a22a42e213c1aeb2480adeb68bcd4b334
SIZE (b7461ec2a8d1f2aa627b24e01e118ec4cca78ec0.diff) = 700
+SHA256 (6fd2bdfbdce76149af531ce9fca9062304238451.patch) = 50e450d9cf4fedbac7980661cb5cab2cd3e9faa117747479e92bef5b255194d8
+SIZE (6fd2bdfbdce76149af531ce9fca9062304238451.patch) = 67608
+SHA256 (3534e01cb41ddfa61ac78d32052b8822df71d97d.patch) = ba3f6ed5b9ac0e18100ceed25aedebd29109799c1aa93505131d9264eb09b4b8
+SIZE (3534e01cb41ddfa61ac78d32052b8822df71d97d.patch) = 5483
+SHA256 (b378f09c9b8aaa8dccb5eb557938b30da874101d.patch) = 491d5355d14a255fa9de4d8e3cdec0c0cd49064811cecaec306be3db1ca933fa
+SIZE (b378f09c9b8aaa8dccb5eb557938b30da874101d.patch) = 2683
+SHA256 (c8522bb128546a1910bca538a504a2c9363ebb22.patch) = 426f85b5c64af1d5af778606bbfbaaef4719679dd1881525604202e02778e211
+SIZE (c8522bb128546a1910bca538a504a2c9363ebb22.patch) = 1300
+SHA256 (dccb537afe85af3ea01e3f274974d9d1f53f8e14.patch) = 413ccdce64d3f6886ab4fb956a485e58707a769a5ef725c86517a21058683782
+SIZE (dccb537afe85af3ea01e3f274974d9d1f53f8e14.patch) = 1160
+SHA256 (d5cc66b410a3246e74b71f718e86504d08e4bfa3.patch) = 0a7dd41fd646da9a36d4388d38017665512f03db35874a629a976df57ea76516
+SIZE (d5cc66b410a3246e74b71f718e86504d08e4bfa3.patch) = 1406
+SHA256 (86b060d2ac20d6dee757c609286cfaaa17d65428.patch) = 9211eb922e5cda81df3b02f7844c216c674e3c340bc80ac4e94593fc73084e66
+SIZE (86b060d2ac20d6dee757c609286cfaaa17d65428.patch) = 1023
+SHA256 (d43610f82e1757b45925a8830ac297ff9dc4abca.patch) = 5eea2ad0f42b683f12c8e381f49e8fa2cc511aa61a6e407ac3adaf1d0b29db00
+SIZE (d43610f82e1757b45925a8830ac297ff9dc4abca.patch) = 1144
diff --git a/print/cups-filters/files/patch-0001-c3d2f07399da b/print/cups-filters/files/patch-0001-c3d2f07399da
new file mode 100644
index 000000000000..470492a6d495
--- /dev/null
+++ b/print/cups-filters/files/patch-0001-c3d2f07399da
@@ -0,0 +1,170 @@
+From c3d2f07399da93f2b5308f499b1ddc5504d087ce Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?G=C3=BCnther=20Noack?= <gnoack3000@gmail.com>
+Date: Thu, 10 Jul 2025 22:31:02 +0200
+Subject: [PATCH] 1.x: Fix NULL-pointer dereference when parsing %%PDFTOPDF
+ comments (#644)
+
+* Fix null pointer dereference in %%PDFTOPDF* parsers
+
+* %%PDFTOPDFCollate comment parsing: Increment p where needed
+
+Without this, if strchr succeeds, p will point to a ':' character.
+*p will therefore never be a whitespace in the subsequent loop,
+or compare successfully against the "true" string.
+---
+ filter/gstoraster.c | 17 +++++++++++------
+ filter/mupdftoraster.c | 17 +++++++++++------
+ filter/pdftops.c | 36 +++++++++++++++++++++---------------
+ filter/pdftoraster.cxx | 17 +++++++++++------
+ 4 files changed, 54 insertions(+), 33 deletions(-)
+
+diff --git a/filter/gstoraster.c b/filter/gstoraster.c
+index 87ff948e6..6f4da5991 100644
+--- filter/gstoraster.c
++++ filter/gstoraster.c
+@@ -104,16 +104,21 @@ parse_pdf_header_options(FILE *fp, gs_page_header *h)
+ char *p;
+
+ p = strchr(buf+19,':');
+- h->NumCopies = atoi(p+1);
++ if (p) {
++ h->NumCopies = atoi(p+1);
++ }
+ } else if (strncmp(buf,"%%PDFTOPDFCollate",17) == 0) {
+ char *p;
+
+ p = strchr(buf+17,':');
+- while (*p == ' ' || *p == '\t') p++;
+- if (strncasecmp(p,"true",4) == 0) {
+- h->Collate = CUPS_TRUE;
+- } else {
+- h->Collate = CUPS_FALSE;
++ if (p) {
++ p++;
++ while (*p == ' ' || *p == '\t') p++;
++ if (strncasecmp(p,"true",4) == 0) {
++ h->Collate = CUPS_TRUE;
++ } else {
++ h->Collate = CUPS_FALSE;
++ }
+ }
+ }
+ }
+diff --git a/filter/mupdftoraster.c b/filter/mupdftoraster.c
+index 09c66c00d..a96e9c8c3 100644
+--- filter/mupdftoraster.c
++++ filter/mupdftoraster.c
+@@ -102,16 +102,21 @@ parse_pdf_header_options(FILE *fp, mupdf_page_header *h)
+ char *p;
+
+ p = strchr(buf+19,':');
+- h->NumCopies = atoi(p+1);
++ if (p) {
++ h->NumCopies = atoi(p+1);
++ }
+ } else if (strncmp(buf,"%%PDFTOPDFCollate",17) == 0) {
+ char *p;
+
+ p = strchr(buf+17,':');
+- while (*p == ' ' || *p == '\t') p++;
+- if (strncasecmp(p,"true",4) == 0) {
+- h->Collate = CUPS_TRUE;
+- } else {
+- h->Collate = CUPS_FALSE;
++ if (p) {
++ p++;
++ while (*p == ' ' || *p == '\t') p++;
++ if (strncasecmp(p,"true",4) == 0) {
++ h->Collate = CUPS_TRUE;
++ } else {
++ h->Collate = CUPS_FALSE;
++ }
+ }
+ }
+ }
+diff --git a/filter/pdftops.c b/filter/pdftops.c
+index 1bfe1a2c7..81ccc983e 100644
+--- filter/pdftops.c
++++ filter/pdftops.c
+@@ -138,25 +138,31 @@ static void parsePDFTOPDFComment(char *filename)
+ if (strncmp(buf,"%%PDFTOPDFNumCopies",19) == 0) {
+ char *p;
+
+- p = strchr(buf+19,':') + 1;
+- while (*p == ' ' || *p == '\t') p++;
+- strncpy(deviceCopies, p, sizeof(deviceCopies));
+- deviceCopies[sizeof(deviceCopies) - 1] = '\0';
+- p = deviceCopies + strlen(deviceCopies) - 1;
+- while (*p == ' ' || *p == '\t' || *p == '\r' || *p == '\n') p--;
+- *(p + 1) = '\0';
+- pdftopdfapplied = 1;
++ p = strchr(buf+19,':');
++ if (p) {
++ p++;
++ while (*p == ' ' || *p == '\t') p++;
++ strncpy(deviceCopies, p, sizeof(deviceCopies));
++ deviceCopies[sizeof(deviceCopies) - 1] = '\0';
++ p = deviceCopies + strlen(deviceCopies) - 1;
++ while (*p == ' ' || *p == '\t' || *p == '\r' || *p == '\n') p--;
++ *(p + 1) = '\0';
++ pdftopdfapplied = 1;
++ }
+ } else if (strncmp(buf,"%%PDFTOPDFCollate",17) == 0) {
+ char *p;
+
+- p = strchr(buf+17,':') + 1;
+- while (*p == ' ' || *p == '\t') p++;
+- if (strncasecmp(p,"true",4) == 0) {
+- deviceCollate = 1;
+- } else {
+- deviceCollate = 0;
++ p = strchr(buf+17,':');
++ if (p) {
++ p++;
++ while (*p == ' ' || *p == '\t') p++;
++ if (strncasecmp(p,"true",4) == 0) {
++ deviceCollate = 1;
++ } else {
++ deviceCollate = 0;
++ }
++ pdftopdfapplied = 1;
+ }
+- pdftopdfapplied = 1;
+ } else if (strcmp(buf,"% This file was generated by pdftopdf") == 0) {
+ pdftopdfapplied = 1;
+ }
+diff --git a/filter/pdftoraster.cxx b/filter/pdftoraster.cxx
+index 1bdde0b1d..7b3af924f 100755
+--- filter/pdftoraster.cxx
++++ filter/pdftoraster.cxx
+@@ -489,16 +489,21 @@ static void parsePDFTOPDFComment(FILE *fp)
+ char *p;
+
+ p = strchr(buf+19,':');
+- deviceCopies = atoi(p+1);
++ if (p) {
++ deviceCopies = atoi(p+1);
++ }
+ } else if (strncmp(buf,"%%PDFTOPDFCollate",17) == 0) {
+ char *p;
+
+ p = strchr(buf+17,':');
+- while (*p == ' ' || *p == '\t') p++;
+- if (strncasecmp(p,"true",4) == 0) {
+- deviceCollate = true;
+- } else {
+- deviceCollate = false;
++ if (p) {
++ p++;
++ while (*p == ' ' || *p == '\t') p++;
++ if (strncasecmp(p,"true",4) == 0) {
++ deviceCollate = true;
++ } else {
++ deviceCollate = false;
++ }
+ }
+ }
+ }
+--
+2.50.1
+
diff --git a/print/cups-filters/files/patch-0002-qpdf12 b/print/cups-filters/files/patch-0002-qpdf12
new file mode 100644
index 000000000000..b1eed7ab207b
--- /dev/null
+++ b/print/cups-filters/files/patch-0002-qpdf12
@@ -0,0 +1,292 @@
+--- configure.ac.orig 2025-08-19 16:30:13 UTC
++++ configure.ac
+@@ -793,9 +793,7 @@ CFLAGS="$CFLAGS -D_GNU_SOURCE"
+ CXXFLAGS="$CXXFLAGS -Wall " # -Weffc++" # TODO: enable when it does not print 1MB of warnings
+ ])
+ CFLAGS="$CFLAGS -D_GNU_SOURCE"
+-CXXFLAGS="$CXXFLAGS -D_GNU_SOURCE -DPOINTERHOLDER_TRANSITION=0"
+-# ^^ Silence deprecation warnings of QPDF 11
+-# See /usr/include/qpdf/PointerHolder.hh
++CXXFLAGS="$CXXFLAGS -D_GNU_SOURCE"
+ CXXFLAGS="$CXXFLAGS -std=c++17" # Needed to build with current QPDF (11.x)
+
+ # ==========================
+--- filter/pdf.cxx.orig 2023-01-25 01:41:08 UTC
++++ filter/pdf.cxx
+@@ -138,7 +138,7 @@ extern "C" void pdf_prepend_stream(pdf_t *pdf,
+ }
+
+ // prepare the new stream which is to be prepended
+- PointerHolder<Buffer> stream_data = PointerHolder<Buffer>(new Buffer(len));
++ std::shared_ptr<Buffer> stream_data = std::shared_ptr<Buffer>(new Buffer(len));
+ memcpy(stream_data->getBuffer(), buf, len);
+ QPDFObjectHandle stream = QPDFObjectHandle::newStream(pdf, stream_data);
+ stream = pdf->makeIndirectObject(stream);
+--- filter/pdftopdf/qpdf_pdftopdf_processor.cc.orig 2023-01-25 01:41:08 UTC
++++ filter/pdftopdf/qpdf_pdftopdf_processor.cc
+@@ -83,10 +83,10 @@ QPDFObjectHandle QPDF_PDFTOPDF_PageHandle::get() // {{
+ page.getKey("/Resources").replaceKey("/XObject",QPDFObjectHandle::newDictionary(xobjs));
+ content.append("Q\n");
+ page.getKey("/Contents").replaceStreamData(content,QPDFObjectHandle::newNull(),QPDFObjectHandle::newNull());
+- page.replaceOrRemoveKey("/Rotate",makeRotate(rotation));
++ page.replaceKey("/Rotate",makeRotate(rotation));
+ } else {
+ Rotation rot=getRotate(page)+rotation;
+- page.replaceOrRemoveKey("/Rotate",makeRotate(rot));
++ page.replaceKey("/Rotate",makeRotate(rot));
+ }
+ page=QPDFObjectHandle(); // i.e. uninitialized
+ return ret;
+@@ -181,9 +181,9 @@ Rotation QPDF_PDFTOPDF_PageHandle::crop(const PageRect
+ page.assertInitialized();
+ Rotation save_rotate = getRotate(page);
+ if(orientation==ROT_0||orientation==ROT_180)
+- page.replaceOrRemoveKey("/Rotate",makeRotate(ROT_90));
++ page.replaceKey("/Rotate",makeRotate(ROT_90));
+ else
+- page.replaceOrRemoveKey("/Rotate",makeRotate(ROT_0));
++ page.replaceKey("/Rotate",makeRotate(ROT_0));
+
+ PageRect currpage= getBoxAsRect(getTrimBox(page));
+ double width = currpage.right-currpage.left;
+@@ -242,7 +242,7 @@ Rotation QPDF_PDFTOPDF_PageHandle::crop(const PageRect
+ //Cropping.
+ // TODO: Borders are covered by the image. buffer space?
+ page.replaceKey("/TrimBox",makeBox(currpage.left,currpage.bottom,currpage.right,currpage.top));
+- page.replaceOrRemoveKey("/Rotate",makeRotate(save_rotate));
++ page.replaceKey("/Rotate",makeRotate(save_rotate));
+ return getRotate(page);
+ }
+
+@@ -251,14 +251,14 @@ bool QPDF_PDFTOPDF_PageHandle::is_landscape(Rotation o
+ page.assertInitialized();
+ Rotation save_rotate = getRotate(page);
+ if(orientation==ROT_0||orientation==ROT_180)
+- page.replaceOrRemoveKey("/Rotate",makeRotate(ROT_90));
++ page.replaceKey("/Rotate",makeRotate(ROT_90));
+ else
+- page.replaceOrRemoveKey("/Rotate",makeRotate(ROT_0));
++ page.replaceKey("/Rotate",makeRotate(ROT_0));
+
+ PageRect currpage= getBoxAsRect(getTrimBox(page));
+ double width = currpage.right-currpage.left;
+ double height = currpage.top-currpage.bottom;
+- page.replaceOrRemoveKey("/Rotate",makeRotate(save_rotate));
++ page.replaceKey("/Rotate",makeRotate(save_rotate));
+ if(width>height)
+ return true;
+ return false;
+@@ -662,7 +662,7 @@ void QPDF_PDFTOPDF_Processor::autoRotateAll(bool dst_l
+ // TODO? other rotation direction, e.g. if (src_rot==ROT_0)&&(param.orientation==ROT_270) ... etc.
+ // rotation=ROT_270;
+
+- page.replaceOrRemoveKey("/Rotate",makeRotate(src_rot+rotation));
++ page.replaceKey("/Rotate",makeRotate(src_rot+rotation));
+ }
+ }
+ }
+--- filter/pdftopdf/qpdf_xobject.cc.orig 2025-08-19 16:30:13 UTC
++++ filter/pdftopdf/qpdf_xobject.cc
+@@ -138,7 +138,7 @@ QPDFObjectHandle makeXObject(QPDF *pdf,QPDFObjectHandl
+
+ std::vector<QPDFObjectHandle> contents=page.getPageContents(); // (will assertPageObject)
+
+- auto ph=PointerHolder<QPDFObjectHandle::StreamDataProvider>(new CombineFromContents_Provider(contents));
++ auto ph=std::shared_ptr<QPDFObjectHandle::StreamDataProvider>(new CombineFromContents_Provider(contents));
+ ret.replaceStreamData(ph,filter,decode_parms);
+
+ return ret;
+--- filter/rastertopdf.cpp.orig 2023-01-25 01:41:08 UTC
++++ filter/rastertopdf.cpp
+@@ -310,10 +310,10 @@ struct pdf_info
+ std::vector<std::string> pclm_source_resolution_supported;
+ std::string pclm_source_resolution_default;
+ std::string pclm_raster_back_side;
+- std::vector< PointerHolder<Buffer> > pclm_strip_data;
++ std::vector< std::shared_ptr<Buffer> > pclm_strip_data;
+ std::string render_intent;
+ cups_cspace_t color_space;
+- PointerHolder<Buffer> page_data;
++ std::shared_ptr<Buffer> page_data;
+ double page_width,page_height;
+ OutFormatType outformat;
+ };
+@@ -442,7 +442,7 @@ QPDFObjectHandle embedIccProfile(QPDF &pdf)
+ std::map<std::string,QPDFObjectHandle> streamdict;
+ std::string n_value = "";
+ std::string alternate_cs = "";
+- PointerHolder<Buffer>ph;
++ std::shared_ptr<Buffer>ph;
+
+ #ifdef USE_LCMS1
+ size_t profile_size;
+@@ -481,7 +481,7 @@ QPDFObjectHandle embedIccProfile(QPDF &pdf)
+ cmsSaveProfileToMem(colorProfile, buff, &profile_size);
+
+ // Write ICC profile buffer into PDF
+- ph = new Buffer(buff, profile_size);
++ ph = std::shared_ptr<Buffer>(new Buffer(buff, profile_size));
+ iccstream = QPDFObjectHandle::newStream(&pdf, ph);
+ iccstream.replaceDict(QPDFObjectHandle::newDictionary(streamdict));
+
+@@ -605,7 +605,7 @@ QPDFObjectHandle getCalGrayArray(double wp[3], double
+ * O - std::vector of QPDFObjectHandle
+ * I - QPDF object
+ * I - number of strips per page
+- * I - std::vector of PointerHolder<Buffer> containing data for each strip
++ * I - std::vector of std::shared_ptr<Buffer> containing data for each strip
+ * I - strip width
+ * I - strip height
+ * I - color space
+@@ -613,7 +613,7 @@ makePclmStrips(QPDF &pdf, unsigned num_strips,
+ */
+ std::vector<QPDFObjectHandle>
+ makePclmStrips(QPDF &pdf, unsigned num_strips,
+- std::vector< PointerHolder<Buffer> > &strip_data,
++ std::vector< std::shared_ptr<Buffer> > &strip_data,
+ std::vector<CompressionMethod> &compression_methods,
+ unsigned width, std::vector<unsigned>& strip_height, cups_cspace_t cs, unsigned bpc)
+ {
+@@ -679,7 +679,7 @@ makePclmStrips(QPDF &pdf, unsigned num_strips,
+ Pl_Flate pflate("pflate", &psink, Pl_Flate::a_deflate);
+ pflate.write(strip_data[i]->getBuffer(), strip_data[i]->getSize());
+ pflate.finish();
+- ret[i].replaceStreamData(PointerHolder<Buffer>(psink.getBuffer()),
++ ret[i].replaceStreamData(std::shared_ptr<Buffer>(psink.getBuffer()),
+ QPDFObjectHandle::newName("/FlateDecode"),QPDFObjectHandle::newNull());
+ }
+ else if (compression == RLE_DECODE)
+@@ -687,7 +687,7 @@ makePclmStrips(QPDF &pdf, unsigned num_strips,
+ Pl_RunLength prle("prle", &psink, Pl_RunLength::a_encode);
+ prle.write(strip_data[i]->getBuffer(),strip_data[i]->getSize());
+ prle.finish();
+- ret[i].replaceStreamData(PointerHolder<Buffer>(psink.getBuffer()),
++ ret[i].replaceStreamData(std::shared_ptr<Buffer>(psink.getBuffer()),
+ QPDFObjectHandle::newName("/RunLengthDecode"),QPDFObjectHandle::newNull());
+ }
+ else if (compression == DCT_DECODE)
+@@ -695,7 +695,7 @@ makePclmStrips(QPDF &pdf, unsigned num_strips,
+ Pl_DCT pdct("pdct", &psink, width, strip_height[i], components, color_space);
+ pdct.write(strip_data[i]->getBuffer(),strip_data[i]->getSize());
+ pdct.finish();
+- ret[i].replaceStreamData(PointerHolder<Buffer>(psink.getBuffer()),
++ ret[i].replaceStreamData(std::shared_ptr<Buffer>(psink.getBuffer()),
+ QPDFObjectHandle::newName("/DCTDecode"),QPDFObjectHandle::newNull());
+ }
+ }
+@@ -703,7 +703,7 @@ makePclmStrips(QPDF &pdf, unsigned num_strips,
+ }
+ #endif
+
+-QPDFObjectHandle makeImage(QPDF &pdf, PointerHolder<Buffer> page_data, unsigned width,
++QPDFObjectHandle makeImage(QPDF &pdf, std::shared_ptr<Buffer> page_data, unsigned width,
+ unsigned height, std::string render_intent, cups_cspace_t cs, unsigned bpc)
+ {
+ QPDFObjectHandle ret = QPDFObjectHandle::newStream(&pdf);
+@@ -843,7 +843,7 @@ QPDFObjectHandle makeImage(QPDF &pdf, PointerHolder<Bu
+ pflate.write(page_data->getBuffer(),page_data->getSize());
+ pflate.finish();
+
+- ret.replaceStreamData(PointerHolder<Buffer>(psink.getBuffer()),
++ ret.replaceStreamData(std::shared_ptr<Buffer>(psink.getBuffer()),
+ QPDFObjectHandle::newName("/FlateDecode"),QPDFObjectHandle::newNull());
+ #else
+ ret.replaceStreamData(page_data,QPDFObjectHandle::newNull(),QPDFObjectHandle::newNull());
+@@ -857,7 +857,7 @@ void finish_page(struct pdf_info * info)
+ if (info->outformat == OUTPUT_FORMAT_PDF)
+ {
+ // Finish previous PDF Page
+- if(!info->page_data.getPointer())
++ if(!info->page_data.get())
+ return;
+
+ QPDFObjectHandle image = makeImage(info->pdf, info->page_data, info->width, info->height, info->render_intent, info->color_space, info->bpc);
+@@ -874,7 +874,7 @@ void finish_page(struct pdf_info * info)
+ return;
+
+ for (size_t i = 0; i < info->pclm_strip_data.size(); i ++)
+- if(!info->pclm_strip_data[i].getPointer())
++ if(!info->pclm_strip_data[i].get())
+ return;
+
+ std::vector<QPDFObjectHandle> strips = makePclmStrips(info->pdf, info->pclm_num_strips, info->pclm_strip_data, info->pclm_compression_method_preferred, info->width, info->pclm_strip_height, info->color_space, info->bpc);
+@@ -932,7 +932,7 @@ void finish_page(struct pdf_info * info)
+ #endif
+
+ // bookkeeping
+- info->page_data = PointerHolder<Buffer>();
++ info->page_data = std::shared_ptr<Buffer>();
+ #ifdef QPDF_HAVE_PCLM
+ info->pclm_strip_data.clear();
+ #endif
+@@ -1101,12 +1101,12 @@ int add_pdf_page(struct pdf_info * info, int pagen, un
+ die("Page too big");
+ }
+ if (info->outformat == OUTPUT_FORMAT_PDF)
+- info->page_data = PointerHolder<Buffer>(new Buffer(info->line_bytes*info->height));
++ info->page_data = std::shared_ptr<Buffer>(new Buffer(info->line_bytes*info->height));
+ else if (info->outformat == OUTPUT_FORMAT_PCLM)
+ {
+ // reserve space for PCLm strips
+ for (size_t i = 0; i < info->pclm_num_strips; i ++)
+- info->pclm_strip_data[i] = PointerHolder<Buffer>(new Buffer(info->line_bytes*info->pclm_strip_height[i]));
++ info->pclm_strip_data[i] = std::shared_ptr<Buffer>(new Buffer(info->line_bytes*info->pclm_strip_height[i]));
+ }
+
+ QPDFObjectHandle page = QPDFObjectHandle::parse(
+--- filter/urftopdf.cpp.orig 2023-01-25 01:41:08 UTC
++++ filter/urftopdf.cpp
+@@ -80,7 +80,7 @@ struct pdf_info
+ unsigned pixel_bytes;
+ unsigned line_bytes;
+ unsigned bpp;
+- PointerHolder<Buffer> page_data;
++ std::shared_ptr<Buffer> page_data;
+ double page_width,page_height;
+ };
+
+@@ -119,7 +119,7 @@ enum ColorSpace {
+ iprintf("Created temporary file '%s'\n", tempfile_name);
+ */
+
+-QPDFObjectHandle makeImage(QPDF &pdf, PointerHolder<Buffer> page_data, unsigned width, unsigned height, ColorSpace cs, unsigned bpc)
++QPDFObjectHandle makeImage(QPDF &pdf, std::shared_ptr<Buffer> page_data, unsigned width, unsigned height, ColorSpace cs, unsigned bpc)
+ {
+ QPDFObjectHandle ret = QPDFObjectHandle::newStream(&pdf);
+
+@@ -153,7 +153,7 @@ QPDFObjectHandle makeImage(QPDF &pdf, PointerHolder<Bu
+
+ // /Filter /FlateDecode
+ // /DecodeParms [<</Predictor 1 /Colors 1[3] /BitsPerComponent $bits /Columns $x>>] ??
+- ret.replaceStreamData(PointerHolder<Buffer>(psink.getBuffer()),
++ ret.replaceStreamData(std::shared_ptr<Buffer>(psink.getBuffer()),
+ QPDFObjectHandle::newName("/FlateDecode"),QPDFObjectHandle::newNull());
+ #else
+ ret.replaceStreamData(page_data,QPDFObjectHandle::newNull(),QPDFObjectHandle::newNull());
+@@ -165,7 +165,7 @@ void finish_page(struct pdf_info * info)
+ void finish_page(struct pdf_info * info)
+ {
+ //Finish previous Page
+- if(!info->page_data.getPointer())
++ if(!info->page_data.get())
+ return;
+
+ QPDFObjectHandle image = makeImage(info->pdf, info->page_data, info->width, info->height, DEVICE_RGB, 8);
+@@ -182,7 +182,7 @@ void finish_page(struct pdf_info * info)
+ info->page.getKey("/Contents").replaceStreamData(content,QPDFObjectHandle::newNull(),QPDFObjectHandle::newNull());
+
+ // bookkeeping
+- info->page_data = PointerHolder<Buffer>();
++ info->page_data = std::shared_ptr<Buffer>();
+ }
+
+ int add_pdf_page(struct pdf_info * info, int pagen, unsigned width, unsigned height, int bpp, unsigned dpi)
+@@ -199,7 +199,7 @@ int add_pdf_page(struct pdf_info * info, int pagen, un
+ if (info->height > (std::numeric_limits<unsigned>::max() / info->line_bytes)) {
+ die("Page too big");
+ }
+- info->page_data = PointerHolder<Buffer>(new Buffer(info->line_bytes*info->height));
++ info->page_data = std::shared_ptr<Buffer>(new Buffer(info->line_bytes*info->height));
+
+ QPDFObjectHandle page = QPDFObjectHandle::parse(
+ "<<"
diff --git a/print/cups-filters/files/patch-cupsfilters_colormanager.c b/print/cups-filters/files/patch-cupsfilters_colormanager.c
index 3b1b190005e7..e64c483e507a 100644
--- a/print/cups-filters/files/patch-cupsfilters_colormanager.c
+++ b/print/cups-filters/files/patch-cupsfilters_colormanager.c
@@ -1,4 +1,4 @@
---- cupsfilters/colormanager.c.orig 2018-10-03 20:12:51 UTC
+--- cupsfilters/colormanager.c.orig 2023-01-25 01:41:08 UTC
+++ cupsfilters/colormanager.c
@@ -26,6 +26,7 @@ MIT Open Source License - http://www.opensource.org/
*/
@@ -15,5 +15,5 @@
- "%s/profiles/%s", CUPSDATA, attr->value);
+ "%s/profiles/%s", CUPS_DATADIR, attr->value);
else {
- strncpy(full_path, attr->value, sizeof(full_path));
+ strncpy(full_path, attr->value, sizeof(full_path) - 1);
if (strlen(attr->value) > 1023)
diff --git a/print/cups/Makefile b/print/cups/Makefile
index 69679e6bc1b7..8c0e5451dd92 100644
--- a/print/cups/Makefile
+++ b/print/cups/Makefile
@@ -1,5 +1,5 @@
PORTNAME= cups
-DISTVERSION= 2.4.12
+DISTVERSION= 2.4.14
CATEGORIES= print
MASTER_SITES= https://github.com/OpenPrinting/${PORTNAME}/releases/download/v${DISTVERSION}/
DISTNAME= ${PORTNAME}-${DISTVERSION}-source
diff --git a/print/cups/distinfo b/print/cups/distinfo
index 0e7b50e2cc79..476048b70be3 100644
--- a/print/cups/distinfo
+++ b/print/cups/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1748716245
-SHA256 (cups-2.4.12-source.tar.gz) = b1dde191a4ae2760c47220c82ca6155a28c382701e6c1a0159d1054990231d59
-SIZE (cups-2.4.12-source.tar.gz) = 8157433
+TIMESTAMP = 1757944912
+SHA256 (cups-2.4.14-source.tar.gz) = 660288020dd6f79caf799811c4c1a3207a48689899ac2093959d70a3bdcb7699
+SIZE (cups-2.4.14-source.tar.gz) = 8157729
diff --git a/print/freetype2/Makefile b/print/freetype2/Makefile
index 649553ec8182..8f4f91ba58c7 100644
--- a/print/freetype2/Makefile
+++ b/print/freetype2/Makefile
@@ -1,5 +1,5 @@
PORTNAME= freetype2
-DISTVERSION= 2.13.3
+DISTVERSION= 2.14.1
CATEGORIES= print
MASTER_SITES= SAVANNAH/${PORTNAME:S/2//} \
SF/freetype/${PORTNAME}/${DISTVERSION:C/^([0-9]+\.[0-9]+\.[0-9]+).*/\1/}/
diff --git a/print/freetype2/distinfo b/print/freetype2/distinfo
index 429e7edcb2a3..46794669d49f 100644
--- a/print/freetype2/distinfo
+++ b/print/freetype2/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1725570212
-SHA256 (freetype-2.13.3.tar.xz) = 0550350666d427c74daeb85d5ac7bb353acba5f76956395995311a9c6f063289
-SIZE (freetype-2.13.3.tar.xz) = 2617564
+TIMESTAMP = 1757616352
+SHA256 (freetype-2.14.1.tar.xz) = 32427e8c471ac095853212a37aef816c60b42052d4d9e48230bab3bdf2936ccc
+SIZE (freetype-2.14.1.tar.xz) = 2664948
diff --git a/print/freetype2/pkg-plist b/print/freetype2/pkg-plist
index 9271bf29d05b..2d1d64ab01ad 100644
--- a/print/freetype2/pkg-plist
+++ b/print/freetype2/pkg-plist
@@ -60,5 +60,5 @@ lib/cmake/freetype/freetype-config-version.cmake
lib/cmake/freetype/freetype-config.cmake
lib/libfreetype.so
lib/libfreetype.so.6
-lib/libfreetype.so.6.20.2
+lib/libfreetype.so.6.20.4
libdata/pkgconfig/freetype2.pc
diff --git a/print/ghostscript10/Makefile b/print/ghostscript10/Makefile
index edf3e1bdfa2c..e19b3e83d9bf 100644
--- a/print/ghostscript10/Makefile
+++ b/print/ghostscript10/Makefile
@@ -1,5 +1,5 @@
PORTNAME= ghostscript
-DISTVERSION= 10.05.1
+DISTVERSION= 10.06.0
CATEGORIES= print
MASTER_SITES= https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${DISTVERSION:S/.//g}/
PKGNAMESUFFIX= ${GS_MAJOR_VERSION}
diff --git a/print/ghostscript10/distinfo b/print/ghostscript10/distinfo
index e1805e453459..bb47d2a138aa 100644
--- a/print/ghostscript10/distinfo
+++ b/print/ghostscript10/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1746048734
-SHA256 (ghostscript-10.05.1.tar.xz) = 22f2bdca15c28830c9715cddc5c296ea66898bfdab0b604a4e0bcfeb03af6cad
-SIZE (ghostscript-10.05.1.tar.xz) = 68043644
+TIMESTAMP = 1758706561
+SHA256 (ghostscript-10.06.0.tar.xz) = 64352648c2c081c8a9fb1a12dc1965e01ead7c57f58b72d1b54f6ef1cef3c561
+SIZE (ghostscript-10.06.0.tar.xz) = 68955484
diff --git a/print/ghostscript10/files/patch-base_ocr.mak b/print/ghostscript10/files/patch-base_ocr.mak
new file mode 100644
index 000000000000..02f9e01d7cca
--- /dev/null
+++ b/print/ghostscript10/files/patch-base_ocr.mak
@@ -0,0 +1,11 @@
+--- base/ocr.mak 2025-09-25 07:52:48 UTC
++++ base/ocr.mak
+@@ -20,7 +20,7 @@
+
+ # Define the name of this makefile.
+ LIBOCR_MAK=$(GLSRC)ocr.mak $(TOP_MAKEFILES)
+-OCRCXX = $(CXX) $(TESSINCLUDES) $(TESSCXXFLAGS) $(CCXXFLAGS) -DTESSERACT_IMAGEDATA_AS_PIX -DTESSERACT_DISABLE_DEBUG_FONTS -DGRAPHICS_DISABLED -UCLUSTER
++OCRCXX = $(CXX) $(TESSINCLUDES) $(TESSCXXFLAGS) $(CCFLAGS) -DTESSERACT_IMAGEDATA_AS_PIX -DTESSERACT_DISABLE_DEBUG_FONTS -DGRAPHICS_DISABLED -UCLUSTER
+
+ # Tesseract veneer.
+ $(GLGEN)tessocr.$(OBJ) : $(GLSRC)tessocr.cpp $(GLSRC)tessocr.h $(LIBOCR_MAK) \
diff --git a/print/ghostscript10/files/patch-configure b/print/ghostscript10/files/patch-configure
index 4ecbe4ff7287..1888293a327b 100644
--- a/print/ghostscript10/files/patch-configure
+++ b/print/ghostscript10/files/patch-configure
@@ -1,6 +1,15 @@
---- configure.orig 2022-04-04 13:48:49 UTC
+--- configure.orig 2025-09-09 09:36:39 UTC
+++ configure
-@@ -13383,7 +13383,12 @@ if test "${enable_dynamic+set}" = set; then :
+@@ -5630,7 +5630,7 @@ -Wmissing-declarations -Wmissing-prototypes -Wwrite-st
+ if test x"$GCC" = x"yes"; then
+ cflags_to_try="-Wall -Wstrict-prototypes -Wundef \
+ -Wmissing-declarations -Wmissing-prototypes -Wwrite-strings \
+--fno-strict-aliasing -Werror=declaration-after-statement \
++-fno-strict-aliasing \
+ -fno-builtin -fno-common -Werror=return-type -Wno-unused-local-typedefs $CFLAGS_LARGEFILE"
+ optflags_to_try="$CC_OPT_FLAGS_TO_TRY"
+ dbgflags_to_try="$CC_DBG_FLAGS_TO_TRY"
+@@ -13615,7 +13615,12 @@ then :
DBG_CFLAGS="$DYNAMIC_CFLAGS $DBG_CFLAGS"
;;
*bsd*)
@@ -14,3 +23,12 @@
DYNAMIC_FLAGS="-DGS_DEVS_SHARED -DGS_DEVS_SHARED_DIR=\\\"\$(gssharedir)\\\""
X11_DEVS=""
OPT_CFLAGS="$DYNAMIC_CFLAGS $OPT_CFLAGS"
+@@ -15791,7 +15796,7 @@ CFLAGSAUX=$(echo $CFLAGSAUX | sed -e 's/-DGS_NO_FILESY
+
+ CFLAGSAUX=$(echo $CFLAGSAUX | sed -e 's/-DGS_NO_FILESYSTEM//g')
+
+-GXXFLAGS=$(echo $GCFLAGS | sed -e 's/-Wstrict-prototypes//g' | sed -e 's/-Wmissing-prototypes//g' | sed -e 's/-Werror=declaration-after-statement//g')
++GXXFLAGS=$(echo $GCFLAGS | sed -e 's/-Wstrict-prototypes//g' | sed -e 's/-Wmissing-prototypes//g')
+
+ SRCDIR="$srcdir"
+
diff --git a/print/gspdf/Makefile b/print/gspdf/Makefile
index 6aed3e1ae9d6..8b4e795c1a2d 100644
--- a/print/gspdf/Makefile
+++ b/print/gspdf/Makefile
@@ -1,6 +1,6 @@
PORTNAME= gspdf
PORTVERSION= 0.5
-PORTREVISION= 12
+PORTREVISION= 13
CATEGORIES= print gnustep
MASTER_SITES= SAVANNAH/gap
DISTNAME= GSPdf-${PORTVERSION}
diff --git a/print/hplip-plugin/Makefile b/print/hplip-plugin/Makefile
index fcc780a66ea9..f3663d7d4ee1 100644
--- a/print/hplip-plugin/Makefile
+++ b/print/hplip-plugin/Makefile
@@ -1,5 +1,6 @@
PORTNAME= hplip-plugin
PORTVERSION= 3.24.4
+PORTREVISION= 1
CATEGORIES= print
MASTER_SITES= https://developers.hp.com/sites/default/files/ \
https://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/
diff --git a/print/hplip/Makefile b/print/hplip/Makefile
index 51fe9e41dfa9..d52a78fb5cd8 100644
--- a/print/hplip/Makefile
+++ b/print/hplip/Makefile
@@ -1,6 +1,6 @@
PORTNAME= hplip
PORTVERSION= 3.24.4
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= print
MASTER_SITES= SF
diff --git a/print/hyperlatex/Makefile b/print/hyperlatex/Makefile
index e79fccc08b2d..7b28bf5fb968 100644
--- a/print/hyperlatex/Makefile
+++ b/print/hyperlatex/Makefile
@@ -1,6 +1,6 @@
PORTNAME= Hyperlatex
DISTVERSION= 2.9a
-PORTREVISION= 25
+PORTREVISION= 26
CATEGORIES= print
MASTER_SITES= SF/${PORTNAME:tl}/${PORTNAME:tl}/2.9a
PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX}
diff --git a/print/ipp-usb/Makefile b/print/ipp-usb/Makefile
index f1419c64890d..465ef3cdb692 100644
--- a/print/ipp-usb/Makefile
+++ b/print/ipp-usb/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ipp-usb
DISTVERSION= 0.9.24
-PORTREVISION= 6
+PORTREVISION= 10
CATEGORIES= print
MAINTAINER= chuanwei.foo@hotmail.com
diff --git a/print/latex-biber/Makefile b/print/latex-biber/Makefile
index 9e2324903846..4f285e3259df 100644
--- a/print/latex-biber/Makefile
+++ b/print/latex-biber/Makefile
@@ -2,7 +2,7 @@ PORTNAME= biber
# https://sourceforge.net/projects/biblatex-biber/files/biblatex-biber/development/documentation/biber.pdf/download
# Keep this in-sync with biblatex.sty (currently at 3.20).
DISTVERSIONPREFIX= v
-DISTVERSION= 2.20
+DISTVERSION= 2.21
PORTEPOCH= 2
CATEGORIES= print perl5
PKGNAMEPREFIX= latex-
@@ -12,8 +12,8 @@ MAINTAINER= tex@FreeBSD.org
COMMENT= BibTeX replacement for users of BibLaTeX
WWW= https://biblatex-biber.sourceforge.net/
-LICENSE= ART10 GPLv1+
-LICENSE_COMB= dual
+LICENSE= ART10 GPLv1+
+LICENSE_COMB= dual
LICENSE_FILE_ART10= ${WRKSRC}/LICENSE
__DEPENDS= \
diff --git a/print/latex-biber/distinfo b/print/latex-biber/distinfo
index ec3a07de9135..bcd03fce6820 100644
--- a/print/latex-biber/distinfo
+++ b/print/latex-biber/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1744972861
-SHA256 (TeX/plk-biber-v2.20_GH0.tar.gz) = 19f0312e59bf2f5711b8d69b3585a0ca894c36574f086fbb8d53ccd5c0a45ff9
-SIZE (TeX/plk-biber-v2.20_GH0.tar.gz) = 1632745
+TIMESTAMP = 1753536217
+SHA256 (TeX/plk-biber-v2.21_GH0.tar.gz) = 2652cf3ae0abff5fb233aa77f18e70014cc2c70b94a8693c099a3cad9bbb4b20
+SIZE (TeX/plk-biber-v2.21_GH0.tar.gz) = 1650331
diff --git a/print/latex-biber/pkg-plist b/print/latex-biber/pkg-plist
index 613eaa36ad66..a475bd856da5 100644
--- a/print/latex-biber/pkg-plist
+++ b/print/latex-biber/pkg-plist
@@ -1,6 +1,36 @@
+%%PERL5_MAN3%%/Biber.3.gz
+%%PERL5_MAN3%%/Biber::Annotation.3.gz
+%%PERL5_MAN3%%/Biber::Config.3.gz
+%%PERL5_MAN3%%/Biber::Constants.3.gz
+%%PERL5_MAN3%%/Biber::DataList.3.gz
+%%PERL5_MAN3%%/Biber::DataLists.3.gz
+%%PERL5_MAN3%%/Biber::DataModel.3.gz
+%%PERL5_MAN3%%/Biber::Date::Format.3.gz
+%%PERL5_MAN3%%/Biber::Entries.3.gz
+%%PERL5_MAN3%%/Biber::Entry.3.gz
+%%PERL5_MAN3%%/Biber::Entry::Name.3.gz
+%%PERL5_MAN3%%/Biber::Entry::Names.3.gz
+%%PERL5_MAN3%%/Biber::Input::file::biblatexml.3.gz
+%%PERL5_MAN3%%/Biber::Input::file::bibtex.3.gz
+%%PERL5_MAN3%%/Biber::Internals.3.gz
+%%PERL5_MAN3%%/Biber::LaTeX::Recode.3.gz
+%%PERL5_MAN3%%/Biber::LangTag.3.gz
+%%PERL5_MAN3%%/Biber::LangTags.3.gz
+%%PERL5_MAN3%%/Biber::Output::base.3.gz
+%%PERL5_MAN3%%/Biber::Output::bbl.3.gz
+%%PERL5_MAN3%%/Biber::Output::bblxml.3.gz
+%%PERL5_MAN3%%/Biber::Output::biblatexml.3.gz
+%%PERL5_MAN3%%/Biber::Output::bibtex.3.gz
+%%PERL5_MAN3%%/Biber::Output::dot.3.gz
+%%PERL5_MAN3%%/Biber::Section.3.gz
+%%PERL5_MAN3%%/Biber::Sections.3.gz
+%%PERL5_MAN3%%/Biber::UCollate.3.gz
+%%PERL5_MAN3%%/Biber::Utils.3.gz
+%%PERL5_MAN1%%/biber.1.gz
bin/biber
%%SITE_PERL%%/Biber.pm
%%SITE_PERL%%/Biber/Annotation.pm
+%%SITE_PERL%%/Biber/CodePage.pm
%%SITE_PERL%%/Biber/Config.pm
%%SITE_PERL%%/Biber/Constants.pm
%%SITE_PERL%%/Biber/DataList.pm
@@ -34,32 +64,3 @@ bin/biber
%%SITE_PERL%%/Biber/biber-tool.conf
%%SITE_PERL%%/Biber/config.rnc
%%SITE_PERL%%/Biber/config.rng
-%%PERL5_MAN1%%/biber.1.gz
-%%PERL5_MAN3%%/Biber.3.gz
-%%PERL5_MAN3%%/Biber::Annotation.3.gz
-%%PERL5_MAN3%%/Biber::Config.3.gz
-%%PERL5_MAN3%%/Biber::Constants.3.gz
-%%PERL5_MAN3%%/Biber::DataList.3.gz
-%%PERL5_MAN3%%/Biber::DataLists.3.gz
-%%PERL5_MAN3%%/Biber::DataModel.3.gz
-%%PERL5_MAN3%%/Biber::Date::Format.3.gz
-%%PERL5_MAN3%%/Biber::Entries.3.gz
-%%PERL5_MAN3%%/Biber::Entry.3.gz
-%%PERL5_MAN3%%/Biber::Entry::Name.3.gz
-%%PERL5_MAN3%%/Biber::Entry::Names.3.gz
-%%PERL5_MAN3%%/Biber::Input::file::biblatexml.3.gz
-%%PERL5_MAN3%%/Biber::Input::file::bibtex.3.gz
-%%PERL5_MAN3%%/Biber::Internals.3.gz
-%%PERL5_MAN3%%/Biber::LaTeX::Recode.3.gz
-%%PERL5_MAN3%%/Biber::LangTag.3.gz
-%%PERL5_MAN3%%/Biber::LangTags.3.gz
-%%PERL5_MAN3%%/Biber::Output::base.3.gz
-%%PERL5_MAN3%%/Biber::Output::bbl.3.gz
-%%PERL5_MAN3%%/Biber::Output::bblxml.3.gz
-%%PERL5_MAN3%%/Biber::Output::biblatexml.3.gz
-%%PERL5_MAN3%%/Biber::Output::bibtex.3.gz
-%%PERL5_MAN3%%/Biber::Output::dot.3.gz
-%%PERL5_MAN3%%/Biber::Section.3.gz
-%%PERL5_MAN3%%/Biber::Sections.3.gz
-%%PERL5_MAN3%%/Biber::UCollate.3.gz
-%%PERL5_MAN3%%/Biber::Utils.3.gz
diff --git a/print/libraqm/Makefile b/print/libraqm/Makefile
index 61b52c998d73..0de45b08718e 100644
--- a/print/libraqm/Makefile
+++ b/print/libraqm/Makefile
@@ -1,5 +1,5 @@
PORTNAME= libraqm
-DISTVERSION= 0.10.2
+DISTVERSION= 0.10.3
CATEGORIES= print
MASTER_SITES= https://github.com/HOST-Oman/${PORTNAME}/releases/download/v${DISTVERSION}/
DISTNAME= raqm-${DISTVERSION}
diff --git a/print/libraqm/distinfo b/print/libraqm/distinfo
index 58c4951ba299..2b5ba1123510 100644
--- a/print/libraqm/distinfo
+++ b/print/libraqm/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1727032245
-SHA256 (raqm-0.10.2.tar.xz) = 3e936f2c4e585c3168dbe121fcb7d6c55702027c68e491076381da5c4060559c
-SIZE (raqm-0.10.2.tar.xz) = 216932
+TIMESTAMP = 1756020453
+SHA256 (raqm-0.10.3.tar.xz) = 34c4d0340a18d62a6962ea36c76b06c2bc00bd2017b2d8952a85bb673cfcfcfa
+SIZE (raqm-0.10.3.tar.xz) = 217420
diff --git a/print/libraqm/pkg-plist b/print/libraqm/pkg-plist
index 3e8494321545..9acb2f3ea267 100644
--- a/print/libraqm/pkg-plist
+++ b/print/libraqm/pkg-plist
@@ -2,7 +2,7 @@ include/raqm-version.h
include/raqm.h
lib/libraqm.so
lib/libraqm.so.0
-lib/libraqm.so.0.10.2
+lib/libraqm.so.0.10.3
libdata/pkgconfig/raqm.pc
%%PORTDOCS%%%%DOCSDIR%%/annotation-glossary.html
%%PORTDOCS%%%%DOCSDIR%%/api-index-0-1.html
diff --git a/print/lilypond-devel/Makefile b/print/lilypond-devel/Makefile
index bb631fc46d25..8ea8f16ba8c1 100644
--- a/print/lilypond-devel/Makefile
+++ b/print/lilypond-devel/Makefile
@@ -1,5 +1,5 @@
PORTNAME= lilypond
-DISTVERSION= 2.25.26
+DISTVERSION= 2.25.27
CATEGORIES= print audio
MASTER_SITES= http://lilypond.org/download/source/v${DISTVERSION:R}/
PKGNAMESUFFIX= -devel
diff --git a/print/lilypond-devel/distinfo b/print/lilypond-devel/distinfo
index de4b6b8077c7..5ff36b44663c 100644
--- a/print/lilypond-devel/distinfo
+++ b/print/lilypond-devel/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751962168
-SHA256 (lilypond-2.25.26.tar.gz) = cdbd0b54154e765082beea180a61c05973ef11b00541eda28f6c4bf349ff9d99
-SIZE (lilypond-2.25.26.tar.gz) = 19484665
+TIMESTAMP = 1753087284
+SHA256 (lilypond-2.25.27.tar.gz) = 5b917136870c65b1d05461c5ed2822d2c72f4b7d4a24ede1f421dd15f2a2f2db
+SIZE (lilypond-2.25.27.tar.gz) = 19546342
diff --git a/print/linux-rl9-cups-libs/Makefile b/print/linux-rl9-cups-libs/Makefile
index 559d8a12fef6..207b48fa4e46 100644
--- a/print/linux-rl9-cups-libs/Makefile
+++ b/print/linux-rl9-cups-libs/Makefile
@@ -1,7 +1,7 @@
PORTNAME= cups
PORTVERSION= 2.3.3
-DISTVERSIONSUFFIX= op2-33.el9
-PORTREVISION= 8
+DISTVERSIONSUFFIX= op2-33.el9_6.1
+PORTREVISION= 9
CATEGORIES= print linux
PKGNAMESUFFIX= -libs
diff --git a/print/linux-rl9-cups-libs/distinfo b/print/linux-rl9-cups-libs/distinfo
index 2deda555d5c8..6c0308d9f1d0 100644
--- a/print/linux-rl9-cups-libs/distinfo
+++ b/print/linux-rl9-cups-libs/distinfo
@@ -1,9 +1,9 @@
-TIMESTAMP = 1750646421
-SHA256 (rocky/c/cups-libs-2.3.3op2-33.el9.aarch64.rpm) = c2e3d7bad4fb8c1fa0132304950d6c3c2b5def5ac7f9b36f23c4a36d91cda957
-SIZE (rocky/c/cups-libs-2.3.3op2-33.el9.aarch64.rpm) = 264838
-SHA256 (rocky/c/cups-libs-2.3.3op2-33.el9.i686.rpm) = 6652e4c1ce1962f47874a8e702a68401a8523ac0715b6bdc1ddfebf47931eeac
-SIZE (rocky/c/cups-libs-2.3.3op2-33.el9.i686.rpm) = 286060
-SHA256 (rocky/c/cups-libs-2.3.3op2-33.el9.x86_64.rpm) = 1c78d03afab323c727c1da22c2e4007b729141df0a8702eb2f7019b6116b424d
-SIZE (rocky/c/cups-libs-2.3.3op2-33.el9.x86_64.rpm) = 267746
-SHA256 (rocky/c/cups-2.3.3op2-33.el9.src.rpm) = b1c3febbde4848ed9ea7c627ae714045cf2c0024e7ca18a98158c6169d144b08
-SIZE (rocky/c/cups-2.3.3op2-33.el9.src.rpm) = 8115436
+TIMESTAMP = 1762107940
+SHA256 (rocky/c/cups-libs-2.3.3op2-33.el9_6.1.aarch64.rpm) = a8b978fb441d4a3a917e127bc63d9419169bbd368ee915998aef3a7595a7856b
+SIZE (rocky/c/cups-libs-2.3.3op2-33.el9_6.1.aarch64.rpm) = 264330
+SHA256 (rocky/c/cups-libs-2.3.3op2-33.el9_6.1.i686.rpm) = 8c7573a9b32b28d4e95a4d3028bae7d2a48f05abe3b2ff871f981e7ab6470a22
+SIZE (rocky/c/cups-libs-2.3.3op2-33.el9_6.1.i686.rpm) = 285328
+SHA256 (rocky/c/cups-libs-2.3.3op2-33.el9_6.1.x86_64.rpm) = 1d6c4b19246bc8843876012cd03f42567748c546e5db7cb1302c7337ce936c1b
+SIZE (rocky/c/cups-libs-2.3.3op2-33.el9_6.1.x86_64.rpm) = 266787
+SHA256 (rocky/c/cups-2.3.3op2-33.el9_6.1.src.rpm) = 36a4ae48a4885c13ce6820af3aa6e1b058024a4681d65379740dd3d4827d48ab
+SIZE (rocky/c/cups-2.3.3op2-33.el9_6.1.src.rpm) = 8115931
diff --git a/print/lyx/Makefile b/print/lyx/Makefile
index 48d5d914a0fa..82be45ad32ff 100644
--- a/print/lyx/Makefile
+++ b/print/lyx/Makefile
@@ -1,5 +1,6 @@
PORTNAME= lyx
PORTVERSION= ${MAJOR_VERSION}.4
+PORTREVISION= 1
CATEGORIES= print editors
MASTER_SITES= ftp://ftp.lyx.org/pub/lyx/stable/${MAJOR_VERSION}.x/ \
http://www-ftp.lip6.fr/ftp/pub/lyx/stable/${MAJOR_VERSION}.x/ \
diff --git a/print/miktex/Makefile b/print/miktex/Makefile
index 444b6874fd6f..7130fa01f620 100644
--- a/print/miktex/Makefile
+++ b/print/miktex/Makefile
@@ -1,6 +1,6 @@
PORTNAME= miktex
DISTVERSION= 25.4
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= print
MASTER_SITES= https://miktex.org/download/ctan/systems/win32/miktex/source/ \
https://ctan.org/tex-archive/systems/win32/miktex/tm/packages/:bootstrap
diff --git a/print/paps/Makefile b/print/paps/Makefile
index 2267d0e16160..d2af83d7605d 100644
--- a/print/paps/Makefile
+++ b/print/paps/Makefile
@@ -1,15 +1,16 @@
PORTNAME= paps
-PORTVERSION= 0.8.0
-DISTVERSIONPREFIX= v
-PORTREVISION= 2
+DISTVERSION= 0.8.0
+PORTREVISION= 4
CATEGORIES= print
+MASTER_SITES= https://github.com/dov/${PORTNAME}/releases/download/v${DISTVERSION}/
-PATCH_SITES= ${WWW}/commit/
-PATCHFILES+= e9270aaac5e0b8018a6fad9a562ee48e7b2c3113.patch:-p1 # https://github.com/dov/paps/pull/71
+PATCH_SITES= https://github.com/dov/paps/commit/
+PATCHFILES= e9270aaac5e0b8018a6fad9a562ee48e7b2c3113.patch:-p1 \
+ a26a20d7ca3feb08476a8a19fd97c3ececcc1e2e.patch:-p1
MAINTAINER= ports@FreeBSD.org
COMMENT= UTF-8 to PostScript converter using Pango
-WWW= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}
+WWW= https://github.com/dov/paps
LICENSE= LGPL20
LICENSE_FILE= ${WRKSRC}/COPYING.LIB
@@ -18,18 +19,13 @@ BROKEN_i386= compilation fails, see https://github.com/dov/paps/issues/60
LIB_DEPENDS= libfmt.so:devel/libfmt
-USES= cmake:indirect compiler:c++17-lang meson gnome pkgconfig python:env shebangfix
-USE_CXXSTD= c++17
-USE_GITHUB= yes
-GH_ACCOUNT= dov
-USE_GNOME= cairo pango
-
+USES= compiler:c++17-lang meson gnome pkgconfig python:env,run shebangfix
SHEBANG_FILES= ${WRKSRC}/scripts/src-to-paps
+USE_GNOME= cairo pango
-PLIST_FILES= bin/paps share/man/man1/paps.1.gz
-
-post-install:
- ${ECHO_CMD} "bin/src-to-paps" >> ${TMPPLIST}
- ${ECHO_CMD} "share/paps/pango_markup.outlang" >> ${TMPPLIST}
+PLIST_FILES= bin/paps \
+ bin/src-to-paps \
+ share/man/man1/paps.1.gz \
+ share/paps/pango_markup.outlang
.include <bsd.port.mk>
diff --git a/print/paps/distinfo b/print/paps/distinfo
index 45fc12eeb69f..fce676bd92d0 100644
--- a/print/paps/distinfo
+++ b/print/paps/distinfo
@@ -1,5 +1,7 @@
-TIMESTAMP = 1736611510
-SHA256 (dov-paps-v0.8.0_GH0.tar.gz) = 8fd8db04e6f8c5c164806d2c1b5fea6096daf583f83f06d1e4813ea61edc291f
-SIZE (dov-paps-v0.8.0_GH0.tar.gz) = 75685
+TIMESTAMP = 1760402841
+SHA256 (paps-0.8.0.tar.gz) = bb5a826db364117a5ae79c833c4a000197f3b5b3eff10e31fb1513a583f96ff2
+SIZE (paps-0.8.0.tar.gz) = 224643
SHA256 (e9270aaac5e0b8018a6fad9a562ee48e7b2c3113.patch) = ed97ae7128f774b2f4d2f6ee31212ac53ba9c2c6d60379bf4486c61e3f347365
SIZE (e9270aaac5e0b8018a6fad9a562ee48e7b2c3113.patch) = 1846
+SHA256 (a26a20d7ca3feb08476a8a19fd97c3ececcc1e2e.patch) = c477a86e961adaf5f8b1c7e53aeb7f5a08c9c1a2ee64c5729dc2b4a141f0b344
+SIZE (a26a20d7ca3feb08476a8a19fd97c3ececcc1e2e.patch) = 1042
diff --git a/print/pdf-tools/Makefile b/print/pdf-tools/Makefile
index bd0f0263861b..302d7b504e11 100644
--- a/print/pdf-tools/Makefile
+++ b/print/pdf-tools/Makefile
@@ -1,7 +1,7 @@
PORTNAME= pdf-tools
DISTVERSIONPREFIX= v
DISTVERSION= 1.1.0
-PORTREVISION= 13
+PORTREVISION= 14
CATEGORIES= print elisp
PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX}
diff --git a/print/pdfarranger/Makefile b/print/pdfarranger/Makefile
index e2d4815caa39..be05ab1ff56d 100644
--- a/print/pdfarranger/Makefile
+++ b/print/pdfarranger/Makefile
@@ -1,6 +1,5 @@
PORTNAME= pdfarranger
-DISTVERSION= 1.10.1
-PORTREVISION= 3
+DISTVERSION= 1.12.1
CATEGORIES= print
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,9 +14,9 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-dateutil>0:devel/py-python-dateutil@$
${PYTHON_PKGNAMEPREFIX}pikepdf>0:textproc/py-pikepdf@${PY_FLAVOR} \
poppler-glib>0:graphics/poppler-glib
-USES= gettext gnome python
+USES= desktop-file-utils gettext-tools gnome python
USE_GITHUB= yes
-USE_GNOME= gtk30 intltool:build pygobject3:run
+#USE_GNOME= gtk30 pygobject3:run
USE_PYTHON= distutils
NO_ARCH= yes
diff --git a/print/pdfarranger/distinfo b/print/pdfarranger/distinfo
index 46db2cd34a91..fa881981c2af 100644
--- a/print/pdfarranger/distinfo
+++ b/print/pdfarranger/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1714243330
-SHA256 (pdfarranger-pdfarranger-1.10.1_GH0.tar.gz) = 1d9648f81b9f0937ca723f7502a1dadcc4f3f6050afc6f0d4653bfaa8728a805
-SIZE (pdfarranger-pdfarranger-1.10.1_GH0.tar.gz) = 304298
+TIMESTAMP = 1761077162
+SHA256 (pdfarranger-pdfarranger-1.12.1_GH0.tar.gz) = 03c3a1b207748556f0cbc07e69aa8bba0924ce38343cb9815860b90649bb6875
+SIZE (pdfarranger-pdfarranger-1.12.1_GH0.tar.gz) = 607484
diff --git a/print/pdfarranger/pkg-plist b/print/pdfarranger/pkg-plist
index d974c3975ac9..9321c3c743b5 100644
--- a/print/pdfarranger/pkg-plist
+++ b/print/pdfarranger/pkg-plist
@@ -13,6 +13,8 @@ bin/pdfarranger
%%PYTHON_SITELIBDIR%%/pdfarranger/__pycache__/exporter%%PYTHON_TAG%%.pyc
%%PYTHON_SITELIBDIR%%/pdfarranger/__pycache__/iconview%%PYTHON_TAG%%.opt-1.pyc
%%PYTHON_SITELIBDIR%%/pdfarranger/__pycache__/iconview%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/pdfarranger/__pycache__/image_exporter%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/pdfarranger/__pycache__/image_exporter%%PYTHON_TAG%%.pyc
%%PYTHON_SITELIBDIR%%/pdfarranger/__pycache__/metadata%%PYTHON_TAG%%.opt-1.pyc
%%PYTHON_SITELIBDIR%%/pdfarranger/__pycache__/metadata%%PYTHON_TAG%%.pyc
%%PYTHON_SITELIBDIR%%/pdfarranger/__pycache__/pageutils%%PYTHON_TAG%%.opt-1.pyc
@@ -27,6 +29,7 @@ bin/pdfarranger
%%PYTHON_SITELIBDIR%%/pdfarranger/core.py
%%PYTHON_SITELIBDIR%%/pdfarranger/exporter.py
%%PYTHON_SITELIBDIR%%/pdfarranger/iconview.py
+%%PYTHON_SITELIBDIR%%/pdfarranger/image_exporter.py
%%PYTHON_SITELIBDIR%%/pdfarranger/metadata.py
%%PYTHON_SITELIBDIR%%/pdfarranger/pageutils.py
%%PYTHON_SITELIBDIR%%/pdfarranger/pdfarranger.py
@@ -39,6 +42,7 @@ share/icons/hicolor/32x32/apps/com.github.jeromerobert.pdfarranger.png
share/icons/hicolor/48x48/apps/com.github.jeromerobert.pdfarranger.png
share/icons/hicolor/scalable/apps/com.github.jeromerobert.pdfarranger.svg
share/icons/hicolor/symbolic/apps/com.github.jeromerobert.pdfarranger-symbolic.svg
+share/locale/ar/LC_MESSAGES/pdfarranger.mo
share/locale/ca/LC_MESSAGES/pdfarranger.mo
share/locale/ca@valencia/LC_MESSAGES/pdfarranger.mo
share/locale/cs/LC_MESSAGES/pdfarranger.mo
@@ -63,6 +67,7 @@ share/locale/pl_PL/LC_MESSAGES/pdfarranger.mo
share/locale/pt_BR/LC_MESSAGES/pdfarranger.mo
share/locale/pt_PT/LC_MESSAGES/pdfarranger.mo
share/locale/ru/LC_MESSAGES/pdfarranger.mo
+share/locale/sl/LC_MESSAGES/pdfarranger.mo
share/locale/sv/LC_MESSAGES/pdfarranger.mo
share/locale/tr/LC_MESSAGES/pdfarranger.mo
share/locale/uk/LC_MESSAGES/pdfarranger.mo
diff --git a/print/pdfcpu/Makefile b/print/pdfcpu/Makefile
index 1e1c9c6e6b5a..73dcef380377 100644
--- a/print/pdfcpu/Makefile
+++ b/print/pdfcpu/Makefile
@@ -1,7 +1,7 @@
PORTNAME= pdfcpu
DISTVERSIONPREFIX= v
-DISTVERSION= 0.11.0
-PORTREVISION= 3
+DISTVERSION= 0.11.1
+PORTREVISION= 1
CATEGORIES= print
MAINTAINER= diizzy@FreeBSD.org
diff --git a/print/pdfcpu/distinfo b/print/pdfcpu/distinfo
index df65a2214ee5..2b87945a17e6 100644
--- a/print/pdfcpu/distinfo
+++ b/print/pdfcpu/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1748512452
-SHA256 (go/print_pdfcpu/pdfcpu-v0.11.0/v0.11.0.mod) = db5871d3eb47a101042473138f41828f52b6ad8c175e08e95f518a145d99a107
-SIZE (go/print_pdfcpu/pdfcpu-v0.11.0/v0.11.0.mod) = 404
-SHA256 (go/print_pdfcpu/pdfcpu-v0.11.0/v0.11.0.zip) = 6b8629f95990ad1a5332e01fc6e9122b174cbd759c0b2feb48282587c3c83b0f
-SIZE (go/print_pdfcpu/pdfcpu-v0.11.0/v0.11.0.zip) = 274967380
+TIMESTAMP = 1761176509
+SHA256 (go/print_pdfcpu/pdfcpu-v0.11.1/v0.11.1.mod) = b8846da1cd2d85848febc88440b15b65787835373e350622d000a49279d1105b
+SIZE (go/print_pdfcpu/pdfcpu-v0.11.1/v0.11.1.mod) = 414
+SHA256 (go/print_pdfcpu/pdfcpu-v0.11.1/v0.11.1.zip) = 99e35da61cf28a1a3255331c2a9198d8e299da48e7726310efc373400e8c3fb0
+SIZE (go/print_pdfcpu/pdfcpu-v0.11.1/v0.11.1.zip) = 277412045
diff --git a/print/pdfcpu/pkg-message b/print/pdfcpu/pkg-message
index b3039ec193d4..d8714a37b14c 100644
--- a/print/pdfcpu/pkg-message
+++ b/print/pdfcpu/pkg-message
@@ -1,9 +1,8 @@
[
{ type: install
message: <<EOM
- If you're upgrading from a previous release you prior to 0.10.1
- need to reset your configuration by running 'pdfcpu config reset',
- pdfcpu still also issue a warning about this.
+ If you're upgrading from a previous release prior to 0.11.1 you
+ are recommended to reset your configuration by running 'pdfcpu config reset'.
EOM
}
]
diff --git a/print/plasma6-print-manager/Makefile b/print/plasma6-print-manager/Makefile
index d1a3ecc9d91b..22dedc80c58b 100644
--- a/print/plasma6-print-manager/Makefile
+++ b/print/plasma6-print-manager/Makefile
@@ -10,9 +10,9 @@ LIB_DEPENDS= libcups.so:print/cups
USES= cmake compiler:c++11-lang gettext kde:6 pkgconfig qt:6 tar:xz \
xorg
-USE_KDE= completion config configwidgets coreaddons dbusaddons i18n \
- iconthemes jobwidgets kio kirigami-addons libplasma \
- notifications service solid widgetsaddons windowsystem \
+USE_KDE= config configwidgets coreaddons dbusaddons i18n \
+ kio kirigami2 kcmutils libplasma \
+ notifications widgetsaddons windowsystem \
ecm:build
USE_QT= base declarative
USE_XORG= x11
diff --git a/print/plasma6-print-manager/distinfo b/print/plasma6-print-manager/distinfo
index 025f13700afe..11ea94a9fe0a 100644
--- a/print/plasma6-print-manager/distinfo
+++ b/print/plasma6-print-manager/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754413473
-SHA256 (KDE/plasma/6.4.4/print-manager-6.4.4.tar.xz) = 23daaa8a939bdb89047576f9e24461a3d16efd8a4556e4d1f0ece576dc2ef79f
-SIZE (KDE/plasma/6.4.4/print-manager-6.4.4.tar.xz) = 371704
+TIMESTAMP = 1762293180
+SHA256 (KDE/plasma/6.5.2/print-manager-6.5.2.tar.xz) = 4e2f74c8ea5781846526a40ec3213452f46af92d2fb2b2f5bd87a5d0e47f12ed
+SIZE (KDE/plasma/6.5.2/print-manager-6.5.2.tar.xz) = 382296
diff --git a/print/plasma6-print-manager/pkg-plist b/print/plasma6-print-manager/pkg-plist
index 39b882df61ae..78c27e3a7f94 100644
--- a/print/plasma6-print-manager/pkg-plist
+++ b/print/plasma6-print-manager/pkg-plist
@@ -1,11 +1,12 @@
bin/configure-printer
bin/kde-print-queue
-lib/libkcupslib.so.%%KDE_PLASMA_VERSION%%
+lib/libkcups.so
%%QT_PLUGINDIR%%/kf6/kded/printmanager.so
+%%QT_PLUGINDIR%%/plasma/applets/org.kde.plasma.printmanager.so
%%QT_PLUGINDIR%%/plasma/kcms/systemsettings/kcm_printer_manager.so
-%%QT_QMLDIR%%/org/kde/plasma/printmanager/kcupslib.qmltypes
+%%QT_QMLDIR%%/org/kde/plasma/printmanager/kcups.qmltypes
%%QT_QMLDIR%%/org/kde/plasma/printmanager/kde-qmlmodule.version
-%%QT_QMLDIR%%/org/kde/plasma/printmanager/libkcupslibplugin.so
+%%QT_QMLDIR%%/org/kde/plasma/printmanager/libkcupsplugin.so
%%QT_QMLDIR%%/org/kde/plasma/printmanager/qmldir
share/applications/kcm_printer_manager.desktop
share/applications/org.kde.ConfigurePrinter.desktop
@@ -107,6 +108,9 @@ share/locale/ko/LC_MESSAGES/print-manager.mo
share/locale/lt/LC_MESSAGES/kcm_printer_manager.mo
share/locale/lt/LC_MESSAGES/plasma_applet_org.kde.plasma.printmanager.mo
share/locale/lt/LC_MESSAGES/print-manager.mo
+share/locale/lv/LC_MESSAGES/kcm_printer_manager.mo
+share/locale/lv/LC_MESSAGES/plasma_applet_org.kde.plasma.printmanager.mo
+share/locale/lv/LC_MESSAGES/print-manager.mo
share/locale/mr/LC_MESSAGES/plasma_applet_org.kde.plasma.printmanager.mo
share/locale/mr/LC_MESSAGES/print-manager.mo
share/locale/nb/LC_MESSAGES/kcm_printer_manager.mo
@@ -175,11 +179,5 @@ share/locale/zh_CN/LC_MESSAGES/print-manager.mo
share/locale/zh_TW/LC_MESSAGES/kcm_printer_manager.mo
share/locale/zh_TW/LC_MESSAGES/plasma_applet_org.kde.plasma.printmanager.mo
share/locale/zh_TW/LC_MESSAGES/print-manager.mo
-share/metainfo/org.kde.plasma.printmanager.appdata.xml
share/metainfo/org.kde.print-manager.metainfo.xml
-share/plasma/plasmoids/org.kde.plasma.printmanager/contents/config/main.xml
-share/plasma/plasmoids/org.kde.plasma.printmanager/contents/ui/FullRepresentation.qml
-share/plasma/plasmoids/org.kde.plasma.printmanager/contents/ui/PrinterDelegate.qml
-share/plasma/plasmoids/org.kde.plasma.printmanager/contents/ui/main.qml
-share/plasma/plasmoids/org.kde.plasma.printmanager/metadata.json
share/qlogging-categories6/pmlogs.categories
diff --git a/print/plutobook/Makefile b/print/plutobook/Makefile
new file mode 100644
index 000000000000..99db6c8db802
--- /dev/null
+++ b/print/plutobook/Makefile
@@ -0,0 +1,39 @@
+PORTNAME= plutobook
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.10.0
+CATEGORIES= print
+
+MAINTAINER= jbo@FreeBSD.org
+COMMENT= Paged HTML rendering library
+WWW= https://github.com/plutoprint/plutobook
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+LIB_DEPENDS= libcurl.so:ftp/curl \
+ libexpat.so:textproc/expat2 \
+ libfontconfig.so:x11-fonts/fontconfig \
+ libfreetype.so:print/freetype2 \
+ libharfbuzz.so:print/harfbuzz \
+ libicuuc.so:devel/icu \
+ libturbojpeg.so:graphics/libjpeg-turbo \
+ libwebp.so:graphics/webp
+
+USES= compiler:c++20-lang gnome meson pkgconfig
+
+USE_LDCONFIG= yes
+USE_GNOME= cairo
+
+USE_GITHUB= yes
+GH_ACCOUNT= plutoprint
+
+PLIST_SUB= SOVERSION="${DISTVERSION}"
+
+OPTIONS_DEFINE= TOOLS
+OPTIONS_DEFAULT= TOOLS
+OPTIONS_SUB= yes
+TOOLS_DESC= Build CLI tools to convert HTML to PDF or PNG
+
+TOOLS_MESON_ENABLED= tools
+
+.include <bsd.port.mk>
diff --git a/print/plutobook/distinfo b/print/plutobook/distinfo
new file mode 100644
index 000000000000..c14009056dae
--- /dev/null
+++ b/print/plutobook/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1759538999
+SHA256 (plutoprint-plutobook-v0.10.0_GH0.tar.gz) = 466f45581e9e274beede8a78f64ace3b3ad94d813d6c7b1a05594ab7e7f7fa84
+SIZE (plutoprint-plutobook-v0.10.0_GH0.tar.gz) = 456918
diff --git a/print/plutobook/pkg-descr b/print/plutobook/pkg-descr
new file mode 100644
index 000000000000..fa2e0b88a219
--- /dev/null
+++ b/print/plutobook/pkg-descr
@@ -0,0 +1,3 @@
+PlutoBook is a robust HTML rendering library tailored for paged media. It takes
+HTML or XML as input, applies CSS stylesheets, and lays out elements across one
+or more pages, which can then be rendered as Bitmap images or PDF documents.
diff --git a/print/plutobook/pkg-plist b/print/plutobook/pkg-plist
new file mode 100644
index 000000000000..7362af0392bc
--- /dev/null
+++ b/print/plutobook/pkg-plist
@@ -0,0 +1,8 @@
+%%TOOLS%%bin/html2pdf
+%%TOOLS%%bin/html2png
+include/plutobook/plutobook.h
+include/plutobook/plutobook.hpp
+lib/libplutobook.so
+lib/libplutobook.so.0
+lib/libplutobook.so.%%SOVERSION%%
+libdata/pkgconfig/plutobook.pc
diff --git a/print/ppa6/Makefile b/print/ppa6/Makefile
new file mode 100644
index 000000000000..3450a23702c5
--- /dev/null
+++ b/print/ppa6/Makefile
@@ -0,0 +1,19 @@
+PORTNAME= ppa6
+DISTVERSION= 0.1.0
+PORTREVISION= 1
+CATEGORIES= print
+
+MAINTAINER= fuz@FreeBSD.org
+COMMENT= PeriPage A6 USB driver
+
+LICENSE= ISCL
+
+USES= cargo
+USE_GITHUB= yes
+GH_ACCOUNT= realchonk
+
+CARGO_INSTALL_PATH= ppa6-print
+
+PLIST_FILES= bin/ppa6-print
+
+.include <bsd.port.mk>
diff --git a/print/ppa6/Makefile.crates b/print/ppa6/Makefile.crates
new file mode 100644
index 000000000000..6e7fbd76623f
--- /dev/null
+++ b/print/ppa6/Makefile.crates
@@ -0,0 +1,186 @@
+CARGO_CRATES= adler2-2.0.0 \
+ aho-corasick-1.1.3 \
+ aligned-vec-0.5.0 \
+ anstream-0.6.18 \
+ anstyle-1.0.10 \
+ anstyle-parse-0.2.6 \
+ anstyle-query-1.1.2 \
+ anstyle-wincon-3.0.7 \
+ anyhow-1.0.95 \
+ arbitrary-1.4.1 \
+ arg_enum_proc_macro-0.3.4 \
+ arrayvec-0.7.6 \
+ autocfg-1.4.0 \
+ av1-grain-0.2.3 \
+ avif-serialize-0.8.2 \
+ bit_field-0.10.2 \
+ bitflags-1.3.2 \
+ bitflags-2.8.0 \
+ bitstream-io-2.6.0 \
+ built-0.7.5 \
+ bumpalo-3.17.0 \
+ bytemuck-1.21.0 \
+ bytemuck_derive-1.8.1 \
+ byteorder-1.5.0 \
+ byteorder-lite-0.1.0 \
+ cc-1.2.12 \
+ cfg-expr-0.15.8 \
+ cfg-if-1.0.0 \
+ clap-4.5.28 \
+ clap-num-1.2.0 \
+ clap-verbosity-2.1.0 \
+ clap_builder-4.5.27 \
+ clap_derive-4.5.28 \
+ clap_lex-0.7.4 \
+ color_quant-1.1.0 \
+ colorchoice-1.0.3 \
+ cosmic-text-0.12.1 \
+ crc32fast-1.4.2 \
+ crossbeam-deque-0.8.6 \
+ crossbeam-epoch-0.9.18 \
+ crossbeam-utils-0.8.21 \
+ crunchy-0.2.3 \
+ either-1.13.0 \
+ env_filter-0.1.3 \
+ env_logger-0.11.6 \
+ equivalent-1.0.1 \
+ exr-1.73.0 \
+ fdeflate-0.3.7 \
+ flate2-1.0.35 \
+ font-types-0.7.3 \
+ fontconfig-parser-0.5.7 \
+ fontdb-0.16.2 \
+ getrandom-0.2.15 \
+ gif-0.13.1 \
+ half-2.4.1 \
+ hashbrown-0.15.2 \
+ heck-0.5.0 \
+ humantime-2.1.0 \
+ image-0.25.5 \
+ image-webp-0.2.1 \
+ imgref-1.11.0 \
+ indexmap-2.7.1 \
+ interpolate_name-0.2.4 \
+ is-docker-0.2.0 \
+ is-wsl-0.4.0 \
+ is_terminal_polyfill-1.70.1 \
+ itertools-0.12.1 \
+ jobserver-0.1.32 \
+ jpeg-decoder-0.3.1 \
+ lebe-0.5.2 \
+ libc-0.2.169 \
+ libfuzzer-sys-0.4.9 \
+ libm-0.2.11 \
+ libusb1-sys-0.7.0 \
+ log-0.4.25 \
+ loop9-0.1.5 \
+ maybe-rayon-0.1.1 \
+ memchr-2.7.4 \
+ memmap2-0.9.5 \
+ minimal-lexical-0.2.1 \
+ miniz_oxide-0.8.3 \
+ new_debug_unreachable-1.0.6 \
+ nom-7.1.3 \
+ noop_proc_macro-0.3.0 \
+ num-bigint-0.4.6 \
+ num-derive-0.4.2 \
+ num-integer-0.1.46 \
+ num-rational-0.4.2 \
+ num-traits-0.2.19 \
+ once_cell-1.20.3 \
+ open-5.3.2 \
+ paste-1.0.15 \
+ pathdiff-0.2.3 \
+ pkg-config-0.3.31 \
+ png-0.17.16 \
+ ppv-lite86-0.2.20 \
+ proc-macro2-1.0.93 \
+ profiling-1.0.16 \
+ profiling-procmacros-1.0.16 \
+ qoi-0.4.1 \
+ quick-error-2.0.1 \
+ quote-1.0.38 \
+ rand-0.8.5 \
+ rand_chacha-0.3.1 \
+ rand_core-0.6.4 \
+ rangemap-1.5.1 \
+ rav1e-0.7.1 \
+ ravif-0.11.11 \
+ rayon-1.10.0 \
+ rayon-core-1.12.1 \
+ read-fonts-0.22.7 \
+ regex-1.11.1 \
+ regex-automata-0.4.9 \
+ regex-syntax-0.8.5 \
+ rgb-0.8.50 \
+ roxmltree-0.20.0 \
+ rusb-0.9.4 \
+ rustc-hash-1.1.0 \
+ rustversion-1.0.19 \
+ rustybuzz-0.14.1 \
+ self_cell-1.1.0 \
+ serde-1.0.217 \
+ serde_derive-1.0.217 \
+ serde_spanned-0.6.8 \
+ shlex-1.3.0 \
+ simd-adler32-0.3.7 \
+ simd_helpers-0.1.0 \
+ skrifa-0.22.3 \
+ slotmap-1.0.7 \
+ smallvec-1.13.2 \
+ strsim-0.11.1 \
+ swash-0.1.19 \
+ syn-2.0.98 \
+ sys-locale-0.3.2 \
+ system-deps-6.2.2 \
+ target-lexicon-0.12.16 \
+ thiserror-1.0.69 \
+ thiserror-2.0.11 \
+ thiserror-impl-1.0.69 \
+ thiserror-impl-2.0.11 \
+ tiff-0.9.1 \
+ tinyvec-1.8.1 \
+ tinyvec_macros-0.1.1 \
+ toml-0.8.20 \
+ toml_datetime-0.6.8 \
+ toml_edit-0.22.23 \
+ ttf-parser-0.20.0 \
+ ttf-parser-0.21.1 \
+ unicode-bidi-0.3.18 \
+ unicode-bidi-mirroring-0.2.0 \
+ unicode-ccc-0.2.0 \
+ unicode-ident-1.0.16 \
+ unicode-linebreak-0.1.5 \
+ unicode-properties-0.1.3 \
+ unicode-script-0.5.7 \
+ unicode-segmentation-1.12.0 \
+ utf8parse-0.2.2 \
+ v_frame-0.3.8 \
+ vcpkg-0.2.15 \
+ version-compare-0.2.0 \
+ version_check-0.9.5 \
+ wasi-0.11.0+wasi-snapshot-preview1 \
+ wasm-bindgen-0.2.100 \
+ wasm-bindgen-backend-0.2.100 \
+ wasm-bindgen-macro-0.2.100 \
+ wasm-bindgen-macro-support-0.2.100 \
+ wasm-bindgen-shared-0.2.100 \
+ weezl-0.1.8 \
+ windows-sys-0.59.0 \
+ windows-targets-0.52.6 \
+ windows_aarch64_gnullvm-0.52.6 \
+ windows_aarch64_msvc-0.52.6 \
+ windows_i686_gnu-0.52.6 \
+ windows_i686_gnullvm-0.52.6 \
+ windows_i686_msvc-0.52.6 \
+ windows_x86_64_gnu-0.52.6 \
+ windows_x86_64_gnullvm-0.52.6 \
+ windows_x86_64_msvc-0.52.6 \
+ winnow-0.7.1 \
+ yazi-0.1.6 \
+ zeno-0.2.3 \
+ zerocopy-0.7.35 \
+ zerocopy-derive-0.7.35 \
+ zune-core-0.4.12 \
+ zune-inflate-0.2.54 \
+ zune-jpeg-0.4.14
diff --git a/print/ppa6/distinfo b/print/ppa6/distinfo
new file mode 100644
index 000000000000..69d7eb5d2fe0
--- /dev/null
+++ b/print/ppa6/distinfo
@@ -0,0 +1,375 @@
+TIMESTAMP = 1756919732
+SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
+SIZE (rust/crates/adler2-2.0.0.crate) = 13529
+SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
+SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
+SHA256 (rust/crates/aligned-vec-0.5.0.crate) = 4aa90d7ce82d4be67b64039a3d588d38dbcc6736577de4a847025ce5b0c468d1
+SIZE (rust/crates/aligned-vec-0.5.0.crate) = 8921
+SHA256 (rust/crates/anstream-0.6.18.crate) = 8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b
+SIZE (rust/crates/anstream-0.6.18.crate) = 29681
+SHA256 (rust/crates/anstyle-1.0.10.crate) = 55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9
+SIZE (rust/crates/anstyle-1.0.10.crate) = 15725
+SHA256 (rust/crates/anstyle-parse-0.2.6.crate) = 3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9
+SIZE (rust/crates/anstyle-parse-0.2.6.crate) = 22343
+SHA256 (rust/crates/anstyle-query-1.1.2.crate) = 79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c
+SIZE (rust/crates/anstyle-query-1.1.2.crate) = 9969
+SHA256 (rust/crates/anstyle-wincon-3.0.7.crate) = ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e
+SIZE (rust/crates/anstyle-wincon-3.0.7.crate) = 12400
+SHA256 (rust/crates/anyhow-1.0.95.crate) = 34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04
+SIZE (rust/crates/anyhow-1.0.95.crate) = 52155
+SHA256 (rust/crates/arbitrary-1.4.1.crate) = dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223
+SIZE (rust/crates/arbitrary-1.4.1.crate) = 36816
+SHA256 (rust/crates/arg_enum_proc_macro-0.3.4.crate) = 0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea
+SIZE (rust/crates/arg_enum_proc_macro-0.3.4.crate) = 5102
+SHA256 (rust/crates/arrayvec-0.7.6.crate) = 7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50
+SIZE (rust/crates/arrayvec-0.7.6.crate) = 31237
+SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26
+SIZE (rust/crates/autocfg-1.4.0.crate) = 17712
+SHA256 (rust/crates/av1-grain-0.2.3.crate) = 6678909d8c5d46a42abcf571271e15fdbc0a225e3646cf23762cd415046c78bf
+SIZE (rust/crates/av1-grain-0.2.3.crate) = 34703
+SHA256 (rust/crates/avif-serialize-0.8.2.crate) = e335041290c43101ca215eed6f43ec437eb5a42125573f600fc3fa42b9bddd62
+SIZE (rust/crates/avif-serialize-0.8.2.crate) = 11985
+SHA256 (rust/crates/bit_field-0.10.2.crate) = dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61
+SIZE (rust/crates/bit_field-0.10.2.crate) = 10568
+SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
+SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
+SHA256 (rust/crates/bitflags-2.8.0.crate) = 8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36
+SIZE (rust/crates/bitflags-2.8.0.crate) = 47482
+SHA256 (rust/crates/bitstream-io-2.6.0.crate) = 6099cdc01846bc367c4e7dd630dc5966dccf36b652fae7a74e17b640411a91b2
+SIZE (rust/crates/bitstream-io-2.6.0.crate) = 38256
+SHA256 (rust/crates/built-0.7.5.crate) = c360505aed52b7ec96a3636c3f039d99103c37d1d9b4f7a8c743d3ea9ffcd03b
+SIZE (rust/crates/built-0.7.5.crate) = 22319
+SHA256 (rust/crates/bumpalo-3.17.0.crate) = 1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf
+SIZE (rust/crates/bumpalo-3.17.0.crate) = 91975
+SHA256 (rust/crates/bytemuck-1.21.0.crate) = ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3
+SIZE (rust/crates/bytemuck-1.21.0.crate) = 51553
+SHA256 (rust/crates/bytemuck_derive-1.8.1.crate) = 3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a
+SIZE (rust/crates/bytemuck_derive-1.8.1.crate) = 23100
+SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b
+SIZE (rust/crates/byteorder-1.5.0.crate) = 23288
+SHA256 (rust/crates/byteorder-lite-0.1.0.crate) = 8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495
+SIZE (rust/crates/byteorder-lite-0.1.0.crate) = 15909
+SHA256 (rust/crates/cc-1.2.12.crate) = 755717a7de9ec452bf7f3f1a3099085deabd7f2962b861dae91ecd7a365903d2
+SIZE (rust/crates/cc-1.2.12.crate) = 102240
+SHA256 (rust/crates/cfg-expr-0.15.8.crate) = d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02
+SIZE (rust/crates/cfg-expr-0.15.8.crate) = 42108
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/clap-4.5.28.crate) = 3e77c3243bd94243c03672cb5154667347c457ca271254724f9f393aee1c05ff
+SIZE (rust/crates/clap-4.5.28.crate) = 56073
+SHA256 (rust/crates/clap-num-1.2.0.crate) = 822c4000301ac390e65995c62207501e3ef800a1fc441df913a5e8e4dc374816
+SIZE (rust/crates/clap-num-1.2.0.crate) = 10476
+SHA256 (rust/crates/clap-verbosity-2.1.0.crate) = 3d7bf75a8e0407a558bd7e8e7919baa352e21fb0c1c7702a63c853f2277c4c63
+SIZE (rust/crates/clap-verbosity-2.1.0.crate) = 19214
+SHA256 (rust/crates/clap_builder-4.5.27.crate) = 1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7
+SIZE (rust/crates/clap_builder-4.5.27.crate) = 168024
+SHA256 (rust/crates/clap_derive-4.5.28.crate) = bf4ced95c6f4a675af3da73304b9ac4ed991640c36374e4b46795c49e17cf1ed
+SIZE (rust/crates/clap_derive-4.5.28.crate) = 33428
+SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6
+SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858
+SHA256 (rust/crates/color_quant-1.1.0.crate) = 3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b
+SIZE (rust/crates/color_quant-1.1.0.crate) = 6649
+SHA256 (rust/crates/colorchoice-1.0.3.crate) = 5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990
+SIZE (rust/crates/colorchoice-1.0.3.crate) = 7923
+SHA256 (rust/crates/cosmic-text-0.12.1.crate) = 59fd57d82eb4bfe7ffa9b1cec0c05e2fd378155b47f255a67983cb4afe0e80c2
+SIZE (rust/crates/cosmic-text-0.12.1.crate) = 1895451
+SHA256 (rust/crates/crc32fast-1.4.2.crate) = a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3
+SIZE (rust/crates/crc32fast-1.4.2.crate) = 38491
+SHA256 (rust/crates/crossbeam-deque-0.8.6.crate) = 9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51
+SIZE (rust/crates/crossbeam-deque-0.8.6.crate) = 22471
+SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e
+SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875
+SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28
+SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691
+SHA256 (rust/crates/crunchy-0.2.3.crate) = 43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929
+SIZE (rust/crates/crunchy-0.2.3.crate) = 3775
+SHA256 (rust/crates/either-1.13.0.crate) = 60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0
+SIZE (rust/crates/either-1.13.0.crate) = 19169
+SHA256 (rust/crates/env_filter-0.1.3.crate) = 186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0
+SIZE (rust/crates/env_filter-0.1.3.crate) = 15191
+SHA256 (rust/crates/env_logger-0.11.6.crate) = dcaee3d8e3cfc3fd92428d477bc97fc29ec8716d180c0d74c643bb26166660e0
+SIZE (rust/crates/env_logger-0.11.6.crate) = 31105
+SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5
+SIZE (rust/crates/equivalent-1.0.1.crate) = 6615
+SHA256 (rust/crates/exr-1.73.0.crate) = f83197f59927b46c04a183a619b7c29df34e63e63c7869320862268c0ef687e0
+SIZE (rust/crates/exr-1.73.0.crate) = 244371
+SHA256 (rust/crates/fdeflate-0.3.7.crate) = 1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c
+SIZE (rust/crates/fdeflate-0.3.7.crate) = 27188
+SHA256 (rust/crates/flate2-1.0.35.crate) = c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c
+SIZE (rust/crates/flate2-1.0.35.crate) = 109188
+SHA256 (rust/crates/font-types-0.7.3.crate) = b3971f9a5ca983419cdc386941ba3b9e1feba01a0ab888adf78739feb2798492
+SIZE (rust/crates/font-types-0.7.3.crate) = 23131
+SHA256 (rust/crates/fontconfig-parser-0.5.7.crate) = c1fcfcd44ca6e90c921fee9fa665d530b21ef1327a4c1a6c5250ea44b776ada7
+SIZE (rust/crates/fontconfig-parser-0.5.7.crate) = 39564
+SHA256 (rust/crates/fontdb-0.16.2.crate) = b0299020c3ef3f60f526a4f64ab4a3d4ce116b1acbf24cdd22da0068e5d81dc3
+SIZE (rust/crates/fontdb-0.16.2.crate) = 107447
+SHA256 (rust/crates/getrandom-0.2.15.crate) = c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7
+SIZE (rust/crates/getrandom-0.2.15.crate) = 37163
+SHA256 (rust/crates/gif-0.13.1.crate) = 3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2
+SIZE (rust/crates/gif-0.13.1.crate) = 36408
+SHA256 (rust/crates/half-2.4.1.crate) = 6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888
+SIZE (rust/crates/half-2.4.1.crate) = 50892
+SHA256 (rust/crates/hashbrown-0.15.2.crate) = bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289
+SIZE (rust/crates/hashbrown-0.15.2.crate) = 138478
+SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
+SIZE (rust/crates/heck-0.5.0.crate) = 11517
+SHA256 (rust/crates/humantime-2.1.0.crate) = 9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4
+SIZE (rust/crates/humantime-2.1.0.crate) = 16749
+SHA256 (rust/crates/image-0.25.5.crate) = cd6f44aed642f18953a158afeb30206f4d50da59fbc66ecb53c66488de73563b
+SIZE (rust/crates/image-0.25.5.crate) = 241073
+SHA256 (rust/crates/image-webp-0.2.1.crate) = b77d01e822461baa8409e156015a1d91735549f0f2c17691bd2d996bef238f7f
+SIZE (rust/crates/image-webp-0.2.1.crate) = 60662
+SHA256 (rust/crates/imgref-1.11.0.crate) = d0263a3d970d5c054ed9312c0057b4f3bde9c0b33836d3637361d4a9e6e7a408
+SIZE (rust/crates/imgref-1.11.0.crate) = 65943
+SHA256 (rust/crates/indexmap-2.7.1.crate) = 8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652
+SIZE (rust/crates/indexmap-2.7.1.crate) = 88644
+SHA256 (rust/crates/interpolate_name-0.2.4.crate) = c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60
+SIZE (rust/crates/interpolate_name-0.2.4.crate) = 4027
+SHA256 (rust/crates/is-docker-0.2.0.crate) = 928bae27f42bc99b60d9ac7334e3a21d10ad8f1835a4e12ec3ec0464765ed1b3
+SIZE (rust/crates/is-docker-0.2.0.crate) = 2664
+SHA256 (rust/crates/is-wsl-0.4.0.crate) = 173609498df190136aa7dea1a91db051746d339e18476eed5ca40521f02d7aa5
+SIZE (rust/crates/is-wsl-0.4.0.crate) = 3264
+SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
+SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
+SHA256 (rust/crates/itertools-0.12.1.crate) = ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569
+SIZE (rust/crates/itertools-0.12.1.crate) = 137761
+SHA256 (rust/crates/jobserver-0.1.32.crate) = 48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0
+SIZE (rust/crates/jobserver-0.1.32.crate) = 27549
+SHA256 (rust/crates/jpeg-decoder-0.3.1.crate) = f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0
+SIZE (rust/crates/jpeg-decoder-0.3.1.crate) = 744364
+SHA256 (rust/crates/lebe-0.5.2.crate) = 03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8
+SIZE (rust/crates/lebe-0.5.2.crate) = 8422
+SHA256 (rust/crates/libc-0.2.169.crate) = b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a
+SIZE (rust/crates/libc-0.2.169.crate) = 757901
+SHA256 (rust/crates/libfuzzer-sys-0.4.9.crate) = cf78f52d400cf2d84a3a973a78a592b4adc535739e0a5597a0da6f0c357adc75
+SIZE (rust/crates/libfuzzer-sys-0.4.9.crate) = 133299
+SHA256 (rust/crates/libm-0.2.11.crate) = 8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa
+SIZE (rust/crates/libm-0.2.11.crate) = 111477
+SHA256 (rust/crates/libusb1-sys-0.7.0.crate) = da050ade7ac4ff1ba5379af847a10a10a8e284181e060105bf8d86960ce9ce0f
+SIZE (rust/crates/libusb1-sys-0.7.0.crate) = 296493
+SHA256 (rust/crates/log-0.4.25.crate) = 04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f
+SIZE (rust/crates/log-0.4.25.crate) = 44876
+SHA256 (rust/crates/loop9-0.1.5.crate) = 0fae87c125b03c1d2c0150c90365d7d6bcc53fb73a9acaef207d2d065860f062
+SIZE (rust/crates/loop9-0.1.5.crate) = 3406
+SHA256 (rust/crates/maybe-rayon-0.1.1.crate) = 8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519
+SIZE (rust/crates/maybe-rayon-0.1.1.crate) = 2901
+SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3
+SIZE (rust/crates/memchr-2.7.4.crate) = 96670
+SHA256 (rust/crates/memmap2-0.9.5.crate) = fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f
+SIZE (rust/crates/memmap2-0.9.5.crate) = 33280
+SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a
+SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841
+SHA256 (rust/crates/miniz_oxide-0.8.3.crate) = b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924
+SIZE (rust/crates/miniz_oxide-0.8.3.crate) = 61827
+SHA256 (rust/crates/new_debug_unreachable-1.0.6.crate) = 650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086
+SIZE (rust/crates/new_debug_unreachable-1.0.6.crate) = 2582
+SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
+SIZE (rust/crates/nom-7.1.3.crate) = 117570
+SHA256 (rust/crates/noop_proc_macro-0.3.0.crate) = 0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8
+SIZE (rust/crates/noop_proc_macro-0.3.0.crate) = 2157
+SHA256 (rust/crates/num-bigint-0.4.6.crate) = a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9
+SIZE (rust/crates/num-bigint-0.4.6.crate) = 102801
+SHA256 (rust/crates/num-derive-0.4.2.crate) = ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202
+SIZE (rust/crates/num-derive-0.4.2.crate) = 14709
+SHA256 (rust/crates/num-integer-0.1.46.crate) = 7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f
+SIZE (rust/crates/num-integer-0.1.46.crate) = 22331
+SHA256 (rust/crates/num-rational-0.4.2.crate) = f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824
+SIZE (rust/crates/num-rational-0.4.2.crate) = 28159
+SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841
+SIZE (rust/crates/num-traits-0.2.19.crate) = 51631
+SHA256 (rust/crates/once_cell-1.20.3.crate) = 945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e
+SIZE (rust/crates/once_cell-1.20.3.crate) = 33456
+SHA256 (rust/crates/open-5.3.2.crate) = e2483562e62ea94312f3576a7aca397306df7990b8d89033e18766744377ef95
+SIZE (rust/crates/open-5.3.2.crate) = 26342
+SHA256 (rust/crates/paste-1.0.15.crate) = 57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a
+SIZE (rust/crates/paste-1.0.15.crate) = 18374
+SHA256 (rust/crates/pathdiff-0.2.3.crate) = df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3
+SIZE (rust/crates/pathdiff-0.2.3.crate) = 7495
+SHA256 (rust/crates/pkg-config-0.3.31.crate) = 953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2
+SIZE (rust/crates/pkg-config-0.3.31.crate) = 20880
+SHA256 (rust/crates/png-0.17.16.crate) = 82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526
+SIZE (rust/crates/png-0.17.16.crate) = 117975
+SHA256 (rust/crates/ppv-lite86-0.2.20.crate) = 77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04
+SIZE (rust/crates/ppv-lite86-0.2.20.crate) = 22478
+SHA256 (rust/crates/proc-macro2-1.0.93.crate) = 60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99
+SIZE (rust/crates/proc-macro2-1.0.93.crate) = 52388
+SHA256 (rust/crates/profiling-1.0.16.crate) = afbdc74edc00b6f6a218ca6a5364d6226a259d4b8ea1af4a0ea063f27e179f4d
+SIZE (rust/crates/profiling-1.0.16.crate) = 12588
+SHA256 (rust/crates/profiling-procmacros-1.0.16.crate) = a65f2e60fbf1063868558d69c6beacf412dc755f9fc020f514b7955fc914fe30
+SIZE (rust/crates/profiling-procmacros-1.0.16.crate) = 5893
+SHA256 (rust/crates/qoi-0.4.1.crate) = 7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001
+SIZE (rust/crates/qoi-0.4.1.crate) = 71135
+SHA256 (rust/crates/quick-error-2.0.1.crate) = a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3
+SIZE (rust/crates/quick-error-2.0.1.crate) = 14265
+SHA256 (rust/crates/quote-1.0.38.crate) = 0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc
+SIZE (rust/crates/quote-1.0.38.crate) = 31252
+SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404
+SIZE (rust/crates/rand-0.8.5.crate) = 87113
+SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88
+SIZE (rust/crates/rand_chacha-0.3.1.crate) = 15251
+SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c
+SIZE (rust/crates/rand_core-0.6.4.crate) = 22666
+SHA256 (rust/crates/rangemap-1.5.1.crate) = f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684
+SIZE (rust/crates/rangemap-1.5.1.crate) = 57091
+SHA256 (rust/crates/rav1e-0.7.1.crate) = cd87ce80a7665b1cce111f8a16c1f3929f6547ce91ade6addf4ec86a8dda5ce9
+SIZE (rust/crates/rav1e-0.7.1.crate) = 1472522
+SHA256 (rust/crates/ravif-0.11.11.crate) = 2413fd96bd0ea5cdeeb37eaf446a22e6ed7b981d792828721e74ded1980a45c6
+SIZE (rust/crates/ravif-0.11.11.crate) = 11362
+SHA256 (rust/crates/rayon-1.10.0.crate) = b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa
+SIZE (rust/crates/rayon-1.10.0.crate) = 180155
+SHA256 (rust/crates/rayon-core-1.12.1.crate) = 1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2
+SIZE (rust/crates/rayon-core-1.12.1.crate) = 70701
+SHA256 (rust/crates/read-fonts-0.22.7.crate) = 69aacb76b5c29acfb7f90155d39759a29496aebb49395830e928a9703d2eec2f
+SIZE (rust/crates/read-fonts-0.22.7.crate) = 329031
+SHA256 (rust/crates/regex-1.11.1.crate) = b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191
+SIZE (rust/crates/regex-1.11.1.crate) = 254170
+SHA256 (rust/crates/regex-automata-0.4.9.crate) = 809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908
+SIZE (rust/crates/regex-automata-0.4.9.crate) = 618525
+SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c
+SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541
+SHA256 (rust/crates/rgb-0.8.50.crate) = 57397d16646700483b67d2dd6511d79318f9d057fdbd21a4066aeac8b41d310a
+SIZE (rust/crates/rgb-0.8.50.crate) = 21980
+SHA256 (rust/crates/roxmltree-0.20.0.crate) = 6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97
+SIZE (rust/crates/roxmltree-0.20.0.crate) = 54594
+SHA256 (rust/crates/rusb-0.9.4.crate) = ab9f9ff05b63a786553a4c02943b74b34a988448671001e9a27e2f0565cc05a4
+SIZE (rust/crates/rusb-0.9.4.crate) = 44539
+SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2
+SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331
+SHA256 (rust/crates/rustversion-1.0.19.crate) = f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4
+SIZE (rust/crates/rustversion-1.0.19.crate) = 20616
+SHA256 (rust/crates/rustybuzz-0.14.1.crate) = cfb9cf8877777222e4a3bc7eb247e398b56baba500c38c1c46842431adc8b55c
+SIZE (rust/crates/rustybuzz-0.14.1.crate) = 254743
+SHA256 (rust/crates/self_cell-1.1.0.crate) = c2fdfc24bc566f839a2da4c4295b82db7d25a24253867d5c64355abb5799bdbe
+SIZE (rust/crates/self_cell-1.1.0.crate) = 16636
+SHA256 (rust/crates/serde-1.0.217.crate) = 02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70
+SIZE (rust/crates/serde-1.0.217.crate) = 79019
+SHA256 (rust/crates/serde_derive-1.0.217.crate) = 5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0
+SIZE (rust/crates/serde_derive-1.0.217.crate) = 57749
+SHA256 (rust/crates/serde_spanned-0.6.8.crate) = 87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1
+SIZE (rust/crates/serde_spanned-0.6.8.crate) = 9330
+SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
+SIZE (rust/crates/shlex-1.3.0.crate) = 18713
+SHA256 (rust/crates/simd-adler32-0.3.7.crate) = d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe
+SIZE (rust/crates/simd-adler32-0.3.7.crate) = 12086
+SHA256 (rust/crates/simd_helpers-0.1.0.crate) = 95890f873bec569a0362c235787f3aca6e1e887302ba4840839bcc6459c42da6
+SIZE (rust/crates/simd_helpers-0.1.0.crate) = 1527
+SHA256 (rust/crates/skrifa-0.22.3.crate) = 8e1c44ad1f6c5bdd4eefed8326711b7dbda9ea45dfd36068c427d332aa382cbe
+SIZE (rust/crates/skrifa-0.22.3.crate) = 260731
+SHA256 (rust/crates/slotmap-1.0.7.crate) = dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a
+SIZE (rust/crates/slotmap-1.0.7.crate) = 61390
+SHA256 (rust/crates/smallvec-1.13.2.crate) = 3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67
+SIZE (rust/crates/smallvec-1.13.2.crate) = 35216
+SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f
+SIZE (rust/crates/strsim-0.11.1.crate) = 14266
+SHA256 (rust/crates/swash-0.1.19.crate) = cbd59f3f359ddd2c95af4758c18270eddd9c730dde98598023cdabff472c2ca2
+SIZE (rust/crates/swash-0.1.19.crate) = 235696
+SHA256 (rust/crates/syn-2.0.98.crate) = 36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1
+SIZE (rust/crates/syn-2.0.98.crate) = 297807
+SHA256 (rust/crates/sys-locale-0.3.2.crate) = 8eab9a99a024a169fe8a903cf9d4a3b3601109bcc13bd9e3c6fff259138626c4
+SIZE (rust/crates/sys-locale-0.3.2.crate) = 15072
+SHA256 (rust/crates/system-deps-6.2.2.crate) = a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349
+SIZE (rust/crates/system-deps-6.2.2.crate) = 25546
+SHA256 (rust/crates/target-lexicon-0.12.16.crate) = 61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1
+SIZE (rust/crates/target-lexicon-0.12.16.crate) = 26488
+SHA256 (rust/crates/thiserror-1.0.69.crate) = b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52
+SIZE (rust/crates/thiserror-1.0.69.crate) = 22198
+SHA256 (rust/crates/thiserror-2.0.11.crate) = d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc
+SIZE (rust/crates/thiserror-2.0.11.crate) = 28648
+SHA256 (rust/crates/thiserror-impl-1.0.69.crate) = 4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1
+SIZE (rust/crates/thiserror-impl-1.0.69.crate) = 18365
+SHA256 (rust/crates/thiserror-impl-2.0.11.crate) = 26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2
+SIZE (rust/crates/thiserror-impl-2.0.11.crate) = 21067
+SHA256 (rust/crates/tiff-0.9.1.crate) = ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e
+SIZE (rust/crates/tiff-0.9.1.crate) = 1423953
+SHA256 (rust/crates/tinyvec-1.8.1.crate) = 022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8
+SIZE (rust/crates/tinyvec-1.8.1.crate) = 47269
+SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20
+SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865
+SHA256 (rust/crates/toml-0.8.20.crate) = cd87a5cdd6ffab733b2f74bc4fd7ee5fff6634124999ac278c35fc78c6120148
+SIZE (rust/crates/toml-0.8.20.crate) = 51095
+SHA256 (rust/crates/toml_datetime-0.6.8.crate) = 0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41
+SIZE (rust/crates/toml_datetime-0.6.8.crate) = 12028
+SHA256 (rust/crates/toml_edit-0.22.23.crate) = 02a8b472d1a3d7c18e2d61a489aee3453fd9031c33e4f55bd533f4a7adca1bee
+SIZE (rust/crates/toml_edit-0.22.23.crate) = 106376
+SHA256 (rust/crates/ttf-parser-0.20.0.crate) = 17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4
+SIZE (rust/crates/ttf-parser-0.20.0.crate) = 161769
+SHA256 (rust/crates/ttf-parser-0.21.1.crate) = 2c591d83f69777866b9126b24c6dd9a18351f177e49d625920d19f989fd31cf8
+SIZE (rust/crates/ttf-parser-0.21.1.crate) = 194876
+SHA256 (rust/crates/unicode-bidi-0.3.18.crate) = 5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5
+SIZE (rust/crates/unicode-bidi-0.3.18.crate) = 58300
+SHA256 (rust/crates/unicode-bidi-mirroring-0.2.0.crate) = 23cb788ffebc92c5948d0e997106233eeb1d8b9512f93f41651f52b6c5f5af86
+SIZE (rust/crates/unicode-bidi-mirroring-0.2.0.crate) = 8166
+SHA256 (rust/crates/unicode-ccc-0.2.0.crate) = 1df77b101bcc4ea3d78dafc5ad7e4f58ceffe0b2b16bf446aeb50b6cb4157656
+SIZE (rust/crates/unicode-ccc-0.2.0.crate) = 8872
+SHA256 (rust/crates/unicode-ident-1.0.16.crate) = a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034
+SIZE (rust/crates/unicode-ident-1.0.16.crate) = 47684
+SHA256 (rust/crates/unicode-linebreak-0.1.5.crate) = 3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f
+SIZE (rust/crates/unicode-linebreak-0.1.5.crate) = 15324
+SHA256 (rust/crates/unicode-properties-0.1.3.crate) = e70f2a8b45122e719eb623c01822704c4e0907e7e426a05927e1a1cfff5b75d0
+SIZE (rust/crates/unicode-properties-0.1.3.crate) = 42252
+SHA256 (rust/crates/unicode-script-0.5.7.crate) = 9fb421b350c9aff471779e262955939f565ec18b86c15364e6bdf0d662ca7c1f
+SIZE (rust/crates/unicode-script-0.5.7.crate) = 47080
+SHA256 (rust/crates/unicode-segmentation-1.12.0.crate) = f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493
+SIZE (rust/crates/unicode-segmentation-1.12.0.crate) = 106323
+SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821
+SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
+SHA256 (rust/crates/v_frame-0.3.8.crate) = d6f32aaa24bacd11e488aa9ba66369c7cd514885742c9fe08cfe85884db3e92b
+SIZE (rust/crates/v_frame-0.3.8.crate) = 14967
+SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426
+SIZE (rust/crates/vcpkg-0.2.15.crate) = 228735
+SHA256 (rust/crates/version-compare-0.2.0.crate) = 852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b
+SIZE (rust/crates/version-compare-0.2.0.crate) = 13942
+SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a
+SIZE (rust/crates/version_check-0.9.5.crate) = 15554
+SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
+SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
+SHA256 (rust/crates/wasm-bindgen-0.2.100.crate) = 1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5
+SIZE (rust/crates/wasm-bindgen-0.2.100.crate) = 48288
+SHA256 (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6
+SIZE (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 32111
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407
+SIZE (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 9663
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 26243
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d
+SIZE (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 8570
+SHA256 (rust/crates/weezl-0.1.8.crate) = 53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082
+SIZE (rust/crates/weezl-0.1.8.crate) = 42175
+SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
+SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
+SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
+SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3
+SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718
+SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469
+SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615
+SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b
+SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402
+SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66
+SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940
+SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66
+SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163
+SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78
+SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d
+SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
+SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
+SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
+SHA256 (rust/crates/winnow-0.7.1.crate) = 86e376c75f4f43f44db463cf729e0d3acbf954d13e22c51e26e4c264b4ab545f
+SIZE (rust/crates/winnow-0.7.1.crate) = 170986
+SHA256 (rust/crates/yazi-0.1.6.crate) = c94451ac9513335b5e23d7a8a2b61a7102398b8cca5160829d313e84c9d98be1
+SIZE (rust/crates/yazi-0.1.6.crate) = 28835
+SHA256 (rust/crates/zeno-0.2.3.crate) = dd15f8e0dbb966fd9245e7498c7e9e5055d9e5c8b676b95bd67091cd11a1e697
+SIZE (rust/crates/zeno-0.2.3.crate) = 40164
+SHA256 (rust/crates/zerocopy-0.7.35.crate) = 1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0
+SIZE (rust/crates/zerocopy-0.7.35.crate) = 152645
+SHA256 (rust/crates/zerocopy-derive-0.7.35.crate) = fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e
+SIZE (rust/crates/zerocopy-derive-0.7.35.crate) = 37829
+SHA256 (rust/crates/zune-core-0.4.12.crate) = 3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a
+SIZE (rust/crates/zune-core-0.4.12.crate) = 17355
+SHA256 (rust/crates/zune-inflate-0.2.54.crate) = 73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02
+SIZE (rust/crates/zune-inflate-0.2.54.crate) = 37973
+SHA256 (rust/crates/zune-jpeg-0.4.14.crate) = 99a5bab8d7dedf81405c4bb1f2b83ea057643d9cb28778cea9eecddeedd2e028
+SIZE (rust/crates/zune-jpeg-0.4.14.crate) = 63388
+SHA256 (realchonk-ppa6-0.1.0_GH0.tar.gz) = 741e946471a3de111440fea8e36826ab14fbc97f39e2e9a9f9fa40cbf1eb687e
+SIZE (realchonk-ppa6-0.1.0_GH0.tar.gz) = 20228
diff --git a/print/ppa6/pkg-descr b/print/ppa6/pkg-descr
new file mode 100644
index 000000000000..43a15fa7063f
--- /dev/null
+++ b/print/ppa6/pkg-descr
@@ -0,0 +1,7 @@
+Userspace driver program for PeriPage A6 printers.
+
+The driver includes the following backends:
+- USB (through libusb)
+- File (for specifying the raw device)
+
+Support for Bluetooth has not been implemented yet.
diff --git a/print/py-fontaine/Makefile b/print/py-fontaine/Makefile
index 12ebdee2f2c5..3b462dd256b1 100644
--- a/print/py-fontaine/Makefile
+++ b/print/py-fontaine/Makefile
@@ -1,6 +1,6 @@
PORTNAME= fontaine
PORTVERSION= 1.4.0
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= print python
MASTER_SITES= https://www.freedesktop.org/software/fontconfig/release/:fontconfig
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -17,7 +17,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLA
${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}fonttools>=0:print/py-fonttools@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyicu>=0:devel/py-pyicu@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tabulate>=0:devel/py-tabulate@${PY_FLAVOR}
diff --git a/print/py-fontbakery/Makefile b/print/py-fontbakery/Makefile
index 1d28932d2f29..f5db36194b82 100644
--- a/print/py-fontbakery/Makefile
+++ b/print/py-fontbakery/Makefile
@@ -1,6 +1,5 @@
PORTNAME= fontbakery
-PORTVERSION= 1.0.1
-PORTREVISION= 1
+PORTVERSION= 1.1.0
CATEGORIES= print python
MASTER_SITES= PYPI \
https://github.com/fonttools/fontbakery/releases/download/v${PORTVERSION}/
@@ -54,16 +53,16 @@ NOTOFONTS_DESC= Checks for Noto fonts
NOTOFONTS_IMPLIES= GOOGLEFONTS
TYPENETWORK_DESC= Checks for Type Network
-FONTVAL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
-GOOGLEFONTS_RUN_DEPENDS=${PYTHON_PKGNAMEPREFIX}axisregistry>=0.4.12<0.5:x11-fonts/py-axisregistry@${PY_FLAVOR} \
+FONTVAL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+GOOGLEFONTS_RUN_DEPENDS=${PYTHON_PKGNAMEPREFIX}axisregistry>=0.4.16<0.5:x11-fonts/py-axisregistry@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}beautifulsoup>=4.7.1:www/py-beautifulsoup@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}collidoscope>=0.5.2:print/py-collidoscope@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}fonttools>=0:print/py-fonttools@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}gflanguages>=0.7.3<0.8:x11-fonts/py-gflanguages@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}gflanguages>=0.7.7<0.8:x11-fonts/py-gflanguages@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}gfsubsets>=2024.9.25:x11-fonts/py-gfsubsets@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}glyphsets>=1.1.0<2:print/py-glyphsets@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}protobuf>=3.7.0,1:devel/py-protobuf@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}shaperglot>=1.0.2<2:x11-fonts/py-shaperglot@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}shaperglot>=1.2.0<2:x11-fonts/py-shaperglot@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}stringbrewer>=0:devel/py-stringbrewer@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}unicodedata2>=0:devel/py-unicodedata2@${PY_FLAVOR}
TYPENETWORK_RUN_DEPENDS=${PYTHON_PKGNAMEPREFIX}beautifulsoup>=4.7.1:www/py-beautifulsoup@${PY_FLAVOR} \
diff --git a/print/py-fontbakery/distinfo b/print/py-fontbakery/distinfo
index 615138664c65..c29f7f25f740 100644
--- a/print/py-fontbakery/distinfo
+++ b/print/py-fontbakery/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752266158
-SHA256 (fontbakery-1.0.1.tar.gz) = 38f39434acbbd2c9bf92aaf1462eb53237d0a7be0076a661e86b7ddcb765994d
-SIZE (fontbakery-1.0.1.tar.gz) = 49799634
+TIMESTAMP = 1759774701
+SHA256 (fontbakery-1.1.0.tar.gz) = 70b40d8eba64f26dd19b55410b814d181edefc4fa18c8a9c4ad1520ea7d5224e
+SIZE (fontbakery-1.1.0.tar.gz) = 49801646
diff --git a/print/py-fonttools/Makefile b/print/py-fonttools/Makefile
index 077edf5b4814..b5068eeab501 100644
--- a/print/py-fonttools/Makefile
+++ b/print/py-fonttools/Makefile
@@ -1,5 +1,5 @@
PORTNAME= fonttools
-PORTVERSION= 4.59.0
+PORTVERSION= 4.60.1
CATEGORIES= print python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -32,7 +32,7 @@ WOFF_DESC= Compress/uncompress WOFF webfonts
GRAPHITE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lz4>=1.7.4.2:archivers/py-lz4@${PY_FLAVOR}
INTERPOLATABLE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cairo>=0:graphics/py-cairo@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}scipy>=0:science/py-scipy@${PY_FLAVOR}
-LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.0:devel/py-lxml5@${PY_FLAVOR}
+LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.0:devel/py-lxml@${PY_FLAVOR}
PLOT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}matplotlib>=0:math/py-matplotlib@${PY_FLAVOR}
REPACKER_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}uharfbuzz>=0.23.0:print/py-uharfbuzz@${PY_FLAVOR}
SYMFONT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sympy>=0:math/py-sympy@${PY_FLAVOR}
diff --git a/print/py-fonttools/distinfo b/print/py-fonttools/distinfo
index 6044798342b3..0cb6004b8f5c 100644
--- a/print/py-fonttools/distinfo
+++ b/print/py-fonttools/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1753265786
-SHA256 (fonttools-4.59.0.tar.gz) = be392ec3529e2f57faa28709d60723a763904f71a2b63aabe14fee6648fe3b14
-SIZE (fonttools-4.59.0.tar.gz) = 3532521
+TIMESTAMP = 1759816706
+SHA256 (fonttools-4.60.1.tar.gz) = ef00af0439ebfee806b25f24c8f92109157ff3fac5731dc7867957812e87b8d9
+SIZE (fonttools-4.60.1.tar.gz) = 3559823
diff --git a/print/py-frescobaldi/Makefile b/print/py-frescobaldi/Makefile
index b2fda03b26f6..e863b7132221 100644
--- a/print/py-frescobaldi/Makefile
+++ b/print/py-frescobaldi/Makefile
@@ -1,7 +1,6 @@
PORTNAME= frescobaldi
DISTVERSIONPREFIX= v
-DISTVERSION= 3.3.0
-PORTREVISION= 3
+DISTVERSION= 4.0.4
CATEGORIES= print kde python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -10,17 +9,17 @@ COMMENT= Music score editor for lilypond
WWW= https://www.frescobaldi.org/
LICENSE= GPLv2+
-LICENSE_FILE= ${WRKSRC}/COPYING
+LICENSE_FILE= ${WRKSRC}/LICENSE
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}tox>0:devel/py-tox@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-ly>=0:print/py-python-ly@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}python-poppler-qt5>=0:graphics/py-python-poppler-qt5@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}qpageview>=0:graphics/py-qpageview@${PY_FLAVOR}
-USES= desktop-file-utils gettext gmake pyqt:5 python qmake qt:5
+USES= gettext-tools pyqt:6 python qt:6
USE_GITHUB= yes
-GH_ACCOUNT= frescobaldi
-USE_PYQT= pyqt5 webengine sip:build
-USE_PYTHON= autoplist distutils noflavors
+USE_PYQT= pyqt6 webengine sip:build
+USE_PYTHON= autoplist noflavors pep517
NO_ARCH= yes
@@ -32,6 +31,6 @@ LILYPOND_RUN_DEPENDS= lilypond:print/lilypond-devel
LILYPOND_RUN_DEPENDS_OFF= lilypond:print/lilypond
post-build:
- (cd ${WRKSRC} && ${GMAKE} -C linux)
+ (cd ${WRKSRC} && tox -e linux-generate)
.include <bsd.port.mk>
diff --git a/print/py-frescobaldi/distinfo b/print/py-frescobaldi/distinfo
index b87e69be9bd4..ffd048f5bf6c 100644
--- a/print/py-frescobaldi/distinfo
+++ b/print/py-frescobaldi/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1680092318
-SHA256 (frescobaldi-frescobaldi-v3.3.0_GH0.tar.gz) = 89a1fb73528ef653c4b99af06bbc8d1175d56893d67422b998be8a500fe79c8c
-SIZE (frescobaldi-frescobaldi-v3.3.0_GH0.tar.gz) = 9196964
+TIMESTAMP = 1754917371
+SHA256 (frescobaldi-frescobaldi-v4.0.4_GH0.tar.gz) = 8aa015ab221ac4c03237393f840325553b94df33c82a12a4a743fbacce36dcba
+SIZE (frescobaldi-frescobaldi-v4.0.4_GH0.tar.gz) = 8580069
diff --git a/print/py-frescobaldi/files/patch-frescobaldi__app_portmidi_____init____.py b/print/py-frescobaldi/files/patch-frescobaldi_portmidi_____init____.py
index 7ed521e86959..b4f04a283a6e 100644
--- a/print/py-frescobaldi/files/patch-frescobaldi__app_portmidi_____init____.py
+++ b/print/py-frescobaldi/files/patch-frescobaldi_portmidi_____init____.py
@@ -1,5 +1,5 @@
---- frescobaldi_app/portmidi/__init__.py.orig 2020-12-26 10:15:52 UTC
-+++ frescobaldi_app/portmidi/__init__.py
+--- frescobaldi/portmidi/__init__.py.orig 2020-12-26 10:15:52 UTC
++++ frescobaldi/portmidi/__init__.py
@@ -264,16 +264,7 @@ def _setup():
"""
diff --git a/print/py-pypdf/Makefile b/print/py-pypdf/Makefile
index bf4d526b8a40..29019f7f99b3 100644
--- a/print/py-pypdf/Makefile
+++ b/print/py-pypdf/Makefile
@@ -1,5 +1,5 @@
PORTNAME= pypdf
-PORTVERSION= 5.6.0
+PORTVERSION= 6.0.0
CATEGORIES= print python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/print/py-pypdf/distinfo b/print/py-pypdf/distinfo
index 9cec13b60f4a..7918dd6f962f 100644
--- a/print/py-pypdf/distinfo
+++ b/print/py-pypdf/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1749715873
-SHA256 (pypdf-5.6.0.tar.gz) = a4b6538b77fc796622000db7127e4e58039ec5e6afd292f8e9bf42e2e985a749
-SIZE (pypdf-5.6.0.tar.gz) = 5023749
+TIMESTAMP = 1755762927
+SHA256 (pypdf-6.0.0.tar.gz) = 282a99d2cc94a84a3a3159f0d9358c0af53f85b4d28d76ea38b96e9e5ac2a08d
+SIZE (pypdf-6.0.0.tar.gz) = 5033827
diff --git a/print/py-python-ly/Makefile b/print/py-python-ly/Makefile
index 5bec12d0b353..79684798edd0 100644
--- a/print/py-python-ly/Makefile
+++ b/print/py-python-ly/Makefile
@@ -1,6 +1,6 @@
PORTNAME= python-ly
-PORTVERSION= 0.9.8
DISTVERSIONPREFIX= v
+DISTVERSION= 0.9.9
CATEGORIES= print python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,6 +11,7 @@ WWW= https://github.com/frescobaldi/python-ly
LICENSE= GPLv3
BUILD_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
USES= python
diff --git a/print/py-python-ly/distinfo b/print/py-python-ly/distinfo
index 97ed224050be..8e14063bb364 100644
--- a/print/py-python-ly/distinfo
+++ b/print/py-python-ly/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1687123539
-SHA256 (frescobaldi-python-ly-v0.9.8_GH0.tar.gz) = bdd64fb947e8804cd7d1eedbd57552a0f1cd3411a7a063ad5ec39db78e8303ad
-SIZE (frescobaldi-python-ly-v0.9.8_GH0.tar.gz) = 250615
+TIMESTAMP = 1736379852
+SHA256 (frescobaldi-python-ly-v0.9.9_GH0.tar.gz) = b64983ab44ec7e580451b8fb929da5d981c3d4a633612239e86ce515c1dd7899
+SIZE (frescobaldi-python-ly-v0.9.9_GH0.tar.gz) = 252206
diff --git a/print/py-python-ly/files/patch-pyproject.toml b/print/py-python-ly/files/patch-pyproject.toml
deleted file mode 100644
index 5a5df8d89eaf..000000000000
--- a/print/py-python-ly/files/patch-pyproject.toml
+++ /dev/null
@@ -1,9 +0,0 @@
---- pyproject.toml.orig 2023-06-16 13:33:13 UTC
-+++ pyproject.toml
-@@ -1,5 +1,5 @@
- [build-system]
--requires = ["setuptools >= 64"]
-+requires = ["setuptools >= 63"]
- build-backend = "setuptools.build_meta"
-
- [project]
diff --git a/print/py-relatorio/Makefile b/print/py-relatorio/Makefile
index 8d58f745783d..969f1379a763 100644
--- a/print/py-relatorio/Makefile
+++ b/print/py-relatorio/Makefile
@@ -1,6 +1,6 @@
PORTNAME= relatorio
PORTVERSION= 0.11.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= print python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -16,7 +16,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Genshi>=0.5:textproc/py-genshi@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml5>=2.0:devel/py-lxml5@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml>=2.0:devel/py-lxml@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517 unittest
diff --git a/print/py-reportlab/Makefile b/print/py-reportlab/Makefile
index 1d8563ae250d..3be026d12358 100644
--- a/print/py-reportlab/Makefile
+++ b/print/py-reportlab/Makefile
@@ -1,5 +1,6 @@
PORTNAME= reportlab
DISTVERSION= 4.4.3
+PORTREVISION= 1
CATEGORIES= print python
MASTER_SITES= PYPI:python \
LOCAL/bofh/print/py-${PORTNAME}:pfbfer
diff --git a/print/py-ufolib2/Makefile b/print/py-ufolib2/Makefile
index 8fc731d55431..a41f3692700b 100644
--- a/print/py-ufolib2/Makefile
+++ b/print/py-ufolib2/Makefile
@@ -1,10 +1,9 @@
PORTNAME= ufolib2
-PORTVERSION= 0.16.0
+PORTVERSION= 0.18.1
PORTREVISION= 1
CATEGORIES= print python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
-DISTNAME= ufoLib2-${PORTVERSION}
MAINTAINER= sunpoet@FreeBSD.org
COMMENT= UFO font processing library
@@ -13,11 +12,11 @@ WWW= https://github.com/fonttools/ufoLib2
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=45:devel/py-setuptools@${PY_FLAVOR} \
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.2:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}setuptools-scm>=6.2:devel/py-setuptools-scm@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=22.1.0:devel/py-attrs@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}fonttools>=4.0.0:print/py-fonttools@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}fonttools>=4.58.0:print/py-fonttools@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517
@@ -25,15 +24,16 @@ USE_PYTHON= autoplist concurrent pep517
NO_ARCH= yes
OPTIONS_DEFINE= CONVERTERS JSON LXML MSGPACK
+OPTIONS_DEFAULT=CONVERTERS JSON LXML MSGPACK
CONVERTERS_DESC=Converters support
LXML_DESC= XML support
MSGPACK_DESC= MessagePack support
-CONVERTERS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cattrs>=1.10.0:devel/py-cattrs@${PY_FLAVOR}
-JSON_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cattrs>=22.2.0:devel/py-cattrs@${PY_FLAVOR} \
+CONVERTERS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cattrs>=25.1.1:devel/py-cattrs@${PY_FLAVOR}
+JSON_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cattrs>=25.1.1:devel/py-cattrs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}orjson>=0:devel/py-orjson@${PY_FLAVOR}
-LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
-MSGPACK_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cattrs>=22.2.0:devel/py-cattrs@${PY_FLAVOR} \
+LXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
+MSGPACK_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cattrs>=25.1.1:devel/py-cattrs@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}msgpack>=0:devel/py-msgpack@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/print/py-ufolib2/distinfo b/print/py-ufolib2/distinfo
index 8ed62091e474..8d2b91eb3b4a 100644
--- a/print/py-ufolib2/distinfo
+++ b/print/py-ufolib2/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1691070156
-SHA256 (ufoLib2-0.16.0.tar.gz) = 49f0dc7f72ccacfe7faefe0d53d37971d45664d8b0563ef36956fa7bfa55a2bd
-SIZE (ufoLib2-0.16.0.tar.gz) = 97499
+TIMESTAMP = 1757120802
+SHA256 (ufolib2-0.18.1.tar.gz) = 7de0efcc361c573f2537ee7ceabdb3bc64b19b61304cfa25e828caa7db8ae1a4
+SIZE (ufolib2-0.18.1.tar.gz) = 97870
diff --git a/print/py-ufolib2/files/patch-pyproject.toml b/print/py-ufolib2/files/patch-pyproject.toml
new file mode 100644
index 000000000000..d0d80fb29a6a
--- /dev/null
+++ b/print/py-ufolib2/files/patch-pyproject.toml
@@ -0,0 +1,11 @@
+--- pyproject.toml.orig 2025-07-10 11:40:29 UTC
++++ pyproject.toml
+@@ -3,7 +3,7 @@ build-backend = "setuptools.build_meta"
+ build-backend = "setuptools.build_meta"
+
+ [project]
+-name = "ufoLib2"
++name = "ufolib2"
+ description = "ufoLib2 is a UFO font processing library."
+ authors = [{ name = "Adrien Tétar", email = "adri-from-59@hotmail.fr" }]
+ license = { text = "Apache 2.0" }
diff --git a/print/py-ufolib2/files/patch-setup.cfg b/print/py-ufolib2/files/patch-setup.cfg
deleted file mode 100644
index 77d11e68fa6e..000000000000
--- a/print/py-ufolib2/files/patch-setup.cfg
+++ /dev/null
@@ -1,9 +0,0 @@
---- setup.cfg.orig 2023-05-30 16:54:03 UTC
-+++ setup.cfg
-@@ -1,5 +1,5 @@
- [metadata]
--name = ufoLib2
-+name = ufolib2
- description = ufoLib2 is a UFO font processing library.
- long_description = file: README.md
- long_description_content_type = text/markdown
diff --git a/print/py-ufomerge/Makefile b/print/py-ufomerge/Makefile
index 9a101a0fe9d1..4a1732b762f6 100644
--- a/print/py-ufomerge/Makefile
+++ b/print/py-ufomerge/Makefile
@@ -1,5 +1,5 @@
PORTNAME= ufomerge
-PORTVERSION= 1.9.5
+PORTVERSION= 1.9.6
CATEGORIES= print python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/print/py-ufomerge/distinfo b/print/py-ufomerge/distinfo
index 3f5036f1382e..1d1060db7ca0 100644
--- a/print/py-ufomerge/distinfo
+++ b/print/py-ufomerge/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752266160
-SHA256 (ufomerge-1.9.5.tar.gz) = 26eebbdd364b7a99141fd93114cabc722fa42265b0f8ed9ee70b5fee9d482400
-SIZE (ufomerge-1.9.5.tar.gz) = 24897
+TIMESTAMP = 1757120804
+SHA256 (ufomerge-1.9.6.tar.gz) = 29e7b245f9ba8d792309c9d9509149eb34057164e9af4e61bbf644c6e498c380
+SIZE (ufomerge-1.9.6.tar.gz) = 24936
diff --git a/print/py-weasyprint/Makefile b/print/py-weasyprint/Makefile
index d70391610dd9..9e219f3638db 100644
--- a/print/py-weasyprint/Makefile
+++ b/print/py-weasyprint/Makefile
@@ -1,5 +1,6 @@
PORTNAME= weasyprint
PORTVERSION= 61.2
+PORTREVISION= 1
CATEGORIES= print python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/print/qpdf/Makefile b/print/qpdf/Makefile
index 40fe25a13592..b607c036aa6d 100644
--- a/print/qpdf/Makefile
+++ b/print/qpdf/Makefile
@@ -1,6 +1,6 @@
PORTNAME= qpdf
DISTVERSION= 11.10.1
-PORTEPOCH= 1
+PORTEPOCH= 2
CATEGORIES= print
MASTER_SITES= SF
diff --git a/print/qpdf/distinfo b/print/qpdf/distinfo
index fc3d03ecae12..8df4689252f2 100644
--- a/print/qpdf/distinfo
+++ b/print/qpdf/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1741995701
+TIMESTAMP = 1755739232
SHA256 (qpdf-11.10.1.tar.gz) = defca435cf57d26f8a0619864841aa21f5469fddc6eb5662f62d8443021c069d
SIZE (qpdf-11.10.1.tar.gz) = 19497326
diff --git a/print/qpdf/pkg-plist b/print/qpdf/pkg-plist
index 92d8ecc15b81..3758fc8d4556 100644
--- a/print/qpdf/pkg-plist
+++ b/print/qpdf/pkg-plist
@@ -43,8 +43,8 @@ include/qpdf/QPDFNameTreeObjectHelper.hh
include/qpdf/QPDFNumberTreeObjectHelper.hh
include/qpdf/QPDFObjGen.hh
include/qpdf/QPDFObject.hh
-include/qpdf/QPDFObjectHandle_future.hh
include/qpdf/QPDFObjectHandle.hh
+include/qpdf/QPDFObjectHandle_future.hh
include/qpdf/QPDFObjectHelper.hh
include/qpdf/QPDFOutlineDocumentHelper.hh
include/qpdf/QPDFOutlineObjectHelper.hh
diff --git a/print/rubygem-afm0/Makefile b/print/rubygem-afm0/Makefile
deleted file mode 100644
index 16c396be0789..000000000000
--- a/print/rubygem-afm0/Makefile
+++ /dev/null
@@ -1,19 +0,0 @@
-PORTNAME= afm
-PORTVERSION= 0.2.2
-CATEGORIES= print rubygems
-MASTER_SITES= RG
-PKGNAMESUFFIX= 0
-
-MAINTAINER= ruby@FreeBSD.org
-COMMENT= Read AFM files and use the data conveniently
-WWW= https://github.com/halfbyte/afm
-
-LICENSE= MIT
-
-USES= gem
-
-NO_ARCH= yes
-
-PORTSCOUT= limit:^0\.
-
-.include <bsd.port.mk>
diff --git a/print/rubygem-afm0/distinfo b/print/rubygem-afm0/distinfo
deleted file mode 100644
index 467fe34a55f3..000000000000
--- a/print/rubygem-afm0/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1750933404
-SHA256 (rubygem/afm-0.2.2.gem) = c83e698e759ab0063331ff84ca39c4673b03318f4ddcbe8e90177dd01e4c721a
-SIZE (rubygem/afm-0.2.2.gem) = 17408
diff --git a/print/rubygem-afm0/pkg-descr b/print/rubygem-afm0/pkg-descr
deleted file mode 100644
index a1a720c81afe..000000000000
--- a/print/rubygem-afm0/pkg-descr
+++ /dev/null
@@ -1 +0,0 @@
-A simple library to read Adobe Font Metrics files and use the data conveniently
diff --git a/print/rubygem-pdf-reader/Makefile b/print/rubygem-pdf-reader/Makefile
index 50b7ebe4acd6..7a5d90101636 100644
--- a/print/rubygem-pdf-reader/Makefile
+++ b/print/rubygem-pdf-reader/Makefile
@@ -1,6 +1,5 @@
PORTNAME= pdf-reader
-PORTVERSION= 2.14.1
-PORTREVISION= 1
+PORTVERSION= 2.15.0
CATEGORIES= print rubygems
MASTER_SITES= RG
@@ -11,7 +10,7 @@ WWW= https://github.com/yob/pdf-reader
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
-RUN_DEPENDS= rubygem-afm0>=0.2.1<0.3:print/rubygem-afm0 \
+RUN_DEPENDS= rubygem-afm>=0.2.1<2:print/rubygem-afm \
rubygem-ascii85>=1.0<3.0:devel/rubygem-ascii85 \
rubygem-hashery>=2.0<3:devel/rubygem-hashery \
rubygem-ruby-rc4>=0:security/rubygem-ruby-rc4 \
diff --git a/print/rubygem-pdf-reader/distinfo b/print/rubygem-pdf-reader/distinfo
index 6ae80069493b..e9383df299f8 100644
--- a/print/rubygem-pdf-reader/distinfo
+++ b/print/rubygem-pdf-reader/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1738982914
-SHA256 (rubygem/pdf-reader-2.14.1.gem) = b45a4521c249a394ad7ad9e691bfd46d4d00998cfc4f019e4525afb4963b411b
-SIZE (rubygem/pdf-reader-2.14.1.gem) = 236032
+TIMESTAMP = 1757122064
+SHA256 (rubygem/pdf-reader-2.15.0.gem) = c5025750bec8de7b11cfd1d1ccc2b944d2782c3638cd15b5ee1531d1206c0886
+SIZE (rubygem/pdf-reader-2.15.0.gem) = 240640
diff --git a/print/rubygem-prawn-svg/Makefile b/print/rubygem-prawn-svg/Makefile
index 9bab3113e2f1..3ccadf156bfa 100644
--- a/print/rubygem-prawn-svg/Makefile
+++ b/print/rubygem-prawn-svg/Makefile
@@ -1,5 +1,5 @@
PORTNAME= prawn-svg
-PORTVERSION= 0.36.2
+PORTVERSION= 0.38.1
CATEGORIES= print rubygems
MASTER_SITES= RG
@@ -13,7 +13,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= rubygem-css_parser>=1.6<2:textproc/rubygem-css_parser \
rubygem-matrix>=0.4.2<0.5:math/rubygem-matrix \
rubygem-prawn>=0.11.1<3:print/rubygem-prawn \
- rubygem-rexml>=3.3.9<4:textproc/rubygem-rexml
+ rubygem-rexml>=3.4.2<4:textproc/rubygem-rexml
USES= gem
diff --git a/print/rubygem-prawn-svg/distinfo b/print/rubygem-prawn-svg/distinfo
index 39cfb4abebb2..cf8199066c1e 100644
--- a/print/rubygem-prawn-svg/distinfo
+++ b/print/rubygem-prawn-svg/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1738606619
-SHA256 (rubygem/prawn-svg-0.36.2.gem) = b87031f946b730e4802fda0054971f292f755aee81e7a21c0a71669c646a1c32
-SIZE (rubygem/prawn-svg-0.36.2.gem) = 295424
+TIMESTAMP = 1761447702
+SHA256 (rubygem/prawn-svg-0.38.1.gem) = d132fe70a49660633ac063d3d1297589e516c3f22fe1921ff186883aef7ea9aa
+SIZE (rubygem/prawn-svg-0.38.1.gem) = 301056
diff --git a/print/rubygem-prawn-svg036/Makefile b/print/rubygem-prawn-svg036/Makefile
new file mode 100644
index 000000000000..18016d268183
--- /dev/null
+++ b/print/rubygem-prawn-svg036/Makefile
@@ -0,0 +1,25 @@
+PORTNAME= prawn-svg
+PORTVERSION= 0.36.2
+CATEGORIES= print rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= 036
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= SVG renderer for Prawn PDF library
+WWW= https://github.com/mogest/prawn-svg
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= rubygem-css_parser>=1.6<2:textproc/rubygem-css_parser \
+ rubygem-matrix>=0.4.2<0.5:math/rubygem-matrix \
+ rubygem-prawn>=0.11.1<3:print/rubygem-prawn \
+ rubygem-rexml>=3.3.9<4:textproc/rubygem-rexml
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^0\.36\.
+
+.include <bsd.port.mk>
diff --git a/print/rubygem-prawn-svg036/distinfo b/print/rubygem-prawn-svg036/distinfo
new file mode 100644
index 000000000000..39cfb4abebb2
--- /dev/null
+++ b/print/rubygem-prawn-svg036/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1738606619
+SHA256 (rubygem/prawn-svg-0.36.2.gem) = b87031f946b730e4802fda0054971f292f755aee81e7a21c0a71669c646a1c32
+SIZE (rubygem/prawn-svg-0.36.2.gem) = 295424
diff --git a/print/rubygem-prawn-svg036/pkg-descr b/print/rubygem-prawn-svg036/pkg-descr
new file mode 100644
index 000000000000..4239df2b8cfd
--- /dev/null
+++ b/print/rubygem-prawn-svg036/pkg-descr
@@ -0,0 +1,3 @@
+prawn-svg is an SVG renderer for the Prawn PDF library. This will take an SVG
+document as input and render it into your PDF. prawn-svg supports most but not
+all of the full SVG 1.1 specification.
diff --git a/print/scribus/Makefile b/print/scribus/Makefile
index e29fd7435b9a..ade198940245 100644
--- a/print/scribus/Makefile
+++ b/print/scribus/Makefile
@@ -1,13 +1,9 @@
PORTNAME= scribus
-DISTVERSION= 1.6.3
-PORTREVISION= 4
+DISTVERSION= 1.6.4
CATEGORIES= print editors
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}${PKGNAMESUFFIX}/${PORTVERSION}/ \
http://www.scribus.net/downloads/${PORTVERSION}/
-PATCH_SITES= https://github.com/scribusproject/scribus/commit/
-PATCHFILES= 3f0f902d6e47adb45d280947f448bcca6c4e2556.patch:-p1
-
MAINTAINER= pkubaj@FreeBSD.org
COMMENT= Comprehensive desktop publishing program
WWW= https://www.scribus.net/
diff --git a/print/scribus/distinfo b/print/scribus/distinfo
index af2a0346f5c1..ed6d4fcd555b 100644
--- a/print/scribus/distinfo
+++ b/print/scribus/distinfo
@@ -1,5 +1,3 @@
-TIMESTAMP = 1742846930
-SHA256 (scribus-1.6.3.tar.xz) = 0ae58ced410101e82655e3b4c20a070cf1767145ada233dcef7c20b8ba6bd487
-SIZE (scribus-1.6.3.tar.xz) = 74909384
-SHA256 (3f0f902d6e47adb45d280947f448bcca6c4e2556.patch) = 81c7641e583e1a5d48dde4e41922e646bdd0e5925bd74fb81aaeccc5d0ffab74
-SIZE (3f0f902d6e47adb45d280947f448bcca6c4e2556.patch) = 7944
+TIMESTAMP = 1760353387
+SHA256 (scribus-1.6.4.tar.xz) = 533be7af03acfaa736ec5f7a3fc2562abd200fef5ca2a7cdee02b5f44d61829e
+SIZE (scribus-1.6.4.tar.xz) = 74761856
diff --git a/print/scribus/pkg-plist b/print/scribus/pkg-plist
index c5f2e886f10e..cfe1dad6bd4e 100644
--- a/print/scribus/pkg-plist
+++ b/print/scribus/pkg-plist
@@ -3568,7 +3568,6 @@ share/pixmaps/scribus.png
%%DATADIR%%/translations/scribus.th_TH.qm
%%DATADIR%%/translations/scribus.tr.qm
%%DATADIR%%/translations/scribus.uk.qm
-%%DATADIR%%/translations/scribus.untranslated.qm
%%DATADIR%%/translations/scribus.zh_CN.qm
%%DATADIR%%/translations/scribus.zh_TW.qm
%%DATADIR%%/unicodenameslist.txt
diff --git a/print/sioyek/Makefile b/print/sioyek/Makefile
index 31a9f0361c10..604896c91836 100644
--- a/print/sioyek/Makefile
+++ b/print/sioyek/Makefile
@@ -1,7 +1,7 @@
PORTNAME= sioyek
DISTVERSIONPREFIX= v
DISTVERSION= 2.0.0.20250513
-PORTREVISION= 2
+PORTREVISION= 6
CATEGORIES= print
MAINTAINER= fuz@FreeBSD.org
diff --git a/print/tex-luatex/Makefile b/print/tex-luatex/Makefile
index 9edd11fa61c7..4f3b1e7b90cc 100644
--- a/print/tex-luatex/Makefile
+++ b/print/tex-luatex/Makefile
@@ -1,5 +1,6 @@
PORTNAME= luatex
DISTVERSION= ${TEXLIVE_VERSION}
+PORTREVISION= 1
CATEGORIES= print
MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/
PKGNAMEPREFIX= tex-
@@ -34,18 +35,15 @@ CONFIGURE_ARGS+= ${EXCLUDE_ENGINES:S/^/--disable-/} \
--enable-luahbtex \
--enable-luajithbtex \
--with-system-zlib \
- --with-system-zziplib \
- CC="${CC}" \
- CXX="${CXX}"
+ --with-system-zziplib
+CONFIGURE_ENV+= ${MAKE_ENV}
+
.for L in cairo freetype2 gmp graphite2 harfbuzz kpathsea libpng mpfr pixman ptexenc teckit
CONFIGURE_ARGS+= --with-$L-include=${LOCALBASE}/include \
--with-$L-libdir=${LOCALBASE}/lib \
--with-system-$L
.endfor
-PIE_UNSAFE= yes
-MAKE_JOBS_UNSAFE= yes
-
EXTRACT_AFTER_ARGS= ${EXTRACT_FILES:S,^,${DISTNAME}/,}
EXTRACT_FILES= build-aux libs/xpdf libs/lua53 libs/luajit \
libs/pplib texk/web2c
diff --git a/print/tex-xetex/Makefile b/print/tex-xetex/Makefile
index 40f368c99d95..bc5b4d39c817 100644
--- a/print/tex-xetex/Makefile
+++ b/print/tex-xetex/Makefile
@@ -1,5 +1,6 @@
PORTNAME= xetex
DISTVERSION= ${TEXLIVE_VERSION}
+PORTREVISION= 1
CATEGORIES= print
MASTER_SITES= TEX_CTAN/systems/texlive/${TEXLIVE_YEAR}/
PKGNAMEPREFIX= tex-
@@ -30,9 +31,7 @@ USE_TEX= kpathsea web2c formats fmtutil dvipdfmx
USE_XORG= pixman
GNU_CONFIGURE= yes
-CONFIGURE_ARGS+=CC="${CC}" \
- CXX="${CXX}" \
- ${EXCLUDE_ENGINES:S/^/--disable-/} \
+CONFIGURE_ARGS+=${EXCLUDE_ENGINES:S/^/--disable-/} \
--enable-xetex \
--with-system-freetype2 \
--with-freetype2-includes=${LOCALBASE}/include/freetype2 \
@@ -46,13 +45,13 @@ CONFIGURE_ARGS+=CC="${CC}" \
--with-teckit-libdir=${LOCALBASE}/lib \
--with-system-zziplib \
--with-system-zlib
+CONFIGURE_ENV+= ${MAKE_ENV}
.for L in cairo gmp kpathsea libpng mpfr pixman ptexenc icu
CONFIGURE_ARGS+=--with-system-$L \
--with-$L-include=${LOCALBASE}/include \
--with-$L-libdir=${LOCALBASE}/lib
.endfor
-PIE_UNSAFE= yes
MAKE_JOBS_UNSAFE= yes
CPPFLAGS= -I${LOCALBASE}/include/harfbuzz
diff --git a/print/texinfo/Makefile b/print/texinfo/Makefile
index 37c98f07f066..bf26207beaef 100644
--- a/print/texinfo/Makefile
+++ b/print/texinfo/Makefile
@@ -1,6 +1,5 @@
PORTNAME= texinfo
-PORTVERSION= 7.1
-PORTREVISION= 11
+PORTVERSION= 7.2
PORTEPOCH= 1
CATEGORIES= print
MASTER_SITES= GNU \
@@ -28,7 +27,10 @@ RUN_DEPENDS= p5-Locale-libintl>=0:devel/p5-Locale-libintl \
USES= charsetfix cpe gmake iconv:wchar_t libtool ncurses perl5 tar:xz tex
-CONFIGURE_ARGS= --with-external-libintl-perl \
+CONFIGURE_ARGS= --enable-perl-api-texi-build \
+ --enable-perl-xs \
+ --enable-xs-perl-libintl \
+ --with-external-libintl-perl \
--with-external-Text-Unidecode \
--with-external-Unicode-EastAsianWidth
CONFIGURE_ENV= PERL_EXT_CC="${CC}"
@@ -45,7 +47,7 @@ CPE_VENDOR= gnu
HTMLXREF_CNF_RELDATE= 20250626
TEXI2DVI_RELDATE= 20241223
TEXI2PDF_RELDATE= 20241223
-TEXINFO_TEX_RELDATE= 20250618
+TEXINFO_TEX_RELDATE= 20250711
OPTIONS_DEFINE= NLS
OPTIONS_SUB= yes
@@ -59,7 +61,4 @@ post-patch:
@${INSTALL_SCRIPT} ${DISTDIR}/${DIST_SUBDIR}/texi2dvi-${TEXI2DVI_RELDATE} ${WRKSRC}/util/texi2dvi
@${INSTALL_SCRIPT} ${DISTDIR}/${DIST_SUBDIR}/texi2pdf-${TEXI2PDF_RELDATE} ${WRKSRC}/util/texi2pdf
-post-install:
- ${INSTALL_DATA} ${WRKSRC}/util/htmlxref.cnf ${STAGEDIR}${DATADIR}
-
.include <bsd.port.mk>
diff --git a/print/texinfo/distinfo b/print/texinfo/distinfo
index 427cd742a758..543c2eb3b70f 100644
--- a/print/texinfo/distinfo
+++ b/print/texinfo/distinfo
@@ -1,11 +1,11 @@
-TIMESTAMP = 1750959228
-SHA256 (texinfo/texinfo-7.1.tar.xz) = deeec9f19f159e046fdf8ad22231981806dac332cc372f1c763504ad82b30953
-SIZE (texinfo/texinfo-7.1.tar.xz) = 5545720
+TIMESTAMP = 1753796018
+SHA256 (texinfo/texinfo-7.2.tar.xz) = 0329d7788fbef113fa82cb80889ca197a344ce0df7646fe000974c5d714363a6
+SIZE (texinfo/texinfo-7.2.tar.xz) = 6408432
SHA256 (texinfo/htmlxref.cnf-20250626) = 3ffecc1d8941daabd2eec93697a3ced02d68d84425dba6a2e693dffd67cb5cb8
SIZE (texinfo/htmlxref.cnf-20250626) = 769
SHA256 (texinfo/texi2dvi-20241223) = cb8a5fed2801350c093aa5ccb082aa9c315717ec3e818ef5ec70c367d7232b9e
SIZE (texinfo/texi2dvi-20241223) = 52733
SHA256 (texinfo/texi2pdf-20241223) = cf2aa65ef663811755ff97caffb0e6df7cd65d605779996272fcae8f1886c705
SIZE (texinfo/texi2pdf-20241223) = 1163
-SHA256 (texinfo/texinfo.tex-20250618) = c29c86a0777885ee0da75e1aef8c131070731d1a71d36d2a2767a37f8dd442af
-SIZE (texinfo/texinfo.tex-20250618) = 389333
+SHA256 (texinfo/texinfo.tex-20250711) = 7cbd00e6f00472ce064fdd0a54ceb6d1697069813241e8e9e5c54048db019456
+SIZE (texinfo/texinfo.tex-20250711) = 390002
diff --git a/print/texinfo/files/patch-tp-Texinfo-XS-Makefile.in b/print/texinfo/files/patch-tp-Texinfo-XS-Makefile.in
deleted file mode 100644
index 80b652fb2558..000000000000
--- a/print/texinfo/files/patch-tp-Texinfo-XS-Makefile.in
+++ /dev/null
@@ -1,13 +0,0 @@
-% sed -i .orig '/rm -f $$(DESTDIR)/ s|$| $(DESTDIR)$(xsdir)/XSParagraph.*|' tp/Texinfo/XS/Makefile.in
-
---- tp/Texinfo/XS/Makefile.in.orig 2022-11-30 17:07:57 UTC
-+++ tp/Texinfo/XS/Makefile.in
-@@ -2326,7 +2326,7 @@ uninstall-am: uninstall-dist_modulesDATA uninstall-xsL
- # otherwise dynamic libraries aren't built (a libtool bug). Work around
- # this by deleting it after it's installed.
- install-data-hook:
-- rm -f $(DESTDIR)$(xsdir)/TestXS*
-+ rm -f $(DESTDIR)$(xsdir)/TestXS* $(DESTDIR)$(xsdir)/XSParagraph.*
- @HOST_NEEDS_NO_UNDEFINED_TRUE@ # The -no-undefined flag is for MS-Windows. See info node
- @HOST_NEEDS_NO_UNDEFINED_TRUE@ # `(gnulib)Libtool and Windows'. The -L and -l options after it show
- @HOST_NEEDS_NO_UNDEFINED_TRUE@ # where to find the undefined symbols.
diff --git a/print/texinfo/files/patch-tp-Texinfo-XS-parsetexi-api.c b/print/texinfo/files/patch-tp-Texinfo-XS-parsetexi-api.c
deleted file mode 100644
index 5a96d391bec7..000000000000
--- a/print/texinfo/files/patch-tp-Texinfo-XS-parsetexi-api.c
+++ /dev/null
@@ -1,12 +0,0 @@
---- tp/Texinfo/XS/parsetexi/api.c.orig 2021-03-12 20:48:49 UTC
-+++ tp/Texinfo/XS/parsetexi/api.c
-@@ -25,7 +25,9 @@
-
- #undef context
-
-+#ifdef ENABLE_NLS
- #include <libintl.h>
-+#endif
-
- #include <stdlib.h>
- #include <stdio.h>
diff --git a/print/texinfo/pkg-plist b/print/texinfo/pkg-plist
index e2b1c2ac4004..fd2280690c46 100644
--- a/print/texinfo/pkg-plist
+++ b/print/texinfo/pkg-plist
@@ -7,15 +7,30 @@ bin/texi2any
bin/texi2dvi
bin/texi2pdf
bin/texindex
-lib/texinfo/MiscXS.so
-lib/texinfo/Parsetexi.so
-%%NLS%%share/locale/ca.us-ascii/LC_MESSAGES/texinfo_document.mo
+lib/texi2any/ConvertXS.so
+lib/texi2any/DocumentXS.so
+lib/texi2any/IndicesXS.so
+lib/texi2any/MiscXS.so
+lib/texi2any/Parsetexi.so
+lib/texi2any/StructuringTransfoXS.so
+lib/texi2any/XSParagraph.so
+lib/texi2any/libtexinfo-convert.so
+lib/texi2any/libtexinfo-convert.so.0
+lib/texi2any/libtexinfo-convert.so.0.0.0
+lib/texi2any/libtexinfo-convertxs.so
+lib/texi2any/libtexinfo-convertxs.so.0
+lib/texi2any/libtexinfo-convertxs.so.0.0.0
+lib/texi2any/libtexinfo.so
+lib/texi2any/libtexinfo.so.0
+lib/texi2any/libtexinfo.so.0.0.0
+lib/texi2any/libtexinfoxs.so
+lib/texi2any/libtexinfoxs.so.0
+lib/texi2any/libtexinfoxs.so.0.0.0
%%NLS%%share/locale/ca/LC_MESSAGES/texinfo.mo
%%NLS%%share/locale/ca/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/cs/LC_MESSAGES/texinfo.mo
%%NLS%%share/locale/cs/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/da/LC_MESSAGES/texinfo.mo
-%%NLS%%share/locale/de.us-ascii/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/de/LC_MESSAGES/texinfo.mo
%%NLS%%share/locale/de/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/el/LC_MESSAGES/texinfo.mo
@@ -37,17 +52,15 @@ lib/texinfo/Parsetexi.so
%%NLS%%share/locale/it/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/ja/LC_MESSAGES/texinfo.mo
%%NLS%%share/locale/ka/LC_MESSAGES/texinfo.mo
+%%NLS%%share/locale/ka/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/nb/LC_MESSAGES/texinfo.mo
+%%NLS%%share/locale/nb/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/nl/LC_MESSAGES/texinfo.mo
%%NLS%%share/locale/nl/LC_MESSAGES/texinfo_document.mo
-%%NLS%%share/locale/no.us-ascii/LC_MESSAGES/texinfo_document.mo
-%%NLS%%share/locale/pl.iso-8859-2/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/pl/LC_MESSAGES/texinfo.mo
%%NLS%%share/locale/pl/LC_MESSAGES/texinfo_document.mo
-%%NLS%%share/locale/pt.us-ascii/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/pt/LC_MESSAGES/texinfo.mo
%%NLS%%share/locale/pt/LC_MESSAGES/texinfo_document.mo
-%%NLS%%share/locale/pt_BR.us-ascii/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/pt_BR/LC_MESSAGES/texinfo.mo
%%NLS%%share/locale/pt_BR/LC_MESSAGES/texinfo_document.mo
%%NLS%%share/locale/ro/LC_MESSAGES/texinfo.mo
@@ -78,55 +91,67 @@ share/man/man1/texi2pdf.1.gz
share/man/man1/texindex.1.gz
share/man/man5/info.5.gz
share/man/man5/texinfo.5.gz
-%%DATADIR%%/DebugTexinfo/DebugTree.pm
-%%DATADIR%%/Pod-Simple-Texinfo/Pod/Simple/Texinfo.pm
-%%DATADIR%%/Texinfo/Commands.pm
-%%DATADIR%%/Texinfo/Commands.pod
-%%DATADIR%%/Texinfo/Common.pm
-%%DATADIR%%/Texinfo/Config.pm
-%%DATADIR%%/Texinfo/Convert/Converter.pm
-%%DATADIR%%/Texinfo/Convert/DocBook.pm
-%%DATADIR%%/Texinfo/Convert/HTML.pm
-%%DATADIR%%/Texinfo/Convert/IXIN.pm
-%%DATADIR%%/Texinfo/Convert/IXINSXML.pm
-%%DATADIR%%/Texinfo/Convert/Info.pm
-%%DATADIR%%/Texinfo/Convert/LaTeX.pm
-%%DATADIR%%/Texinfo/Convert/NodeNameNormalization.pm
-%%DATADIR%%/Texinfo/Convert/Paragraph.pm
-%%DATADIR%%/Texinfo/Convert/ParagraphNonXS.pm
-%%DATADIR%%/Texinfo/Convert/PlainTexinfo.pm
-%%DATADIR%%/Texinfo/Convert/Plaintext.pm
-%%DATADIR%%/Texinfo/Convert/Texinfo.pm
-%%DATADIR%%/Texinfo/Convert/TexinfoMarkup.pm
-%%DATADIR%%/Texinfo/Convert/TexinfoSXML.pm
-%%DATADIR%%/Texinfo/Convert/TexinfoXML.pm
-%%DATADIR%%/Texinfo/Convert/Text.pm
-%%DATADIR%%/Texinfo/Convert/TextContent.pm
-%%DATADIR%%/Texinfo/Convert/Unicode.pm
-%%DATADIR%%/Texinfo/Convert/Utils.pm
-%%DATADIR%%/Texinfo/Documentlanguages.pm
-%%DATADIR%%/Texinfo/MiscXS.pm
-%%DATADIR%%/Texinfo/ModulePath.pm
-%%DATADIR%%/Texinfo/Parser.pm
-%%DATADIR%%/Texinfo/ParserNonXS.pm
-%%DATADIR%%/Texinfo/Report.pm
-%%DATADIR%%/Texinfo/Structuring.pm
-%%DATADIR%%/Texinfo/Transformations.pm
-%%DATADIR%%/Texinfo/Translations.pm
-%%DATADIR%%/Texinfo/XS/parsetexi/Parsetexi.pm
-%%DATADIR%%/Texinfo/XSLoader.pm
-%%DATADIR%%/ext/epub3.pm
-%%DATADIR%%/ext/highlight_syntax.pm
-%%DATADIR%%/ext/latex2html.pm
-%%DATADIR%%/ext/tex4ht.pm
+share/texi2any/Pod-Simple-Texinfo/Pod/Simple/Texinfo.pm
+share/texi2any/Texinfo/Commands.pm
+share/texi2any/Texinfo/Commands.pod
+share/texi2any/Texinfo/Common.pm
+share/texi2any/Texinfo/Config.pm
+share/texi2any/Texinfo/Convert/ConvertXS.pm
+share/texi2any/Texinfo/Convert/Converter.pm
+share/texi2any/Texinfo/Convert/DocBook.pm
+share/texi2any/Texinfo/Convert/HTML.pm
+share/texi2any/Texinfo/Convert/IXIN.pm
+share/texi2any/Texinfo/Convert/IXINSXML.pm
+share/texi2any/Texinfo/Convert/Info.pm
+share/texi2any/Texinfo/Convert/LaTeX.pm
+share/texi2any/Texinfo/Convert/NodeNameNormalization.pm
+share/texi2any/Texinfo/Convert/Paragraph.pm
+share/texi2any/Texinfo/Convert/ParagraphNonXS.pm
+share/texi2any/Texinfo/Convert/PlainTexinfo.pm
+share/texi2any/Texinfo/Convert/Plaintext.pm
+share/texi2any/Texinfo/Convert/Texinfo.pm
+share/texi2any/Texinfo/Convert/TexinfoMarkup.pm
+share/texi2any/Texinfo/Convert/TexinfoSXML.pm
+share/texi2any/Texinfo/Convert/TexinfoXML.pm
+share/texi2any/Texinfo/Convert/Text.pm
+share/texi2any/Texinfo/Convert/TextContent.pm
+share/texi2any/Texinfo/Convert/Unicode.pm
+share/texi2any/Texinfo/Convert/Utils.pm
+share/texi2any/Texinfo/DebugTree.pm
+share/texi2any/Texinfo/Document.pm
+share/texi2any/Texinfo/DocumentXS.pm
+share/texi2any/Texinfo/Documentlanguages.pm
+share/texi2any/Texinfo/HTMLData.pm
+share/texi2any/Texinfo/Indices.pm
+share/texi2any/Texinfo/IndicesXS.pm
+share/texi2any/Texinfo/ManipulateTree.pm
+share/texi2any/Texinfo/MiscXS.pm
+share/texi2any/Texinfo/ModulePath.pm
+share/texi2any/Texinfo/Options.pm
+share/texi2any/Texinfo/OutputUnits.pm
+share/texi2any/Texinfo/Parser.pm
+share/texi2any/Texinfo/ParserNonXS.pm
+share/texi2any/Texinfo/Report.pm
+share/texi2any/Texinfo/StructTransfXS.pm
+share/texi2any/Texinfo/Structuring.pm
+share/texi2any/Texinfo/Tests.pm
+share/texi2any/Texinfo/Transformations.pm
+share/texi2any/Texinfo/Translations.pm
+share/texi2any/Texinfo/XS/parsetexi/Parsetexi.pm
+share/texi2any/Texinfo/XSLoader.pm
+share/texi2any/ext/epub3.pm
+share/texi2any/ext/highlight_syntax.pm
+share/texi2any/ext/latex2html.pm
+share/texi2any/ext/tex4ht.pm
+share/texi2any/init/book.pm
+share/texi2any/init/chm.pm
+share/texi2any/init/documentation_examples.pm
+share/texi2any/init/html32.pm
+share/texi2any/init/sc_formatting_with_css.pm
+share/texi2any/js/info.css
+share/texi2any/js/info.js
+share/texi2any/js/modernizr.js
%%DATADIR%%/htmlxref.cnf
-%%DATADIR%%/init/book.pm
-%%DATADIR%%/init/chm.pm
-%%DATADIR%%/init/documentation_examples.pm
-%%DATADIR%%/init/html32.pm
-%%DATADIR%%/js/info.css
-%%DATADIR%%/js/info.js
-%%DATADIR%%/js/modernizr.js
%%DATADIR%%/texindex.awk
%%DATADIR%%/texinfo.dtd
%%TEXMFDIR%%/tex/generic/epsf/epsf.tex
diff --git a/print/xreader/Makefile b/print/xreader/Makefile
index 64ddbc76ce5f..da93da8ba0c7 100644
--- a/print/xreader/Makefile
+++ b/print/xreader/Makefile
@@ -1,6 +1,5 @@
PORTNAME= xreader
-PORTVERSION= 4.2.3
-PORTREVISION= 3
+PORTVERSION= 4.2.6
CATEGORIES= print gnome
DIST_SUBDIR= gnome
diff --git a/print/xreader/distinfo b/print/xreader/distinfo
index 356dcf66b04e..8225dc157a1a 100644
--- a/print/xreader/distinfo
+++ b/print/xreader/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1734392857
-SHA256 (gnome/linuxmint-xreader-4.2.3_GH0.tar.gz) = 57d8c20eddcb90ba768f386c444519b5f330c1aacfcaa3deb33db1ad1d7bbd6d
-SIZE (gnome/linuxmint-xreader-4.2.3_GH0.tar.gz) = 2214140
+TIMESTAMP = 1752934660
+SHA256 (gnome/linuxmint-xreader-4.2.6_GH0.tar.gz) = 0a02051fed4919f0accb891b4374adf6431e1d2acd788ef553a6629c878d6a39
+SIZE (gnome/linuxmint-xreader-4.2.6_GH0.tar.gz) = 2213498
diff --git a/print/yatex/Makefile b/print/yatex/Makefile
index 159a2a7cc488..058c3a2c147f 100644
--- a/print/yatex/Makefile
+++ b/print/yatex/Makefile
@@ -1,6 +1,6 @@
PORTNAME= yatex
DISTVERSION= 1.83
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES?= print elisp
MASTER_SITES= https://www.yatex.org/
PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX}