Bug 284597 - [NEW PORT] x11-fonts/aporetic: Custom Iosevka fonts with modified style and metrics
Summary: [NEW PORT] x11-fonts/aporetic: Custom Iosevka fonts with modified style and m...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Robert Clausecker
URL: https://github.com/protesilaos/aporetic
Keywords:
Depends on:
Blocks:
 
Reported: 2025-02-05 20:36 UTC by Zoltán Király
Modified: 2025-03-16 10:24 UTC (History)
2 users (show)

See Also:


Attachments
Patch that adds the x11-fonts/aporetic port (4.77 KB, patch)
2025-02-05 20:36 UTC, Zoltán Király
no flags Details | Diff
[2025-02-23] Patch that adds the x11-fonts/aporetic port (4.76 KB, patch)
2025-02-22 22:18 UTC, Zoltán Király
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Zoltán Király 2025-02-05 20:36:34 UTC
Created attachment 257274 [details]
Patch that adds the x11-fonts/aporetic port

The submitted patch adds the x11-fonts/aporetic port. I tested the port in Poudriere and installed it directly as well.
Comment 1 Zoltán Király 2025-02-14 11:05:01 UTC
I kindly ask that during the review of this patch, the DISTVERSION be updated to 1.1.0, and the GH_TUPLE entry (protesilaos:aporetic:1.0.0) be changed to 1.1.0 as well. This is because version 1.1.0 was released a short time after I submitted the patch. Thank you.
Comment 2 Robert Clausecker freebsd_committer freebsd_triage 2025-02-18 15:46:42 UTC
Should we perhaps make this port the successor of x11-fonts/iosevka-comfy?  After
all, it's basically the same font, just with a different name.

