Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Sep 2022 08:39:39 +0200
From:      Alexander Leidinger <Alexander@leidinger.net>
To:        Dan Mahoney <freebsd@gushi.org>
Cc:        ports@freebsd.org
Subject:   Re: Python version dependencies in pkg
Message-ID:  <20220929083939.Horde.Viq2uLBgUctcrsgmaJxN_1u@webmail.leidinger.net>
In-Reply-To: <65597c37-813b-d0ed-ea9f-8591b68cf097@gwdg.de>
References:  <8B490359-27A3-410C-AE98-C1362D4FA9F0@gushi.org> <CAN6yY1sGnDF-oReRMFeVz78oGoTfUvsvwUOQwoBZWN9ibjTw3A@mail.gmail.com> <B2A3A400-F21A-4E92-8116-41E7945E4E5C@gushi.org> <CAN6yY1ujCH9Xnv3QN-GF8hN75v%2BxGkOTHrsr25jzxGNGdYW2vQ@mail.gmail.com> <89D2B2D7-FA3D-46F5-A93B-4846950A157C@gushi.org> <65597c37-813b-d0ed-ea9f-8591b68cf097@gwdg.de>

next in thread | previous in thread | raw e-mail | index | archive | help
This message is in MIME format and has been PGP signed.

--=_jbiGvh8gvmRC3Hz_jA88yWN
Content-Type: text/plain; charset=utf-8; format=flowed; DelSp=Yes
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Quoting Rainer Hurling <rhurlin@gwdg.de> (from Thu, 29 Sep 2022=20=20
06:43:49=20+0200):

> Hi Dan,
>
> Am 28.09.22 um 23:01 schrieb Dan Mahoney:
>>
>>
>>> On Sep 26, 2022, at 20:22, Kevin Oberman <rkoberman@gmail.com=20=20
>>>=20<mailto:rkoberman@gmail.com>> wrote:
>>>
>>> On Mon, Sep 26, 2022, 18:13 Dan Mahoney <freebsd@gushi.org=20=20
>>>=20<mailto:freebsd@gushi.org>> wrote:
>>>
>>>
>>>
>>>>    On Sep 26, 2022, at 09:27, Kevin Oberman <rkoberman@gmail.com
>>>>    <mailto:rkoberman@gmail.com>> wrote:
>>>>
>>>>    On Mon, Sep 26, 2022 at 2:58 AM Dan Mahoney <freebsd@gushi.org
>>>>    <mailto:freebsd@gushi.org>> wrote:
>>>>
>>>>        All,
>>>>
>>>>        A quick question:
>>>>
>>>>        If a pkg depends on python, but not a specific version, it
>>>>        will simply pick a version to install (I guess, whatever
>>>>        version was the default when the pkg was built, 3.8 right
>>>>        now), correct?
>>>>
>>>>        If you have 3.9 installed, that will satifsfy dependencies,
>>>>        and it won't install python3.8, correct? Or are the dependent
>>>>        versions for interpretec languages in pkg locked to whatever
>>>>        the default is?
>>>>
>>>>        Assuming "any python will work", If you have 3.8 installed,
>>>>        and later install 3.9 -- is there any easy way to point your
>>>>        package at the new version as the new dependency, without
>>>>        deinstalling/reinstalling it?
>>>>
>>>>        -Dan
>>>>
>>>>
>>>>    It will use the version specified as default in
>>>>    /usr/ports/Mk/bsd.default-versions.mk
>>>>    <http://bsd.default-versions.mk/>.
>>>
>>>    To be clear, I'm talking about pkg install, not port building.
>>>
>>>    So I understand -- that value is somehow baked in to the package
>>>    tree somewhere?=C2=A0 Because pkg alone doesn't look at the ports tr=
ee
>>>    on the installing machine(you do not need to have ports extracted
>>>    to install packages), nor do I believe it looks at make.conf,
>>>
>>>    If so, where in pkg do I find the default version?=C2=A0 Is it
>>>    somewhere in the repository that's fetched before I install any
>>>    packages?
>>>
>>>    -Dan
>>>
>>>
>>> You are correct.=C2=A0 But the packages are built using the same=20=20
>>>=20Makefile and the same defaults as when built from ports for the=20=20
>>>=20specified version of FreeBSD as if it was built from ports. The Mk=20=
=20
>>>=20files are updated with ports, so all packages change when the=20=20
>>>=20change is committed to the defaults file, though they will only=20=20
>>>=20take effect when the quarter changes unless you're using LATEST=20=20
>>>=20packages.
>>
>> Okay, so in either the package file, or the repo file, is there a=20=20
>>=20bit that says "whatever is the default" or that explicitly says "if=20=
=20
>>=20there's not a python, install 3.8"?
>
> There is PYTHON_DEFAULT (set to 3.9 ATM) in=20=20
>=20ports/Mk/bsd.default-versions.mk. You can override this for example=20=
=20
>=20by an entry in /etc/make.conf:
>
> DEFAULT_VERSIONS+=3D python=3D3.10 python3=3D3.10
>
>>
>> I realize I'm asking weird minute questions, but I'm noticing that=20=20
>>=20across our fleet we have some blend of machines that are 3.7, 3.8,=20=
=20
>>=20and 3.9, and trying to just remove 3.7 attempts to deinstall=20=20
>>=20packages that would work with 3.8.
>
> To update from one Python version to another, there are descriptions=20=
=20
>=20in /usr/ports/UPDATING, see entry from 20220626.
>
> After changing Python itself (i.e. from 3.7 to 3.9), rebuilding=20=20
>=20depending py3x-packages will do this version change for you (i.e.=20=20
>=20from py3.7-* to py3.9-*, ...). It works via the so called flavors.

