みなさん、#テフライブ! していますか?
前回のテフライブ!、「過去にリリースされたTeX Live YYYYをインストールしてみよう!」で紹介したTeX Live histonicを踏まえて、本件を喚起します。
なお、現時点2015年5月16日現在、TeX Live各種状況は以下のとおりです。
- 最新版:TeX Live 2014 frozen(TeX Live 2014の最終更新状態)
- 各CTAN mirrors に同梱されている systems/texlive:TeX Live 2014 frozen
- 次期TeX Liveの状態:TeX Live 2015 pretest
例1:TeX Live 2013がTeX Live 2014 frozen, TeX Live 2015 pretestへ更新される
TeX Live 2014 frozenへ更新
TeX Live 2013を以下のような状態でインストールしているとします。
- TeX Live 2013のインストール先:
/some/where/texlive/2013
- tlmgrが扱う主要tlnetリポジトリ:http://mirror.ctan.org/systems/texlive/tlnet
この状態において、$ sudo tlmgr update --self --all
を実行すると、まず、--self
により texlive.infra が更新されて、そこから /some/where/texlive/2013
のまま、現時点のCTAN mirrorsに同梱されているtlnetの状態TeX Live 2014 frozenへ追従されてしまいます。
$ sudo tlmgr update --self --all
TeX Live 2013 is frozen forever and will no
longer be updated. This happens in preparation for a new release.
If you're interested in helping to pretest the new release (when
pretests are available), please read http://tug.org/texlive/pretest.html.
Otherwise, just wait, and the new release will be ready in due time.
tlmgr: package repository http://mirror.ctan.org/systems/texlive/tlnet
[1/2, ??:??/??:??] update: texlive.infra [203k] (32920 -> 35898) ... done
[2/2, 00:01/00:02] update: texlive.infra.x86_64-darwin [230k] (29809 -> 33484) ... done
Restarting tlmgr to complete update ...
TeX Live 2014 is frozen forever and will no
longer be updated. This happens in preparation for a new release.
If you're interested in helping to pretest the new release (when
pretests are available), please read http://tug.org/texlive/pretest.html.
Otherwise, just wait, and the new release will be ready in due time.
tlmgr: package repository http://mirror.ctan.org/systems/texlive/tlnet
[ 1/39, ??:??/??:??] update: bibtex.x86_64-darwin [68k] (29879 -> 34201) ... done
(snip)
[39/39, 00:33/00:33] update: xdvi [7k] (30339 -> 33736) ... done
tlmgr: package log updated: /some/where/texlive/2013/texmf-var/web2c/tlmgr.log
running mktexlsr ...
done running mktexlsr.
running updmap-sys ...
done running updmap-sys.
regenerating fmtutil.cnf in /some/where/texlive/2013/texmf-var
running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine luajittex ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine luajittex.
running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine luatex ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine luatex.
running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine tex ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine tex.
running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine pdftex ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine pdftex.
running fmtutil-sys --no-error-if-no-engine=luajittex --byfmt mf ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --byfmt mf.
$
TeXのバージョンとパスを確認すると、確かにTeX Live 2014になっています。
$ tex --version
TeX 3.14159265 (TeX Live 2014)
kpathsea version 6.2.0
Copyright 2014 D.E. Knuth.
There is NO warranty. Redistribution of this software is
covered by the terms of both the TeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the TeX source.
Primary author of TeX: D.E. Knuth.
TeX Live 2015 pretestへ更新
さらに、TeX Live 2015 pretest へリポジトリを変更し、$ sudo tlmgr update --self --all
を実行すると、TeX Live 2015 pretestへ追従されてしまいます。
$ sudo tlmgr update --self --all
tlmgr: package repository http://example.com/tlpretest/tlnet
[1/2, ??:??/??:??] update: texlive.infra [207k] (35898 -> 37344) ... done
[2/2, 00:00/00:00] update: texlive.infra.x86_64-darwin [249k] (33484 -> 36831) ... done
Restarting tlmgr to complete update ...
tlmgr: package repository http://example.com/tlpretest/tlnet
[ 1/35, ??:??/??:??] update: bibtex.x86_64-darwin [68k] (34201 -> 36892) ... done
(snip)
[35/35, 00:08/00:08] update: xdvi [7k] (33736 -> 37078) ... done
tlmgr: package log updated: /some/where/texlive/2013/texmf-var/web2c/tlmgr.log
running mktexlsr ...
done running mktexlsr.
running updmap-sys ...
done running updmap-sys.
regenerating fmtutil.cnf in /some/where/texlive/2013/texmf-dist
running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine tex ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine tex.
running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine pdftex ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine pdftex.
running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine luatex ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine luatex.
running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine luajittex ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --no-error-if-no-format --byengine luajittex.
running fmtutil-sys --no-error-if-no-engine=luajittex --byfmt mf ...
done running fmtutil-sys --no-error-if-no-engine=luajittex --byfmt mf.
$
TeXのバージョンとパスを確認すると、確かにTeX Live 2015になっています。
$ tex --version
TeX 3.14159265 (TeX Live 2015)
kpathsea version 6.2.1
Copyright 2015 D.E. Knuth.
There is NO warranty. Redistribution of this software is
covered by the terms of both the TeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the TeX source.
Primary author of TeX: D.E. Knuth.
例2:TeX Live 2012は、tlmgrによりTeX Live 2013以降に更新されない。
tlnetのリポジトリを http://mirror.ctan.org/systems/texlive/tlnet (TeX Live 2014 frozen)に向けると、TeX Live 2013以降に更新されません。
$ sudo tlmgr update --self --all
tlmgr: The TeX Live versions supported by the repository
(2013--2014)
do not include the version of the local installation
(2012).
tlmgrの遷移と検証
tlnetリポジトリ先のtexlive.tlpdbに記述されている depend minrelease/YYYY
, depend release/YYYY
を確認し、depend release/YYYY
>= 手元のバージョン >= depend minrelease/YYYY
であれば、depend release/YYYY
へ更新されます。
実際に、tlmgrに以下のようなコメントがあります。
# we allow a range of years to be specified by the remote tlpdb
# for which it might work.
# the lower limit is TLPDB->config_minrelease
# the upper limit is TLPDB->config_release
# if the later is not present only the year in config_release is accepted
# checks are done on the first 4 digits only
# Why only the first four places: some optional network distributions
# might use
# release/2009-foobar
# If it should work for 2009 and 2010, please use
# minrelease/2009-foobar
# release/2010-foobar
以下に必要な情報をまとめてみました。
tlmgrの遷移とともに、texlive.tlpdbの仕様変更、TDSの変更があり、上記のようになっているように推察できます。
問題!? 喚起!?
ユーザが「TeX Live 2013を標準でインストール(つまり、tlnetリポジトリ先がCTAN mirror(または、直ミラー))していたら、$ sudo tlmgr update --self --all
を実行することで、TeX Live 2014 frozen、さらにもうすぐすると、TeX Live 2015 release に更新される」ことを期待している、もしくは、把握しているのでしょうか?
TeX Liveが純然たる fixed release を前提としているんだったら、やっぱりYYYY frozenになったら、そこで止めておくべきじゃないかな。つまり、TeX Live YYYYがfrozenになったとき、もしtlmgrが参照するtlnetリポジトリ先が http://mirror.ctan.org/systems/texlive/tlnet である場合にかぎり、 ftp://tug.org/texlive/historic/YYYY/tlnet-final に書き換えてしまうのがよいように思います。
もっともTeX Liveの構造がそんなに難しくないので、どんどんrolling upgradeにしていく手もあります。その場合は、tlmgrにupgradeアクションなんかを明示的に作るべきですね。
日本で本件が影響ありそうなTeX Live 2013ユーザ
「[改訂第6版]LaTeX2e 美文書作成入門」のインストーラーを使ってインストールしたTeX Live 2013ユーザ!
まとめ
TeX Live 2013を標準でインストールしていたら、$ sudo tlmgr update --self --all
を実行することで、TeX Live 2014 frozen、さらにもうすぐすると、TeX Live 2015 release に更新されてしまいます。とくに、「[改訂第6版]LaTeX2e 美文書作成入門」のTeX Live 2013をご利用の方は、tlmgrによる更新をせずに、そのままご利用なさる方が、書籍との記述に違いが生じにくく、良いかもしれません。