From nobody Mon Oct 07 19:51:48 2024 X-Original-To: freebsd-pkgbase@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XMqY352Vsz5YN04 for ; Mon, 07 Oct 2024 19:51:51 +0000 (UTC) (envelope-from garga@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XMqY34bhqz504S; Mon, 7 Oct 2024 19:51:51 +0000 (UTC) (envelope-from garga@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1728330711; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=hu5eMP7q71s/scNRdvyBPHyyddthpcnkSZgw85kJf/Q=; b=qT06NHM6scVLQ7ycRACrGjll+G70wGPg7LGqO0KCWINgQ80LaZqWWE+XHcDyjnbqge+L/J 92LpJoAhI1+0GaPoZInwq36tawplD4ZaLXCcnkqAVbJ4Hkvlevo1rzT9dqzQazmLkytyP7 Sete1yp57MgVBYS++VNFiayuPAhQ4x23zOsScrvBYu/QmsbnO+VqL5b3b/hmZklMiPAr1H hMnlQstoDh9Iufz9kvd/nDWnVJhDuwxmkZE0tnb5fDUhws+EkVlKKXhgBc90u6dwLJ32ex 4JYCUn94ifilE2xFmfS2uW0pNBI7FGxaEv3zsQLWjwZUz0RmX0NtghsWyl00ZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1728330711; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=hu5eMP7q71s/scNRdvyBPHyyddthpcnkSZgw85kJf/Q=; b=Sx/UfgBu9rCJAMlpPSGnfKk3SZlgQwSTtMWFDKmRMoubSa/ePeQ4HA8WfhxyYR17aNBG+T BT2GP3hpmhJojgHjYn8XftfSCCPk2ByQh0/87LIqX2uFqDoFYlZsz+SHx12rZaXTVHrJ7t JETtinChLcHrd/myvMrymsCaO5O/uG6zvbEncBNoolNAkBcZEW2PFQC7lLg3RpWmm3umnD B5LemuWUfbfTnDsexbSsKIBx321V+0Qa4NlfMvifaxxoYDCiOnFPVONQtigSpfaXbpgzga PCByEoVzAnuNrMllEF8Q/FkPmsjdPDrH5mQubBf8EPMwlTRwmSl8mO+0DSZk/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1728330711; a=rsa-sha256; cv=none; b=ftuO85Q442ZE210eC+svsvanFDrpDhkmQROEmLMNTstEu9k1fK0OBCExjk91GlnF2lOljg FCQo2S1S9ANUFPVZLeskQOSzaYH+nwWwZn0QhV7SPxVJW5/K/NuMAeBsAD2bWPdOMq5XW2 I7cOyrYsRbwxtPm2vCwahEfwmNh+jGb/yQwVH79J9Q88hciwgFprfhOgCo6P+bQp1vl2Y9 3q5XaPFsPYTo/uuAnitFpFLcFkaa9czZ+jqzMCytUBX36HGUreBIG7qcBAYPiN/KUejzCE aw0gSlzhuzgtQ0SL7AOViUB3bpbRloOoLny1KKFCaLwXc/TNnZdtF0VlrrgfqA== Received: from [IPV6:2804:f1c:879:7700:e8c0:afc9:ab0c:5910] (unknown [IPv6:2804:f1c:879:7700:e8c0:afc9:ab0c:5910]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: garga) by smtp.freebsd.org (Postfix) with ESMTPSA id 4XMqY263q7z1G6T; Mon, 7 Oct 2024 19:51:50 +0000 (UTC) (envelope-from garga@FreeBSD.org) Message-ID: <0a3bd29f-63db-4857-818a-6186448e3d79@FreeBSD.org> Date: Mon, 7 Oct 2024 16:51:48 -0300 List-Id: Packaging the FreeBSD base system List-Archive: https://lists.freebsd.org/archives/freebsd-pkgbase List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-pkgbase@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Beta Subject: Re: libmd.so.6 and pkgbase To: Mark Millard Cc: FreeBSD-pkgbase@freebsd.org, Baptiste Daroussin References: <4E0CA824-A901-4219-ACCA-48B351C98E2B.ref@yahoo.com> <4E0CA824-A901-4219-ACCA-48B351C98E2B@yahoo.com> <7924C7D3-AB69-4288-BF5A-D13008016076@yahoo.com> Content-Language: en-US From: Renato Botelho Autocrypt: addr=garga@FreeBSD.org; keydata= xsBNBGStavwBCACjNlp/9+Y+VFe9ieR2h/WWbdvjz4Mb2z/f22bGoaskzCfvVNbo/v3i34I9 H6OdgZkGqheQEAD2jNfRbmPr4z40xDMUpYGLds+1Mvg7G3Hms3j5Ef8KaLSWUNWIfwKdfSVR Qs35ccSJxAdRW5YdI6J3xZgika+3Bc4eJ05YE/nWW+PNTYevt5rqD50N3zybVYIcLoqVPpBi AZE/sf5SLiLACIJb1t/s4x+pi8vgWevxVVT9u8V1f8zYErmHSLSqjxii0B3eRZphX9NCJOv9 +tfFZhnENInhn9gT7H4e2YumUltEy3jacONHJF3CC1pvvWEa6lEyypclMOkHQwNON7DLABEB AAHNLFJlbmF0byBCb3RlbGhvIChGcmVlQlNEKSA8Z2FyZ2FARnJlZUJTRC5vcmc+wsCXBBMB CgBBAhsDBQkFo5qABQsJCAcDBRUKCQgLBRYDAgEAAh4FAheAFiEERL7Dxegbnh7xTiQ5Ob6P xxJcZXoFAmSta78CGQEACgkQOb6PxxJcZXrYlggAgaZmr6c1yIWzN8VksHrHpwt/uxONEP+h ljy3yfrMsgfS5wx5Uzgfih1xYZUFC6jiI63CetqBqJpp3g1klRS1UWYKx2NeXphDMYZEdPm/ a6sXh4bKZbk6IE8Yn0/YiRT57d9DtbvswC7Gn7Igj/MSbhl49TvTGyvuB6juaffVoYZViomx 5zMoee8Ml2o2qj3MrCJ+/K8GU54RlpOGqGRsqdwVdr9XEWub6fF2YFwR46cjmbiU3P5urFHH nkJlBGPIwKxHimTW0lZsdx9aCKRDd/D80/WOEzXmk3k8B9lv/GsvOluHmveLhJG1R1tIJ31I f2q8dfTvqsQXnu8CcWRcgc7ATQRkrWr8AQgA1DufoxScA+CWQbUR6zExIu8wXQKrhuRt4DG2 BgynT7EMUvEBadcbQRZXsBpemNfncc9Axyut/+rWiyKJf9BLQuo/9QYmSRvW1U6+0LJUYmdg kMyBeYaPk+vnssv/u9jLuvV7FVgyE0yk1iaWIKOVDD+XrQCOvGw9uSceBrQyCyo3A/eRM/+p vnDCaywR63PKE+3axk6lfNdGK3TnaWmS30/ZDCZlNsXuqprqR4JdT5wXids5o36dsuJ5EZ20 s5hNMD34s4Yr1Y1R9elH6qBsFCpozs0+jwrArxq+UJJCR6hH5W8ZEwJtRC8tzR8mRE1WywzX BXYj0YhfGztQIxZckQARAQABwsB8BBgBCgAmFiEERL7Dxegbnh7xTiQ5Ob6PxxJcZXoFAmSt avwCGwwFCQWjmoAACgkQOb6PxxJcZXr1vgf/SKXhoZcUU5I7TqcbHg0lJz9tICTupCGHWr/s SQgjh9oEM5j1wqW7FlCGP90Tl9K0g3ow9YdbhU7VK470o6pymX9V9eLHzGgkZO/KMEtGBeK1 u+5ePjCJ/MK5B21KODLSU7WrIL1VN5ceXfQPLYt02LMLtPri+oduHD6RNBeA7US1DUzleq5F 9NHGbvV2U7BdDUezpiO8NaFjFZVB11I5d99FxUM5XGVstI3VhsRKZxjY0KnqJzaQgTFsPGmv AUfZVIN1pXgXiedhPXpr8+Y64jP+pHVwpVmh1zYWL6+q3kqFOUVP6c5iiMeoEXZvgJz7x/AC ek3X5gvu8Hpcv+MZIg== In-Reply-To: <7924C7D3-AB69-4288-BF5A-D13008016076@yahoo.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 07/10/24 16:07, Mark Millard wrote: > On Oct 7, 2024, at 11:34, Renato Botelho wrote: > >> On 07/10/24 14:49, Mark Millard wrote: >>> Renato Botelho wrote on >>> Date: Mon, 07 Oct 2024 14:20:00 UTC : >>>> On 07/10/24 03:53, Baptiste Daroussin wrote: >>>>> Hello everyone, >>>>> >>>>> Just a reminder when using pkgbase, make sure you do activate >>>>> BACKUP_LIBRARIES=true in pkg.conf >>>>> >>>>> This way pkg will save a copy of libmd.so.6 during the upgrade in >>>>> /usr/local/lib/pkg/libmd.so.6 (and create a package named compat-libraries to >>>>> track it). >>>>> >>>>> This will prevent you from having a couple of days without a new version of pkg >>>>> built against libmd.so.7 available (or some of the packages which also requires >>>>> libmd.so.7. >>>> >>>> I have BACKUP_LIBRARIES=true on my pkg.conf and upgraded a system >>>> running CURRENT this morning using pkgbase. After that I got pkg linked >>>> with both libmd.so.6 and libmd.so.7: >>>> >>>> root@x230:~ # ldd /usr/local/sbin/pkg >>>> /usr/local/sbin/pkg: >>>> libelf.so.2 => /lib/libelf.so.2 (0x28b8027a6000) >>>> libjail.so.1 => /lib/libjail.so.1 (0x28b80340b000) >>>> libssl.so.30 => /usr/lib/libssl.so.30 (0x28b80436a000) >>>> libcrypto.so.30 => /lib/libcrypto.so.30 (0x28b804e18000) >>>> libarchive.so.7 => /usr/lib/libarchive.so.7 (0x28b805e0a000) >>>> libbz2.so.4 => /usr/lib/libbz2.so.4 (0x28b80710e000) >>>> libz.so.6 => /lib/libz.so.6 (0x28b807ccc000) >>>> liblzma.so.5 => /usr/lib/liblzma.so.5 (0x28b808368000) >>>> libprivatezstd.so.5 => /usr/lib/libprivatezstd.so.5 >>>> (0x28b806205000) >>>> libm.so.5 => /lib/libm.so.5 (0x28b808952000) >>>> libutil.so.9 => /lib/libutil.so.9 (0x28b808ad1000) >>>> libmd.so.6 => not found (0) >>>> libthr.so.3 => /lib/libthr.so.3 (0x28b809f4c000) >>>> libc.so.7 => /lib/libc.so.7 (0x28b80ae53000) >>>> libbsdxml.so.4 => /lib/libbsdxml.so.4 (0x28b80c034000) >>>> libmd.so.7 => /lib/libmd.so.7 (0x28b80cdf7000) >>>> libsys.so.7 => /lib/libsys.so.7 (0x28b80ddb1000) >>>> [vdso] (0x28b801eee000) >>> . . . >>> It would help for tracking down were the dependencies are >>> to use "ldd -a ". It shows what each involved *.so.* >>> in turn references of itself. The example below is for >>> a context that does not have the problem you report >>> (not a pkgbase context) but it illustrates the type of >>> extra information that is output: >>> # ldd -a /usr/local/sbin/pkg >>> /usr/local/sbin/pkg: >>> libelf.so.2 => /lib/libelf.so.2 (0xc4840f00000) >>> libjail.so.1 => /lib/libjail.so.1 (0xc48410d3000) >>> libssl.so.30 => /usr/lib/libssl.so.30 (0xc4841fae000) >>> libcrypto.so.30 => /lib/libcrypto.so.30 (0xc4842853000) >>> libarchive.so.7 => /usr/lib/libarchive.so.7 (0xc4843af6000) >>> libbz2.so.4 => /usr/lib/libbz2.so.4 (0xc48403f6000) >>> libz.so.6 => /lib/libz.so.6 (0xc4845351000) >>> liblzma.so.5 => /usr/lib/liblzma.so.5 (0xc48455b0000) >>> libprivatezstd.so.5 => /usr/lib/libprivatezstd.so.5 (0xc484480f000) >>> libm.so.5 => /lib/libm.so.5 (0xc48463e4000) >>> libutil.so.9 => /lib/libutil.so.9 (0xc4846b3d000) >>> libmd.so.7 => /lib/libmd.so.7 (0xc48477f3000) >>> libthr.so.3 => /lib/libthr.so.3 (0xc4848518000) >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /lib/libelf.so.2: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /lib/libjail.so.1: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /usr/lib/libssl.so.30: >>> libcrypto.so.30 => /lib/libcrypto.so.30 (0xc4842853000) >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /lib/libcrypto.so.30: >>> libthr.so.3 => /lib/libthr.so.3 (0xc4848518000) >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /usr/lib/libarchive.so.7: >>> libz.so.6 => /lib/libz.so.6 (0xc4845351000) >>> libbz2.so.4 => /usr/lib/libbz2.so.4 (0xc48403f6000) >>> liblzma.so.5 => /usr/lib/liblzma.so.5 (0xc48455b0000) >>> libbsdxml.so.4 => /lib/libbsdxml.so.4 (0xc4849553000) >>> libprivatezstd.so.5 => /usr/lib/libprivatezstd.so.5 (0xc484480f000) >>> libcrypto.so.30 => /lib/libcrypto.so.30 (0xc4842853000) >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /usr/lib/libbz2.so.4: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /lib/libz.so.6: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /usr/lib/liblzma.so.5: >>> libmd.so.7 => /lib/libmd.so.7 (0xc48477f3000) >>> libthr.so.3 => /lib/libthr.so.3 (0xc4848518000) >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /usr/lib/libprivatezstd.so.5: >>> libthr.so.3 => /lib/libthr.so.3 (0xc4848518000) >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /lib/libm.so.5: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /lib/libutil.so.9: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /lib/libmd.so.7: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> /lib/libthr.so.3: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> libsys.so.7 => /lib/libsys.so.7 (0xc484af47000) >>> /lib/libc.so.7: >>> libsys.so.7 => /lib/libsys.so.7 (0xc484af47000) >>> /lib/libbsdxml.so.4: >>> libc.so.7 => /lib/libc.so.7 (0xc484889d000) >>> [preloaded] >>> [vdso] (0xc483f927000) >>> I expect that /usr/local/sbin/pkg has the only reference >>> to libmd.so.6 in your context and that /usr/lib/liblzma.so.5 >>> is what is referencing libmd.so.7 . >>> If so, I'll note that you can avoid the problem by using >>> pkg-static instead of pkg as your command: >>> # ldd -a /usr/local/sbin/pkg-static >>> ldd: /usr/local/sbin/pkg-static: not a dynamic ELF executable >>> So there is no use of *.so.* files for pkg-static . >>> (I make no claims about other programs that might be involved >>> overall.) >> >> I've fixed it by building pkg on local ports tree. But anyway I've forced a bootstrap to have the one provided by official repository installed again and ran ldd -a to collect data >> >> root@x230:~ # ldd -a /usr/local/sbin/pkg >> /usr/local/sbin/pkg: >> libelf.so.2 => /lib/libelf.so.2 (0x1a55a0de2000) >> libjail.so.1 => /lib/libjail.so.1 (0x1a55a1fae000) >> libssl.so.30 => /usr/lib/libssl.so.30 (0x1a55a1fc2000) >> libcrypto.so.30 => /lib/libcrypto.so.30 (0x1a55a2e3a000) >> libarchive.so.7 => /usr/lib/libarchive.so.7 (0x1a55a3e98000) >> libbz2.so.4 => /usr/lib/libbz2.so.4 (0x1a55a4a17000) >> libz.so.6 => /lib/libz.so.6 (0x1a55a4d85000) >> liblzma.so.5 => /usr/lib/liblzma.so.5 (0x1a55a57ed000) >> libprivatezstd.so.5 => /usr/lib/libprivatezstd.so.5 (0x1a55a640f000) >> libm.so.5 => /lib/libm.so.5 (0x1a55a696c000) >> libutil.so.9 => /lib/libutil.so.9 (0x1a55a6e12000) >> libmd.so.6 => not found (0) >> libthr.so.3 => /lib/libthr.so.3 (0x1a55a7a49000) >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /lib/libelf.so.2: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /lib/libjail.so.1: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /usr/lib/libssl.so.30: >> libcrypto.so.30 => /lib/libcrypto.so.30 (0x1a55a2e3a000) >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /lib/libcrypto.so.30: >> libthr.so.3 => /lib/libthr.so.3 (0x1a55a7a49000) >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /usr/lib/libarchive.so.7: >> libz.so.6 => /lib/libz.so.6 (0x1a55a4d85000) >> libbz2.so.4 => /usr/lib/libbz2.so.4 (0x1a55a4a17000) >> liblzma.so.5 => /usr/lib/liblzma.so.5 (0x1a55a57ed000) >> libbsdxml.so.4 => /lib/libbsdxml.so.4 (0x1a55a834a000) >> libprivatezstd.so.5 => /usr/lib/libprivatezstd.so.5 (0x1a55a640f000) >> libcrypto.so.30 => /lib/libcrypto.so.30 (0x1a55a2e3a000) >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /usr/lib/libbz2.so.4: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /lib/libz.so.6: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /usr/lib/liblzma.so.5: >> libmd.so.7 => /lib/libmd.so.7 (0x1a55a853a000) >> libthr.so.3 => /lib/libthr.so.3 (0x1a55a7a49000) >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /usr/lib/libprivatezstd.so.5: >> libthr.so.3 => /lib/libthr.so.3 (0x1a55a7a49000) >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /lib/libm.so.5: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /lib/libutil.so.9: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /lib/libthr.so.3: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> libsys.so.7 => /lib/libsys.so.7 (0x1a55a8908000) >> /lib/libc.so.7: >> libsys.so.7 => /lib/libsys.so.7 (0x1a55a8908000) >> /lib/libbsdxml.so.4: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> /lib/libmd.so.7: >> libc.so.7 => /lib/libc.so.7 (0x1a55a7aa9000) >> [preloaded] >> [vdso] (0x1a559fe96000) >> >> It seems pkg is still linked with libmd.so.6 and lzma is linked with libmd.so.7. > > So, as I expected. Good to know. > >> Anyway we have a problem, keeping libmd.so.6 seems not to be enough to have pkg working > > Typing/using pkg-static instead of pkg should not fail > for libmd.so.6 or libmd.so.7 reasons for its down > execution, even when using just pkg would fail for > such. An example usage is: > > # pkg-static info -l pkg | grep /sbin/ > /usr/local/sbin/pkg > /usr/local/sbin/pkg-static > > The above should work even in a context with the > libmd.so.6 problem for using just pkg . (The > /usr/bin/grep part should work too.) > > For reference (the context does not have the > libmd.so.6 problem): > > # pkg info -l pkg | grep /sbin/ > /usr/local/sbin/pkg > /usr/local/sbin/pkg-static > > Personally, my scripts that use pkg actually run > pkg-static so that the script is less dependent > on the environment for reasonable operation. Yes, I know about pkg-static and I also managed to use it when needed. My point is the main message of the original email about using BACKUP_LIBRARIES=true, which says: This will prevent you from having a couple of days without a new version of pkg built against libmd.so.7 available (or some of the packages which also requires libmd.so.7. And in fact it's not true. Even if you have libmd.so.6 on your system, pkg is broken. -- Renato Botelho