]> j8takagi.net git repositories - yacasl2.git/commitdiff
install.texiなどのインストール方法のドキュメントを修正。主に、gpg検証の部分
authorj8takagi <j8takagi@nifty.com>
Wed, 3 Jun 2026 08:25:26 +0000 (17:25 +0900)
committerj8takagi <j8takagi@nifty.com>
Wed, 3 Jun 2026 08:25:26 +0000 (17:25 +0900)
INSTALL
doc/install.texi
doc/install.txt

diff --git a/INSTALL b/INSTALL
index c8260038367e5a97e7abcab8eda8339990e65b5e..b120c201389c9ec9de6a0c09755480e522887a83 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -5,12 +5,11 @@
   2.2.1 GnuPG分離署名での検証
   2.2.2 MD5ハッシュ値での検証
 2.3 YACASL2ファイルの展開
-2.4 'casl2' 'comet2' 'dumpword'のビルド
+2.4 ビルド
 2.5 'casl2'の実行テスト
 2.6 詳細なテスト
 2.7 インストール
 2.8 環境変数の設定
-  シェルの確認
   2.8.1 'PATH'の設定
   2.8.2 'INFOPATH'の設定
 
@@ -45,56 +44,67 @@ Tools」に含まれます。
 ---------------------------
 
  GnuPGの'gpg'で圧縮ファイルを検証します。この検証を行うには、GnuPGがイン
-ストールされ、自分の秘密鍵と公開鍵のペアが作成されている必要があります。
+ストールされ、自分用の秘密鍵が作成されている必要があります。 また、あら
+かじめ'tar.gz'または'tar.xz'ファイルと、対応する検証用ファイル
+'tar.gz.asc'または'tar.xz.asc'ファイルを同じディレクトリーに保存し、その
+ディレクトリーに移動しておきます。
 
+     $ ls yacasl2.tar.gz*
+     yacasl2.tar.gz  yacasl2.tar.gz.asc
      $ gpg --verify yacasl2.tar.xz.asc
-     gpg: Signature made Sat Oct 27 02:17:16 2012 JST using RSA key ID 25B62DD1
-     gpg: Can't check signature: public key not found
-     $ gpg --recv-keys 25B62DD1
-     gpg: requesting key 25B62DD1 from hkp server keys.gnupg.net
-     gpg: key 25B62DD1: public key "j8takagi <j8takagi@nifty.com>" imported
+     gpg: assuming signed data in 'yacasl2.tar.gz'
+     gpg: Signature made Tue 02 Jun 2026 01:14:17 AM JST
+     gpg:                using EDDSA key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
+     gpg: Can't check signature: No public key
+     $ gpg --recv-keys 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
+     gpg: key 7F593ED86D88E1D5: public key "j8takagi <j8takagi@nifty.com>" imported
+     gpg: marginals needed: 3  completes needed: 1  trust model: pgp
+     gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
+     gpg: next trustdb check due at 2029-06-01
      gpg: Total number processed: 1
-     gpg:               imported: 1  (RSA: 1)
+     gpg:               imported: 1
+     $ gpg --lsign-key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
 
-     $ gpg --lsign-key 25B62DD1
+     pub  ed25519/7F593ED86D88E1D5
+          created: 2026-04-23  expires: 2031-04-30  usage: SC
+          trust: unknown       validity: unknown
+     sub  cv25519/B3433115DBD37726
+          created: 2026-04-23  expires: never       usage: E
+     [ unknown] (1). j8takagi <j8takagi@nifty.com>
 
-     pub  2048R/25B62DD1  created: 2012-09-29  expires: never       usage: SC
-                          trust: unknown       validity: full
-     sub  2048R/92E25C29  created: 2012-09-29  expires: never       usage: E
-     [  full  ] (1). j8takagi <j8takagi@nifty.com>
 
+     pub  ed25519/7F593ED86D88E1D5
+          created: 2026-04-23  expires: 2031-04-30  usage: SC
+          trust: unknown       validity: unknown
+      Primary key fingerprint: 77EC 282A 2F73 17EB FF7B  FD06 7F59 3ED8 6D88 E1D5
 
-     pub  2048R/25B62DD1  created: 2012-09-29  expires: never       usage: SC
-                          trust: unknown       validity: full
-      Primary key fingerprint: ...
-
-          .* <.*@.*>
+          j8takagi <j8takagi@nifty.com>
 
+     This key is due to expire on 2031-04-30.
      Are you sure that you want to sign this key with your
