Hi, I've been speaking with Manuel (in CC) and we've identified some tidy-ups that can be done on our iosevka port. The diff below is the first.
The iosevka-fixed-slab SUBDIR packages what upstream calls a "sub-package", but all the other SUBDIRs package a top-level upstream package. For details of top-level and sub- iosevka packages look at: https://github.com/be5invis/Iosevka/blob/main/doc/PACKAGE-LIST.md We want consistency. I don't think it's worth packaging at such a fine-grained level as sub-packages, so I propose that each SUBDIR should be a top-level iosevka package. Therefore, this diff removes the `fixed-slab` SUBDIR in favour of a `slab` SUBDIR, and does all the @pkgpath and quirks magic to ensure it upgrades seamlessly: ``` # pkg_info | grep slab iosevka-fixed-slab-26.0.1 slender typeface for code (fixed slab variant) # ls iosevka-26.0.1.tgz iosevka-etoile-26.0.1.tgz quirks-6.191.tgz iosevka-aile-26.0.1.tgz iosevka-slab-26.0.1p0.tgz # PKG_PATH=$PWD pkg_add -u -Dunsigned iosevka-fixed-slab quirks-6.189->6.191: ok iosevka-fixed-slab-26.0.1->iosevka-slab-26.0.1p0: ok Read shared items: ok Updating font cache: ok ``` Please check my reasoning for this change carefully. OK? Index: fonts/iosevka-fonts/Makefile =================================================================== RCS file: /cvs/ports/fonts/iosevka-fonts/Makefile,v diff -u -p -r1.6 Makefile --- fonts/iosevka-fonts/Makefile 11 Nov 2023 09:02:29 -0000 1.6 +++ fonts/iosevka-fonts/Makefile 16 Nov 2023 21:58:21 -0000 @@ -5,17 +5,21 @@ # glyphs to be shared, thus saving space) each variant contains all of the # various "spacing variants". # -# For details on variants and spacing variants, see: -# https://github.com/be5invis/Iosevka/releases -# # When adding a new variant, please use a SUBDIR whose name matches the suffix # on the DISTFILE, e.g. 'SUBDIR += slab' for 'ttc-iosevka-slab-x.y.z.zip'. # Similarly for the PKGNAME suffix. +# +# Please also make sure that new SUBDIRs package a top-level upstream package, +# and not a sub-package. e.g. we have a SUBDIR for the top-level 'slab' package +# and not for any sub-packages of 'slab', like 'fixed-slab' or 'term-slab'. +# +# For details on variants and sub-packages, see: +# https://github.com/be5invis/Iosevka/blob/main/doc/PACKAGE-LIST.md SUBDIR = SUBDIR += aile SUBDIR += default SUBDIR += etoile -SUBDIR += fixed-slab +SUBDIR += slab .include <bsd.port.subdir.mk> Index: fonts/iosevka-fonts/fixed-slab/Makefile =================================================================== RCS file: fonts/iosevka-fonts/fixed-slab/Makefile diff -N fonts/iosevka-fonts/fixed-slab/Makefile --- fonts/iosevka-fonts/fixed-slab/Makefile 8 Aug 2023 11:01:13 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,9 +0,0 @@ -COMMENT = slender typeface for code (fixed slab variant) -PKGNAME = iosevka-fixed-slab-${V} -DISTFILES = ttc-sgr-iosevka-fixed-slab-${V}${EXTRACT_SUFX} - -do-install: - ${INSTALL_DATA_DIR} ${FONTDIR} - ${INSTALL_DATA} ${WRKDIST}/*.ttc ${FONTDIR} - -.include <bsd.port.mk> Index: fonts/iosevka-fonts/fixed-slab/distinfo =================================================================== RCS file: fonts/iosevka-fonts/fixed-slab/distinfo diff -N fonts/iosevka-fonts/fixed-slab/distinfo --- fonts/iosevka-fonts/fixed-slab/distinfo 8 Aug 2023 11:01:13 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,2 +0,0 @@ -SHA256 (ttc-sgr-iosevka-fixed-slab-26.0.1.zip) = cqEnSt1I3xyacxTjZUCEmo8M7KFw7MudTY7D7D5UnQM= -SIZE (ttc-sgr-iosevka-fixed-slab-26.0.1.zip) = 93695504 Index: fonts/iosevka-fonts/fixed-slab/pkg/DESCR =================================================================== RCS file: fonts/iosevka-fonts/fixed-slab/pkg/DESCR diff -N fonts/iosevka-fonts/fixed-slab/pkg/DESCR --- fonts/iosevka-fonts/fixed-slab/pkg/DESCR 8 Aug 2023 11:01:13 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,3 +0,0 @@ -Coders' typeface, built from code. - -This package is for the fixed slab variant. Index: fonts/iosevka-fonts/fixed-slab/pkg/PLIST =================================================================== RCS file: fonts/iosevka-fonts/fixed-slab/pkg/PLIST diff -N fonts/iosevka-fonts/fixed-slab/pkg/PLIST --- fonts/iosevka-fonts/fixed-slab/pkg/PLIST 8 Aug 2023 11:01:13 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,11 +0,0 @@ -share/fonts/ -@fontdir share/fonts/iosevka/ -share/fonts/iosevka/sgr-iosevka-fixed-slab-bold.ttc -share/fonts/iosevka/sgr-iosevka-fixed-slab-extrabold.ttc -share/fonts/iosevka/sgr-iosevka-fixed-slab-extralight.ttc -share/fonts/iosevka/sgr-iosevka-fixed-slab-heavy.ttc -share/fonts/iosevka/sgr-iosevka-fixed-slab-light.ttc -share/fonts/iosevka/sgr-iosevka-fixed-slab-medium.ttc -share/fonts/iosevka/sgr-iosevka-fixed-slab-regular.ttc -share/fonts/iosevka/sgr-iosevka-fixed-slab-semibold.ttc -share/fonts/iosevka/sgr-iosevka-fixed-slab-thin.ttc Index: fonts/iosevka-fonts/slab/Makefile =================================================================== RCS file: fonts/iosevka-fonts/slab/Makefile diff -N fonts/iosevka-fonts/slab/Makefile --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ fonts/iosevka-fonts/slab/Makefile 16 Nov 2023 21:41:27 -0000 @@ -0,0 +1,10 @@ +COMMENT = slender typeface for code (slab variant) +PKGNAME = iosevka-slab-${V} +DISTFILES = ttc-iosevka-slab-${V}${EXTRACT_SUFX} +REVISION = 0 + +do-install: + ${INSTALL_DATA_DIR} ${FONTDIR} + ${INSTALL_DATA} ${WRKDIST}/*.ttc ${FONTDIR} + +.include <bsd.port.mk> Index: fonts/iosevka-fonts/slab/distinfo =================================================================== RCS file: fonts/iosevka-fonts/slab/distinfo diff -N fonts/iosevka-fonts/slab/distinfo --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ fonts/iosevka-fonts/slab/distinfo 16 Nov 2023 20:37:03 -0000 @@ -0,0 +1,2 @@ +SHA256 (ttc-iosevka-slab-26.0.1.zip) = D/eU0IbtPQSKive0iLQ+ffTfrAfjDvTfvNGvQPWJy2E= +SIZE (ttc-iosevka-slab-26.0.1.zip) = 100746070 Index: fonts/iosevka-fonts/slab/pkg/DESCR =================================================================== RCS file: fonts/iosevka-fonts/slab/pkg/DESCR diff -N fonts/iosevka-fonts/slab/pkg/DESCR --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ fonts/iosevka-fonts/slab/pkg/DESCR 16 Nov 2023 21:50:17 -0000 @@ -0,0 +1,3 @@ +Coders' typeface, built from code. + +This package is for the slab (monospace, slab-serif) variant. Index: fonts/iosevka-fonts/slab/pkg/PLIST =================================================================== RCS file: fonts/iosevka-fonts/slab/pkg/PLIST diff -N fonts/iosevka-fonts/slab/pkg/PLIST --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ fonts/iosevka-fonts/slab/pkg/PLIST 16 Nov 2023 20:52:11 -0000 @@ -0,0 +1,13 @@ +@conflict iosevka-fixed-slab-* +@pkgpath fonts/iosevka-fonts/fixed-slab +share/fonts/ +@fontdir share/fonts/iosevka/ +share/fonts/iosevka/iosevka-slab-bold.ttc +share/fonts/iosevka/iosevka-slab-extrabold.ttc +share/fonts/iosevka/iosevka-slab-extralight.ttc +share/fonts/iosevka/iosevka-slab-heavy.ttc +share/fonts/iosevka/iosevka-slab-light.ttc +share/fonts/iosevka/iosevka-slab-medium.ttc +share/fonts/iosevka/iosevka-slab-regular.ttc +share/fonts/iosevka/iosevka-slab-semibold.ttc +share/fonts/iosevka/iosevka-slab-thin.ttc Index: devel/quirks/Makefile =================================================================== RCS file: /cvs/ports/devel/quirks/Makefile,v diff -u -p -r1.1574 Makefile --- devel/quirks/Makefile 15 Nov 2023 13:39:27 -0000 1.1574 +++ devel/quirks/Makefile 16 Nov 2023 20:40:03 -0000 @@ -3,7 +3,7 @@ CATEGORIES = devel databases DISTFILES = # API.rev -PKGNAME = quirks-6.190 +PKGNAME = quirks-6.191 PKG_ARCH = * MAINTAINER = Marc Espie <es...@openbsd.org> Index: devel/quirks/files/Quirks.pm =================================================================== RCS file: /cvs/ports/devel/quirks/files/Quirks.pm,v diff -u -p -r1.1586 Quirks.pm --- devel/quirks/files/Quirks.pm 15 Nov 2023 13:39:27 -0000 1.1586 +++ devel/quirks/files/Quirks.pm 16 Nov 2023 20:39:02 -0000 @@ -801,6 +801,7 @@ my $stem_extensions = { 'py-intervaltree' => 'py3-intervaltree', 'py-sortedcontainers' => 'py3-sortedcontainers', 'py-future' => 'py3-future', + 'iosevka-fixed-slab' => 'iosevka-slab', }; my $obsolete_reason = {}; -- Best Regards Edd Barrett https://www.theunixzoo.co.uk