From nobody Tue Oct 29 08:15:39 2024 X-Original-To: pkg@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 4Xd33b3vs2z5b9QL for ; Tue, 29 Oct 2024 08:15:39 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (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 "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Xd33b1pzmz4gCb for ; Tue, 29 Oct 2024 08:15:39 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1730189739; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=NA+u3jpDNwchI1asBajNmu7bptJFf1f2msOwMr3vEHQ=; b=biRjmX63TUOjqR7h+BnAp7uVQx9VnysLFHA5A+5YT70wereJ1zOxds3CzrpEz3VaGlzxm1 dCjhc3PRJqsCOxsOhCQSAQQu/8VYYmydzRc+ZXIwJ9tjYBKTl2lzDjvyB6BpVl0IVttUX9 5P+u2HkQU4iideJQ9dD4CdO+DHIHqiZD4oZSR62LarSCkM/13NoIelFydxQshi0EOpgDdS UmhVGMuBSkT64YUZJZae8+6HOiCgAGb2bBJOQGDjVm0P8MOrZBi3fELi9lnpoBua4hfr7W BctYoR4OWxGsccVI2D1b0/1GycF6J1wmkI5del5BCUNTNHavzhZRyrZhNsdBaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1730189739; a=rsa-sha256; cv=none; b=tDoyQDoxgg0+EJVyLq7LFSnyRL9Ennnr9PJdel/fI3hdCTT1Ac4YpgJID6+ecT0tBsLi14 Bnvzf83zWnJDh8fecPLMB0JYow1/tQiHln621rz3o6l/CAgwxgat0eDAA/0LA6+IbizvXp XuEEhCjraYxpF96RCpASuAJyrD9mbK13ocAl1pxRmm9AIGspcrBhfeEd/jLlz7HUvGQj6A ZMgOKb4hlV6eop7dwglKxfdCO6TfS9aQtC+4mhhw22YRwEcyjg5+TUkA5841o11C6AwrUP mjzEYQtDKnQpZSKR2thrpTtqtj+GfGj9BOSgj59zO43wV/2A9ZfYhB4oqnjC3Q== Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2610:1c1:1:606c::50:1d]) (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 did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Xd33b1M75zGRM for ; Tue, 29 Oct 2024 08:15:39 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.5]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id 49T8Fdi4023903 for ; Tue, 29 Oct 2024 08:15:39 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 49T8FdWb023902 for pkg@FreeBSD.org; Tue, 29 Oct 2024 08:15:39 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: pkg@FreeBSD.org Subject: [Bug 265061] ports-mgmt/pkg pkgbase wrong depends, lib32 instead of libs for many packages Date: Tue, 29 Oct 2024 08:15:39 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Ports & Packages X-Bugzilla-Component: Individual Port(s) X-Bugzilla-Version: Latest X-Bugzilla-Keywords: pkgbase X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: keve@keve.hu X-Bugzilla-Status: Open X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: pkg@FreeBSD.org X-Bugzilla-Flags: maintainer-feedback? X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated List-Id: Binary package management and package tools discussion List-Archive: https://lists.freebsd.org/archives/freebsd-pkg List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-pkg@FreeBSD.org MIME-Version: 1.0 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D265061 keve@keve.hu changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |keve@keve.hu --- Comment #8 from keve@keve.hu --- IMO this is a problem with how pkgbase is creating packages and not an issue with pkg. As an example, here are the manifests for FreeBSD-libbsm(-lib32). FreeBSD-libbsm: name: "FreeBSD-libbsm" origin: "base" version: "14.1" comment: "libbsm package" maintainer: "re@FreeBSD.org" www: "https://www.FreeBSD.org" abi: "FreeBSD:14:amd64" arch: "freebsd:14:" prefix: "/" flatsize: 108888 timestamp: 1730187871 licenselogic: "single" licenses: [ "BSD2CLAUSE" ] desc: "libbsm package" categories: [ "base" ] shlibs_required: [ "libc.so.7" ] shlibs_provided: [ "libbsm.so.3" ] annotations: { FreeBSD_version: "1401000", repo_type: "binary", repository: "local-base" } files: { /usr/lib/libbsm.so.3: "1$a8b14ac2b9a568a5f0cbb3b46031d2fbef4f806b2739dcc70efbbd2dde491cef" } FreeBSD-libbsm-lib32: name: "FreeBSD-libbsm-lib32" origin: "base" version: "14.1" comment: "libbsm package (32-bit Libraries)" maintainer: "re@FreeBSD.org" www: "https://www.FreeBSD.org" abi: "FreeBSD:14:amd64" arch: "freebsd:14:" prefix: "/" flatsize: 98312 timestamp: 1730187873 licenselogic: "single" licenses: [ "BSD2CLAUSE" ] desc: "libbsm package" categories: [ "base" ] shlibs_required: [ "libc.so.7" ] shlibs_provided: [ "libbsm.so.3" ] annotations: { FreeBSD_version: "1401000", repo_type: "binary", repository: "local-base" } files: { /usr/lib32/libbsm.so.3: "1$6e4e94c6467156a0b84b1b7800b6b58e8734ca4aa9ced977f2007fdff200c194" } From the perspective of pkg, both packages are for the same ABI, same versi= on and both provide libbsm.so.3 (note that shlibs_required/_provided does not = have path information). Thus when looking for packages providing libbsm.so.3 the= se two alternatives are alike from pkg's perspective and any of them is a valid pick. freebsd-pkg does not embed hard depencendies between packages for shared libraries, but relies on pkg to resolve them with shlibs_required. Because of the ambiguity of the proper/lib32 version, it is pure luck which= one is picked by pkg for installation, and the whole concept of not needing to = care for dependent packages is voided. A reliable installation can only be ensur= ed if one manually adds all the library packages. The issue can should be solved by providing more information to pkg, i.e. by changing pkgbase to write a different manifest. Alternatives 1/ Make X-lib32 depend on X. This fixes the the most common case, dependenc= y on libX is ensured via a side-effect, but does not fix the libX32 case, for a lib32-package, a non lib32 package could be picked providing the library. 2/ Use hard dependencies in X-lib32 packages, and do not rely on pkg to col= lect shared lib depencencies. This solves all cases. 3/ Use hard dependencies in all packages and do not use shlibs_required/_provided functionality at all. As long as there is no way to signal "lib32", e.g. with a different ABI str= ing to pkg, there is no way for pkg to distinguish these packages and pick the right one. --=20 You are receiving this mail because: You are the assignee for the bug.=