-     key ".* <.*@.*>"
+     key "j8takagi <j8takagi@nifty.com>" (4223493EBCB683A9)
 
      The signature will be marked as non-exportable.
 
      Really sign? (y/N) y
 
-     You need a passphrase to unlock the secret key for
-     user: ".* <.*@.*>"
-     2048-bit RSA key, ID ........, created 20..-..-..
-
-     <input password> password
-
-     $ gpg --verify yacasl2.tar.xz.asc
-     gpg: Signature made Sat Oct 27 02:17:16 2012 JST using RSA key ID 25B62DD1
+     $ gpg --verify yacasl2.tar.gz.asc
+     gpg: assuming signed data in 'yacasl2.tar.gz'
+     gpg: Signature made Tue 02 Jun 2026 01:14:17 AM JST
+     gpg:                using EDDSA key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
      gpg: checking the trustdb
-     gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
-     gpg: depth: 0  valid:   1  signed:   4  trust: 0-, 0q, 0n, 0m, 0f, 1u
-     gpg: depth: 1  valid:   4  signed:   0  trust: 4-, 0q, 0n, 0m, 0f, 0u
-     gpg: Good signature from "j8takagi <j8takagi@nifty.com>"
+     gpg: marginals needed: 3  completes needed: 1  trust model: pgp
+     gpg: depth: 0  valid:   1  signed:   1  trust: 0-, 0q, 0n, 0m, 0f, 1u
+     gpg: depth: 1  valid:   1  signed:   0  trust: 1-, 0q, 0n, 0m, 0f, 0u
+     gpg: next trustdb check due at 2029-06-01
+     gpg: Good signature from "j8takagi <j8takagi@nifty.com>" [full]
+     gpg: Signature notation: manu=2,2.5+1.12,0,3
 
 2.2.2 MD5ハッシュ値での検証
 ---------------------------
 
- 'openssl'と'diff'で圧縮ファイルを検証します。
+ 'openssl'で圧縮ファイルから生成したMD5ハッシュ値が、ダウンロードした
+'yacasl2.tar.gz.md5sum'ファイルの内容と同じかどうか'diff'で検証します。
 
      $ openssl md5 yacasl2.tar.gz | diff -s yacasl2.tar.gz.md5sum -
      Files yacasl2.tar.gz.md5sum and - are identical
@@ -106,10 +116,12 @@ Tools」に含まれます。
 
      $ tar xvzf yacasl2.tar.gz
 
-2.4 'casl2' 'comet2' 'dumpword'のビルド
-=======================================
+2.4 ビルド
+==========
 
- 展開したら、'make'コマンドで'casl2' 'comet2' 'dumpword'をビルドします。
+ 展開したら、'make'コマンドを実行してビルドします。 YACASL2のコマンド実
+行ファイルである'casl2' 'comet2' 'dumpword' 'casl2rev' 'commet2monitor'が
+生成されます。
 
      $ cd yacasl2
      $ make
@@ -165,15 +177,15 @@ Tools」に含まれます。
 2.7 インストール
 ================
 
- ビルドが成功したら、'make install'コマンドで必要なファイルをインストー
\83«ã\81§ã\81\8dã\81¾ã\81\99ã\80\82 å\88\9dæ\9c\9f設å®\9aã\81§ã\81¯ã\80\81ã\83\9bã\83¼ã\83 ã\83\87ã\82£ã\83¬ã\82¯ã\83\88ã\83ªã\83¼ä»¥ä¸\8bã\81«YACASL2ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\81\8c
\82¤ã\83³ã\82¹ã\83\88ã\83¼ã\83«ã\81\95ã\82\8cã\81¾ã\81\99ã\80\82
+ YACASL2のコマンド実行ファイルはビルド後、'make install'コマンドでインス
\83\88ã\83¼ã\83«ã\81§ã\81\8dã\81¾ã\81\99ã\80\82ã\82¤ã\83³ã\82¹ã\83\88ã\83¼ã\83«å\85\88ã\81¯å\88\9dæ\9c\9f設å®\9aã\81§ã\81¯ã\80\81'~/bin'ã\83\87ã\82£ã\83¬ã\82¯ã\83\88ã\83ªã\83¼ã\81§ã\81\99
+。
 
      $ make install
 
