pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: py311 conflict



On 8/15/23 11:38, nia wrote:
On Tue, Aug 15, 2023 at 12:30:58PM -0400, Greg Troxel wrote:
=> Creating binary package
/Users/bacon/Pkgsrc/pkgsrc/packages/All/py311-anytree-2.9.0.tgz
===> Installing binary package of py311-anytree-2.9.0
pkg_add: Conflicting PLIST with py310-anytree-2.9.0: bin/ebt
pkg_add: 1 package addition failed
*** Error code 1

Stop.
bmake[3]: stopped in /Users/bacon/Pkgsrc/pkgsrc/devel/py-anytree
*** Error code 1

Yep, exactly what it says.  This is how it goes with packages that
install un-namespaced binaries.

In my opinion the lack of a version suffix on the ebt binary (and
corresponding PKG_ALTERNATIVES support) is a bug, enough to file
a PR.

FYI, FreeBSD ports has USE_PYTHON=concurrent for any ports that install
files that will conflict for different python versions.  This
automatically adds a python version to all installed files and a symlink
to the default python version.

From Mk/Uses/python.mk

#       concurrent      - Indicates that the port can be installed for
#                         different python versions at the same time.
The port
#                         is supposed to use a unique prefix for certain
#                         directories using USES=uniquefiles:dirs (see the
#                         uniquefiles.mk Uses for details about the
#                         directories), if set to yes. Binaries receive an
#                         additional suffix, based on ${PYTHON_VER}.
#
#                         The values for the uniquefiles USES are set as
#                         follows:
#
#                               UNIQUE_PREFIX=  ${PYTHON_PKGNAMEPREFIX}
#                               UNIQUE_SUFFIX=  -${PYTHON_VER}
#
#                         If the port is installed for the current default
#                         python version, scripts and binaries in
#
#                               ${PREFIX}/bin
#                               ${PREFIX}/sbin
#                               ${PREFIX}/libexec
#
#                         are linked from the prefixed version to the
#                         prefix-less original name, e.g.
#                         bin/foo-2.7 --> bin/foo.



Home | Main Index | Thread Index | Old Index