CC'ed the maintainer of that port.
Comment 3 Denis Shaposhnikov 2025-02-18 15:57:25 UTC
(In reply to Robert Clausecker from comment #2)
> make this port the successor of x11-fonts/iosevka-comfy?

They are different. Aporetic doesn't include wide variants. From upsteam's blog post:

"I no longer provide “fixed” and “wide” variants."

https://protesilaos.com/codelog/2025-02-04-aporetic-fonts-1-0-0/
Comment 4 Zoltán Király 2025-02-18 15:59:33 UTC
That would be ideal. Unfortunately, I'm not the maintainer of the Iosevka Comfy port. However, the issue is that Iosevka Comfy violates the SIL license, so it should be removed from the ports collection.


Protesilaos, the author of aporetic, mentions this:

QUOTE:

> Legal reason for the change
> “Iosevka” is a reserved name. I had not realised this until I reread the SIL Open Font License, Version 1.1, specifically:
> 3 No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users.

SOURCE: https://protesilaos.com/codelog/2025-02-04-aporetic-fonts-1-0-0/


I chose not to contact the maintainer of the Iosevka Comfy port, as I was concerned he might take my suggestion to remove the port negatively. But now that you mention it, yes, it should definitely replace Iosevka Comfy, especially to avoid license issues.
Comment 5 Zoltán Király 2025-02-18 16:04:38 UTC
> They are different. Aporetic doesn't include wide variants. From upsteam's blog post:

>"I no longer provide “fixed” and “wide” variants."

The problem lies in the license.

Aporetic is the right option. It is the one that respects the SIL license.
Comment 6 Robert Clausecker freebsd_committer freebsd_triage 2025-02-18 16:06:21 UTC
(In reply to Denis Shaposhnikov from comment #3)

That doesn't mean they're not the same, it just means that some bits were discontinued.  Note that upstream having removed features is usually not a reason not to update a port.(In reply to Denis Shaposhnikov from comment #3)

If x11-fonts/iosevka-comfy is in violation of the license, I agree that it should be removed in favour of the renamed port.
Comment 7 Zoltán Király 2025-02-18 16:10:03 UTC
> That doesn't mean they're not the same, it just means that some bits were discontinued.  Note that upstream having removed features is usually not a reason not to update a port.(In reply to Denis Shaposhnikov from comment #3)

That's exactly how it is, as you say. Both "Aporetic" and "Iosevka Comfy" were developed by Protesilaos. Now, Iosevka Comfy has been abandoned, so even if it remains, the port will be outdated. The best option would be to replace it, and those who really need those wide variants can install them manually.
Comment 8 Robert Clausecker freebsd_committer freebsd_triage 2025-02-18 16:12:19 UTC
Denis, are you ok if I remove your port in favour of this one and declare it to be a move in MOVED?
Comment 9 Denis Shaposhnikov 2025-02-18 16:14:03 UTC
(In reply to Robert Clausecker from comment #8)
> are you ok if I remove your port

Of cause I'm not. As I explained Aporetic doesn't include wide and fixed variants.
Comment 10 Robert Clausecker freebsd_committer freebsd_triage 2025-02-18 16:16:14 UTC
(In reply to Denis Shaposhnikov from comment #9)

Once again, that doesn't matter.  If a port removes some feature in version x, we don't stop at version x-1 just to preserve that feature.  I consider this to be an update of the port with a rename.

Is there a particular reason why the wide and fixed variants are so important for you?  Perhaps you could ask upstream to re-add them?
Comment 11 Zoltán Király 2025-02-18 16:26:21 UTC
Denis, I can give you the maintainership of Aporetic if you want, if that's what's holding you back from making a decision, just let me know.

But as Robert says, it's mentioned, I think, in the FreeBSD Porters Handbook that decisions are made by those with commit access. It's a difficult situation, I know, that's why I didn't want to contact you. I know it's unpleasant when a port is taken, and your work is appreciated. No one knew about this license issue.
Comment 12 Denis Shaposhnikov 2025-02-18 16:30:19 UTC
(In reply to Robert Clausecker from comment #10)
> Is there a particular reason why the wide and fixed variants are so important for you?

Yes. I use it. May be somebody else use it too.

> Perhaps you could ask upstream to re-add them?

May be. But I don't see a reason for that, because x11-fonts/iosevka-comfy is alive, maintained and downloadable. It just works.
Comment 13 Robert Clausecker freebsd_committer freebsd_triage 2025-02-18 16:37:02 UTC
(In reply to Denis Shaposhnikov from comment #12)

> May be. But I don't see a reason for that, because x11-fonts/iosevka-comfy is alive, maintained and downloadable. It just works.

It's also in license violation, so at the least I would have to mark it as RESTRICTED, which means that no binary packages are going to be generated.

Please ask upstream to include the two removed font variants and link the bug report here.  I suppose that would make everybody happy.
Comment 14 Zoltán Király 2025-02-22 22:18:31 UTC
Created attachment 257755 [details]
[2025-02-23] Patch that adds the x11-fonts/aporetic port

The patch marked with [2025-02-23] replaces the previous one posted on 2025-02-05. I made the following changes:

- Updated DISTVERSION from 1.0.0 to 1.1.0
- Replaced GH_TUPLE with GH_ACCOUNT

Aporetic 1.1.0 (changelog)
--------------------------

This release includes two stylistic corrections that pertain to Aporetic Serif and Aporetic Serif Mono.

- The first change is to the slanted (italic) form of the letter t. Before, it was mistakenly set to have a curved, upward-facing bottom stroke, which would clash with the flat bottom of i and l. Now the slanted t has a flat bottom as intended. The upright (roman) variants are always flat in this regard.

- The second change is to the letter m in both upright and slanted forms. Before, the m would have a top left serif, as intended, but not a bottom right tail. The tail is a feature of other glyphs that need to have such a style, like a, h, n, u: it imposes a proper rhythm together with the rest of the serif details. Now the m has its missing bottom right tail, making everything consistent.

[ The m has a shorter middle leg in all the “mono” families” to improve readability, especially at small point sizes. The proportionately spaced fonts use a normal middle leg, as m is naturally wider there and thus is already perfectly legible. The other details are the same. ]

SOURCE: https://protesilaos.com/codelog/2025-02-12-aporetic-fonts-version-1-1-0/
Comment 15 Robert Clausecker freebsd_committer freebsd_triage 2025-02-26 15:36:59 UTC
(In reply to Denis Shaposhnikov from comment #9)

Have you followed up and inquired with upstream?  With no further response from you, I would go ahead and mark iosevka-comfy as RESTRICTED (meaning no binary packages are generated) due to the license issue and add this port.
Comment 16 Denis Shaposhnikov 2025-02-26 15:43:47 UTC
(In reply to Robert Clausecker from comment #15)
> I would go ahead and mark iosevka-comfy as RESTRICTED (meaning no binary 
> packages are generated) due to the license issue and add this port.

I'm OK with that.
Comment 17 commit-hook freebsd_committer freebsd_triage 2025-03-16 10:21:21 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=dff274ea28279fe00752f6ccd6043c417bc6254c

commit dff274ea28279fe00752f6ccd6043c417bc6254c
Author:     Zoltán Király <ports@zoltankiraly.com>
AuthorDate: 2025-02-22 22:06:34 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2025-03-16 10:19:25 +0000

    x11-fonts/aporetic: Custom Iosevka fonts with modified style and metrics

    Customised build of the Iosevka typeface, with a consistent rounded style and
    overrides for almost all individual glyphs in both roman (upright) and italic
    (slanted) variants.

    WWW: https://github.com/protesilaos/aporetic

    PR:             284597

 x11-fonts/Makefile                 |  1 +
 x11-fonts/aporetic/Makefile (new)  | 24 ++++++++++++++++++++++++
 x11-fonts/aporetic/distinfo (new)  |  3 +++
 x11-fonts/aporetic/pkg-descr (new) |  3 +++
 x11-fonts/aporetic/pkg-plist (new) | 32 ++++++++++++++++++++++++++++++++
 5 files changed, 63 insertions(+)
Comment 18 commit-hook freebsd_committer freebsd_triage 2025-03-16 10:21:28 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=fc467fa00c914023f1c387aa3a5baea1cd6546a9

commit fc467fa00c914023f1c387aa3a5baea1cd6546a9
Author:     Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2025-02-26 15:49:47 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2025-03-16 10:19:26 +0000

    x11-fonts/iosevka-comfy: mark as RESTRICTED

    Upstream believes the font to not be distributable as it has the same
    name as the original font it is derived from.  This violates § 3 of the
    ISL Open Font License 1.1.

    The renamed font is distributable and provided in x11-fonts/aporetic,
    but has reduced variants.  Maintainer has requested that this port
    remain for use until all variants are added.

    PR:             284597
    MFH:            2025Q1

 x11-fonts/iosevka-comfy/Makefile | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
Comment 19 commit-hook freebsd_committer freebsd_triage 2025-03-16 10:22:34 UTC
A commit in branch 2025Q1 references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=aeaeb7b0dc3e7fd3c509753b5e583b237fb34019

commit aeaeb7b0dc3e7fd3c509753b5e583b237fb34019
Author:     Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2025-02-26 15:49:47 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2025-03-16 10:22:02 +0000

    x11-fonts/iosevka-comfy: mark as RESTRICTED

    Upstream believes the font to not be distributable as it has the same
    name as the original font it is derived from.  This violates § 3 of the
    ISL Open Font License 1.1.

    The renamed font is distributable and provided in x11-fonts/aporetic,
    but has reduced variants.  Maintainer has requested that this port
    remain for use until all variants are added.

    PR:             284597
    MFH:            2025Q1
    (cherry picked from commit fc467fa00c914023f1c387aa3a5baea1cd6546a9)

 x11-fonts/iosevka-comfy/Makefile | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
Comment 20 Robert Clausecker freebsd_committer freebsd_triage 2025-03-16 10:24:44 UTC
Thank you for your contribution.
Sorry for the slow commit.