- ã\82³ã\83\9eã\83³ã\83\89å®\9fè¡\8cæ\99\82ã\81«ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\81\93ã\81¨ã\81§ã\80\81ã\82¤ã\83³ã\82¹ã\83\88ã\83¼ã\83«å\85\88ã\81®ã\83\87ã\82£ã\83¬ã\82¯ã\83\88
\83ªã\83¼ã\82\92å¤\89æ\9b´ã\81§ã\81\8dã\81¾ã\81\99ã\80\82 ä¾\8bã\81\88ã\81°ã\80\81'/usr/local'以ä¸\8bã\81«ã\83\95ã\82¡ã\82¤ã\83«ã\82\92ã\82¤ã\83³ã\82¹ã\83\88ã\83¼ã\83«ã\81\99
\82\8bã\81«ã\81¯ã\80\81 æ¬¡ã\81®ã\82\88ã\81\86ã\81«ã\82³ã\83\9eã\83³ã\83\89ã\82\92å®\9fè¡\8cã\81\97ã\81¾ã\81\99ã\80\82
+ ã\82¤ã\83³ã\82¹ã\83\88ã\83¼ã\83«å\85\88ã\82\92å¤\89æ\9b´ã\81\99ã\82\8bã\81«ã\81¯ã\80\81'prefix'ã\81ªã\81©ã\81®ã\82ªã\83\97ã\82·ã\83§ã\83³ã\82\92æ\8c\87å®\9aã\81\97ã\81¾ã\81\99ã\80\82 ä¾\8b
\81\88ã\81°'/usr/local'ã\83\87ã\82£ã\83¬ã\82¯ã\83\88ã\83ªã\83¼ã\81«ã\82¤ã\83³ã\82¹ã\83\88ã\83¼ã\83«ã\81\99ã\82\8bã\81«ã\81¯ã\80\81次ã\81®ã\82\88ã\81\86ã\81«ã\82³ã\83\9eã\83³ã\83\89
+を実行します。
 
      $ sudo make install prefix=/usr/local
 
@@ -188,48 +200,53 @@ INFODIR        infoファイルのインストール先         '$prefix/share/i
 2.8 環境変数の設定
 ==================
 
- 環境変数'PATH'や'CASL2LIB'を設定することで、YACASL2が使いやすくなります
-。環境変数は、使っているシェルを確認してから設定します。
-
-シェルの確認
-------------
-
- 環境変数の設定方法は使っているシェルによって異なります。シェルは、次の
-コマンドで確認できます。
-
-     $ echo $SHELL
-     /bin/bash
-
- 現在もっとも多く使われているシェルは、Bashでしょう。以下、Bashでの設定
-方法を説明します。
+ 環境変数'PATH'や'INFOPATH'を設定することで、YACASL2が使いやすくなります
+。
 
 2.8.1 'PATH'の設定
 ------------------
 
- 'PATH'にYACASL2の実行ファイルのインストール先を追加すると、ディレクトリ
-ーの指定を省略して'casl2' 'comet2' 'dumpword'を実行できます。例えば、初
-期設定のまま実行ファイルを'~/bin'にインストールしたときは、次のコマンド
-で設定できます。
+ 'PATH'にYACASL2の実行ファイルのインストール先が含まれている場合は、ディ
+レクトリーの指定を省略して'casl2'などの実行ファイル名を指定できます。
+'PATH'は、次のコマンドで確認できます。
+
+     $ echo $PATH
 
-     $ PATH=$PATH:~/bin && export PATH
+ YACASL2のインストール先の初期設定である'~/bin'ディレクトリーは、OSイン
+ストール時に'PATH'に含まれている場合もあります。含まれていない場合は、次
+のコマンドで'PATH'に追加できます。
 
- 環境変数の設定は、シェルの初期設定ファイルに追加することでログインした
-あと自動的に反映されるようになります。Bashでは'~/.bashrc'が初期設定ファ
-イルです。次のコマンドで追加できます。
+     $ PATH=$HOME/bin:$PATH; export PATH
 
-     $ echo ’PATH=$PATH:~/bin && export PATH’ >>~/.bashrc
+ '~/.profile'や'~/.bashrc'などの初期化ファイルに'PATH'への追加を設定して
+おけば、YACASL2のコマンド実行時に常にディレクトリーの指定を省略できます
+。 次は、'PATH'に'~/bin'が二重に追加されることを防ぐ書き方です。
+
+     case ":${PATH}:" in
+         *":${HOME}/bin:"*) ;;
+         *) export PATH="${HOME}/bin:${PATH}" ;;
+     esac
 
 2.8.2 'INFOPATH'の設定
 ----------------------
 
