公式ドキュメントに沿った手順で、 Solaris 11.3 のパッケージリポジトリに含まれる GIMP を Solaris 11.4 にインストールしてみる。
- Solaris 11.4 では、GIMP は廃止。
# pkg install -n -v gimp このイメージは更新の必要はありません。 # pkg info -r gimp 名前: image/editor/gimp 状態: インストール済みでない (廃止) パブリッシャー: solaris バージョン: 2.6.10 分岐: 11.4.0.0.1.9.0 パッケージ化の日付: June 18, 2018 at 5:27:30 PM サイズ: 2.52 kB FMRI: pkg://solaris/image/editor/gimp@2.6.10-11.4.0.0.1.9.0:20180618T172730Z
- Solaris 11.3 の GIMP のインストールを試みるが失敗。
# pkg info -g /path/to/pkgrepos/Solaris11.3 gimp 名前: image/editor/gimp サマリー: The Gimp image editor カテゴリ: Applications/Graphics and Imaging 状態: インストール済みでない パブリッシャー: solaris バージョン: 2.6.10 分岐: 0.175.3.0.0.26.0 パッケージ化の日付: July 5, 2015 at 8:28:45 PM サイズ: 33.36 MB FMRI: pkg://solaris/image/editor/gimp@2.6.10-0.175.3.0.0.26.0:20150705T202845Z ソース URL: ftp://ftp.gimp.org/pub/gimp/v2.6/gimp-2.6.10.tar.bz2 http://nifelheim.dyndns.org/~cocidius/files/gimp-hdrtools-0.1.tar.bz2 # pkg install -n -g /path/to/pkgrepos/Solaris11.3 gimp このイメージは更新の必要はありません。
- バージョンを明示してインストールを試みると、拒否される理由が明示される。
# pkg install -n -v -g /path/to/pkgrepos/Solaris11.3 image/editor/gimp@2.6.10-0.175.3.0.0.26.0 計画の作成中 (ソルバーのセットアップ): \ pkg install: image/editor/gimp の一致するバージョンはインストールできません: 拒否: pkg://solaris/image/editor/gimp@2.6.10-0.175.3.0.0.26.0 理由: このバージョンはインストール済みの incorporation consolidation/userland/userland-incorporation@11.4-11.4.0.0.1.14.0 から除外されます
- 拒否される理由を解除するため、ファセットを変更する。
# pkg facet facet.version-lock.image/editor/gimp ファセット 値 ソース version-lock.image/editor/gimp True system # pkg contents -m userland-incorporation | grep image/editor/gimp@ depend facet.version-lock.image/editor/gimp=true fmri=image/editor/gimp@2.6.10-11.4.0.0.1.9.0 type=incorporate # pkg change-facet --no-backup-be facet.version-lock.image/editor/gimp=false 変更するパッケージ: 1 変更するバリアント/ファセット: 1 ブート環境の作成: いいえ バックアップブート環境の作成: いいえ フェーズ 項目 古いアクションを削除しています 1/1 パッケージ状態データベースを更新しています 完了 パッケージキャッシュを更新しています 0/0 イメージ状態を更新しています 完了 スピード検索データベースを作成しています 完了 パッケージキャッシュを更新しています 1/1
- 再度、GIMP のインストールを試みるが、依存関係がインストールできない。
# pkg install -n -v -g /path/to/pkgrepos/Solaris11.3 image/editor/gimp@2.6.10-0.175.3.0.0.26.0 計画の作成中 (ソルバーのセットアップ): - pkg install: image/editor/gimp の一致するバージョンはインストールできません: 拒否: pkg://solaris/image/editor/gimp@2.6.10-0.175.3.0.0.26.0 理由: image/library/libart@2.3.21-0.175.2.0.0.24.0 で許容される 'require' 依存関係のすべてのバージョンが廃止されています
- 依存先 (image/library/libart) をインストールできるようにファセットを変更する。
# pkg contents -m userland-incorporation | grep image/library/libart@ depend facet.version-lock.image/library/libart=true fmri=image/library/libart@2.3.21-11.4.0.0.1.9.0 type=incorporate # pkg change-facet --no-backup-be facet.version-lock.image/library/libart=false 変更するパッケージ: 1 変更するバリアント/ファセット: 1 ブート環境の作成: いいえ バックアップブート環境の作成: いいえ フェーズ 項目 古いアクションを削除しています 1/1 パッケージ状態データベースを更新しています 完了 パッケージキャッシュを更新しています 0/0 イメージ状態を更新しています 完了 スピード検索データベースを作成しています 完了 パッケージキャッシュを更新しています 1/1
- 次の依存関係でまた失敗
# pkg install -n -v -g /path/to/pkgrepos/Solaris11.3 image/editor/gimp@2.6.10-0.175.3.0.0.26.0 計画の作成中 (ソルバーのセットアップ): - pkg install: image/editor/gimp の一致するバージョンはインストールできません: 拒否: pkg://solaris/image/editor/gimp@2.6.10-0.175.3.0.0.26.0 理由: image/library/babl@0.1.2-0.175.3.0.0.13.0 で許容される 'require' 依存関係のすべてのバージョンが廃止されています
- 依存先 (image/library/babl) をインストールできるようにファセットを変更する。
# pkg contents -m userland-incorporation | grep image/library/babl@ depend facet.version-lock.image/library/babl=true fmri=image/library/babl@0.1.2-11.4.0.0.1.9.0 type=incorporate # pkg change-facet --no-backup-be facet.version-lock.image/library/babl=false 変更するパッケージ: 1 変更するバリアント/ファセット: 1 ブート環境の作成: いいえ バックアップブート環境の作成: いいえ フェーズ 項目 古いアクションを削除しています 1/1 パッケージ状態データベースを更新しています 完了 パッケージキャッシュを更新しています 0/0 イメージ状態を更新しています 完了 スピード検索データベースを作成しています 完了 パッケージキャッシュを更新しています 1/1
- 次の依存関係でまた失敗
# pkg install -n -v -g /path/to/pkgrepos/Solaris11.3 image/editor/gimp@2.6.10-0.175.3.0.0.26.0 計画の作成中 (ソルバーのセットアップ): - pkg install: image/editor/gimp の一致するバージョンはインストールできません: 拒否: pkg://solaris/image/editor/gimp@2.6.10-0.175.3.0.0.26.0 理由: image/library/gegl@0.1.2-0.175.3.0.0.26.0 で許容される 'require' 依存関係のすべてのバージョンが廃止されています
- 依存先 (image/library/gegl) をインストールできるようにファセットを変更する。
# pkg contents -m userland-incorporation | grep image/library/gegl@ depend facet.version-lock.image/library/gegl=true fmri=image/library/gegl@0.1.2-11.4.0.0.1.9.0 type=incorporate # pkg change-facet --no-backup-be facet.version-lock.image/library/gegl=false 変更するパッケージ: 1 変更するバリアント/ファセット: 1 ブート環境の作成: いいえ バックアップブート環境の作成: いいえ フェーズ 項目 古いアクションを削除しています 1/1 パッケージ状態データベースを更新しています 完了 パッケージキャッシュを更新しています 0/0 イメージ状態を更新しています 完了 スピード検索データベースを作成しています 完了 パッケージキャッシュを更新しています 1/1
- これでようやくインストールできる。
# pkg install -n -v -g /path/to/pkgrepos/Solaris11.3 image/editor/gimp@2.6.10-0.175.3.0.0.26.0 インストールするパッケージ: 13 変更するサービス: 2 推定使用可能容量: 18.43 GB 推定消費容量: 135.60 MB ブート環境の作成: いいえ バックアップブート環境の作成: いいえ ブートアーカイブの再構築: いいえ 変更されたパッケージ: solaris image/editor/gimp None -> 2.6.10-0.175.3.0.0.26.0 image/library/babl None -> 0.1.2-0.175.3.0.0.13.0 image/library/gegl None -> 0.1.2-0.175.3.0.0.26.0 image/library/libart None -> 2.3.21-0.175.3.0.0.26.0 image/library/libpng None -> 1.4.20-11.4.0.0.0.12.0 image/library/libpng10 None -> 1.0.67-11.4.0.0.1.14.0 image/library/libpng12 None -> 1.2.57-11.4.0.0.1.14.0 library/gnome/gnome-libs None -> 2.30.0-11.4.0.0.1.9.0 library/gnome/gnome-vfs None -> 2.24.4-11.4.0.0.1.9.0 library/lcms None -> 1.19-11.4.0.0.1.14.0 library/python/lcms-27 None -> 1.19-11.4.0.0.1.14.0 library/python/pygtk2-27 None -> 2.24.0-11.4.0.0.1.14.0 library/sdl None -> 1.2.15-11.4.0.0.1.14.0 サービス: restart_fmri: svc:/application/desktop-cache/desktop-mime-cache:default svc:/application/desktop-cache/icon-cache:default # pkg install -g /path/to/pkgrepos/Solaris11.3 image/editor/gimp@2.6.10-0.175.3.0.0.26.0 インストールするパッケージ: 13 変更するサービス: 2 ブート環境の作成: いいえ バックアップブート環境の作成: いいえ ダウンロード パッケージ ファイル 転送 (MB) 速度 完了 13/13 2912/2912 19.8/19.8 538k/s フェーズ 項目 新しいアクションをインストールしています 3409/3409 パッケージ状態データベースを更新しています 完了 パッケージキャッシュを更新しています 0/0 イメージ状態を更新しています 完了 スピード検索データベースを作成しています 完了 パッケージキャッシュを更新しています 1/1
なお、Sokaris 11.3 上の ATOK に関係するパッケージをこの手順で Solaris 11.4 にインストールする事は出来ない。 これは、ATOK が依存している pkg://solaris/library/medialib が Solaris 11.4 で廃止されているが、 facet.version-lock の機構を使用せずに incorporation 制約が付与されているから。