To extend a little bit on that:
"pkg info | grep py3" will give you a list of ports which are=20=20
depending=20on a specific python version. If it lists py37-xxx it means=20=
=20
the=20xxx port depends upon python 3.7. If you then delete python 3.7=20=20
pkg=20will also ask you if it is ok to delete all the py37-* ports.

So for a given system with already installed ports it is not simply=20=20
installing=20python 3.9 and deleting 3.7. It is also updating all the=20=20
ports=20which depend upon 3.7.

Bye,
Alexander.

--=20
http://www.Leidinger.net=20Alexander@Leidinger.net: PGP 0x8F31830F9F2772BF
http://www.FreeBSD.org    netchild@FreeBSD.org  : PGP 0x8F31830F9F2772BF

--=_jbiGvh8gvmRC3Hz_jA88yWN
Content-Type: application/pgp-signature
Content-Description: Digitale PGP-Signatur
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIzBAABCAAdFiEER9UlYXp1PSd08nWXEg2wmwP42IYFAmM1PaoACgkQEg2wmwP4
2IbpBA/8Dgaw+I+7TXWP5/70BrCuu0sJlIZsyYuM5lB6ELgBj3SDYo1b8y7CSsJO
gnAFtxpBIuyJdYgdB4xsQDxAqwL2p2OyD76jLDuAKDDXNtBqFeV7/RR7jbUu4Yq3
QiVlO1V4UVVDu/asO1dTGa6O2f7UCa2D5ibH1KpnpsCGk2KvQ39OkDVCF4Y1vPlN
D68RamGIz1/dQMVJb3mISJa5wkNJGKeatBxnb3dvqOlZkv4CaeLPa75/6fKQpBuP
spzLWQf2+kGfTZGPL0X6ADKmLR3r+/xDvqU01NvFywfcjyx9gjCskXGCvfk9d87r
8YB5V/1PTor13JBfDn7lSHYN796I+b1tlHpAxjLXs5qMWY4rMw0ms0BPDOoZ2f9o
H8z+IK8A7vuzwC78bU8oCgGCNW5SdmrZKe/0Ak7GMcljl/HnU7si+sVUBydASgNx
w8wjd2hAWMYmi/AHu0cZb6Mm+lZzenncVgAns7P5gwOHDGmWT7IBCYfA7orcBOi7
4ryL3VkHQK2rlI6Yc3sTXSlA5JxtgkPtwfoJvxcVwv2jnPxtAsF/x4WhNj93NCwd
wzGyo7I031eOkpfdI8QNa8r/EzCzKHpCq0k7w+8DSuIqoGO8Gma+gU6ELP5ggLze
EhTs7Z7hFRHpriZeoWUtAFFl1L1mKAgu9DlPv9NgqWAotDbIAyY=
=tkus
-----END PGP SIGNATURE-----

--=_jbiGvh8gvmRC3Hz_jA88yWN--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20220929083939.Horde.Viq2uLBgUctcrsgmaJxN_1u>