- 'INFOPATH'にYACASL2のInfoファイルをインストールしたディレクトリーを追加
-すると、ディレクトリーの指定を省略して'casl2' 'comet2' 'dumpword'を実行
-できます。例えば、初期設定のままInfoファイルを'~/share/info'にインストー
-ルしたときは、次のコマンドで設定できます。
+ 環境変数'INFOPATH'とInfoが適切に設定されていれば、次のコマンドで
+YACASL2のInfoを表示できます。
+
+     $ info yacasl2
+
+ 'INFOPATH'にYACASL2のInfoファイルをインストールしたディレクトリーの追加
+は、次のコマンドでできます。なお、YACASL2のInfoファイルインストール先の
+初期設定は、'~/.local/share/info'です。
 
-     $ INFOPATH=$INFOPATH:~/share/info && export INFOPATH
+     $ INFOPATH=$HOME/.local/share/info:$INFOPATH; export INFOPATH
 
- '~/.bashrc'には次のコマンドで追加できます。
+ '~/.profile'や'~/.bashrc'などの初期化ファイルに'INFOPATH'への追加を設定
+しておけば、常にYACASL2のInfoを表示できます。 次は、'INFOPATH'に
+'~/.local/share/info'が二重に追加されることを防ぐ書き方です。
 
-     $ echo 'INFOPATH=$INFOPATH:~/share/info && export INFOPATH' >>~/.bashrc
+     case ":${INFOPATH}:" in
+         *":${HOME}/.local/share/info:"*) ;;
+         *) export INFOPATH="${HOME}/.local/share/info:${INFOPATH}" ;;
+     esac
 
index 0021f848eb5a9cf4c6bd9327b748291bca32dda5..f7ca64d0fe8ca5b333b3a2c44a8de2a687f15e8c 100644 (file)
@@ -68,55 +68,67 @@ YACASL2は、LinuxやMac OS Xなど、UNIX系のOS上で動作します。現在
 
 @subsection GnuPG分離署名での検証
 
-GnuPGの@command{gpg}で圧縮ファイルを検証します。この検証を行うには、GnuPGがインストールされ、自分の秘密鍵と公開鍵のペアが作成されている必要があります。
+GnuPGの@command{gpg}で圧縮ファイルを検証します。この検証を行うには、GnuPGがインストールされ、自分用の秘密鍵が作成されている必要があります。
+また、あらかじめ@file{tar.gz}または@file{tar.xz}ファイルと、対応する検証用ファイル@file{tar.gz.asc}または@file{tar.xz.asc}ファイルを同じディレクトリーに保存し、そのディレクトリーに移動しておきます。
+
+次の手順では@command{gpg --verify}による検証を2回実行させています。1回目では検証に失敗する一方で、必要な鍵などの情報を得ています。その鍵を@command{gpg --recv-keys}で取得し、@command{gpg --lsign-key}でローカル署名した後、再度@command{gpg --verify}による検証を行い、成功させています。
 
 @example
+$ @kbd{ls yacasl2.tar.gz*}
+yacasl2.tar.gz  yacasl2.tar.gz.asc
 $ @kbd{gpg --verify yacasl2.tar.xz.asc}
-gpg: Signature made Sat Oct 27 02:17:16 2012 JST using RSA key ID 7F593ED86D88E1D5
-gpg: Can't check signature: public key not found
-$ @kbd{gpg --recv-keys 7F593ED86D88E1D5}
-gpg: requesting key 7F593ED86D88E1D5 from hkp server keys.gnupg.net
+gpg: assuming signed data in 'yacasl2.tar.gz'
+gpg: Signature made Tue 02 Jun 2026 01:14:17 AM JST
+gpg:                using EDDSA key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
+gpg: Can't check signature: No public key
+$ @kbd{gpg --recv-keys 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5}
 gpg: key 7F593ED86D88E1D5: public key "j8takagi <j8takagi@@nifty.com>" imported
+gpg: marginals needed: 3  completes needed: 1  trust model: pgp
+gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
+gpg: next trustdb check due at 2029-06-01
 gpg: Total number processed: 1
-gpg:               imported: 1  (RSA: 1)
+gpg:               imported: 1
+$ @kbd{gpg --lsign-key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5}
 
