Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Intel One Mono #1275

Merged
merged 11 commits into from
Jul 26, 2023
Merged

Add Intel One Mono #1275

merged 11 commits into from
Jul 26, 2023

Conversation

sorashi
Copy link
Contributor

@sorashi sorashi commented Jun 1, 2023

Description

Added and patched Intel One Mono

Requirements / Checklist

What does this Pull Request (PR) do?

  • add Intel One Mono unpatched font
  • add license & readme
  • rename the resulting font due to OTF license reserved font name requirement
    • had to edit font-patcher
    • I chose the name Intone Mono, but I'm open to suggestions
  • patch the font
  • update readme
  • provide an update script for the font

How should this be manually tested?

Any background context you can provide?

What are the relevant tickets (if any)?

Closes #1238

Screenshots (if appropriate or helpful)

@Finii
Copy link
Collaborator

Finii commented Jun 2, 2023

Thanks for the PR!

The patched fonts are generated by the workflow and should not be included in the PR (but you do not need to remove them now).
I just looked superficially, but it seems the RFN clause is missing in the FontnameTools. --makegroups 0 is of course not what we want for release fonts. But also no worrys.

My 'problem' with this font (and similar PRs) is mostly that it consists of a very large number of styles and weights. I am not sure the more exotic ones are of any particular interest. That would not matter if they are not in the repo, which is growing exponentially.

We need to somehow change the release mechanism, as detailed elsewhere. There are some constrains and problems that are not solved yet. One way could be to put the patched fonts in the release artifact but NOT in the repo. That means people need to download the release zip (or even better the xz) of a desired font and can not select just one font file. Do you think that is an acceptable course? Already existing fonts will of course stay in the repo, also patched, at least for the time being.

And generally, at the moment I mostly try to fix the last 1 or 2 remaining issues of v3.0.1 to get v3.0.2 out. Only if we got a stable v3.0 out I will have time to add fonts or stuff for a v3.1.

@Finii
Copy link
Collaborator

Finii commented Jun 2, 2023

I chose the name Intone Mono, but I'm open to suggestions

I like that name :-D

@sorashi
Copy link
Contributor Author

sorashi commented Jun 2, 2023

it consists of a very large number of styles and weights

True, it would make sense to include just Regular, Bold, Italic and maybe Bold-Italic

That means people need to download the release zip (or even better the xz) of a desired font and can not select just one font file. Do you think that is an acceptable course?

Absolutely, that seems very reasonable to me. Build artifacts should not be tracked in the repo of course, I just thought you did it like this, because other fonts are tracked. Now I see that they are committed by CI, if I understand correctly.

And generally, at the moment I mostly try to fix the last 1 or 2 remaining issues of v3.0.1 to get v3.0.2 out. Only if we got a stable v3.0 out I will have time to add fonts or stuff for a v3.1.

Sure, I will try to keep an eye out and later rebase and update this PR if needed. Or just ping me. :)

Other than that, is there anything I should do at the moment, concerning this PR?

@Finii
Copy link
Collaborator

Finii commented Jun 2, 2023

Everything find, no need to do anything.

Now I see that they are committed by CI

Yes. In principle I would like to change (i.e. drop) that, but some repackagers fetch the fonts for historic reasons from there. We had some discussions on that. For sure we can drop that for newly added fonts ;-D

And in principle the whole setup should change, separating the patcher from the prepatched fonts, and we already have the organization set up ... but that is very slow going.

I hope to release 3.0.2 this weekend, then we could discuss release modus of operandi ;-) if you are interested. One problem is that I can discuss all the thing just we me, which makes no lively discussions :-D

@Finii
Copy link
Collaborator

Finii commented Jun 2, 2023

and later rebase

There is no need to rebase (and if, I will do it right before merging). As this mainly just adds new files there will be no conflicts and the few text lines that need to be added can be done manually. There are also changes in the gh-pages that need to be performed in sync anyhow, I believe. The font-example needs to be installed there. Or did I automatize that already? 🤔 Does not matter.

Edit:

Obviously not...

image

@yooakim
Copy link

