macOS Monterey

macOS Monterey

- H.Ogawa の投稿
返信数: 8
時期macOS Montereyが発表になりましたが、メジャーヴァージョンNo.が12になるようです。

cgk-gs-integrated-macos.plなど、ヴァージョンチェックして処理を分岐させているようなものでは対処が必要になるかもしれません。
H.Ogawa への返信

Re: macOS Monterey

- aminophen の投稿
> cjk-gs-integrated-macos.pl

とりあえずこちらで対処してみたつもりですが,
私自身は macOS 11.0 すら持っていないので試せません。

試せる方がいらっしゃれば,動作確認をお願いしたいです。テスト方法は
https://github.com/texjporg/cjk-gs-support/pull/46
を参考にしてください。
aminophen への返信

Re: macOS Monterey

- H.Ogawa の投稿
早速ありがとうございます。
私もMontereyのβは手に入れてないのですぐには試せませんが、これで大丈夫だと思います。
他に、対処が必要なものってありそうでしょうか?
cjk-gs-integrated本体の方のチェックは既に

$macos_ver_major>=11

になっているので、いまのままで通ります。
H.Ogawa への返信

Re: macOS Monterey

- H.Ogawa の投稿
tlcontribから落ちてくるものに、まだこの修正が反映されていないようです。
H.Ogawa への返信

Re: macOS Monterey

- Hashi shi の投稿
先月、新しいMacBook Proを購入してTeX Live 2021をインストールした際に、ヒラギノが使えなかったのでこちらにたどり着きました。
テスト結果は以下の通りです。

~/work/cjk-gs-support $ perl cjk-gs-integrate-macos.pl --strict -psname --dry-run
Warning: macOS 12.0 is untested.
cjk-gs-integrate: reading font database ...
cjk-gs-integrate: checking for files ...
cjk-gs-integrate [WARNING]: zrlistttc check failed for /Library/Fonts/A-OTF-RyuminPr6N-Regular.otf: please report to the author!
cjk-gs-integrate: searching for Ghostscript resource
cjk-gs-integrate: output is going to /opt/homebrew/share/ghostscript/9.55.0/Resource
cjk-gs-integrate: generating links and snippets for CID fonts ...
cjk-gs-integrate: generating links, snippets and cidfmap.local for non-CID fonts ...
cjk-gs-integrate: generating snippets and cidfmap.aliases for font aliases ...
cjk-gs-integrate: finished
~/work/cjk-gs-support $ perl cjk-gs-integrate-macos.pl --link-t
exmf=aaa --output=bbb
Warning: macOS 12.0 is untested.
cjk-gs-integrate: reading font database ...
cjk-gs-integrate: checking for files ...
cjk-gs-integrate: output is going to bbb
cjk-gs-integrate: generating links and snippets for CID fonts ...
cjk-gs-integrate: generating links, snippets and cidfmap.local for non-CID fonts ...
cjk-gs-integrate: adding cidfmap.local to cidfmap file ...
cjk-gs-integrate: generating snippets and cidfmap.aliases for font aliases ...
cjk-gs-integrate: adding cidfmap.aliases to cidfmap file ...
cjk-gs-integrate: running mktexlsr ...
mktexlsr: /usr/local/texlive/2021/texmf-config: directory not writable. Skipping...
mktexlsr: /usr/local/texlive/2021/texmf-dist: directory not writable. Skipping...
mktexlsr: /usr/local/texlive/2021/texmf-var: directory not writable. Skipping...
mktexlsr: /usr/local/texlive/texmf-local: directory not writable. Skipping...
mktexlsr: Done.
cjk-gs-integrate: finished
~/work/cjk-gs-support $ ls -lR aaa bbb > tmp.txt

cjk-gs-integrate-macos.plをこちらのものに置き換えて、今では無事にヒラギノが使えています。

H.Ogawa への返信

Re: macOS Monterey

- H.Ogawa の投稿
いまTeXLive2022をパッケージング中ですが、
tlcontribから落ちてくるcjk-gs-integrate-macosは、まだ

elsif ($macos_ver_major==11)



elsif ($macos_ver_major>=11)

に修正されたものに差し変わっていないようです。こちらではひとまず手修正したものにしますが、対応の方、よろしくお願いいたします。
aminophen への返信

Re: macOS Monterey

- 和田 勇 の投稿

sw_vers の使われ方を一応チェックしていたのですが、今回の対応は OK だとおもいます。

実質三つですがチェックしていたのは以下です。

 /usr/local/texlive/2021/bin/universal-darwin/cjk-gs-integrate
(/usr/local/texlive/2021/texmf-dist/scripts/cjk-gs-integrate/cjk-gs-integrate.pl) 上記の実体
 /usr/local/texlive/2021/texmf-dist/scripts/ptex-fontmaps/kanji-config-updmap.pl
 /usr/local/texlive/2021/tlpkg/TeXLive/TLUtils.pm

現状も数年先程度以降も問題なく動作すると思いますが、一個気になる箇所があります。

       TLUtils.pm
       408:    my $mactex_darwin = 14;
       420:    if ($os_major >= 11 || $os_minor >= $mactex_darwin) {

420行目の 後半の or の判定は Mojave (14) Catalina(15) 対策だと思います。 だとしたら ( $os_major == 10 && $os_minor >= $mactex_darwin ) の方が良いと思います。

現状は問題にはなりませんが、将来 別のアーキテクチャ も取り込むような事態になると??と問題が発生するかもしれません。

PS sw_vers の結果は ruby python などのように x.y.z ではなく x.y なのだから split とか部分文字列取り出しなどせずにそのまま判定に使えたのでは と思って眺めていました。

和田 勇 への返信

Re: macOS Monterey

- aminophen の投稿
調査ありがとうございます。

> kanji-config-updmap.pl

全く動作確認していませんが対応したつもりです。

macOS バージョンは 10.11.6 (El Capitan) とかあったはずでしたが,
sw_vers の結果はそうではないのですか?
aminophen への返信

Re: macOS Monterey

- 和田 勇 の投稿

10.11.6 そんなものがありましたね。 調べると気がつかなかったけど確かに Big Sur でも 11.3.1 とかがあったようですね。

411 行目のコメントには major minor の二つを想定しているように思うけど、ループして頻繁に使うコードではないので、現状のコードで良いので和田のブツブツは取り下げます。

     410:    # Most robust approach is apparently to check sw_vers (os version,
     411-    # returns "10.x" values), and sysctl (processor hardware).
     412:    chomp (my $sw_vers = `sw_vers -productVersion`);
     413:    my ($os_major,$os_minor) = split (/\./, $sw_vers);