-$ @kbd{gpg --lsign-key 7F593ED86D88E1D5}
+pub  ed25519/7F593ED86D88E1D5
+     created: 2026-04-23  expires: 2031-04-30  usage: SC  
+     trust: unknown       validity: unknown
+sub  cv25519/B3433115DBD37726
+     created: 2026-04-23  expires: never       usage: E   
+[ unknown] (1). j8takagi <j8takagi@@nifty.com>
 
-pub  2048R/7F593ED86D88E1D5  created: 2012-09-29  expires: never       usage: SC
-                     trust: unknown       validity: full
-sub  2048R/92E25C29  created: 2012-09-29  expires: never       usage: E
-[  full  ] (1). j8takagi <j8takagi@@nifty.com>
 
+pub  ed25519/7F593ED86D88E1D5
+     created: 2026-04-23  expires: 2031-04-30  usage: SC  
+     trust: unknown       validity: unknown
+ Primary key fingerprint: 77EC 282A 2F73 17EB FF7B  FD06 7F59 3ED8 6D88 E1D5
 
-pub  2048R/7F593ED86D88E1D5  created: 2012-09-29  expires: never       usage: SC
-                     trust: unknown       validity: full
- Primary key fingerprint: ...
-     .* <.*@@.*>
+     j8takagi <j8takagi@@nifty.com>
 
+This key is due to expire on 2031-04-30.
 Are you sure that you want to sign this key with your
-key ".* <.*@@.*>"
+key "j8takagi <j8takagi@@nifty.com>" (4223493EBCB683A9)
 
 The signature will be marked as non-exportable.
 
 Really sign? (y/N) @kbd{y}
 
-You need a passphrase to unlock the secret key for
-user: ".* <.*@@.*>"
-2048-bit RSA key, ID ........, created 20..-..-..
-
-<input password> @kbd{password}
-
 $ @kbd{gpg --verify yacasl2.tar.gz.asc}
 gpg: assuming signed data in 'yacasl2.tar.gz'
-gpg: Signature made Sun May 31 00:06:26 2026 JST
+gpg: Signature made Tue 02 Jun 2026 01:14:17 AM JST
 gpg:                using EDDSA key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
-gpg: Good signature from "j8takagi <j8takagi@@nifty.com>"
+gpg: checking the trustdb
+gpg: marginals needed: 3  completes needed: 1  trust model: pgp
+gpg: depth: 0  valid:   1  signed:   1  trust: 0-, 0q, 0n, 0m, 0f, 1u
+gpg: depth: 1  valid:   1  signed:   0  trust: 1-, 0q, 0n, 0m, 0f, 0u
+gpg: next trustdb check due at 2029-06-01
+gpg: Good signature from "j8takagi <j8takagi@@nifty.com>" [full]
+gpg: Signature notation: manu=2,2.5+1.12,0,3
 @end example
 
 @subsection MD5ハッシュ値での検証
 
-@command{openssl}ã\81¨@command{diff}ã\81§å\9c§ç¸®ã\83\95ã\82¡ã\82¤ã\83«ã\82\92検証します。
+@command{openssl}ã\81§å\9c§ç¸®ã\83\95ã\82¡ã\82¤ã\83«ã\81\8bã\82\89ç\94\9fæ\88\90ã\81\97ã\81\9fMD5ã\83\8fã\83\83ã\82·ã\83¥å\80¤ã\81\8cã\80\81ã\83\80ã\82¦ã\83³ã\83­ã\83¼ã\83\89ã\81\97ã\81\9f@file{yacasl2.tar.gz.md5sum}ã\83\95ã\82¡ã\82¤ã\83«ã\81®å\86\85容ã\81¨å\90\8cã\81\98ã\81\8bã\81©ã\81\86ã\81\8b@command{diff}ã\81§検証します。
 
 @example
 $ @kbd{openssl md5 yacasl2.tar.gz | diff -s yacasl2.tar.gz.md5sum -}
@@ -136,13 +148,13 @@ $ @kbd{tar xvzf yacasl2.tar.gz}
 @section ビルド
 
 展開したら、@command{make}コマンドを実行してビルドします。
-YACASL2のコマンド実行ファイルである@command{casl2} @command{comet2} @command{dumpword} @command{casl2rev} @command{commet2monitor}が生成されます。
+YACASL2のコマンド実行ファイルである@command{casl2} @command{comet2} @command{dumpword} @command{casl2rev} @command{comet2monitor}が生成されます。
 
 @example
 $ @kbd{cd yacasl2}
 $ @kbd{make}
 make -C src
