HackGenNerd インストールエラー [v2.1.0]
mzch opened this issue · 19 comments
ご報告ありがとうございます。
数点確認させてください。
- v2.1.0 系の全ファミリー (HacGen, HackGenNerd, HackGen35, HackGen35Nerd) すべてで同様の「'post'テーブルの使用性」エラーの状況ですか?
- v2.0.0 ではインストールできますか?
・全ファミリーで同じエラーです。
・v2.0.0 では問題ありません。
・全ファミリーで同じエラーです。
・v2.0.0 では問題ありません。
思い当たるところを変更し、再ビルドしてみました。
取り急ぎ、以下に再ビルドした HackGen をアップしました。お手数ですが、再度お試しいただけますでしょうか?
ダウンロードしてインストールを試みましたが、HackGenNerd, HackGen35Nerd がインストールされません。
OS: macOS 10.15.6
それは奇妙ですね。
先ほどの再ビルドで、v2.0.0 と v2.1.0 におけるフォントファイル内の post テーブルは、同じ内容になったことを確認できたため、エラー情報から察するに解消されるかと思ったのですが…
また、「HackGen/HackGen35 がインストールできて HackGenNerd/HackGen35Nerd がインストールできない」という点から、追加合成した Nerd Fonts 周りを疑いたくなりますが、今回の v2.0.0 -> v2.1.0 において Nerd Fonts に関わる部分の修正は加えていないため、それも考えにくいです。
申し訳ないことに当方に Mac 環境が無いため、再現がとれず少々手詰まりになってしまいました。
もし他に出ているエラー情報などあれば、ご教示いただければと思います。
あとこちらで出来ることとして、v2.0.0 まで使っていたビルド環境を何とか動かす、というのは時間があるときに試してみようかと考えています。 (仮想環境の Ubuntu 18 を使っていたのですが、ディスク周りの調子が悪く、ビルド中に意図せず失敗してしまうので、新たにビルド環境を作り直したのです)
あとこちらで出来ることとして、v2.0.0 まで使っていたビルド環境を何とか動かす、というのは時間があるときに試してみようかと考えています。
旧ビルド環境が動かなかった原因が分かったため、一旦そちらで v2.1.0 をビルドしてみました。
旧環境でビルドしたフォントファイルは、以下にアップしています。
またお試しいただければ幸いです。
https://github.com/yuru7/HackGen/tree/issue%2312/build_by_old-env
切り分けメモ
前提:
- OS: macOS 10.15.6
- v2.1.0 では
'post'テーブルの使用性
エラーが起こる。 - v2.0.0 はインストール可能である。
- ビルド環境を移行したことにより、一部のビルドツールのバージョンアップが掛かっている。
- fonttools を、旧環境に合わせ Python 3 系から Python 2 系のものにすることで、post テーブルの中身が v2.0.0 と v2.1.0 とで差分無しとなった。
v2.0.0 と v2.1.0 の差異について
- 独自の濁音グリフを追加した。
- post テーブルの変更に最も関係しそうだが、fonttools を Python 2 系にしたことで post テーブルの差分が無くなったため、関係しないと見られる。
- HackGen/HackGenNerd において基底部から Y 方向への +、- の高さ比率を最適化した。
- fonttools を Python 2 系に戻して再ビルドしたものが、 HackGenNerd は相変わらずインストール不可であったものの、HackGen ではインストールできたため、HackGen/HackGenNerd 共通で行っている当変更が原因ではないと見られる。
- ビルド環境を変更 (VirtualBox -> Hyper-V) した
- マシンそのものの変更による影響? ⇒検証中...
- 各ビルドツールのマイナーバージョンの差異による影響? ⇒追って検証する
エラーログに以下が出力されていました。
- FontBook
could not activate font (locally): Error Domain=com.apple.CoreText.CTFontManagerErrorDomain Code=103 "1個のファイルは認識される、またはサポートされているフォントファイルフォーマットではありません。" UserInfo={NSLocalizedDescription=1個のファイルは認識される、またはサポートされているフォントファイルフォーマットではありません。, CTFontManagerErrorFontURLs=(
"file:///Volumes/Storage%20HD/Downloads/Fonts/%E6%97%A5%E6%9C%AC%E8%AA%9E/HackGenNerd_v2.1.0/HackGenNerdConsole-Bold.ttf"
), NSLocalizedFailureReason=フォントを登録できませんでした。}
これはリリースページに掲載されている v2.1.0 (このスレッドで再ビルドしたもの ではない) をインストールしようとした際のエラーでしょうか?
取り急ぎ、以下に再ビルドした HackGen をアップしました。お手数ですが、再度お試しいただけますでしょうか?
ダウンロードしてインストールを試みましたが、HackGenNerd, HackGen35Nerd がインストールされません。
この再ビルドした HackGenNerd, HackGen35Nerd をインストールしようとした際にも何かエラーログは出ていましたか?
https://github.com/yuru7/HackGen/tree/issue%2312/build_by_old-env からダウンロードしたフォントで試した結果です。
HackGen, HackGen35, HackGenNerd, HackGen35Nerd すべてインストールできません。
リリース版の HackGen, HackGen35 v2.1.0 は正常にインストールできるので、不思議ではあるのですが…
すみません。ちょっとややこしくしてしまったので、改めて確認させてください。
以下の認識で合っていますか?
正規リリース版 v2.1.0 (https://github.com/yuru7/HackGen/releases/tag/v2.1.0)
⇒全ファミリー (HackGen, HackGen35, HackGenNerd, HackGen35Nerd) インストール不可
新ビルド環境で post テーブルを修正し再ビルドした v2.1.0 (https://github.com/yuru7/HackGen/tree/issue%2312/build)
⇒HackGen, HackGen35 はインストール可。HackGenNerd, HackGen35Nerd はインストール不可。
旧ビルド環境で再ビルドした v2.1.0 (https://github.com/yuru7/HackGen/tree/issue%2312/build_by_old-env)
⇒全ファミリー (HackGen, HackGen35, HackGenNerd, HackGen35Nerd) インストール不可
ああ、ややこしくしてすみません。
正規リリース版 v2.1.0 (https://github.com/yuru7/HackGen/releases/tag/v2.1.0)
⇒HackGen, HackGen35 ⇒ インストール可, HackGenNerd, HackGen35Nerd ⇒ インストール不可
新ビルド環境で post テーブルを修正し再ビルドした v2.1.0 (https://github.com/yuru7/HackGen/tree/issue%2312/build)
⇒全ファミリー (HackGen, HackGen35, HackGenNerd, HackGen35Nerd) インストール不可
旧ビルド環境で再ビルドした v2.1.0 (https://github.com/yuru7/HackGen/tree/issue%2312/build_by_old-env)
⇒全ファミリー (HackGen, HackGen35, HackGenNerd, HackGen35Nerd) インストール不可
これは奇妙ですね…。
v2.0.0 -> v2.1.0 のアップデートの過程で最もビルド環境 (マシンとビルドツール) に差異があった正規リリース版の HackGen, HackGen35 はインストールでき、それ以外の環境でビルドしたものは全てインストールできなかったということですね。
調べてみると環境によって失敗するケースもあるようで、 mzch さんの環境固有の可能性もあるかと考えています。
せめて、他の環境でも起きるか、といった観点で他の方のインストール成否も伺えればいいのですが…。
ちなみに効果があるかは分かりませんが、下記のようなトラブルシュートもあるようです。よろしければお試しください。(もう試されていたら、すみません)
私も同様のエラーが出て HackGenNerd_v2.1.0.zip 内のフォントをインストールできませんでしたので、ご報告いたします。
状況
v2.0.0
- https://github.com/yuru7/HackGen/releases/tag/v2.0.0
- HackGenNerd_v2.0.0.zip 🆗 ✔️
- HackGen_v2.0.0.zip 🆗 ✔️
v2.1.0
- https://github.com/yuru7/HackGen/releases/tag/v2.1.0
- HackGenNerd_v2.1.0.zip 🆖 🙅♂️
- エラー内容は @mzch さんの #12 (comment) と同様です
- HackGen_v2.1.0.zip 🆗 ✔️
- HackGenNerd_v2.1.0.zip 🆖 🙅♂️
issue%2312/build
issue%2312/build_by_old-env
環境
- macOS 10.15.5
特記事項
- Font Book.app で一旦HackGenの名を関するフォントをアンインストールしてから、インストールしたいフォントファイルをFont Book.app にDrag and Dropしてインストールしました
@blueberrystream
ご報告ありがとうございます!
issue%2312/build
(新ビルド環境で post テーブルを修正した版) のものがインストール可となった、ということですね。それならば理論上の解消方法が正しかったということになるので、とても朗報となります。
(本題とは関係ないですが、絵文字で OK/NG 表現するの分かりやすいですね)
Font Book.app で一旦HackGenの名を関するフォントをアンインストールしてから、インストールしたいフォントファイルをFont Book.app にDrag and Dropしてインストールしました
とのことですので、同様の作業をしたうえで「すべてインストール可」との報告のあった https://github.com/yuru7/HackGen/tree/issue%2312/build で試していただければ幸いです。
すみません。リポジトリを clone して、フォントをコピーしたら以下も正常にインストールできました。
https://github.com/yuru7/HackGen/tree/issue%2312/build
https://github.com/yuru7/HackGen/tree/issue%2312/build_by_old-env
Web からダイレクトにダウンロードしようとして失敗していたようです…
皆さま
ご報告、並びに検証のご協力ありがとうございました。
当初報告された post テーブルのエラーの修正方法も判明しましたので、そちらを修正したバージョンを v2.1.1 として近くリリースしたいと思います。
v2.1.1 をリリースしましたのでクローズとします。
ご対応、ありがとうございました🙇♂️