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>