-make[1]: Entering directory ‘/home/kazubito/yacasl2/src’
+make[1]: Entering directory ‘/home/username/yacasl2/src’
 gcc -c -g -Wall -I ../include casl2.c
 gcc -c -g -Wall -I ../include word.c
 gcc -c -g -Wall -I ../include hash.c
@@ -162,7 +174,7 @@ gcc -g -Wall -I ../include -o ../comet2 comet2.o word.o hash.o cerr.o
 struct.o cmd.o exec.o dump.o
 gcc -c -g -Wall -I ../include dumpword.c
 gcc -g -Wall -I ../include -o ../dumpword dumpword.o word.o cerr.o
-make[1]: Leaving directory ‘/home/kazubito/yacasl2/src’
+make[1]: Leaving directory ‘/home/username/yacasl2/src’
 @end example
 
 @node Simple Test, Detail Test, Build, install
@@ -186,13 +198,13 @@ Hello, World!
 $ @kbd{make check}
 195 / 195 tests passed. Details in /home/username/yacasl2/test/integra
 tion/casl2/Test.log
-All tests are succeded.
+All tests are succeeded.
 149 / 149 tests passed. Details in /home/username/yacasl2/test/integra
 tion/comet2/Test.log
-All tests are succeded.
+All tests are succeeded.
 4 / 4 tests passed. Details in /home/username/yacasl2/test/integration
 /dumpword/Test.log
-All tests are succeded.
+All tests are succeeded.
 @end example
 
 @node Install, Environment, Detail Test, install
@@ -240,7 +252,7 @@ $ @kbd{PATH=$HOME/bin:$PATH; export PATH}
 @end example
 
 @file{~/.profile}や@file{~/.bashrc}などの初期化ファイルに@code{PATH}への追加を設定しておけば、YACASL2のコマンド実行時に常にディレクトリーの指定を省略できます。
-次は、@code{$PATH}に@code{~/bin}が二重に追加されることを防ぐ書き方です。
+次は、@code{PATH}に@code{~/bin}が二重に追加されることを防ぐ書き方です。
 
 @example
 case ":$@{PATH@}:" in
@@ -258,19 +270,19 @@ esac
 $ @kbd{info yacasl2}
 @end example
 
-@code{INFOPATH}にYACASL2のInfoファイルをインストールしたディレクトリーの追加は、次のコマンドでできます。なお、YACASL2のInfoファイルインストール先の初期設定は、@file{~/.local/share/info}です。
+@code{INFOPATH}にYACASL2のInfoファイルをインストールしたディレクトリーの追加は、次のコマンドでできます。なお、YACASL2のInfoファイルインストール先の初期設定は、@file{~/share/info}です。
 
 @example
-$ @kbd{INFOPATH=$HOME/.local/share/info:$INFOPATH; export INFOPATH}
+$ @kbd{INFOPATH=$HOME/share/info:$INFOPATH; export INFOPATH}
 @end example
 
 @file{~/.profile}や@file{~/.bashrc}などの初期化ファイルに@code{INFOPATH}への追加を設定しておけば、常にYACASL2のInfoを表示できます。
-次は、@code{$INFOPATH}に@code{~/.local/share/info}が二重に追加されることを防ぐ書き方です。
+次は、@code{INFOPATH}に@code{~/share/info}が二重に追加されることを防ぐ書き方です。
 
 @example
 case ":$@{INFOPATH@}:" in
-    *":$@{HOME@}/.local/share/info:"*) ;;
-    *) export INFOPATH="$@{HOME@}/.local/share/info:$@{INFOPATH@}" ;;
+    *":$@{HOME@}/share/info:"*) ;;
+    *) export INFOPATH="$@{HOME@}/share/info:$@{INFOPATH@}" ;;
 esac
 @end example
 
index a604e04eadaabfeb5e1f946de23e1bd50d161761..758a2ad6599ae795cf4f037e6c02972ba34eddcf 100644 (file)
@@ -44,54 +44,72 @@ Tools」に含まれます。
 ---------------------------
 
  GnuPGの'gpg'で圧縮ファイルを検証します。この検証を行うには、GnuPGがイン
