メンテナンス・トラブルシュート - pkg・ports アップデート関連 - perl5 - perl5.24 を perl5.26 へ

クラウディア 
1. 概要
2. 試行錯誤
3. /etc/make.conf 編集
4. 訂正

1. 概要

 pkg の状況を見ていましたらば

> pkg version -vl "<"
perl5-5.24.3                       <   needs updating (index has 5.26.1)
 今回は、前項のような入替でなく、アップデートになるのだな・・・と

2. 試行錯誤


> portupgrade -Rr perl5
[Reading data from pkg(8) ... - 360 packages found - done]
[Gathering depends for lang/perl5.24  done]
[Gathering depends for devel/p5-Locale-gettext ........ done]

  ・・・

[Gathering depends for www/apache24 ..................... done]
[Exclude up-to-date packages ...................................................................................................... done]
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        - net/ntp-devel (marked as IGNORE)
 これは、おそらく ntp-devel のアップデート時に、エラーが出ていたのを make DISABLE_VULNERABILITIES=yes でインストールしているためではないか?  と推察。  なので、いったん ntp-devel をアンインストールしてやり直してみます。

プロンプト略
cd /usr/ports/net/ntp-devel
make deinstall
 してから

> portupgrade -Rr perl5
[Reading data from pkg(8) ... - 359 packages found - done]
[Gathering depends for lang/perl5.24  done]
[Gathering depends for devel/p5-Locale-gettext ........ done]

  ・・・

[Gathering depends for www/apache24 ..................... done]
[Exclude up-to-date packages ...................................................................................................... done]
 うまくいったのかな?とみてみると

> pkg version -vl "<"
perl5-5.24.3                       <   needs updating (index has 5.26.1)
 なんだ、やっぱり前項と同じことが必要なのだな・・・と。

> portupgrade -o lang/perl5.26 -f perl5.24
> pkg set -o lang/perl5.24:lang/perl5.26
Change origin from lang/perl5.24 to lang/perl5.26 for perl5-5.24.3? [y/N]:	←	y を入力
> portupgrade -Rr perl5

3. /etc/make.conf 編集


/etc/make.conf
 の

DEFAULT_VERSIONS+=perl5=5.24
 を以下に書き換えます。  もともとない場合は追加します。

DEFAULT_VERSIONS+=perl5=5.26

4. 訂正

 試行錯誤の過程で、net/ntp-devel をアンインストールしちゃったので再インストールしたときに問題になったので・・・。

> pkg version -v -n perl5.26
perl5.26-5.26.1                    ?   orphaned: lang/perl5.26
 なんか変な入り方になってしまったみたいです。  いれなおし・・・。

> pkg delete perl5.26
Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        perl5.26-5.26.1

Number of packages to be removed: 1

The operation will free 53 MiB.

Proceed with deinstalling packages? [y/N]: y
[1/1] Deinstalling perl5.26-5.26.1...
[1/1] Deleting files for perl5.26-5.26.1: 100%

> cd /usr/ports/lang/perl5.26
> make install

> pkg version -v -n perl5
perl5-5.26.1                       =   up-to-date with index
 やっとちゃんとインストールできたようです。