yooakim commented Jun 8, 2023

Thanks for putting in work here @sorashi and @Finii - I look forward to be able to use the Intel One Mono with glyphs and more :-)

@pkking
Copy link

pkking commented Jul 26, 2023

Any progress on this PR?

@Finii
Copy link
Collaborator

Finii commented Jul 26, 2023

Thanks @pkking; in principle this is very easy to do, and iirc the v3.1.0 is due already.

But I still have a problem with the release model. What we did in the past just does not scale - the in-repo patched fonts are a burden for everyone.

One possible solution is this:

  • Put the unpatched fonts in the repo (as before)
  • Create the release with the release archives per font (i.e. IntoneMono.zip and IntoneMono.tar.zx) on the release page
  • in patched/fonts/IntelMono/ we have no individual fonts but just a page that directs people to download the release archive (with link)
  • That means no possibility to download individual patched fonts from the Github repo pages

Any opinions (from anyone) on this are welcome!

sorashi and others added 6 commits July 26, 2023 08:06
[why]
Patching process is unknown.
Patching has to be done by the CI.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
No functional change

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
We do not (try to) copy the upstream webpage, but instead link it.

Also add version information (well, there is no difference between
1.2.0 and 1.2.1, but 1.2.1 is the latest right now).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
-makegroups 0 is not a valid naming mode for releases. The mode is
deprecated and will be removed. Furthermore the mode can produce broken
patched fonts.

[how]
Mode 1 and 2 are too long for some NFP in the family name, so use mode 4.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
@Finii
Copy link
Collaborator

Finii commented Jul 26, 2023

We need to adapt...
image

[why]
Verbs have been dropped from Inkscape with version 1.2

[how]
Use actions instead. I'm not sure how well that works with older
Inkscapes now, but ... sigh

[note]
Also add missing helper for font filenames for Intel One Mono.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
@Finii
Copy link
Collaborator

Finii commented Jul 26, 2023

Rebase on master - force push.

Change some minor details. Most notably is the naming change; it will get the abbreviated NF instead of the more lengthy Nerd Font added to the name to comply with name length limits.

@Finii Finii added this to the v3.1.0 milestone Jul 26, 2023
* The programmingfonts.org link was wrong
* The description has to be in abbreviated style

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
We have a lot duplicated code here.

[how]
As the to and to-dir never changes we can assign that outside all the if
cases.
We can also always just add the extra information to the (only one,
independent of number of incoming data files) output after all the ifs.

Note that this also adds the extra information if we had no readme at
all. Previous code would not add anything to that (for whatever reason).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
Some fonts will not be released to the repo; but only exist patched as
release atrifacts. This needs adapted readmes.

[how]
If such a font is encountered direct links to the release archives are
put into the readme file.

Decide based on information in the font.json file.

If no info is found in the json file (i.e. all existing fonts) it
defaults to release-also-to-repo behavior.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
@Finii
Copy link
Collaborator

Finii commented Jul 26, 2023

I guess we can pull this now and out-of-sync release the font to see and check if this is a good way for future releases.

Will manually simulate the release process.

@Finii Finii merged commit 548cd4e into ryanoasis:master Jul 26, 2023
@Finii
Copy link
Collaborator

Finii commented Jul 26, 2023

Looks like it works...

image

@Finii
Copy link
Collaborator

Finii commented Jul 26, 2023

@allcontributors please add @sorashi for code

@allcontributors
Copy link
Contributor

@Finii

I've put up a pull request to add @sorashi! 🎉

@Finii
Copy link
Collaborator

Finii commented Jul 26, 2023

Note to self: The download button could be split in halves, one zip and one xz 🤔

@Finii
Copy link
Collaborator

Finii commented Jul 26, 2023

Whoever is interested, Cask is in the pipeline: Homebrew/homebrew-cask-fonts#7971

All other packagers probably are triggered only by a new Nerd Fonts release.
I 'smuggled' the font in with the old 3.0.2 release 😬 We have no good workflow for new fonts 🤔

@pkking
Copy link

pkking commented Jul 29, 2023

@Finii Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Intel One Mono font
4 participants