-ストールされ、自分の秘密鍵と公開鍵のペアが作成されている必要があります。
-
+ストールされ、自分用の秘密鍵が作成されている必要があります。 また、あら
+かじめ'tar.gz'または'tar.xz'ファイルと、対応する検証用ファイル
+'tar.gz.asc'または'tar.xz.asc'ファイルを同じディレクトリーに保存し、その
+ディレクトリーに移動しておきます。
+
+ 次の手順では'gpg --verify'による検証を2回実行させています。1回目では検
+証に失敗する一方で、必要な鍵などの情報を得ています。その鍵を'gpg
+--recv-keys'で取得し、'gpg --lsign-key'でローカル署名した後、再度'gpg
+--verify'による検証を行い、成功させています。
+
+     $ ls yacasl2.tar.gz*
+     yacasl2.tar.gz  yacasl2.tar.gz.asc
      $ gpg --verify yacasl2.tar.xz.asc
-     gpg: Signature made Sat Oct 27 02:17:16 2012 JST using RSA key ID 7F593ED86D88E1D5
-     gpg: Can't check signature: public key not found
-     $ gpg --recv-keys 7F593ED86D88E1D5
-     gpg: requesting key 7F593ED86D88E1D5 from hkp server keys.gnupg.net
+     gpg: assuming signed data in 'yacasl2.tar.gz'
+     gpg: Signature made Tue 02 Jun 2026 01:14:17 AM JST
+     gpg:                using EDDSA key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
+     gpg: Can't check signature: No public key
+     $ gpg --recv-keys 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
      gpg: key 7F593ED86D88E1D5: public key "j8takagi <j8takagi@nifty.com>" imported
+     gpg: marginals needed: 3  completes needed: 1  trust model: pgp
+     gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
+     gpg: next trustdb check due at 2029-06-01
      gpg: Total number processed: 1
-     gpg:               imported: 1  (RSA: 1)
+     gpg:               imported: 1
+     $ gpg --lsign-key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
 
-     $ gpg --lsign-key 7F593ED86D88E1D5
+     pub  ed25519/7F593ED86D88E1D5
+          created: 2026-04-23  expires: 2031-04-30  usage: SC
+          trust: unknown       validity: unknown
+     sub  cv25519/B3433115DBD37726
+          created: 2026-04-23  expires: never       usage: E
+     [ unknown] (1). j8takagi <j8takagi@nifty.com>
 
-     pub  2048R/7F593ED86D88E1D5  created: 2012-09-29  expires: never       usage: SC
-                          trust: unknown       validity: full
-     sub  2048R/92E25C29  created: 2012-09-29  expires: never       usage: E
-     [  full  ] (1). j8takagi <j8takagi@nifty.com>
 
+     pub  ed25519/7F593ED86D88E1D5
+          created: 2026-04-23  expires: 2031-04-30  usage: SC
+          trust: unknown       validity: unknown
+      Primary key fingerprint: 77EC 282A 2F73 17EB FF7B  FD06 7F59 3ED8 6D88 E1D5
 
-     pub  2048R/7F593ED86D88E1D5  created: 2012-09-29  expires: never       usage: SC
-                          trust: unknown       validity: full
-      Primary key fingerprint: ...
-
-          .* <.*@.*>
+          j8takagi <j8takagi@nifty.com>
 
+     This key is due to expire on 2031-04-30.
      Are you sure that you want to sign this key with your
-     key ".* <.*@.*>"
+     key "j8takagi <j8takagi@nifty.com>" (4223493EBCB683A9)
 
      The signature will be marked as non-exportable.
 
      Really sign? (y/N) y
 
-     You need a passphrase to unlock the secret key for
-     user: ".* <.*@.*>"
-     2048-bit RSA key, ID ........, created 20..-..-..
-
-     <input password> password
-
      $ gpg --verify yacasl2.tar.gz.asc
      gpg: assuming signed data in 'yacasl2.tar.gz'
-     gpg: Signature made Sun May 31 00:06:26 2026 JST
+     gpg: Signature made Tue 02 Jun 2026 01:14:17 AM JST
      gpg:                using EDDSA key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
-     gpg: Good signature from "j8takagi <j8takagi@nifty.com>"
+     gpg: checking the trustdb
+     gpg: marginals needed: 3  completes needed: 1  trust model: pgp
+     gpg: depth: 0  valid:   1  signed:   1  trust: 0-, 0q, 0n, 0m, 0f, 1u
+     gpg: depth: 1  valid:   1  signed:   0  trust: 1-, 0q, 0n, 0m, 0f, 0u
+     gpg: next trustdb check due at 2029-06-01
+     gpg: Good signature from "j8takagi <j8takagi@nifty.com>" [full]
+     gpg: Signature notation: manu=2,2.5+1.12,0,3
 
 2.2.2 MD5ハッシュ値での検証
 ---------------------------
 
