commit:     abe372a63dacd57ed7809233ef02591e37941cb4
Author:     Phil DeMonaco <phil <AT> demona <DOT> co>
AuthorDate: Tue Sep 28 19:09:22 2021 +0000
Commit:     Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
CommitDate: Tue Sep 28 20:25:19 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abe372a6

app-admin/puppet-agent: libxcrypt logic fix #22183

Incorporates the logic suggested by thesamesame that directs to the
libxcrypt non-system path if and only if the crypt flag is still enabled
on sys-libs/glibc.

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Philip DeMonaco <phil <AT> demona.co>
Signed-off-by: Matthew Thode <prometheanfire <AT> gentoo.org>

 app-admin/puppet-agent/puppet-agent-6.19.1-r1.ebuild | 11 ++++++++++-
 app-admin/puppet-agent/puppet-agent-7.10.0.ebuild    | 11 ++++++++++-
 app-admin/puppet-agent/puppet-agent-7.11.0.ebuild    | 11 ++++++++++-
 3 files changed, 30 insertions(+), 3 deletions(-)

diff --git a/app-admin/puppet-agent/puppet-agent-6.19.1-r1.ebuild 
b/app-admin/puppet-agent/puppet-agent-6.19.1-r1.ebuild
index e99c2fe2b84..22dc570bbd3 100644
--- a/app-admin/puppet-agent/puppet-agent-6.19.1-r1.ebuild
+++ b/app-admin/puppet-agent/puppet-agent-6.19.1-r1.ebuild
@@ -72,7 +72,16 @@ src_install() {
        dosym ../../opt/puppetlabs/bin/hiera /usr/bin/hiera
        dosym ../../opt/puppetlabs/bin/puppet /usr/bin/puppet
        dosym ../../opt/puppetlabs/puppet/bin/virt-what /usr/bin/virt-what
-       dosym ../../../../usr/lib64/xcrypt/libcrypt.so.1 
/opt/puppetlabs/puppet/lib/libcrypt.so.1
+
+       # Handling of the path to the crypt library during the ongoing migration
+       # from glibc[crypt] to libxcrypt
+       # 
https://www.gentoo.org/support/news-items/2021-07-23-libxcrypt-migration.html
+       if has_version "sys-libs/glibc[crypt]"; then
+               local crypt_target='../../../../usr/lib64/xcrypt/libcrypt.so.1'
+       else
+               local crypt_target='../../../../usr/lib/libcrypt.so.1'
+       fi
+       dosym $crypt_target /opt/puppetlabs/puppet/lib/libcrypt.so.1
 }
 
 pkg_postinst() {

diff --git a/app-admin/puppet-agent/puppet-agent-7.10.0.ebuild 
b/app-admin/puppet-agent/puppet-agent-7.10.0.ebuild
index 8ad3ca37f43..8621917db95 100644
--- a/app-admin/puppet-agent/puppet-agent-7.10.0.ebuild
+++ b/app-admin/puppet-agent/puppet-agent-7.10.0.ebuild
@@ -70,7 +70,16 @@ src_install() {
        dosym ../../opt/puppetlabs/bin/facter /usr/bin/facter
        dosym ../../opt/puppetlabs/bin/hiera /usr/bin/hiera
        dosym ../../opt/puppetlabs/bin/puppet /usr/bin/puppet
-       dosym ../../../../usr/lib64/xcrypt/libcrypt.so.1 
/opt/puppetlabs/puppet/lib/libcrypt.so.1
+
+       # Handling of the path to the crypt library during the ongoing migration
+       # from glibc[crypt] to libxcrypt
+       # 
https://www.gentoo.org/support/news-items/2021-07-23-libxcrypt-migration.html
+       if has_version "sys-libs/glibc[crypt]"; then
+               local crypt_target='../../../../usr/lib64/xcrypt/libcrypt.so.1'
+       else
+               local crypt_target='../../../../usr/lib/libcrypt.so.1'
+       fi
+       dosym $crypt_target /opt/puppetlabs/puppet/lib/libcrypt.so.1
 }
 
 pkg_postinst() {

diff --git a/app-admin/puppet-agent/puppet-agent-7.11.0.ebuild 
b/app-admin/puppet-agent/puppet-agent-7.11.0.ebuild
index f90ff43e876..302711db8e5 100644
--- a/app-admin/puppet-agent/puppet-agent-7.11.0.ebuild
+++ b/app-admin/puppet-agent/puppet-agent-7.11.0.ebuild
@@ -70,7 +70,16 @@ src_install() {
        dosym ../../opt/puppetlabs/bin/facter /usr/bin/facter
        dosym ../../opt/puppetlabs/bin/hiera /usr/bin/hiera
        dosym ../../opt/puppetlabs/bin/puppet /usr/bin/puppet
-       dosym ../../../../usr/lib64/xcrypt/libcrypt.so.1 
/opt/puppetlabs/puppet/lib/libcrypt.so.1
+
+       # Handling of the path to the crypt library during the ongoing migration
+       # from glibc[crypt] to libxcrypt
+       # 
https://www.gentoo.org/support/news-items/2021-07-23-libxcrypt-migration.html
+       if has_version "sys-libs/glibc[crypt]"; then
+               local crypt_target='../../../../usr/lib64/xcrypt/libcrypt.so.1'
+       else
+               local crypt_target='../../../../usr/lib/libcrypt.so.1'
+       fi
+       dosym $crypt_target /opt/puppetlabs/puppet/lib/libcrypt.so.1
 }
 
 pkg_postinst() {

Reply via email to