- 'openssl'と'diff'で圧縮ファイルを検証します。
+ 'openssl'で圧縮ファイルから生成したMD5ハッシュ値が、ダウンロードした
+'yacasl2.tar.gz.md5sum'ファイルの内容と同じかどうか'diff'で検証します。
 
      $ openssl md5 yacasl2.tar.gz | diff -s yacasl2.tar.gz.md5sum -
      Files yacasl2.tar.gz.md5sum and - are identical
@@ -107,13 +125,13 @@ Tools」に含まれます。
 ==========
 
  展開したら、'make'コマンドを実行してビルドします。 YACASL2のコマンド実
-行ファイルである'casl2' 'comet2' 'dumpword' 'casl2rev' 'commet2monitor'が
+行ファイルである'casl2' 'comet2' 'dumpword' 'casl2rev' 'comet2monitor'が
 生成されます。
 
      $ cd yacasl2
      $ make
      make -C src
-     make[1]: Entering directory ‘/home/kazubito/yacasl2/src’
+     make[1]: Entering directory ‘/home/username/yacasl2/src’
      gcc -c -g -Wall -I ../include casl2.c
      gcc -c -g -Wall -I ../include word.c
      gcc -c -g -Wall -I ../include hash.c
@@ -133,7 +151,7 @@ Tools」に含まれます。
      struct.o cmd.o exec.o dump.o
      gcc -c -g -Wall -I ../include dumpword.c
      gcc -g -Wall -I ../include -o ../dumpword dumpword.o word.o cerr.o
-     make[1]: Leaving directory ‘/home/kazubito/yacasl2/src’
+     make[1]: Leaving directory ‘/home/username/yacasl2/src’
 
 2.5 'casl2'の実行テスト
 =======================
@@ -153,13 +171,13 @@ Tools」に含まれます。
      $ make check
      195 / 195 tests passed. Details in /home/username/yacasl2/test/integra
      tion/casl2/Test.log
-     All tests are succeded.
+     All tests are succeeded.
      149 / 149 tests passed. Details in /home/username/yacasl2/test/integra
      tion/comet2/Test.log
-     All tests are succeded.
+     All tests are succeeded.
      4 / 4 tests passed. Details in /home/username/yacasl2/test/integration
      /dumpword/Test.log
-     All tests are succeded.
+     All tests are succeeded.
 
 2.7 インストール
 ================
@@ -207,7 +225,7 @@ INFODIR        infoファイルのインストール先         '$prefix/share/i
 
  '~/.profile'や'~/.bashrc'などの初期化ファイルに'PATH'への追加を設定して
 おけば、YACASL2のコマンド実行時に常にディレクトリーの指定を省略できます
-。 次は、'$PATH'に'~/bin'が二重に追加されることを防ぐ書き方です。
+。 次は、'PATH'に'~/bin'が二重に追加されることを防ぐ書き方です。
 
      case ":${PATH}:" in
          *":${HOME}/bin:"*) ;;
@@ -224,16 +242,16 @@ YACASL2のInfoを表示できます。
 
  'INFOPATH'にYACASL2のInfoファイルをインストールしたディレクトリーの追加
 は、次のコマンドでできます。なお、YACASL2のInfoファイルインストール先の
-初期設定は、'~/.local/share/info'です。
+初期設定は、'~/share/info'です。
 
-     $ INFOPATH=$HOME/.local/share/info:$INFOPATH; export INFOPATH
+     $ INFOPATH=$HOME/share/info:$INFOPATH; export INFOPATH
 
  '~/.profile'や'~/.bashrc'などの初期化ファイルに'INFOPATH'への追加を設定
-しておけば、常にYACASL2のInfoを表示できます。 次は、'$INFOPATH'に
-'~/.local/share/info'が二重に追加されることを防ぐ書き方です。
+しておけば、常にYACASL2のInfoを表示できます。 次は、'INFOPATH'に
+'~/share/info'が二重に追加されることを防ぐ書き方です。
 
      case ":${INFOPATH}:" in
-         *":${HOME}/.local/share/info:"*) ;;
-         *) export INFOPATH="${HOME}/.local/share/info:${INFOPATH}" ;;
+         *":${HOME}/share/info:"*) ;;
+         *) export INFOPATH="${HOME}/share/info:${INFOPATH}" ;;
      esac