From dovgelevich at magnit.ru Tue Jul 1 10:34:36 2014 From: dovgelevich at magnit.ru (Wladimir Dowgielewicz) Date: Tue, 01 Jul 2014 14:34:36 +0400 Subject: [scl.org] Missing x86 packages Message-ID: <53B28EBC.4090200@magnit.ru> Greetings, Just curious, why there is only x64 packages from "Software Collections Maintainer"? -- Best regards, Dowgielewicz Wladimir Tander CJSC From msuchy at redhat.com Tue Jul 1 11:15:08 2014 From: msuchy at redhat.com (=?ISO-8859-1?Q?Miroslav_Such=FD?=) Date: Tue, 01 Jul 2014 13:15:08 +0200 Subject: [scl.org] Missing x86 packages In-Reply-To: <53B28EBC.4090200@magnit.ru> References: <53B28EBC.4090200@magnit.ru> Message-ID: <53B2983C.7060203@redhat.com> On 07/01/2014 12:34 PM, Wladimir Dowgielewicz wrote: > Greetings, > > Just curious, why there is only x64 packages from "Software Collections Maintainer"? Because that is upstream for Red Hat Software Collections, which are delivered only for x86_64 architecture. Feel free to download source from Copr and build it for i386. -- Miroslav Suchy, RHCE, RHCDS Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys From ruslan.bors at yahoo.com Fri Jul 4 11:48:53 2014 From: ruslan.bors at yahoo.com (Ruslan Bors) Date: Fri, 4 Jul 2014 12:48:53 +0100 Subject: [scl.org] php55-5.5.13 SCL SPEC Message-ID: <1404474533.22883.YahooMailNeo@web172301.mail.ir2.yahoo.com> Hello, I have a project to install php55-5.5.13 x86_64 in prallel to an existing php53. Since I've learned about SCL I'm enthusiastic to build one out of my sources. There's CentOS-6 - SCL which comes with php54 and Remi's Php55 - epel-6-x86_64 but none of them come with sources I'm looking for. Thank you for your suggestions. Regards, Ruslan Bors -------------- next part -------------- An HTML attachment was scrubbed... URL: From msuchy at redhat.com Fri Jul 4 12:15:29 2014 From: msuchy at redhat.com (=?ISO-8859-1?Q?Miroslav_Such=FD?=) Date: Fri, 04 Jul 2014 14:15:29 +0200 Subject: [scl.org] php55-5.5.13 SCL SPEC In-Reply-To: <1404474533.22883.YahooMailNeo@web172301.mail.ir2.yahoo.com> References: <1404474533.22883.YahooMailNeo@web172301.mail.ir2.yahoo.com> Message-ID: <53B69AE1.6050509@redhat.com> On 07/04/2014 01:48 PM, Ruslan Bors wrote: > There's CentOS-6 - SCL which comes with php54 and Remi's Php55 - epel-6-x86_64 > but none of them come with sources I'm looking for. So - what you are looking for? -- Miroslav Suchy, RHCE, RHCDS Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys From ruslan.bors at yahoo.com Fri Jul 4 13:33:39 2014 From: ruslan.bors at yahoo.com (Ruslan Bors) Date: Fri, 4 Jul 2014 14:33:39 +0100 Subject: [scl.org] php55-5.5.13 SCL SPEC In-Reply-To: <1404478109.71599.YahooMailNeo@web172305.mail.ir2.yahoo.com> References: <1404474533.22883.YahooMailNeo@web172301.mail.ir2.yahoo.com> <53B69AE1.6050509@redhat.com> <1404477863.22455.YahooMailNeo@web172304.mail.ir2.yahoo.com> <1404478109.71599.YahooMailNeo@web172305.mail.ir2.yahoo.com> Message-ID: <1404480819.76001.YahooMailNeo@web172301.mail.ir2.yahoo.com> ... to elaborate more do the mentioned repositories provide the SRC.RPMs of the SCL PHP packages or anywhere else I can take them ? Regards, Ruslan Bors On Friday, July 4, 2014 2:48 PM, Ruslan Bors wrote: Hi, I'm looking for a php55-5.x.src.rpm build for SCL to apply the SPECs, with some modifications perhaps on my php55-5.13 source. Regards,Ruslan Bors On Friday, July 4, 2014 2:44 PM, Ruslan Bors wrote: Hi, I'm looking for a php55-5.x.src.rpm build for SCL to apply the SPEC, with some modifications perhaps on my php55-5.13 source. Regards, Ruslan Bors On Friday, July 4, 2014 2:15 PM, Miroslav Such? wrote: On 07/04/2014 01:48 PM, Ruslan Bors wrote: > There's CentOS-6 - SCL which comes with php54 and Remi's Php55 - epel-6-x86_64 > but none of them come with sources I'm looking for. So - what you are looking for? -- Miroslav Suchy, RHCE, RHCDS Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys _______________________________________________ SCLorg mailing list SCLorg at redhat.com https://www.redhat.com/mailman/listinfo/sclorg -------------- next part -------------- An HTML attachment was scrubbed... URL: From msuchy at redhat.com Fri Jul 4 14:03:04 2014 From: msuchy at redhat.com (=?ISO-8859-1?Q?Miroslav_Such=FD?=) Date: Fri, 04 Jul 2014 16:03:04 +0200 Subject: [scl.org] php55-5.5.13 SCL SPEC In-Reply-To: <1404480819.76001.YahooMailNeo@web172301.mail.ir2.yahoo.com> References: <1404474533.22883.YahooMailNeo@web172301.mail.ir2.yahoo.com> <53B69AE1.6050509@redhat.com> <1404477863.22455.YahooMailNeo@web172304.mail.ir2.yahoo.com> <1404478109.71599.YahooMailNeo@web172305.mail.ir2.yahoo.com> <1404480819.76001.YahooMailNeo@web172301.mail.ir2.yahoo.com> Message-ID: <53B6B418.2080605@redhat.com> On 07/04/2014 03:33 PM, Ruslan Bors wrote: > > ... to elaborate more do the mentioned repositories provide the SRC.RPMs of the SCL PHP packages or anywhere else I can > take them ? http://copr.fedoraproject.org/coprs/rhscl/php55/ http://copr.fedoraproject.org/coprs/remi/php55more/ For example source for php55.rpm is here: http://copr-be.cloud.fedoraproject.org/results/rhscl/php55/epel-6-x86_64/php55-1.1-5.el6/php55-1.1-5.el6.src.rpm You can install .repo file from the pages above and then download all the sources via yumdownloader --source php55* -- Miroslav Suchy, RHCE, RHCDS Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys From ruslan.bors at yahoo.com Mon Jul 7 08:56:02 2014 From: ruslan.bors at yahoo.com (Ruslan Bors) Date: Mon, 7 Jul 2014 09:56:02 +0100 Subject: [scl.org] php55-5.5.13 SCL SPEC In-Reply-To: <53B6B418.2080605@redhat.com> References: <1404474533.22883.YahooMailNeo@web172301.mail.ir2.yahoo.com> <53B69AE1.6050509@redhat.com> <1404477863.22455.YahooMailNeo@web172304.mail.ir2.yahoo.com> <1404478109.71599.YahooMailNeo@web172305.mail.ir2.yahoo.com> <1404480819.76001.YahooMailNeo@web172301.mail.ir2.yahoo.com> <53B6B418.2080605@redhat.com> Message-ID: <1404723362.65591.YahooMailNeo@web172306.mail.ir2.yahoo.com> Thanks, I had the same but from softwarecollections.org. Are there any plans to build an SCL for the latest 5.5.14 PHP ? -- Ruslan Bors On Friday, July 4, 2014 4:04 PM, Miroslav Such? wrote: On 07/04/2014 03:33 PM, Ruslan Bors wrote: > > ... to elaborate more do the mentioned repositories provide the SRC.RPMs of the SCL PHP packages or anywhere else I can > take them ? http://copr.fedoraproject.org/coprs/rhscl/php55/ http://copr.fedoraproject.org/coprs/remi/php55more/ For example source for php55.rpm is here: http://copr-be.cloud.fedoraproject.org/results/rhscl/php55/epel-6-x86_64/php55-1.1-5.el6/php55-1.1-5.el6.src.rpm You can install .repo file from the pages above and then download all the sources via ? yumdownloader --source php55* -- Miroslav Suchy, RHCE, RHCDS Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys _______________________________________________ SCLorg mailing list SCLorg at redhat.com https://www.redhat.com/mailman/listinfo/sclorg -------------- next part -------------- An HTML attachment was scrubbed... URL: From info at adprint.jp Tue Jul 8 01:28:49 2014 From: info at adprint.jp (=?utf-8?Q?=E3=82=A2=E3=83=89=E3=83=97=E3=83=AA=E3=83=B3=E3=83=88?=) Date: 8 Jul 2014 10:28:49 +0900 Subject: [scl.org] =?utf-8?b?4pyUIOWNsOWIt+mAmuiyqe+8j1BQ5Yqg5bel5LuY44GN?= =?utf-8?b?5ZCN5Yi644GMMTAw5p6aNDUw5YaGIOmAgeaWmeeEoeaWme+8geWuiQ==?= =?utf-8?b?44GV44Go5ZOB6LOq44Gu5Lih5pa544KS6L+95rGC44GZ44KL44Ki44OJ?= =?utf-8?b?44OX44Oq44Oz44OI44Gu5ZCN5Yi677yB?= Message-ID: An HTML attachment was scrubbed... URL: From mikem at redhat.com Tue Jul 8 21:32:48 2014 From: mikem at redhat.com (Mike McLean) Date: Tue, 08 Jul 2014 17:32:48 -0400 Subject: [scl.org] No sources on softwarecollections.org? Message-ID: <53BC6380.7020104@redhat.com> The site provides a number of rpms, but I cannot find any corresponding srpms for them. It would seem safest to always provide sources alongside any shipped builds. From jdornak at redhat.com Mon Jul 14 06:48:48 2014 From: jdornak at redhat.com (Jakub QB =?utf-8?B?RG9yxYjDoWs=?=) Date: Mon, 14 Jul 2014 02:48:48 -0400 (EDT) Subject: [scl.org] No sources on softwarecollections.org? In-Reply-To: <53BC6380.7020104@redhat.com> References: <53BC6380.7020104@redhat.com> Message-ID: <835297151.10462678.1405320528573.JavaMail.zimbra@redhat.com> You are right, they are not easy to find, because there are no extra links to them. But if You click "browse", You may find the SRPMs in the repository. Once You install the RPM with YUM repository configuration, You may get SRPMs using yumdownloader. There may still be some repositories missing their SRPMs, as this does not work from the very beginning. I will check it and try to manually sync them from Copr. Regards, QB ----- Original Message ----- From: "Mike McLean" To: sclorg at redhat.com Sent: Tuesday, July 8, 2014 11:32:48 PM Subject: [scl.org] No sources on softwarecollections.org? The site provides a number of rpms, but I cannot find any corresponding srpms for them. It would seem safest to always provide sources alongside any shipped builds. _______________________________________________ SCLorg mailing list SCLorg at redhat.com https://www.redhat.com/mailman/listinfo/sclorg From mikem at redhat.com Mon Jul 14 13:46:18 2014 From: mikem at redhat.com (Mike McLean) Date: Mon, 14 Jul 2014 09:46:18 -0400 Subject: [scl.org] No sources on softwarecollections.org? In-Reply-To: <835297151.10462678.1405320528573.JavaMail.zimbra@redhat.com> References: <53BC6380.7020104@redhat.com> <835297151.10462678.1405320528573.JavaMail.zimbra@redhat.com> Message-ID: <53C3DF2A.7080503@redhat.com> On 07/14/2014 02:48 AM, Jakub QB Dor??k wrote: > You are right, they are not easy to find, because there are no extra > links to them. But if You click "browse", You may find the SRPMs in > the repository. Once You install the RPM with YUM repository > configuration, You may get SRPMs using yumdownloader. > > There may still be some repositories missing their SRPMs, as this > does not work from the very beginning. I will check it and try to > manually sync them from Copr. Thanks. I had been using the browse link. It was mongodb24 that initially led me there, but a number of the scl packages are missing sources. E.g. https://www.softwarecollections.org/repos/rhscl/httpd24/epel-6-x86_64/ https://www.softwarecollections.org/repos/rhscl/python27/epel-6-x86_64/ https://www.softwarecollections.org/repos/rhscl/php55/epel-6-x86_64/ https://www.softwarecollections.org/repos/rhscl/python33/epel-6-x86_64/ https://www.softwarecollections.org/repos/rhscl/mysql55/epel-6-x86_64/ https://www.softwarecollections.org/repos/rhscl/mongodb24/epel-6-x86_64/ (not a complete list) From herrold at owlriver.com Mon Jul 14 17:23:46 2014 From: herrold at owlriver.com (R P Herrold) Date: Mon, 14 Jul 2014 13:23:46 -0400 (EDT) Subject: [scl.org] No sources on softwarecollections.org? In-Reply-To: <835297151.10462678.1405320528573.JavaMail.zimbra@redhat.com> References: <53BC6380.7020104@redhat.com> <835297151.10462678.1405320528573.JavaMail.zimbra@redhat.com> Message-ID: On Mon, 14 Jul 2014, Jakub QB Dor??k wrote: > You are right, they are not easy to find, because there are no extra links to them. > But if You click "browse", You may find the SRPMs in the repository. Once You install the RPM with YUM repository configuration, You may get SRPMs using yumdownloader. would it be possible to simply expose a durable target pointing to SRPMs, or of the entire archive [e.g., 1], which something like this mirroring script might then transit: # lftp -f sclorg.conf where sclorg.conf contains mirror -c -e \ -I "*/SRPMS/*" \ -I "*/sources/*" \ -I "*src.rpm" \ -X "*" \ https://www.softwarecollections.org/archive/ \ /var/ftp/pub/mirror/sclorg/ ============= which harvests just SRPMs. -- Russ herrold [1] https://www.softwarecollections.org/archive/ ps -- the content in that new target may consist entirely of links and be made by something like this, automatically #!/bin/sh # sco mirror target builder fragment # License: gplv3+ # Copyright: (c) 2014 R P Herrold # reports: info at owlriver.com # suitable for cron # # FIXME PATHS ROOTDIR=to_root_of_present_tree DESTDIR="/var/ftp/pub/mirror/sclorg" cd [ ! -e ${DESTDIR} ] && mkdir -p ${DESTDIR} cd ${DESTDIR} for i in ` find ${ROOTDIR} -type d | grep -v "^[.]"` ; do BASDIR=`dirname $i` HASPATH=`echo "${BASDIR}" | sed -e "s@${ROOTDIR}@${DESTDIR}@g"` [ ! -e ${HASPATH} ] && mkdir -p ${HASPATH} for j in `find ${BASDIR} -maxdepth 1 -name "*.rpm"` ; [ ! -e $j ] && ln -s $j ${HASPATH} done # # add inverse logic to rm links to files aged away out # out of the source tree # TBD FIXME done # I don't speculate as to the 'aging away' process as I don't quite understand what the process is, to be able to graft into it From alanr at unix.sh Mon Jul 14 21:06:30 2014 From: alanr at unix.sh (Alan Robertson) Date: Mon, 14 Jul 2014 15:06:30 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) Message-ID: <53C44656.9070801@unix.sh> Hi, I'm creating an RPM (and spec file) that needs Python 2.7 (the python27 scl). When I generate it for RHEL6/CentOS6, I the RPM I create has some automatically generated dependencies which python27 does not seem to fulfill... Error: Package: assimilation-cma-0.1.4-0.30.x86_64 (/assimilation-cma-0.1.4-0.30.x86_64) Requires: python(abi) = 2.7 Installed: python-2.6.6-52.el6.x86_64 (@Updates/$releasever) python(abi) = 2.6 Available: python-2.6.6-51.el6.x86_64 (base) python(abi) = 2.6 The spec file knows if it needs python27 or not. What do I do in my spec file to make this problem go away? -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce From redhat at veggiechinese.net Mon Jul 14 23:46:29 2014 From: redhat at veggiechinese.net (Will Yardley) Date: Mon, 14 Jul 2014 16:46:29 -0700 Subject: [scl.org] MySQL for ror40 / ruby200 Message-ID: <20140714234629.GB96702@aura.veggiechinese.net> Am I missing something, or are there no Ruby MySQL bindings for the EL6 Ruby 2 / Rails 4 packages at: https://www.softwarecollections.org/repos/rhscl/ I see sqlite and mongo drivers; while I get that many Ruby developers are moving towards other options, is there a way to get the MySQL bindings and / or can someone build them? w From jdornak at redhat.com Tue Jul 15 13:01:37 2014 From: jdornak at redhat.com (Jakub QB =?utf-8?B?RG9yxYjDoWs=?=) Date: Tue, 15 Jul 2014 09:01:37 -0400 (EDT) Subject: [scl.org] No sources on softwarecollections.org? In-Reply-To: References: <53BC6380.7020104@redhat.com> <835297151.10462678.1405320528573.JavaMail.zimbra@redhat.com> Message-ID: <868113215.11588378.1405429297607.JavaMail.zimbra@redhat.com> I suppose that reposync is able to do this perfectly for You, isn't it? QB ----- Original Message ----- From: "R P Herrold" To: sclorg at redhat.com Sent: Monday, July 14, 2014 7:23:46 PM Subject: [scl.org] No sources on softwarecollections.org? On Mon, 14 Jul 2014, Jakub QB Dor??k wrote: > You are right, they are not easy to find, because there are no extra links to them. > But if You click "browse", You may find the SRPMs in the repository. Once You install the RPM with YUM repository configuration, You may get SRPMs using yumdownloader. would it be possible to simply expose a durable target pointing to SRPMs, or of the entire archive [e.g., 1], which something like this mirroring script might then transit: # lftp -f sclorg.conf where sclorg.conf contains mirror -c -e \ -I "*/SRPMS/*" \ -I "*/sources/*" \ -I "*src.rpm" \ -X "*" \ https://www.softwarecollections.org/archive/ \ /var/ftp/pub/mirror/sclorg/ ============= which harvests just SRPMs. -- Russ herrold [1] https://www.softwarecollections.org/archive/ ps -- the content in that new target may consist entirely of links and be made by something like this, automatically #!/bin/sh # sco mirror target builder fragment # License: gplv3+ # Copyright: (c) 2014 R P Herrold # reports: info at owlriver.com # suitable for cron # # FIXME PATHS ROOTDIR=to_root_of_present_tree DESTDIR="/var/ftp/pub/mirror/sclorg" cd [ ! -e ${DESTDIR} ] && mkdir -p ${DESTDIR} cd ${DESTDIR} for i in ` find ${ROOTDIR} -type d | grep -v "^[.]"` ; do BASDIR=`dirname $i` HASPATH=`echo "${BASDIR}" | sed -e "s@${ROOTDIR}@${DESTDIR}@g"` [ ! -e ${HASPATH} ] && mkdir -p ${HASPATH} for j in `find ${BASDIR} -maxdepth 1 -name "*.rpm"` ; [ ! -e $j ] && ln -s $j ${HASPATH} done # # add inverse logic to rm links to files aged away out # out of the source tree # TBD FIXME done # I don't speculate as to the 'aging away' process as I don't quite understand what the process is, to be able to graft into it _______________________________________________ SCLorg mailing list SCLorg at redhat.com https://www.redhat.com/mailman/listinfo/sclorg From herrold at owlriver.com Tue Jul 15 15:22:10 2014 From: herrold at owlriver.com (R P Herrold) Date: Tue, 15 Jul 2014 11:22:10 -0400 (EDT) Subject: [scl.org] No sources on softwarecollections.org? In-Reply-To: <868113215.11588378.1405429297607.JavaMail.zimbra@redhat.com> References: <53BC6380.7020104@redhat.com> <835297151.10462678.1405320528573.JavaMail.zimbra@redhat.com> <868113215.11588378.1405429297607.JavaMail.zimbra@redhat.com> Message-ID: On Tue, 15 Jul 2014, Jakub QB Dor??k wrote: > I suppose that reposync is able to do this perfectly for You, isn't it? I don't know, as I don't mirror from a RH derived system, but rather from a NAS device with lftp ... Is there enough information in the SCL.O yum metadata to include sources. I don's see it in: https://www.softwarecollections.org/en/ (indeed, it is not at all clear in the web presence how to simply download the per collection /etc/yum.repos.d/ .repo specification file for the site en mass [thus my script in my prior email in this thread] I see the --source option 'also' grabs .src.rpm files, but there is certainly no way shown in the man page to ignore binaries. We don't use third-party binaries off quasi-untrusted sources, and so would never use then, and would prefer not to spend the bandwidth, nor use the drive space for something not of use to us -- Russ herrold From evilensky at gmail.com Tue Jul 15 15:52:43 2014 From: evilensky at gmail.com (Eugene Vilensky) Date: Tue, 15 Jul 2014 10:52:43 -0500 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C44656.9070801@unix.sh> References: <53C44656.9070801@unix.sh> Message-ID: On Mon, Jul 14, 2014 at 4:06 PM, Alan Robertson wrote: > I'm creating an RPM (and spec file) that needs Python 2.7 (the python27 > scl). When I generate it for RHEL6/CentOS6, I the RPM I create has some > automatically generated dependencies which python27 does not seem to > fulfill... ?Hi Alan, I'm only beginning to look into doing this for myself, but this might be how your spec might need to be modified to be SCL aware?: https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/1/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html ? -------------- next part -------------- An HTML attachment was scrubbed... URL: From pkovar at redhat.com Tue Jul 15 16:03:05 2014 From: pkovar at redhat.com (Petr Kovar) Date: Tue, 15 Jul 2014 18:03:05 +0200 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: References: <53C44656.9070801@unix.sh> Message-ID: <20140715180305.b782107720da03e203dbfa95@redhat.com> Hi, On Tue, 15 Jul 2014 10:52:43 -0500 Eugene Vilensky wrote: > On Mon, Jul 14, 2014 at 4:06 PM, Alan Robertson wrote: > > > I'm creating an RPM (and spec file) that needs Python 2.7 (the python27 > > scl). When I generate it for RHEL6/CentOS6, I the RPM I create has some > > automatically generated dependencies which python27 does not seem to > > fulfill... > > > ?Hi Alan, > > I'm only beginning to look into doing this for myself, but this might be > how your spec might need to be modified to be SCL aware?: > > https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/1/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html A newer version of the doc is here: https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html This link might also be of help: https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html ? HTH, pk From alanr at unix.sh Tue Jul 15 17:14:13 2014 From: alanr at unix.sh (Alan Robertson) Date: Tue, 15 Jul 2014 11:14:13 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <20140715180305.b782107720da03e203dbfa95@redhat.com> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> Message-ID: <53C56165.6060001@unix.sh> So, my tool does not conflict with anything that RH or anyone else provides -- so it doesn't need to be an SCL package. It just *depends* on an SCL package. My code is perfectly happy to issue the scl commands when it needs to (it knows when it needs to). No one has to issue any scl commands to run my code. Both of those links seem to be oriented towards creating an SCL package. Did I miss something? Thanks! On 07/15/2014 10:03 AM, Petr Kovar wrote: > Hi, > > On Tue, 15 Jul 2014 10:52:43 -0500 > Eugene Vilensky wrote: > >> On Mon, Jul 14, 2014 at 4:06 PM, Alan Robertson wrote: >> >>> I'm creating an RPM (and spec file) that needs Python 2.7 (the python27 >>> scl). When I generate it for RHEL6/CentOS6, I the RPM I create has some >>> automatically generated dependencies which python27 does not seem to >>> fulfill... >> >> ?Hi Alan, >> >> I'm only beginning to look into doing this for myself, but this might be >> how your spec might need to be modified to be SCL aware?: >> >> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/1/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html > A newer version of the doc is here: > > https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html > > This link might also be of help: > > https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html > ? > HTH, > pk > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.com > https://www.redhat.com/mailman/listinfo/sclorg -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce From hhorak at redhat.com Tue Jul 15 18:08:51 2014 From: hhorak at redhat.com (Honza Horak) Date: Tue, 15 Jul 2014 20:08:51 +0200 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C56165.6060001@unix.sh> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> Message-ID: <53C56E33.7010907@redhat.com> On 07/15/2014 07:14 PM, Alan Robertson wrote: > So, my tool does not conflict with anything that RH or anyone else > provides -- so it doesn't need to be an SCL package. It just *depends* > on an SCL package. My code is perfectly happy to issue the scl commands > when it needs to (it knows when it needs to). No one has to issue any > scl commands to run my code. > > Both of those links seem to be oriented towards creating an SCL > package. Did I miss something? It could help if you provided the spec file. From the description so far it looks like you does not enable python27 collection in the %build and %install section, so the build and install scriptlets have not properly set environment. But I may be wrong. HTH, Honza > Thanks! > > > On 07/15/2014 10:03 AM, Petr Kovar wrote: >> Hi, >> >> On Tue, 15 Jul 2014 10:52:43 -0500 >> Eugene Vilensky wrote: >> >>> On Mon, Jul 14, 2014 at 4:06 PM, Alan Robertson wrote: >>> >>>> I'm creating an RPM (and spec file) that needs Python 2.7 (the python27 >>>> scl). When I generate it for RHEL6/CentOS6, I the RPM I create has >>>> some >>>> automatically generated dependencies which python27 does not seem to >>>> fulfill... >>> >>> ?Hi Alan, >>> >>> I'm only beginning to look into doing this for myself, but this might be >>> how your spec might need to be modified to be SCL aware?: >>> >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/1/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html >>> >> A newer version of the doc is here: >> >> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html >> >> >> This link might also be of help: >> >> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >> >> ? >> HTH, >> pk >> >> _______________________________________________ >> SCLorg mailing list >> SCLorg at redhat.com >> https://www.redhat.com/mailman/listinfo/sclorg > > From alanr at unix.sh Tue Jul 15 20:09:15 2014 From: alanr at unix.sh (Alan Robertson) Date: Tue, 15 Jul 2014 14:09:15 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C56E33.7010907@redhat.com> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> Message-ID: <53C58A6B.4080404@unix.sh> It's an install dependency issue - it builds just fine. But attaching it is a good thought. Thanks! The message below comes up when I try and install the RPM which I successfully built: *Error: Package: assimilation-cma-0.1.4-0.30.x86_64 (/assimilation-cma-0.1.4-0.30.x86_64)** ** Requires: python(abi) = 2.7** ** Installed: python-2.6.6-52.el6.x86_64 (@Updates/$releasever)** ** python(abi) = 2.6** ** Available: python-2.6.6-51.el6.x86_64 (base)** ** python(abi) = 2.6* The machine I tried to install it on *has* python27 installed on it. So, it looks to me more like the python27 package doesn't provide "python(abi) = 2.7" This particular python27 package comes from CentOS. On 07/15/2014 12:08 PM, Honza Horak wrote: > On 07/15/2014 07:14 PM, Alan Robertson wrote: >> So, my tool does not conflict with anything that RH or anyone else >> provides -- so it doesn't need to be an SCL package. It just *depends* >> on an SCL package. My code is perfectly happy to issue the scl commands >> when it needs to (it knows when it needs to). No one has to issue any >> scl commands to run my code. >> >> Both of those links seem to be oriented towards creating an SCL >> package. Did I miss something? > > It could help if you provided the spec file. From the description so > far it looks like you does not enable python27 collection in the > %build and %install section, so the build and install scriptlets have > not properly set environment. But I may be wrong. > > HTH, > Honza > >> Thanks! >> >> >> On 07/15/2014 10:03 AM, Petr Kovar wrote: >>> Hi, >>> >>> On Tue, 15 Jul 2014 10:52:43 -0500 >>> Eugene Vilensky wrote: >>> >>>> On Mon, Jul 14, 2014 at 4:06 PM, Alan Robertson wrote: >>>> >>>>> I'm creating an RPM (and spec file) that needs Python 2.7 (the >>>>> python27 >>>>> scl). When I generate it for RHEL6/CentOS6, I the RPM I create has >>>>> some >>>>> automatically generated dependencies which python27 does not seem to >>>>> fulfill... >>>> >>>> ?Hi Alan, >>>> >>>> I'm only beginning to look into doing this for myself, but this >>>> might be >>>> how your spec might need to be modified to be SCL aware?: >>>> >>>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/1/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html >>>> >>>> >>> A newer version of the doc is here: >>> >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html >>> >>> >>> >>> This link might also be of help: >>> >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >>> >>> >>> ? >>> HTH, >>> pk >>> >>> _______________________________________________ >>> SCLorg mailing list >>> SCLorg at redhat.com >>> https://www.redhat.com/mailman/listinfo/sclorg >> >> > -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: assimilation-cma.spec Type: text/x-rpm-spec Size: 15311 bytes Desc: not available URL: From alanr at unix.sh Tue Jul 15 20:16:35 2014 From: alanr at unix.sh (Alan Robertson) Date: Tue, 15 Jul 2014 14:16:35 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C56E33.7010907@redhat.com> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> Message-ID: <53C58C23.30606@unix.sh> The key thing here is that it shouldn't be complaining about a dependency which is satisfied. That is, if I have python27 installed (which I do), then it should supply python(abi) = 2.7 -- and then RPM shouldn't be complaining. So, either the python27 package doesn't supply that, or the RPM command (yum in this case) is broken. Let's see which... bash-4.1# *rpm -q --provides python* Distutils python(abi) = 2.6 python-abi = 2.6 python-ctypes = 1.0.1 python-hashlib = 20081120 python-sqlite = 2.3.2 python-uuid = 1.31 python-x86_64 = 2.6.6-52.el6 python2 = 2.6.6 python = 2.6.6-52.el6 python(x86-64) = 2.6.6-52.el6 bash-4.1# *rpm -q --provides python27* python27 = 1-10.el6.centos.alt python27(x86-64) = 1-10.el6.centos.alt bash-4.1# So, the python27 package is broken. It has an insufficient set of "provides". Significantly insufficient... On 07/15/2014 12:08 PM, Honza Horak wrote: > On 07/15/2014 07:14 PM, Alan Robertson wrote: >> So, my tool does not conflict with anything that RH or anyone else >> provides -- so it doesn't need to be an SCL package. It just *depends* >> on an SCL package. My code is perfectly happy to issue the scl commands >> when it needs to (it knows when it needs to). No one has to issue any >> scl commands to run my code. >> >> Both of those links seem to be oriented towards creating an SCL >> package. Did I miss something? > > It could help if you provided the spec file. From the description so > far it looks like you does not enable python27 collection in the > %build and %install section, so the build and install scriptlets have > not properly set environment. But I may be wrong. > > HTH, > Honza > >> Thanks! >> >> >> On 07/15/2014 10:03 AM, Petr Kovar wrote: >>> Hi, >>> >>> On Tue, 15 Jul 2014 10:52:43 -0500 >>> Eugene Vilensky wrote: >>> >>>> On Mon, Jul 14, 2014 at 4:06 PM, Alan Robertson wrote: >>>> >>>>> I'm creating an RPM (and spec file) that needs Python 2.7 (the >>>>> python27 >>>>> scl). When I generate it for RHEL6/CentOS6, I the RPM I create has >>>>> some >>>>> automatically generated dependencies which python27 does not seem to >>>>> fulfill... >>>> >>>> ?Hi Alan, >>>> >>>> I'm only beginning to look into doing this for myself, but this >>>> might be >>>> how your spec might need to be modified to be SCL aware?: >>>> >>>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/1/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html >>>> >>>> >>> A newer version of the doc is here: >>> >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html >>> >>> >>> >>> This link might also be of help: >>> >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >>> >>> >>> ? >>> HTH, >>> pk >>> >>> _______________________________________________ >>> SCLorg mailing list >>> SCLorg at redhat.com >>> https://www.redhat.com/mailman/listinfo/sclorg >> >> > -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce -------------- next part -------------- An HTML attachment was scrubbed... URL: From alanr at unix.sh Tue Jul 15 21:55:25 2014 From: alanr at unix.sh (Alan Robertson) Date: Tue, 15 Jul 2014 15:55:25 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C58C23.30606@unix.sh> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> Message-ID: <53C5A34D.7060504@unix.sh> OK. It was pointed out to me off-list that I was comparing the wrong thing. I should have been looking at python27-python. Here's what that package shows: bash-4.1# *rpm -q --provides python27-python* python27-python-abi = 2.7 python27-python(abi) = 2.7 python27-Distutils python27-python2 = 2.7.5 python27-python-sqlite = 2.3.2 python27-python-ctypes = 1.0.1 python27-python-hashlib = 20081120 python27-python-uuid = 1.31 python27-python-argparse = 2.7.5-7.el6.centos.alt python27-python = 2.7.5-7.el6.centos.alt python27-python(x86-64) = 2.7.5-7.el6.centos.alt bash-4.1# Either I'm failing to do something to appease the automagical python-version detection (which I have no idea how it figures that out), or the property names in python27-python should not have the "python27-" prefix. Anyone know which it is - and how to deal with it? It seems to me like the attributes of the provides should not be prefixed by python27. But I'm new to this SCL stuff... On 07/15/2014 02:16 PM, Alan Robertson wrote: > The key thing here is that it shouldn't be complaining about a > dependency which is satisfied. That is, if I have python27 installed > (which I do), then it should supply python(abi) = 2.7 -- and then RPM > shouldn't be complaining. > > So, either the python27 package doesn't supply that, or the RPM > command (yum in this case) is broken. Let's see which... > > bash-4.1# *rpm -q --provides python* > Distutils > python(abi) = 2.6 > python-abi = 2.6 > python-ctypes = 1.0.1 > python-hashlib = 20081120 > python-sqlite = 2.3.2 > python-uuid = 1.31 > python-x86_64 = 2.6.6-52.el6 > python2 = 2.6.6 > python = 2.6.6-52.el6 > python(x86-64) = 2.6.6-52.el6 > > bash-4.1# *rpm -q --provides python27* > python27 = 1-10.el6.centos.alt > python27(x86-64) = 1-10.el6.centos.alt > bash-4.1# > > So, the python27 package is broken. It has an insufficient set of > "provides". Significantly insufficient... > > > > > > > On 07/15/2014 12:08 PM, Honza Horak wrote: >> On 07/15/2014 07:14 PM, Alan Robertson wrote: >>> So, my tool does not conflict with anything that RH or anyone else >>> provides -- so it doesn't need to be an SCL package. It just *depends* >>> on an SCL package. My code is perfectly happy to issue the scl >>> commands >>> when it needs to (it knows when it needs to). No one has to issue any >>> scl commands to run my code. >>> >>> Both of those links seem to be oriented towards creating an SCL >>> package. Did I miss something? >> >> It could help if you provided the spec file. From the description so >> far it looks like you does not enable python27 collection in the >> %build and %install section, so the build and install scriptlets have >> not properly set environment. But I may be wrong. >> >> HTH, >> Honza >> >>> Thanks! >>> >>> >>> On 07/15/2014 10:03 AM, Petr Kovar wrote: >>>> Hi, >>>> >>>> On Tue, 15 Jul 2014 10:52:43 -0500 >>>> Eugene Vilensky wrote: >>>> >>>>> On Mon, Jul 14, 2014 at 4:06 PM, Alan Robertson >>>>> wrote: >>>>> >>>>>> I'm creating an RPM (and spec file) that needs Python 2.7 (the >>>>>> python27 >>>>>> scl). When I generate it for RHEL6/CentOS6, I the RPM I create has >>>>>> some >>>>>> automatically generated dependencies which python27 does not seem to >>>>>> fulfill... >>>>> >>>>> Hi Alan, >>>>> >>>>> I'm only beginning to look into doing this for myself, but this >>>>> might be >>>>> how your spec might need to be modified to be SCL aware?: >>>>> >>>>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/1/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html >>>>> >>>>> >>>> A newer version of the doc is here: >>>> >>>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Converting_a_Conventional_Spec_File.html >>>> >>>> >>>> >>>> This link might also be of help: >>>> >>>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >>>> >>>> >>>> >>>> HTH, >>>> pk >>>> >>>> _______________________________________________ >>>> SCLorg mailing list >>>> SCLorg at redhat.com >>>> https://www.redhat.com/mailman/listinfo/sclorg >>> >>> >> > > > -- > Alan Robertson - @OSSAlanR > > "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce > > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.com > https://www.redhat.com/mailman/listinfo/sclorg -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce -------------- next part -------------- An HTML attachment was scrubbed... URL: From orion at cora.nwra.com Tue Jul 15 22:06:36 2014 From: orion at cora.nwra.com (Orion Poplawski) Date: Tue, 15 Jul 2014 16:06:36 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C5A34D.7060504@unix.sh> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> Message-ID: <53C5A5EC.8040908@cora.nwra.com> On 07/15/2014 03:55 PM, Alan Robertson wrote: > OK. It was pointed out to me off-list that I was comparing the wrong thing. > I should have been looking at python27-python. Here's what that package shows: > > bash-4.1# *rpm -q --provides python27-python* > python27-python-abi = 2.7 > python27-python(abi) = 2.7 > python27-Distutils > python27-python2 = 2.7.5 > python27-python-sqlite = 2.3.2 > python27-python-ctypes = 1.0.1 > python27-python-hashlib = 20081120 > python27-python-uuid = 1.31 > python27-python-argparse = 2.7.5-7.el6.centos.alt > python27-python = 2.7.5-7.el6.centos.alt > python27-python(x86-64) = 2.7.5-7.el6.centos.alt > bash-4.1# > > Either I'm failing to do something to appease the automagical python-version > detection (which I have no idea how it figures that out), or the property > names in python27-python should not have the "python27-" prefix. > > Anyone know which it is - and how to deal with it? > > It seems to me like the attributes of the provides should not be prefixed by > python27. But I'm new to this SCL stuff... FWIW - they "python(abi) = ##" requires is added by /usr/lib/rpm/pythondeps.sh as part of the standard rpm dependency generation. So yes, for this to work with the scl, either the scl needs to provide "python(abi) = 2.7" or you will need to disable the automatic requires generation or filter out the python(abi) line. We're all new to this SCL stuff.... :) -- Orion Poplawski Technical Manager 303-415-9701 x222 NWRA, Boulder/CoRA Office FAX: 303-415-9702 3380 Mitchell Lane orion at nwra.com Boulder, CO 80301 http://www.nwra.com From orion at cora.nwra.com Tue Jul 15 22:09:18 2014 From: orion at cora.nwra.com (Orion Poplawski) Date: Tue, 15 Jul 2014 16:09:18 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C5A5EC.8040908@cora.nwra.com> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> Message-ID: <53C5A68E.1030107@cora.nwra.com> On 07/15/2014 04:06 PM, Orion Poplawski wrote: > On 07/15/2014 03:55 PM, Alan Robertson wrote: >> OK. It was pointed out to me off-list that I was comparing the wrong thing. >> I should have been looking at python27-python. Here's what that package shows: >> >> bash-4.1# *rpm -q --provides python27-python* >> python27-python-abi = 2.7 >> python27-python(abi) = 2.7 >> python27-Distutils >> python27-python2 = 2.7.5 >> python27-python-sqlite = 2.3.2 >> python27-python-ctypes = 1.0.1 >> python27-python-hashlib = 20081120 >> python27-python-uuid = 1.31 >> python27-python-argparse = 2.7.5-7.el6.centos.alt >> python27-python = 2.7.5-7.el6.centos.alt >> python27-python(x86-64) = 2.7.5-7.el6.centos.alt >> bash-4.1# >> >> Either I'm failing to do something to appease the automagical python-version >> detection (which I have no idea how it figures that out), or the property >> names in python27-python should not have the "python27-" prefix. >> >> Anyone know which it is - and how to deal with it? >> >> It seems to me like the attributes of the provides should not be prefixed by >> python27. But I'm new to this SCL stuff... > > FWIW - they "python(abi) = ##" requires is added by /usr/lib/rpm/pythondeps.sh > as part of the standard rpm dependency generation. So yes, for this to work > with the scl, either the scl needs to provide "python(abi) = 2.7" or you will > need to disable the automatic requires generation or filter out the > python(abi) line. > > We're all new to this SCL stuff.... :) > > Here's the magic from https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html # Similarly, override __python_requires for automatic dependency generator %global __python_requires %{%{scl_python}_python_requires} -- Orion Poplawski Technical Manager 303-415-9701 x222 NWRA, Boulder/CoRA Office FAX: 303-415-9702 3380 Mitchell Lane orion at nwra.com Boulder, CO 80301 http://www.nwra.com From alanr at unix.sh Wed Jul 16 04:29:28 2014 From: alanr at unix.sh (Alan Robertson) Date: Tue, 15 Jul 2014 22:29:28 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C5A68E.1030107@cora.nwra.com> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> Message-ID: <53C5FFA8.7070908@unix.sh> So, I'm trying to take the page you pointed at seriously - so I added this line from that page: BuildRequires: scl-utils-build There is no such package. What was intended here? On 07/15/2014 04:09 PM, Orion Poplawski wrote: > On 07/15/2014 04:06 PM, Orion Poplawski wrote: >> On 07/15/2014 03:55 PM, Alan Robertson wrote: >>> OK. It was pointed out to me off-list that I was comparing the >>> wrong thing. >>> I should have been looking at python27-python. Here's what that >>> package shows: >>> >>> bash-4.1# *rpm -q --provides python27-python* >>> python27-python-abi = 2.7 >>> python27-python(abi) = 2.7 >>> python27-Distutils >>> python27-python2 = 2.7.5 >>> python27-python-sqlite = 2.3.2 >>> python27-python-ctypes = 1.0.1 >>> python27-python-hashlib = 20081120 >>> python27-python-uuid = 1.31 >>> python27-python-argparse = 2.7.5-7.el6.centos.alt >>> python27-python = 2.7.5-7.el6.centos.alt >>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt >>> bash-4.1# >>> >>> Either I'm failing to do something to appease the automagical >>> python-version >>> detection (which I have no idea how it figures that out), or the >>> property >>> names in python27-python should not have the "python27-" prefix. >>> >>> Anyone know which it is - and how to deal with it? >>> >>> It seems to me like the attributes of the provides should not be >>> prefixed by >>> python27. But I'm new to this SCL stuff... >> >> FWIW - they "python(abi) = ##" requires is added by >> /usr/lib/rpm/pythondeps.sh >> as part of the standard rpm dependency generation. So yes, for this >> to work >> with the scl, either the scl needs to provide "python(abi) = 2.7" or >> you will >> need to disable the automatic requires generation or filter out the >> python(abi) line. >> >> We're all new to this SCL stuff.... :) >> >> > > Here's the magic from > https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html > > > # Similarly, override __python_requires for automatic dependency > generator > %global __python_requires %{%{scl_python}_python_requires} > > -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce -------------- next part -------------- An HTML attachment was scrubbed... URL: From alanr at unix.sh Wed Jul 16 04:41:47 2014 From: alanr at unix.sh (Alan Robertson) Date: Tue, 15 Jul 2014 22:41:47 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C5FFA8.7070908@unix.sh> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> Message-ID: <53C6028B.6020700@unix.sh> Similar issue with this line: Requires: %{scl_prefix_python}scldevel There is no scldevel package, nor a python27-scldevel On 07/15/2014 10:29 PM, Alan Robertson wrote: > So, I'm trying to take the page you pointed at seriously - so I added > this line from that page: > BuildRequires: scl-utils-build > > There is no such package. What was intended here? > > > On 07/15/2014 04:09 PM, Orion Poplawski wrote: >> On 07/15/2014 04:06 PM, Orion Poplawski wrote: >>> On 07/15/2014 03:55 PM, Alan Robertson wrote: >>>> OK. It was pointed out to me off-list that I was comparing the >>>> wrong thing. >>>> I should have been looking at python27-python. Here's what that >>>> package shows: >>>> >>>> bash-4.1# *rpm -q --provides python27-python* >>>> python27-python-abi = 2.7 >>>> python27-python(abi) = 2.7 >>>> python27-Distutils >>>> python27-python2 = 2.7.5 >>>> python27-python-sqlite = 2.3.2 >>>> python27-python-ctypes = 1.0.1 >>>> python27-python-hashlib = 20081120 >>>> python27-python-uuid = 1.31 >>>> python27-python-argparse = 2.7.5-7.el6.centos.alt >>>> python27-python = 2.7.5-7.el6.centos.alt >>>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt >>>> bash-4.1# >>>> >>>> Either I'm failing to do something to appease the automagical >>>> python-version >>>> detection (which I have no idea how it figures that out), or the >>>> property >>>> names in python27-python should not have the "python27-" prefix. >>>> >>>> Anyone know which it is - and how to deal with it? >>>> >>>> It seems to me like the attributes of the provides should not be >>>> prefixed by >>>> python27. But I'm new to this SCL stuff... >>> >>> FWIW - they "python(abi) = ##" requires is added by >>> /usr/lib/rpm/pythondeps.sh >>> as part of the standard rpm dependency generation. So yes, for this >>> to work >>> with the scl, either the scl needs to provide "python(abi) = 2.7" or >>> you will >>> need to disable the automatic requires generation or filter out the >>> python(abi) line. >>> >>> We're all new to this SCL stuff.... :) >>> >>> >> >> Here's the magic from >> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >> >> >> # Similarly, override __python_requires for automatic dependency >> generator >> %global __python_requires %{%{scl_python}_python_requires} >> >> > > > -- > Alan Robertson - @OSSAlanR > > "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce > > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.com > https://www.redhat.com/mailman/listinfo/sclorg -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce -------------- next part -------------- An HTML attachment was scrubbed... URL: From orion at cora.nwra.com Wed Jul 16 04:46:07 2014 From: orion at cora.nwra.com (Orion Poplawski) Date: Tue, 15 Jul 2014 22:46:07 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C5FFA8.7070908@unix.sh> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> Message-ID: <53C6038F.10503@cora.nwra.com> On 07/15/2014 10:29 PM, Alan Robertson wrote: > So, I'm trying to take the page you pointed at seriously - so I added > this line from that page: > > BuildRequires: scl-utils-build > > > There is no such package. What was intended here? Available Packages scl-utils-build.x86_64 20120927-8.el6 rhel-6-server-optional-rpms -- Orion Poplawski Technical Manager 303-415-9701 x222 NWRA/CoRA Division FAX: 303-415-9702 3380 Mitchell Lane orion at cora.nwra.com Boulder, CO 80301 http://www.cora.nwra.com From sghosh at redhat.com Wed Jul 16 04:46:47 2014 From: sghosh at redhat.com (SGhosh) Date: Wed, 16 Jul 2014 00:46:47 -0400 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C6028B.6020700@unix.sh> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C6028B.6020700@unix.sh> Message-ID: <53C603B7.7000402@redhat.com> Requires: %{scl_prefix_python}-scldevel ^^^^^^ I think you are missing the "-" on RHEL at least - I see this: #yum info python27-scldevel Loaded plugins: langpacks, product-id, subscription-manager Available Packages Name : python27-scldevel Arch : x86_64 Version : 1.1 Release : 19.el7 Size : 5.5 k Repo : rhel-workstation-rhscl-7-rpms/7Workstation/x86_64 Summary : Package shipping development files for python27 License : GPLv2+ Description : Package shipping development files, especially usefull for : development of packages depending on python27 Software : Collection. On 07/16/2014 12:41 AM, Alan Robertson wrote: > Similar issue with this line: > Requires: %{scl_prefix_python}scldevel > > There is no scldevel package, nor a python27-scldevel > > > On 07/15/2014 10:29 PM, Alan Robertson wrote: >> So, I'm trying to take the page you pointed at seriously - so I added >> this line from that page: >> BuildRequires: scl-utils-build >> >> There is no such package. What was intended here? >> >> >> On 07/15/2014 04:09 PM, Orion Poplawski wrote: >>> On 07/15/2014 04:06 PM, Orion Poplawski wrote: >>>> On 07/15/2014 03:55 PM, Alan Robertson wrote: >>>>> OK. It was pointed out to me off-list that I was comparing the >>>>> wrong thing. >>>>> I should have been looking at python27-python. Here's what that >>>>> package shows: >>>>> >>>>> bash-4.1# *rpm -q --provides python27-python* >>>>> python27-python-abi = 2.7 >>>>> python27-python(abi) = 2.7 >>>>> python27-Distutils >>>>> python27-python2 = 2.7.5 >>>>> python27-python-sqlite = 2.3.2 >>>>> python27-python-ctypes = 1.0.1 >>>>> python27-python-hashlib = 20081120 >>>>> python27-python-uuid = 1.31 >>>>> python27-python-argparse = 2.7.5-7.el6.centos.alt >>>>> python27-python = 2.7.5-7.el6.centos.alt >>>>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt >>>>> bash-4.1# >>>>> >>>>> Either I'm failing to do something to appease the automagical >>>>> python-version >>>>> detection (which I have no idea how it figures that out), or the >>>>> property >>>>> names in python27-python should not have the "python27-" prefix. >>>>> >>>>> Anyone know which it is - and how to deal with it? >>>>> >>>>> It seems to me like the attributes of the provides should not be >>>>> prefixed by >>>>> python27. But I'm new to this SCL stuff... >>>> >>>> FWIW - they "python(abi) = ##" requires is added by >>>> /usr/lib/rpm/pythondeps.sh >>>> as part of the standard rpm dependency generation. So yes, for >>>> this to work >>>> with the scl, either the scl needs to provide "python(abi) = 2.7" >>>> or you will >>>> need to disable the automatic requires generation or filter out the >>>> python(abi) line. >>>> >>>> We're all new to this SCL stuff.... :) >>>> >>>> >>> >>> Here's the magic from >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >>> >>> >>> # Similarly, override __python_requires for automatic dependency >>> generator >>> %global __python_requires %{%{scl_python}_python_requires} >>> >>> >> >> >> -- >> Alan Robertson - @OSSAlanR >> >> "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce >> >> >> _______________________________________________ >> SCLorg mailing list >> SCLorg at redhat.com >> https://www.redhat.com/mailman/listinfo/sclorg > > > -- > Alan Robertson - @OSSAlanR > > "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce > > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.com > https://www.redhat.com/mailman/listinfo/sclorg -------------- next part -------------- An HTML attachment was scrubbed... URL: From hhorak at redhat.com Wed Jul 16 08:01:27 2014 From: hhorak at redhat.com (Honza Horak) Date: Wed, 16 Jul 2014 10:01:27 +0200 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C5FFA8.7070908@unix.sh> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> Message-ID: <53C63157.8030903@redhat.com> On 07/16/2014 06:29 AM, Alan Robertson wrote: > So, I'm trying to take the page you pointed at seriously - so I added > this line from that page: > > BuildRequires: scl-utils-build > > > There is no such package. What was intended here? This package is included in optional channel, but you shouldn't need it, because you are preparing non-SCL package and scl-utils-build is intended only for building SCL packages. Anyway, what is obviously wrong in your case is generating the python requirements. These generators are delivered in python-devel and python27-python-devel packages. So, if I'm not mistaken, your package (and building environment) must include python27-python-devel but not python-devel. In spec file you should have: BuildRequires: python27-python-devel But be careful about packages installed during building (if you build in your working environment), since I'm not sure which package gets preference in case both python-devel and python27-python-devel are installed. Regards, Honza > > > On 07/15/2014 04:09 PM, Orion Poplawski wrote: >> On 07/15/2014 04:06 PM, Orion Poplawski wrote: >>> On 07/15/2014 03:55 PM, Alan Robertson wrote: >>>> OK. It was pointed out to me off-list that I was comparing the >>>> wrong thing. >>>> I should have been looking at python27-python. Here's what that >>>> package shows: >>>> >>>> bash-4.1# *rpm -q --provides python27-python* >>>> python27-python-abi = 2.7 >>>> python27-python(abi) = 2.7 >>>> python27-Distutils >>>> python27-python2 = 2.7.5 >>>> python27-python-sqlite = 2.3.2 >>>> python27-python-ctypes = 1.0.1 >>>> python27-python-hashlib = 20081120 >>>> python27-python-uuid = 1.31 >>>> python27-python-argparse = 2.7.5-7.el6.centos.alt >>>> python27-python = 2.7.5-7.el6.centos.alt >>>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt >>>> bash-4.1# >>>> >>>> Either I'm failing to do something to appease the automagical >>>> python-version >>>> detection (which I have no idea how it figures that out), or the >>>> property >>>> names in python27-python should not have the "python27-" prefix. >>>> >>>> Anyone know which it is - and how to deal with it? >>>> >>>> It seems to me like the attributes of the provides should not be >>>> prefixed by >>>> python27. But I'm new to this SCL stuff... >>> >>> FWIW - they "python(abi) = ##" requires is added by >>> /usr/lib/rpm/pythondeps.sh >>> as part of the standard rpm dependency generation. So yes, for this >>> to work >>> with the scl, either the scl needs to provide "python(abi) = 2.7" or >>> you will >>> need to disable the automatic requires generation or filter out the >>> python(abi) line. >>> >>> We're all new to this SCL stuff.... :) >>> >>> >> >> Here's the magic from >> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >> >> >> # Similarly, override __python_requires for automatic dependency >> generator >> %global __python_requires %{%{scl_python}_python_requires} >> >> > > > -- > Alan Robertson - @OSSAlanR > > "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce > From bkabrda at redhat.com Wed Jul 16 08:21:38 2014 From: bkabrda at redhat.com (Bohuslav Kabrda) Date: Wed, 16 Jul 2014 04:21:38 -0400 (EDT) Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C603B7.7000402@redhat.com> References: <53C44656.9070801@unix.sh> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C6028B.6020700@unix.sh> <53C603B7.7000402@redhat.com> Message-ID: <1095553384.10183098.1405498898212.JavaMail.zimbra@redhat.com> ----- Original Message ----- > Requires: %{scl_prefix_python}-scldevel > ^^^^^^ > I think you are missing the "-" Nope, %{scl_prefix_python} should expand to "python27-", e.g. if defined, it should already contain the "-". Alan, where are your packages coming from? We added the -scldevel packages to RHSCL 1.1 downstream and I can also see one on scl.org [1]. Are you using older builds of python27 SCL, perhaps from RHSCL 1.0? Slavek [1] https://www.softwarecollections.org/repos/rhscl/python27/epel-6-x86_64/ > on RHEL at least - I see this: > #yum info python27-scldevel > Loaded plugins: langpacks, product-id, subscription-manager > Available Packages > Name : python27-scldevel > Arch : x86_64 > Version : 1.1 > Release : 19.el7 > Size : 5.5 k > Repo : rhel-workstation-rhscl-7-rpms/7Workstation/x86_64 > Summary : Package shipping development files for python27 > License : GPLv2+ > Description : Package shipping development files, especially usefull for > : development of packages depending on python27 Software > : Collection. > On 07/16/2014 12:41 AM, Alan Robertson wrote: > > Similar issue with this line: > > > Requires: %{scl_prefix_python}scldevel > > > There is no scldevel package, nor a python27-scldevel > > > On 07/15/2014 10:29 PM, Alan Robertson wrote: > > > > So, I'm trying to take the page you pointed at seriously - so I added > > > this > > > line from that page: > > > > > > BuildRequires : scl-utils-build > > > > > > There is no such package. What was intended here? > > > > > > On 07/15/2014 04:09 PM, Orion Poplawski wrote: > > > > > > > On 07/15/2014 04:06 PM, Orion Poplawski wrote: > > > > > > > > > > > On 07/15/2014 03:55 PM, Alan Robertson wrote: > > > > > > > > > > > > > > > > OK. It was pointed out to me off-list that I was comparing the > > > > > > wrong > > > > > > thing. > > > > > > > > > > > > > > > > > > > > > I should have been looking at python27-python. Here's what that > > > > > > package > > > > > > shows: > > > > > > > > > > > > > > > > > > > > > bash-4.1# *rpm -q --provides python27-python* > > > > > > > > > > > > > > > > > > > > > python27-python-abi = 2.7 > > > > > > > > > > > > > > > > > > > > > python27-python(abi) = 2.7 > > > > > > > > > > > > > > > > > > > > > python27-Distutils > > > > > > > > > > > > > > > > > > > > > python27-python2 = 2.7.5 > > > > > > > > > > > > > > > > > > > > > python27-python-sqlite = 2.3.2 > > > > > > > > > > > > > > > > > > > > > python27-python-ctypes = 1.0.1 > > > > > > > > > > > > > > > > > > > > > python27-python-hashlib = 20081120 > > > > > > > > > > > > > > > > > > > > > python27-python-uuid = 1.31 > > > > > > > > > > > > > > > > > > > > > python27-python-argparse = 2.7.5-7.el6.centos.alt > > > > > > > > > > > > > > > > > > > > > python27-python = 2.7.5-7.el6.centos.alt > > > > > > > > > > > > > > > > > > > > > python27-python(x86-64) = 2.7.5-7.el6.centos.alt > > > > > > > > > > > > > > > > > > > > > bash-4.1# > > > > > > > > > > > > > > > > > > > > > Either I'm failing to do something to appease the automagical > > > > > > python-version > > > > > > > > > > > > > > > > > > > > > detection (which I have no idea how it figures that out), or the > > > > > > property > > > > > > > > > > > > > > > > > > > > > names in python27-python should not have the "python27-" prefix. > > > > > > > > > > > > > > > > > > > > > Anyone know which it is - and how to deal with it? > > > > > > > > > > > > > > > > > > > > > It seems to me like the attributes of the provides should not be > > > > > > prefixed > > > > > > by > > > > > > > > > > > > > > > > > > > > > python27. But I'm new to this SCL stuff... > > > > > > > > > > > > > > > > > > > > FWIW - they "python(abi) = ##" requires is added by > > > > > /usr/lib/rpm/pythondeps.sh > > > > > > > > > > > > > > > as part of the standard rpm dependency generation. So yes, for this > > > > > to > > > > > work > > > > > > > > > > > > > > > with the scl, either the scl needs to provide "python(abi) = 2.7" or > > > > > you > > > > > will > > > > > > > > > > > > > > > need to disable the automatic requires generation or filter out the > > > > > > > > > > > > > > > python(abi) line. > > > > > > > > > > > > > > > We're all new to this SCL stuff.... :) > > > > > > > > > > > > > > Here's the magic from > > > > https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html > > > > > > > > > > # Similarly, override __python_requires for automatic dependency > > > > generator > > > > > > > > > > %global __python_requires %{%{scl_python}_python_requires} > > > > > > > > > -- > > > > > > Alan Robertson - @OSSAlanR > > > > > > "Openness is the foundation and preservative of friendship... Let me > > > claim > > > from you at all times your undisguised opinions." - William Wilberforce > > > > > > _______________________________________________ > > > > > > SCLorg mailing list SCLorg at redhat.com > > > https://www.redhat.com/mailman/listinfo/sclorg > > > > > -- > > > Alan Robertson - @OSSAlanR > > > "Openness is the foundation and preservative of friendship... Let me claim > > from you at all times your undisguised opinions." - William Wilberforce > > > _______________________________________________ > > > SCLorg mailing list SCLorg at redhat.com > > https://www.redhat.com/mailman/listinfo/sclorg > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.com > https://www.redhat.com/mailman/listinfo/sclorg -- Regards, Bohuslav "Slavek" Kabrda. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bkabrda at redhat.com Wed Jul 16 08:30:35 2014 From: bkabrda at redhat.com (Bohuslav Kabrda) Date: Wed, 16 Jul 2014 04:30:35 -0400 (EDT) Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C63157.8030903@redhat.com> References: <53C44656.9070801@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> Message-ID: <1192289781.10192864.1405499435718.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 07/16/2014 06:29 AM, Alan Robertson wrote: > > So, I'm trying to take the page you pointed at seriously - so I added > > this line from that page: > > > > BuildRequires: scl-utils-build > > > > > > There is no such package. What was intended here? > > This package is included in optional channel, but you shouldn't need it, > because you are preparing non-SCL package and scl-utils-build is > intended only for building SCL packages. > > Anyway, what is obviously wrong in your case is generating the python > requirements. These generators are delivered in python-devel and > python27-python-devel packages. So, if I'm not mistaken, your package > (and building environment) must include python27-python-devel but not > python-devel. In spec file you should have: > BuildRequires: python27-python-devel That's correct. The problem here is, I think, that the package places it's files into sitearch of the SCL, but it's not actually an SCL package. One of the results of having it as non-SCL package means, that %scl_package_override() function, present in the python27-build subpackage doesn't get invoked. This function looks like this (you need to 's/@scl@/python27/'): # override __os_install_post for this collection # the python27_os_install_post macro is defined in macros.python2.python27 in python27-python-devel # the name is intentionally hardcoded to always provide the same name %scl_package_override() %{expand:%{?@scl at _os_install_post:%global __os_install_post %@scl at _os_install_post} %global __python_requires %@scl at _python_requires %global __python_provides %@scl at _python_provides # macros commonly used in specfiles %global __python2 %@scl at __python2 %global __python %@scl at __python2 %global python2_sitelib %@scl at python2_sitelib %global python_sitelib %@scl at python2_sitelib %global python2_sitearch %@scl at python2_sitearch %global python_sitearch %@scl at python2_sitearch %global python2_version %@scl at python2_version %global python_version %@scl at python2_version } So the issue is that neither __os_install_post nor Python dependency generators nor Python macros get overrided as they do for SCL builds. The system Python dependency generator then sees that something is in /usr/lib/python2.7 and generates "Requires: python(abi) = 2.7", where the python27 SCL generator would generate "Requires: python27-python(abi) = 2.7". So at the very least, you'll need to override __python_requires python27_python_requires in your specfile to get right dependencies for your package. Hope I got it right :) Slavek > But be careful about packages installed during building (if you build in > your working environment), since I'm not sure which package gets > preference in case both python-devel and python27-python-devel are > installed. > > Regards, > Honza > > > > > > > On 07/15/2014 04:09 PM, Orion Poplawski wrote: > >> On 07/15/2014 04:06 PM, Orion Poplawski wrote: > >>> On 07/15/2014 03:55 PM, Alan Robertson wrote: > >>>> OK. It was pointed out to me off-list that I was comparing the > >>>> wrong thing. > >>>> I should have been looking at python27-python. Here's what that > >>>> package shows: > >>>> > >>>> bash-4.1# *rpm -q --provides python27-python* > >>>> python27-python-abi = 2.7 > >>>> python27-python(abi) = 2.7 > >>>> python27-Distutils > >>>> python27-python2 = 2.7.5 > >>>> python27-python-sqlite = 2.3.2 > >>>> python27-python-ctypes = 1.0.1 > >>>> python27-python-hashlib = 20081120 > >>>> python27-python-uuid = 1.31 > >>>> python27-python-argparse = 2.7.5-7.el6.centos.alt > >>>> python27-python = 2.7.5-7.el6.centos.alt > >>>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt > >>>> bash-4.1# > >>>> > >>>> Either I'm failing to do something to appease the automagical > >>>> python-version > >>>> detection (which I have no idea how it figures that out), or the > >>>> property > >>>> names in python27-python should not have the "python27-" prefix. > >>>> > >>>> Anyone know which it is - and how to deal with it? > >>>> > >>>> It seems to me like the attributes of the provides should not be > >>>> prefixed by > >>>> python27. But I'm new to this SCL stuff... > >>> > >>> FWIW - they "python(abi) = ##" requires is added by > >>> /usr/lib/rpm/pythondeps.sh > >>> as part of the standard rpm dependency generation. So yes, for this > >>> to work > >>> with the scl, either the scl needs to provide "python(abi) = 2.7" or > >>> you will > >>> need to disable the automatic requires generation or filter out the > >>> python(abi) line. > >>> > >>> We're all new to this SCL stuff.... :) > >>> > >>> > >> > >> Here's the magic from > >> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html > >> > >> > >> # Similarly, override __python_requires for automatic dependency > >> generator > >> %global __python_requires %{%{scl_python}_python_requires} > >> > >> > > > > > > -- > > Alan Robertson - @OSSAlanR > > > > "Openness is the foundation and preservative of friendship... Let me claim > > from you at all times your undisguised opinions." - William Wilberforce > > > > -- Regards, Bohuslav "Slavek" Kabrda. From hhorak at redhat.com Wed Jul 16 08:37:32 2014 From: hhorak at redhat.com (Honza Horak) Date: Wed, 16 Jul 2014 10:37:32 +0200 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <1095553384.10183098.1405498898212.JavaMail.zimbra@redhat.com> References: <53C44656.9070801@unix.sh> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C6028B.6020700@unix.sh> <53C603B7.7000402@redhat.com> <1095553384.10183098.1405498898212.JavaMail.zimbra@redhat.com> Message-ID: <53C639CC.3000206@redhat.com> On 07/16/2014 10:21 AM, Bohuslav Kabrda wrote: > > ------------------------------------------------------------------------ > > Requires: %{scl_prefix_python}-scldevel I'd also like to add a general notice about using this macro in a spec file if anybody is interested -- It is important to have the package python27-scldevel, which defines this macro, already installed at a time the spec file which uses the macro above is being parsed. Thus, it is not enough to have BuildRequires: python27-scldevel in the same spec file where we want to use the macro. The BuildRequires is usually in a meta package of another (depended) collection, which is then installed in the buildroot (which ensures the macro is defined at a time the spec file using it is being parsed). Honza > ^^^^^^ > I think you are missing the "-" > > Nope, %{scl_prefix_python} should expand to "python27-", e.g. if > defined, it should already contain the "-". Alan, where are your > packages coming from? We added the -scldevel packages to RHSCL 1.1 > downstream and I can also see one on scl.org [1]. Are you using older > builds of python27 SCL, perhaps from RHSCL 1.0? > > Slavek > > [1] https://www.softwarecollections.org/repos/rhscl/python27/epel-6-x86_64/ > > on RHEL at least - I see this: > > #yum info python27-scldevel > Loaded plugins: langpacks, product-id, subscription-manager > Available Packages > Name : python27-scldevel > Arch : x86_64 > Version : 1.1 > Release : 19.el7 > Size : 5.5 k > Repo : rhel-workstation-rhscl-7-rpms/7Workstation/x86_64 > Summary : Package shipping development files for python27 > License : GPLv2+ > Description : Package shipping development files, especially usefull for > : development of packages depending on python27 Software > : Collection. > > > On 07/16/2014 12:41 AM, Alan Robertson wrote: > > Similar issue with this line: > Requires: %{scl_prefix_python}scldevel > > There is no scldevel package, nor a python27-scldevel > > > On 07/15/2014 10:29 PM, Alan Robertson wrote: > > So, I'm trying to take the page you pointed at seriously - > so I added this line from that page: > > BuildRequires: scl-utils-build > > > There is no such package. What was intended here? > > > On 07/15/2014 04:09 PM, Orion Poplawski wrote: > > On 07/15/2014 04:06 PM, Orion Poplawski wrote: > > On 07/15/2014 03:55 PM, Alan Robertson wrote: > > OK. It was pointed out to me off-list that I > was comparing the wrong thing. > I should have been looking at python27-python. > Here's what that package shows: > > bash-4.1# *rpm -q --provides python27-python* > python27-python-abi = 2.7 > python27-python(abi) = 2.7 > python27-Distutils > python27-python2 = 2.7.5 > python27-python-sqlite = 2.3.2 > python27-python-ctypes = 1.0.1 > python27-python-hashlib = 20081120 > python27-python-uuid = 1.31 > python27-python-argparse = 2.7.5-7.el6.centos.alt > python27-python = 2.7.5-7.el6.centos.alt > python27-python(x86-64) = 2.7.5-7.el6.centos.alt > bash-4.1# > > Either I'm failing to do something to appease > the automagical python-version > detection (which I have no idea how it figures > that out), or the property > names in python27-python should not have the > "python27-" prefix. > > Anyone know which it is - and how to deal with it? > > It seems to me like the attributes of the > provides should not be prefixed by > python27. But I'm new to this SCL stuff... > > > FWIW - they "python(abi) = ##" requires is added by > /usr/lib/rpm/pythondeps.sh > as part of the standard rpm dependency generation. > So yes, for this to work > with the scl, either the scl needs to provide > "python(abi) = 2.7" or you will > need to disable the automatic requires generation or > filter out the > python(abi) line. > > We're all new to this SCL stuff.... :) > > > > Here's the magic from > https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html > > > # Similarly, override __python_requires for automatic > dependency generator > %global __python_requires %{%{scl_python}_python_requires} > > > > > -- > Alan Robertson - @OSSAlanR > > "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce > > > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.comhttps://www.redhat.com/mailman/listinfo/sclorg > > > > -- > Alan Robertson - @OSSAlanR > > "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce > > > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.comhttps://www.redhat.com/mailman/listinfo/sclorg > > > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.com > https://www.redhat.com/mailman/listinfo/sclorg > > > > > -- > Regards, > Bohuslav "Slavek" Kabrda. From alanr at unix.sh Wed Jul 16 18:14:41 2014 From: alanr at unix.sh (Alan Robertson) Date: Wed, 16 Jul 2014 12:14:41 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C63157.8030903@redhat.com> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> Message-ID: <53C6C111.2060509@unix.sh> As far as I know, you can't have a version of RH without python. So, I'll follow your hints and let you know what happens. I'm doing this in the CentOS environment. I might need some additional repositories? But I don't have trouble finding scl and python27. On 07/16/2014 02:01 AM, Honza Horak wrote: > On 07/16/2014 06:29 AM, Alan Robertson wrote: >> So, I'm trying to take the page you pointed at seriously - so I added >> this line from that page: >> >> BuildRequires: scl-utils-build >> >> >> There is no such package. What was intended here? > > This package is included in optional channel, but you shouldn't need > it, because you are preparing non-SCL package and scl-utils-build is > intended only for building SCL packages. > > Anyway, what is obviously wrong in your case is generating the python > requirements. These generators are delivered in python-devel and > python27-python-devel packages. So, if I'm not mistaken, your package > (and building environment) must include python27-python-devel but not > python-devel. In spec file you should have: > BuildRequires: python27-python-devel > > But be careful about packages installed during building (if you build > in your working environment), since I'm not sure which package gets > preference in case both python-devel and python27-python-devel are > installed. > > Regards, > Honza > >> >> >> On 07/15/2014 04:09 PM, Orion Poplawski wrote: >>> On 07/15/2014 04:06 PM, Orion Poplawski wrote: >>>> On 07/15/2014 03:55 PM, Alan Robertson wrote: >>>>> OK. It was pointed out to me off-list that I was comparing the >>>>> wrong thing. >>>>> I should have been looking at python27-python. Here's what that >>>>> package shows: >>>>> >>>>> bash-4.1# *rpm -q --provides python27-python* >>>>> python27-python-abi = 2.7 >>>>> python27-python(abi) = 2.7 >>>>> python27-Distutils >>>>> python27-python2 = 2.7.5 >>>>> python27-python-sqlite = 2.3.2 >>>>> python27-python-ctypes = 1.0.1 >>>>> python27-python-hashlib = 20081120 >>>>> python27-python-uuid = 1.31 >>>>> python27-python-argparse = 2.7.5-7.el6.centos.alt >>>>> python27-python = 2.7.5-7.el6.centos.alt >>>>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt >>>>> bash-4.1# >>>>> >>>>> Either I'm failing to do something to appease the automagical >>>>> python-version >>>>> detection (which I have no idea how it figures that out), or the >>>>> property >>>>> names in python27-python should not have the "python27-" prefix. >>>>> >>>>> Anyone know which it is - and how to deal with it? >>>>> >>>>> It seems to me like the attributes of the provides should not be >>>>> prefixed by >>>>> python27. But I'm new to this SCL stuff... >>>> >>>> FWIW - they "python(abi) = ##" requires is added by >>>> /usr/lib/rpm/pythondeps.sh >>>> as part of the standard rpm dependency generation. So yes, for this >>>> to work >>>> with the scl, either the scl needs to provide "python(abi) = 2.7" or >>>> you will >>>> need to disable the automatic requires generation or filter out the >>>> python(abi) line. >>>> >>>> We're all new to this SCL stuff.... :) >>>> >>>> >>> >>> Here's the magic from >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >>> >>> >>> >>> # Similarly, override __python_requires for automatic dependency >>> generator >>> %global __python_requires %{%{scl_python}_python_requires} >>> >>> >> >> >> -- >> Alan Robertson - @OSSAlanR >> >> "Openness is the foundation and preservative of friendship... Let me >> claim from you at all times your undisguised opinions." - William >> Wilberforce >> > -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce From alanr at unix.sh Wed Jul 16 19:21:02 2014 From: alanr at unix.sh (Alan Robertson) Date: Wed, 16 Jul 2014 13:21:02 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C63157.8030903@redhat.com> References: <53C44656.9070801@unix.sh> <20140715180305.b782107720da03e203dbfa95@redhat.com> <53C56165.6060001@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> Message-ID: <53C6D09E.9020006@unix.sh> Python 2.6 is required by ThingsInTheUniverse: bash-4.1# rpm --erase python error: Failed dependencies: python(abi) = 2.6 is needed by (installed) python-libs-2.6.6-52.el6.x86_64 python(abi) = 2.6 is needed by (installed) pygpgme-0.1-18.20090824bzr68.el6.x86_64 python(abi) = 2.6 is needed by (installed) python-pycurl-7.19.0-8.el6.x86_64 python(abi) = 2.6 is needed by (installed) python-urlgrabber-3.9.1-9.el6.noarch python(abi) = 2.6 is needed by (installed) rpm-python-4.8.0-37.el6.x86_64 python(abi) = 2.6 is needed by (installed) python-iniparse-0.3.1-2.1.el6.noarch python(abi) = 2.6 is needed by (installed) yum-metadata-parser-1.1.2-16.el6.x86_64 python(abi) = 2.6 is needed by (installed) yum-3.2.29-43.el6.centos.noarch python(abi) = 2.6 is needed by (installed) mercurial-1.4-3.el6.x86_64 python-sqlite is needed by (installed) yum-3.2.29-43.el6.centos.noarch python >= 2.4 is needed by (installed) yum-3.2.29-43.el6.centos.noarch python is needed by (installed) mercurial-1.4-3.el6.x86_64 /usr/bin/python is needed by (installed) python-urlgrabber-3.9.1-9.el6.noarch /usr/bin/python is needed by (installed) yum-3.2.29-43.el6.centos.noarch /usr/bin/python is needed by (installed) gettext-0.17-16.el6.x86_64 /usr/bin/python is needed by (installed) nfs-utils-1:1.2.3-39.el6.x86_64 /usr/bin/python is needed by (installed) redhat-lsb-core-4.0-7.el6.centos.x86_64 /usr/bin/python is needed by (installed) mercurial-1.4-3.el6.x86_64 /usr/bin/python is needed by (installed) glib2-devel-2.26.1-7.el6_5.x86_64 Like, for example -- yum -- and glib2-devel (which I require), and gettext - so removing it is out of the question. I've attached my current spec file. The problem seems to be this: The pre-existing python automatic-dependency generator thinks I need python(abi) = 2.7. But the python27 package supplies python27-python(abi) = 2.7. So, I need to do one of two things: 1) turn off automatic dependency generation for python 2) Force a different automatic dependency generation process to be used (one that is python27 aware) WITHOUT removing the "standard" RHEL6 python (which can't be done). Does anyone know how to do either thing? The first alternative seems to be the easier one, On 07/16/2014 02:01 AM, Honza Horak wrote: > On 07/16/2014 06:29 AM, Alan Robertson wrote: >> So, I'm trying to take the page you pointed at seriously - so I added >> this line from that page: >> >> BuildRequires: scl-utils-build >> >> >> There is no such package. What was intended here? > > This package is included in optional channel, but you shouldn't need > it, because you are preparing non-SCL package and scl-utils-build is > intended only for building SCL packages. > > Anyway, what is obviously wrong in your case is generating the python > requirements. These generators are delivered in python-devel and > python27-python-devel packages. So, if I'm not mistaken, your package > (and building environment) must include python27-python-devel but not > python-devel. In spec file you should have: > BuildRequires: python27-python-devel > > But be careful about packages installed during building (if you build > in your working environment), since I'm not sure which package gets > preference in case both python-devel and python27-python-devel are > installed. > > Regards, > Honza > >> >> >> On 07/15/2014 04:09 PM, Orion Poplawski wrote: >>> On 07/15/2014 04:06 PM, Orion Poplawski wrote: >>>> On 07/15/2014 03:55 PM, Alan Robertson wrote: >>>>> OK. It was pointed out to me off-list that I was comparing the >>>>> wrong thing. >>>>> I should have been looking at python27-python. Here's what that >>>>> package shows: >>>>> >>>>> bash-4.1# *rpm -q --provides python27-python* >>>>> python27-python-abi = 2.7 >>>>> python27-python(abi) = 2.7 >>>>> python27-Distutils >>>>> python27-python2 = 2.7.5 >>>>> python27-python-sqlite = 2.3.2 >>>>> python27-python-ctypes = 1.0.1 >>>>> python27-python-hashlib = 20081120 >>>>> python27-python-uuid = 1.31 >>>>> python27-python-argparse = 2.7.5-7.el6.centos.alt >>>>> python27-python = 2.7.5-7.el6.centos.alt >>>>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt >>>>> bash-4.1# >>>>> >>>>> Either I'm failing to do something to appease the automagical >>>>> python-version >>>>> detection (which I have no idea how it figures that out), or the >>>>> property >>>>> names in python27-python should not have the "python27-" prefix. >>>>> >>>>> Anyone know which it is - and how to deal with it? >>>>> >>>>> It seems to me like the attributes of the provides should not be >>>>> prefixed by >>>>> python27. But I'm new to this SCL stuff... >>>> >>>> FWIW - they "python(abi) = ##" requires is added by >>>> /usr/lib/rpm/pythondeps.sh >>>> as part of the standard rpm dependency generation. So yes, for this >>>> to work >>>> with the scl, either the scl needs to provide "python(abi) = 2.7" or >>>> you will >>>> need to disable the automatic requires generation or filter out the >>>> python(abi) line. >>>> >>>> We're all new to this SCL stuff.... :) >>>> >>>> >>> >>> Here's the magic from >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >>> >>> >>> >>> # Similarly, override __python_requires for automatic dependency >>> generator >>> %global __python_requires %{%{scl_python}_python_requires} >>> >>> >> >> >> -- >> Alan Robertson - @OSSAlanR >> >> "Openness is the foundation and preservative of friendship... Let me >> claim from you at all times your undisguised opinions." - William >> Wilberforce >> > -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce -------------- next part -------------- A non-text attachment was scrubbed... Name: assimilation-cma.spec Type: text/x-rpm-spec Size: 15646 bytes Desc: not available URL: From bkabrda at redhat.com Fri Jul 18 07:29:32 2014 From: bkabrda at redhat.com (Bohuslav Kabrda) Date: Fri, 18 Jul 2014 03:29:32 -0400 (EDT) Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C6D09E.9020006@unix.sh> References: <53C44656.9070801@unix.sh> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> <53C6D09E.9020006@unix.sh> Message-ID: <440752130.13544006.1405668572746.JavaMail.zimbra@redhat.com> ----- Original Message ----- > Python 2.6 is required by ThingsInTheUniverse: > > bash-4.1# rpm --erase python > error: Failed dependencies: > python(abi) = 2.6 is needed by (installed) > python-libs-2.6.6-52.el6.x86_64 > python(abi) = 2.6 is needed by (installed) > pygpgme-0.1-18.20090824bzr68.el6.x86_64 > python(abi) = 2.6 is needed by (installed) > python-pycurl-7.19.0-8.el6.x86_64 > python(abi) = 2.6 is needed by (installed) > python-urlgrabber-3.9.1-9.el6.noarch > python(abi) = 2.6 is needed by (installed) > rpm-python-4.8.0-37.el6.x86_64 > python(abi) = 2.6 is needed by (installed) > python-iniparse-0.3.1-2.1.el6.noarch > python(abi) = 2.6 is needed by (installed) > yum-metadata-parser-1.1.2-16.el6.x86_64 > python(abi) = 2.6 is needed by (installed) > yum-3.2.29-43.el6.centos.noarch > python(abi) = 2.6 is needed by (installed) > mercurial-1.4-3.el6.x86_64 > python-sqlite is needed by (installed) > yum-3.2.29-43.el6.centos.noarch > python >= 2.4 is needed by (installed) > yum-3.2.29-43.el6.centos.noarch > python is needed by (installed) mercurial-1.4-3.el6.x86_64 > /usr/bin/python is needed by (installed) > python-urlgrabber-3.9.1-9.el6.noarch > /usr/bin/python is needed by (installed) > yum-3.2.29-43.el6.centos.noarch > /usr/bin/python is needed by (installed) gettext-0.17-16.el6.x86_64 > /usr/bin/python is needed by (installed) > nfs-utils-1:1.2.3-39.el6.x86_64 > /usr/bin/python is needed by (installed) > redhat-lsb-core-4.0-7.el6.centos.x86_64 > /usr/bin/python is needed by (installed) mercurial-1.4-3.el6.x86_64 > /usr/bin/python is needed by (installed) > glib2-devel-2.26.1-7.el6_5.x86_64 > > Like, for example -- yum -- and glib2-devel (which I require), and > gettext - so removing it is out of the question. > > I've attached my current spec file. The problem seems to be this: > The pre-existing python automatic-dependency generator thinks I > need python(abi) = 2.7. > But the python27 package supplies python27-python(abi) = 2.7. > > So, I need to do one of two things: > 1) turn off automatic dependency generation for python > 2) Force a different automatic dependency generation process to be > used (one that is python27 aware) > WITHOUT removing the "standard" RHEL6 python (which can't > be done). > > Does anyone know how to do either thing? I don't think you can turn it off, but you could probably filter it out. Anyway, I wrote about the custom generators in collections and how to use them in my previous mail [1] Hope this helps, Slavek [1] https://www.redhat.com/archives/sclorg/2014-July/msg00031.html > The first alternative seems to be the easier one, > > > > > On 07/16/2014 02:01 AM, Honza Horak wrote: > > On 07/16/2014 06:29 AM, Alan Robertson wrote: > >> So, I'm trying to take the page you pointed at seriously - so I added > >> this line from that page: > >> > >> BuildRequires: scl-utils-build > >> > >> > >> There is no such package. What was intended here? > > > > This package is included in optional channel, but you shouldn't need > > it, because you are preparing non-SCL package and scl-utils-build is > > intended only for building SCL packages. > > > > Anyway, what is obviously wrong in your case is generating the python > > requirements. These generators are delivered in python-devel and > > python27-python-devel packages. So, if I'm not mistaken, your package > > (and building environment) must include python27-python-devel but not > > python-devel. In spec file you should have: > > BuildRequires: python27-python-devel > > > > But be careful about packages installed during building (if you build > > in your working environment), since I'm not sure which package gets > > preference in case both python-devel and python27-python-devel are > > installed. > > > > Regards, > > Honza > > > >> > >> > >> On 07/15/2014 04:09 PM, Orion Poplawski wrote: > >>> On 07/15/2014 04:06 PM, Orion Poplawski wrote: > >>>> On 07/15/2014 03:55 PM, Alan Robertson wrote: > >>>>> OK. It was pointed out to me off-list that I was comparing the > >>>>> wrong thing. > >>>>> I should have been looking at python27-python. Here's what that > >>>>> package shows: > >>>>> > >>>>> bash-4.1# *rpm -q --provides python27-python* > >>>>> python27-python-abi = 2.7 > >>>>> python27-python(abi) = 2.7 > >>>>> python27-Distutils > >>>>> python27-python2 = 2.7.5 > >>>>> python27-python-sqlite = 2.3.2 > >>>>> python27-python-ctypes = 1.0.1 > >>>>> python27-python-hashlib = 20081120 > >>>>> python27-python-uuid = 1.31 > >>>>> python27-python-argparse = 2.7.5-7.el6.centos.alt > >>>>> python27-python = 2.7.5-7.el6.centos.alt > >>>>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt > >>>>> bash-4.1# > >>>>> > >>>>> Either I'm failing to do something to appease the automagical > >>>>> python-version > >>>>> detection (which I have no idea how it figures that out), or the > >>>>> property > >>>>> names in python27-python should not have the "python27-" prefix. > >>>>> > >>>>> Anyone know which it is - and how to deal with it? > >>>>> > >>>>> It seems to me like the attributes of the provides should not be > >>>>> prefixed by > >>>>> python27. But I'm new to this SCL stuff... > >>>> > >>>> FWIW - they "python(abi) = ##" requires is added by > >>>> /usr/lib/rpm/pythondeps.sh > >>>> as part of the standard rpm dependency generation. So yes, for this > >>>> to work > >>>> with the scl, either the scl needs to provide "python(abi) = 2.7" or > >>>> you will > >>>> need to disable the automatic requires generation or filter out the > >>>> python(abi) line. > >>>> > >>>> We're all new to this SCL stuff.... :) > >>>> > >>>> > >>> > >>> Here's the magic from > >>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html > >>> > >>> > >>> > >>> # Similarly, override __python_requires for automatic dependency > >>> generator > >>> %global __python_requires %{%{scl_python}_python_requires} > >>> > >>> > >> > >> > >> -- > >> Alan Robertson - @OSSAlanR > >> > >> "Openness is the foundation and preservative of friendship... Let me > >> claim from you at all times your undisguised opinions." - William > >> Wilberforce > >> > > > > > -- > Alan Robertson - @OSSAlanR > > "Openness is the foundation and preservative of friendship... Let me claim > from you at all times your undisguised opinions." - William Wilberforce > > -- Regards, Bohuslav "Slavek" Kabrda. From alanr at unix.sh Fri Jul 18 13:18:19 2014 From: alanr at unix.sh (Alan Robertson) Date: Fri, 18 Jul 2014 07:18:19 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <440752130.13544006.1405668572746.JavaMail.zimbra@redhat.com> References: <53C44656.9070801@unix.sh> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> <53C6D09E.9020006@unix.sh> <440752130.13544006.1405668572746.JavaMail.zimbra@redhat.com> Message-ID: <53C91E9B.6010506@unix.sh> I didn't understand that email at all... I'll review it again and see if I can make any more sense out of it. It seemed like it had a lot more macros in it than I need. Since I don't know what most of them do, that makes it harder. On 07/18/2014 01:29 AM, Bohuslav Kabrda wrote: > ----- Original Message ----- >> Python 2.6 is required by ThingsInTheUniverse: >> >> bash-4.1# rpm --erase python >> error: Failed dependencies: >> python(abi) = 2.6 is needed by (installed) >> python-libs-2.6.6-52.el6.x86_64 >> python(abi) = 2.6 is needed by (installed) >> pygpgme-0.1-18.20090824bzr68.el6.x86_64 >> python(abi) = 2.6 is needed by (installed) >> python-pycurl-7.19.0-8.el6.x86_64 >> python(abi) = 2.6 is needed by (installed) >> python-urlgrabber-3.9.1-9.el6.noarch >> python(abi) = 2.6 is needed by (installed) >> rpm-python-4.8.0-37.el6.x86_64 >> python(abi) = 2.6 is needed by (installed) >> python-iniparse-0.3.1-2.1.el6.noarch >> python(abi) = 2.6 is needed by (installed) >> yum-metadata-parser-1.1.2-16.el6.x86_64 >> python(abi) = 2.6 is needed by (installed) >> yum-3.2.29-43.el6.centos.noarch >> python(abi) = 2.6 is needed by (installed) >> mercurial-1.4-3.el6.x86_64 >> python-sqlite is needed by (installed) >> yum-3.2.29-43.el6.centos.noarch >> python >= 2.4 is needed by (installed) >> yum-3.2.29-43.el6.centos.noarch >> python is needed by (installed) mercurial-1.4-3.el6.x86_64 >> /usr/bin/python is needed by (installed) >> python-urlgrabber-3.9.1-9.el6.noarch >> /usr/bin/python is needed by (installed) >> yum-3.2.29-43.el6.centos.noarch >> /usr/bin/python is needed by (installed) gettext-0.17-16.el6.x86_64 >> /usr/bin/python is needed by (installed) >> nfs-utils-1:1.2.3-39.el6.x86_64 >> /usr/bin/python is needed by (installed) >> redhat-lsb-core-4.0-7.el6.centos.x86_64 >> /usr/bin/python is needed by (installed) mercurial-1.4-3.el6.x86_64 >> /usr/bin/python is needed by (installed) >> glib2-devel-2.26.1-7.el6_5.x86_64 >> >> Like, for example -- yum -- and glib2-devel (which I require), and >> gettext - so removing it is out of the question. >> >> I've attached my current spec file. The problem seems to be this: >> The pre-existing python automatic-dependency generator thinks I >> need python(abi) = 2.7. >> But the python27 package supplies python27-python(abi) = 2.7. >> >> So, I need to do one of two things: >> 1) turn off automatic dependency generation for python >> 2) Force a different automatic dependency generation process to be >> used (one that is python27 aware) >> WITHOUT removing the "standard" RHEL6 python (which can't >> be done). >> >> Does anyone know how to do either thing? > I don't think you can turn it off, but you could probably filter it out. Anyway, I wrote about the custom generators in collections and how to use them in my previous mail [1] > > Hope this helps, > Slavek > > [1] https://www.redhat.com/archives/sclorg/2014-July/msg00031.html > >> The first alternative seems to be the easier one, >> >> >> >> >> On 07/16/2014 02:01 AM, Honza Horak wrote: >>> On 07/16/2014 06:29 AM, Alan Robertson wrote: >>>> So, I'm trying to take the page you pointed at seriously - so I added >>>> this line from that page: >>>> >>>> BuildRequires: scl-utils-build >>>> >>>> >>>> There is no such package. What was intended here? >>> This package is included in optional channel, but you shouldn't need >>> it, because you are preparing non-SCL package and scl-utils-build is >>> intended only for building SCL packages. >>> >>> Anyway, what is obviously wrong in your case is generating the python >>> requirements. These generators are delivered in python-devel and >>> python27-python-devel packages. So, if I'm not mistaken, your package >>> (and building environment) must include python27-python-devel but not >>> python-devel. In spec file you should have: >>> BuildRequires: python27-python-devel >>> >>> But be careful about packages installed during building (if you build >>> in your working environment), since I'm not sure which package gets >>> preference in case both python-devel and python27-python-devel are >>> installed. >>> >>> Regards, >>> Honza >>> >>>> >>>> On 07/15/2014 04:09 PM, Orion Poplawski wrote: >>>>> On 07/15/2014 04:06 PM, Orion Poplawski wrote: >>>>>> On 07/15/2014 03:55 PM, Alan Robertson wrote: >>>>>>> OK. It was pointed out to me off-list that I was comparing the >>>>>>> wrong thing. >>>>>>> I should have been looking at python27-python. Here's what that >>>>>>> package shows: >>>>>>> >>>>>>> bash-4.1# *rpm -q --provides python27-python* >>>>>>> python27-python-abi = 2.7 >>>>>>> python27-python(abi) = 2.7 >>>>>>> python27-Distutils >>>>>>> python27-python2 = 2.7.5 >>>>>>> python27-python-sqlite = 2.3.2 >>>>>>> python27-python-ctypes = 1.0.1 >>>>>>> python27-python-hashlib = 20081120 >>>>>>> python27-python-uuid = 1.31 >>>>>>> python27-python-argparse = 2.7.5-7.el6.centos.alt >>>>>>> python27-python = 2.7.5-7.el6.centos.alt >>>>>>> python27-python(x86-64) = 2.7.5-7.el6.centos.alt >>>>>>> bash-4.1# >>>>>>> >>>>>>> Either I'm failing to do something to appease the automagical >>>>>>> python-version >>>>>>> detection (which I have no idea how it figures that out), or the >>>>>>> property >>>>>>> names in python27-python should not have the "python27-" prefix. >>>>>>> >>>>>>> Anyone know which it is - and how to deal with it? >>>>>>> >>>>>>> It seems to me like the attributes of the provides should not be >>>>>>> prefixed by >>>>>>> python27. But I'm new to this SCL stuff... >>>>>> FWIW - they "python(abi) = ##" requires is added by >>>>>> /usr/lib/rpm/pythondeps.sh >>>>>> as part of the standard rpm dependency generation. So yes, for this >>>>>> to work >>>>>> with the scl, either the scl needs to provide "python(abi) = 2.7" or >>>>>> you will >>>>>> need to disable the automatic requires generation or filter out the >>>>>> python(abi) line. >>>>>> >>>>>> We're all new to this SCL stuff.... :) >>>>>> >>>>>> >>>>> Here's the magic from >>>>> https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/2/html/Software_Collections_Guide/sect-Extending_the_python27_and_python33_Software_Collections.html >>>>> >>>>> >>>>> >>>>> # Similarly, override __python_requires for automatic dependency >>>>> generator >>>>> %global __python_requires %{%{scl_python}_python_requires} >>>>> >>>>> >>>> >>>> -- >>>> Alan Robertson - @OSSAlanR >>>> >>>> "Openness is the foundation and preservative of friendship... Let me >>>> claim from you at all times your undisguised opinions." - William >>>> Wilberforce >>>> >> >> -- >> Alan Robertson - @OSSAlanR >> >> "Openness is the foundation and preservative of friendship... Let me claim >> from you at all times your undisguised opinions." - William Wilberforce >> >> -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce From alanr at unix.sh Fri Jul 18 17:10:57 2014 From: alanr at unix.sh (Alan Robertson) Date: Fri, 18 Jul 2014 11:10:57 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <1192289781.10192864.1405499435718.JavaMail.zimbra@redhat.com> References: <53C44656.9070801@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> <1192289781.10192864.1405499435718.JavaMail.zimbra@redhat.com> Message-ID: <53C95521.8050009@unix.sh> On 07/16/2014 02:30 AM, Bohuslav Kabrda wrote: > That's correct. The problem here is, I think, that the package places it's files into sitearch of the SCL, but it's not actually an SCL package. One of the results of having it as non-SCL package means, that %scl_package_override() function, present in the python27-build subpackage doesn't get invoked. This function looks like this (you need to 's/@scl@/python27/'): > > # override __os_install_post for this collection > # the python27_os_install_post macro is defined in macros.python2.python27 in python27-python-devel > # the name is intentionally hardcoded to always provide the same name > %scl_package_override() %{expand:%{?@scl at _os_install_post:%global __os_install_post %@scl at _os_install_post} > %global __python_requires %@scl at _python_requires > %global __python_provides %@scl at _python_provides This looks like it has a typo in it. If @scl@ is python27, then %global __python_requires %@scl at _python_requires becomes %global __python_requires python27_python_requires and %global __python_provides %@scl at _python_provides becomes %global __python_provides python27_python_provides Why is the original spelled with two underscores ("__python_requires") but the replacement name ("python27_python_requires") only has one underscore? This seems a bit inconsistent... It looks correct, but inconsistent... I see that the python27_python_requires macro is defined in /etc/rpm/macros.python2.python27. I see that __python_requires is defined in the file /usr/lib/rpm/macros. The definition of python27_python_requires is: %python27_python_provides /usr/lib/rpm/pythondeps-scl.sh --provides %{?scl_prefix} %python27_python_requires /usr/lib/rpm/pythondeps-scl.sh --requires %{?scl_prefix} So, it expects you to set scl_prefix. I set it to "python27-" From what I can see in the macro definitions, that's what I expect it would want. Well, at least now I get different problems! + install -p -D -m0755 /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-cma + install -p -D -m0755 /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-nanoprobe + rm -f /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe + mkdir -p /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/assimilation + mkdir -p /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/nanoprobe + mkdir -p /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/lib64 + mkdir -p /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root//usr/lib64/python2.7/site-packages/assimilation/testcode + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' /var/tmp/rpm-tmp.uQBlOW: line 59: /usr/lib/rpm/brp-scl-compress: No such file or directory error: Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) Looks like that should come from scl-utils-build... -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce From alanr at unix.sh Fri Jul 18 17:15:58 2014 From: alanr at unix.sh (Alan Robertson) Date: Fri, 18 Jul 2014 11:15:58 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C95521.8050009@unix.sh> References: <53C44656.9070801@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> <1192289781.10192864.1405499435718.JavaMail.zimbra@redhat.com> <53C95521.8050009@unix.sh> Message-ID: <53C9564E.3080806@unix.sh> Next error: extracting debug info from /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/sbin/nanoprobe 1376 blocks + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' + /usr/lib/rpm/redhat/brp-strip /usr/bin/strip + /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip + scl enable %scl '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python /usr/bin/python 1 %{_scl_root}' Unable to open /etc/scl/prefixes/%scl! error: Bad exit status from /var/tmp/rpm-tmp.eqUbD6 (%install) Bad exit status from /var/tmp/rpm-tmp.eqUbD6 (%install) I'm guessing need to define %scl. It looks to me like these macros expect that you're *defining* a package, not using one. Good thing I don't need more than one, or I'd be in a world of hurt (which is how it feels now anyway). On 07/18/2014 11:10 AM, Alan Robertson wrote: > On 07/16/2014 02:30 AM, Bohuslav Kabrda wrote: >> That's correct. The problem here is, I think, that the package places >> it's files into sitearch of the SCL, but it's not actually an SCL >> package. One of the results of having it as non-SCL package means, >> that %scl_package_override() function, present in the python27-build >> subpackage doesn't get invoked. This function looks like this (you >> need to 's/@scl@/python27/'): >> >> # override __os_install_post for this collection >> # the python27_os_install_post macro is defined in >> macros.python2.python27 in python27-python-devel >> # the name is intentionally hardcoded to always provide the same name >> %scl_package_override() %{expand:%{?@scl at _os_install_post:%global >> __os_install_post %@scl at _os_install_post} >> %global __python_requires %@scl at _python_requires >> %global __python_provides %@scl at _python_provides > This looks like it has a typo in it. > > If @scl@ is python27, then > > %global __python_requires %@scl at _python_requires > becomes > %global __python_requires python27_python_requires > and > %global __python_provides %@scl at _python_provides > becomes > %global __python_provides python27_python_provides > > Why is the original spelled with two underscores ("__python_requires") > but the replacement name ("python27_python_requires") only has one > underscore? > > This seems a bit inconsistent... It looks correct, but inconsistent... > > > I see that the python27_python_requires macro is defined in > /etc/rpm/macros.python2.python27. I see that __python_requires is > defined in the file /usr/lib/rpm/macros. > The definition of python27_python_requires is: > %python27_python_provides /usr/lib/rpm/pythondeps-scl.sh --provides > %{?scl_prefix} > %python27_python_requires /usr/lib/rpm/pythondeps-scl.sh --requires > %{?scl_prefix} > > So, it expects you to set scl_prefix. I set it to "python27-" From > what I can see in the macro definitions, that's what I expect it would > want. > > Well, at least now I get different problems! > > + install -p -D -m0755 > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-cma > > + install -p -D -m0755 > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-nanoprobe > > + rm -f > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe > > + mkdir -p > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/assimilation > + mkdir -p > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/nanoprobe > + mkdir -p > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/lib64 > + mkdir -p > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root//usr/lib64/python2.7/site-packages/assimilation/testcode > + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' > /var/tmp/rpm-tmp.uQBlOW: line 59: /usr/lib/rpm/brp-scl-compress: No > such file or directory > error: Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) > Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) > > Looks like that should come from scl-utils-build... > -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce From alanr at unix.sh Fri Jul 18 19:03:27 2014 From: alanr at unix.sh (Alan Robertson) Date: Fri, 18 Jul 2014 13:03:27 -0600 Subject: [scl.org] Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C9564E.3080806@unix.sh> References: <53C44656.9070801@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> <1192289781.10192864.1405499435718.JavaMail.zimbra@redhat.com> <53C95521.8050009@unix.sh> <53C9564E.3080806@unix.sh> Message-ID: <53C96F7F.3000608@unix.sh> Next error - not sure what to do about this one... + scl enable python27 '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python /usr/bin/python 1 %{_scl_root}' Compiling /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/assimcli.py ... SyntaxError: ('invalid syntax', ('/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/assimcli.py', 157, 22, "options = {'language', 'format'}\n")) Compiling /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/cmaconfig.py ... SyntaxError: ('invalid syntax', ('/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/cmaconfig.py', 42, 53, " {'linkdiscovery', # listens for CMA/LLDP packets\n")) *[This syntax is >= 2.7 python only]* error: Bad exit status from /var/tmp/rpm-tmp.FIkESm (%install) Bad exit status from /var/tmp/rpm-tmp.FIkESm (%install) > scl enable python27 > '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python > /usr/bin/python 1 %{_scl_root It is using /usr/bin/python to compile my python 2.7 programs. What's up with that? On 07/18/2014 11:15 AM, Alan Robertson wrote: > Next error: > > extracting debug info from > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/sbin/nanoprobe > 1376 blocks > + /usr/lib/rpm/check-buildroot > + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' > + /usr/lib/rpm/redhat/brp-strip /usr/bin/strip > + /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip > /usr/bin/objdump > + /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip > + scl enable %scl > '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python > /usr/bin/python 1 %{_scl_root}' > Unable to open /etc/scl/prefixes/%scl! > error: Bad exit status from /var/tmp/rpm-tmp.eqUbD6 (%install) > Bad exit status from /var/tmp/rpm-tmp.eqUbD6 (%install) > > I'm guessing need to define %scl. > > It looks to me like these macros expect that you're *defining* a > package, not using one. Good thing I don't need more than one, or I'd > be in a world of hurt (which is how it feels now anyway). > > > On 07/18/2014 11:10 AM, Alan Robertson wrote: >> On 07/16/2014 02:30 AM, Bohuslav Kabrda wrote: >>> That's correct. The problem here is, I think, that the package >>> places it's files into sitearch of the SCL, but it's not actually an >>> SCL package. One of the results of having it as non-SCL package >>> means, that %scl_package_override() function, present in the >>> python27-build subpackage doesn't get invoked. This function looks >>> like this (you need to 's/@scl@/python27/'): >>> >>> # override __os_install_post for this collection >>> # the python27_os_install_post macro is defined in >>> macros.python2.python27 in python27-python-devel >>> # the name is intentionally hardcoded to always provide the same name >>> %scl_package_override() %{expand:%{?@scl at _os_install_post:%global >>> __os_install_post %@scl at _os_install_post} >>> %global __python_requires %@scl at _python_requires >>> %global __python_provides %@scl at _python_provides >> This looks like it has a typo in it. >> >> If @scl@ is python27, then >> >> %global __python_requires %@scl at _python_requires >> becomes >> %global __python_requires python27_python_requires >> and >> %global __python_provides %@scl at _python_provides >> becomes >> %global __python_provides python27_python_provides >> >> Why is the original spelled with two underscores >> ("__python_requires") but the replacement name >> ("python27_python_requires") only has one underscore? >> >> This seems a bit inconsistent... It looks correct, but inconsistent... >> >> >> I see that the python27_python_requires macro is defined in >> /etc/rpm/macros.python2.python27. I see that __python_requires is >> defined in the file /usr/lib/rpm/macros. >> The definition of python27_python_requires is: >> %python27_python_provides /usr/lib/rpm/pythondeps-scl.sh --provides >> %{?scl_prefix} >> %python27_python_requires /usr/lib/rpm/pythondeps-scl.sh --requires >> %{?scl_prefix} >> >> So, it expects you to set scl_prefix. I set it to "python27-" From >> what I can see in the macro definitions, that's what I expect it >> would want. >> >> Well, at least now I get different problems! >> >> + install -p -D -m0755 >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-cma >> >> + install -p -D -m0755 >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-nanoprobe >> >> + rm -f >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe >> >> + mkdir -p >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/assimilation >> + mkdir -p >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/nanoprobe >> + mkdir -p >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/lib64 >> + mkdir -p >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root//usr/lib64/python2.7/site-packages/assimilation/testcode >> + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' >> /var/tmp/rpm-tmp.uQBlOW: line 59: /usr/lib/rpm/brp-scl-compress: No >> such file or directory >> error: Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) >> Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) >> >> Looks like that should come from scl-utils-build... >> > > -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce -------------- next part -------------- An HTML attachment was scrubbed... URL: From alanr at unix.sh Fri Jul 18 19:43:10 2014 From: alanr at unix.sh (Alan Robertson) Date: Fri, 18 Jul 2014 13:43:10 -0600 Subject: [scl.org] Solved: Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C96F7F.3000608@unix.sh> References: <53C44656.9070801@unix.sh> <53C56E33.7010907@redhat.com> <53C58C23.30606@unix.sh> <53C5A34D.7060504@unix.sh> <53C5A5EC.8040908@cora.nwra.com> <53C5A68E.1030107@cora.nwra.com> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> <1192289781.10192864.1405499435718.JavaMail.zimbra@redhat.com> <53C95521.8050009@unix.sh> <53C9564E.3080806@unix.sh> <53C96F7F.3000608@unix.sh> Message-ID: <53C978CE.2000402@unix.sh> Looks like it finally works: Here are the key lines from my spec file: %global pymajor %(python -c 'import sys; print "%s" % sys.version_info[0]') %global pyminor %(python -c 'import sys; print "%s" % sys.version_info[1]') %global uses_systemd %(test -f /usr/lib/systemd/systemd && echo 1 || echo 0) %global python27_native %(test %{pyminor} -ge 7 && echo 1 || echo 0) %if %{python27_native} %else %global scl_python python27 %global scl %{scl_python} %global _scl_root /opt/rh/%{scl_python}/root %global __python %{_scl_root}%{__python} %global scl_prefix %{scl_python}- %global __python_requires %{%{scl_python}_python_requires} %global __python_provides %{%{scl_python}_python_provides} %global __os_install_post %{python27_os_install_post} %global python_sitearch %{_scl_root}/%{_libdir}/python2.7/site-packages %endif I've attached the whole thing for your reading pleasure. The only thing I defined that I didn't really need was the scl_python. I could have used scl, but thought scl_python was clearer. Note that you have to define more or less all the other things in the else condition of that if statement. On 07/18/2014 01:03 PM, Alan Robertson wrote: > Next error - not sure what to do about this one... > > > + scl enable python27 > '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python > /usr/bin/python 1 %{_scl_root}' > Compiling > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/assimcli.py > ... > SyntaxError: ('invalid syntax', > ('/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/assimcli.py', > 157, 22, "options = {'language', 'format'}\n")) > > Compiling > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/cmaconfig.py > ... > SyntaxError: ('invalid syntax', > ('/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/cmaconfig.py', > 42, 53, " {'linkdiscovery', # listens for CMA/LLDP packets\n")) > > *[This syntax is >= 2.7 python only]* > > error: Bad exit status from /var/tmp/rpm-tmp.FIkESm (%install) > Bad exit status from /var/tmp/rpm-tmp.FIkESm (%install) > >> scl enable python27 >> '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python >> /usr/bin/python 1 %{_scl_root > > It is using /usr/bin/python to compile my python 2.7 programs. What's > up with that? > > > On 07/18/2014 11:15 AM, Alan Robertson wrote: >> Next error: >> >> extracting debug info from >> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/sbin/nanoprobe >> 1376 blocks >> + /usr/lib/rpm/check-buildroot >> + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' >> + /usr/lib/rpm/redhat/brp-strip /usr/bin/strip >> + /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip >> /usr/bin/objdump >> + /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip >> + scl enable %scl >> '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python >> /usr/bin/python 1 %{_scl_root}' >> Unable to open /etc/scl/prefixes/%scl! >> error: Bad exit status from /var/tmp/rpm-tmp.eqUbD6 (%install) >> Bad exit status from /var/tmp/rpm-tmp.eqUbD6 (%install) >> >> I'm guessing need to define %scl. >> >> It looks to me like these macros expect that you're *defining* a >> package, not using one. Good thing I don't need more than one, or >> I'd be in a world of hurt (which is how it feels now anyway). >> >> >> On 07/18/2014 11:10 AM, Alan Robertson wrote: >>> On 07/16/2014 02:30 AM, Bohuslav Kabrda wrote: >>>> That's correct. The problem here is, I think, that the package >>>> places it's files into sitearch of the SCL, but it's not actually >>>> an SCL package. One of the results of having it as non-SCL package >>>> means, that %scl_package_override() function, present in the >>>> python27-build subpackage doesn't get invoked. This function looks >>>> like this (you need to 's/@scl@/python27/'): >>>> >>>> # override __os_install_post for this collection >>>> # the python27_os_install_post macro is defined in >>>> macros.python2.python27 in python27-python-devel >>>> # the name is intentionally hardcoded to always provide the same name >>>> %scl_package_override() %{expand:%{?@scl at _os_install_post:%global >>>> __os_install_post %@scl at _os_install_post} >>>> %global __python_requires %@scl at _python_requires >>>> %global __python_provides %@scl at _python_provides >>> This looks like it has a typo in it. >>> >>> If @scl@ is python27, then >>> >>> %global __python_requires %@scl at _python_requires >>> becomes >>> %global __python_requires python27_python_requires >>> and >>> %global __python_provides %@scl at _python_provides >>> becomes >>> %global __python_provides python27_python_provides >>> >>> Why is the original spelled with two underscores >>> ("__python_requires") but the replacement name >>> ("python27_python_requires") only has one underscore? >>> >>> This seems a bit inconsistent... It looks correct, but inconsistent... >>> >>> >>> I see that the python27_python_requires macro is defined in >>> /etc/rpm/macros.python2.python27. I see that __python_requires is >>> defined in the file /usr/lib/rpm/macros. >>> The definition of python27_python_requires is: >>> %python27_python_provides /usr/lib/rpm/pythondeps-scl.sh --provides >>> %{?scl_prefix} >>> %python27_python_requires /usr/lib/rpm/pythondeps-scl.sh --requires >>> %{?scl_prefix} >>> >>> So, it expects you to set scl_prefix. I set it to "python27-" From >>> what I can see in the macro definitions, that's what I expect it >>> would want. >>> >>> Well, at least now I get different problems! >>> >>> + install -p -D -m0755 >>> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-cma >>> >>> + install -p -D -m0755 >>> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe >>> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-nanoprobe >>> >>> + rm -f >>> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe >>> >>> + mkdir -p >>> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/assimilation >>> + mkdir -p >>> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/nanoprobe >>> >>> + mkdir -p >>> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/lib64 >>> + mkdir -p >>> /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root//usr/lib64/python2.7/site-packages/assimilation/testcode >>> + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' >>> /var/tmp/rpm-tmp.uQBlOW: line 59: /usr/lib/rpm/brp-scl-compress: No >>> such file or directory >>> error: Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) >>> Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) >>> >>> Looks like that should come from scl-utils-build... >>> >> >> > > > -- > Alan Robertson - @OSSAlanR > > "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce > > > _______________________________________________ > SCLorg mailing list > SCLorg at redhat.com > https://www.redhat.com/mailman/listinfo/sclorg -- Alan Robertson - @OSSAlanR "Openness is the foundation and preservative of friendship... Let me claim from you at all times your undisguised opinions." - William Wilberforce -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: assimilation-cma.spec Type: text/x-rpm-spec Size: 15810 bytes Desc: not available URL: From bkabrda at redhat.com Tue Jul 29 11:41:23 2014 From: bkabrda at redhat.com (Bohuslav Kabrda) Date: Tue, 29 Jul 2014 07:41:23 -0400 (EDT) Subject: [scl.org] Solved: Question about generating RPMs that depend on SCLs (like python27) In-Reply-To: <53C978CE.2000402@unix.sh> References: <53C44656.9070801@unix.sh> <53C5FFA8.7070908@unix.sh> <53C63157.8030903@redhat.com> <1192289781.10192864.1405499435718.JavaMail.zimbra@redhat.com> <53C95521.8050009@unix.sh> <53C9564E.3080806@unix.sh> <53C96F7F.3000608@unix.sh> <53C978CE.2000402@unix.sh> Message-ID: <2065004460.25926078.1406634083676.JavaMail.zimbra@redhat.com> ----- Original Message ----- > Looks like it finally works: > Here are the key lines from my spec file: > %global pymajor %(python -c 'import sys; print "%s" % sys.version_info[0]') > %global pyminor %(python -c 'import sys; print "%s" % sys.version_info[1]') > %global uses_systemd %(test -f /usr/lib/systemd/systemd && echo 1 || echo 0) > %global python27_native %(test %{pyminor} -ge 7 && echo 1 || echo 0) > %if %{python27_native} > %else > %global scl_python python27 > %global scl %{scl_python} > %global _scl_root /opt/rh/%{scl_python}/root > %global __python %{_scl_root}%{__python} > %global scl_prefix %{scl_python}- > %global __python_requires %{%{scl_python}_python_requires} > %global __python_provides %{%{scl_python}_python_provides} > %global __os_install_post %{python27_os_install_post} > %global python_sitearch %{_scl_root}/%{_libdir}/python2.7/site-packages > %endif > I've attached the whole thing for your reading pleasure. > The only thing I defined that I didn't really need was the scl_python. I > could have used scl, but thought scl_python was clearer. Note that you have > to define more or less all the other things in the else condition of that if > statement. Hi Alan, thanks for sharing this! I'm sorry that I couldn't reply to your mails last week, but I was attending a conference and was otherwise occupied. The reason why you hit these obstacles is that your usecase is slightly different from what SCLs are supposed to do - making non-SCL packages depend on SCL packages is not standard (not at this moment, but I guess that can be subject to change over time). From what I see, you hit so many obstacles because you basically had to redo a great portion of RPM macro magic that I did for Python SCLs. And that feels kinda iffy, at least in the start. Again, thanks for sharing this and feel free to reach out next time, too - I hope I'll be more responsive than this time :) Slavek > On 07/18/2014 01:03 PM, Alan Robertson wrote: > > Next error - not sure what to do about this one... > > > + scl enable python27 > > '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python /usr/bin/python > > 1 %{_scl_root}' > > > Compiling > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/assimcli.py > > ... > > > SyntaxError: ('invalid syntax', > > ('/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/assimcli.py', > > 157, 22, "options = {'language', 'format'}\n")) > > > Compiling > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/cmaconfig.py > > ... > > > SyntaxError: ('invalid syntax', > > ('/opt/rh/python27/root/usr/lib64/python2.7/site-packages/assimilation/cmaconfig.py', > > 42, 53, " {'linkdiscovery', # listens for CMA/LLDP packets\n")) > > > [This syntax is >= 2.7 python only] > > > error: Bad exit status from /var/tmp/rpm-tmp.FIkESm (%install) > > > Bad exit status from /var/tmp/rpm-tmp.FIkESm (%install) > > > > scl enable python27 > > > '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python > > > /usr/bin/python > > > 1 %{_scl_root > > > > > It is using /usr/bin/python to compile my python 2.7 programs. What's up > > with > > that? > > > On 07/18/2014 11:15 AM, Alan Robertson wrote: > > > > Next error: > > > > > > extracting debug info from > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/sbin/nanoprobe > > > > > > 1376 blocks > > > > > > + /usr/lib/rpm/check-buildroot > > > > > > + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' > > > > > > + /usr/lib/rpm/redhat/brp-strip /usr/bin/strip > > > > > > + /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip > > > /usr/bin/objdump > > > > > > + /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip > > > > > > + scl enable %scl > > > '/usr/lib/rpm/redhat/brp-python-bytecompile-with-scl-python > > > /usr/bin/python 1 %{_scl_root}' > > > > > > Unable to open /etc/scl/prefixes/%scl! > > > > > > error: Bad exit status from /var/tmp/rpm-tmp.eqUbD6 (%install) > > > > > > Bad exit status from /var/tmp/rpm-tmp.eqUbD6 (%install) > > > > > > I'm guessing need to define %scl. > > > > > > It looks to me like these macros expect that you're *defining* a package, > > > not > > > using one. Good thing I don't need more than one, or I'd be in a world of > > > hurt (which is how it feels now anyway). > > > > > > On 07/18/2014 11:10 AM, Alan Robertson wrote: > > > > > > > On 07/16/2014 02:30 AM, Bohuslav Kabrda wrote: > > > > > > > > > > > That's correct. The problem here is, I think, that the package places > > > > > it's > > > > > files into sitearch of the SCL, but it's not actually an SCL package. > > > > > One > > > > > of > > > > > the results of having it as non-SCL package means, that > > > > > %scl_package_override() function, present in the python27-build > > > > > subpackage > > > > > doesn't get invoked. This function looks like this (you need to > > > > > 's/@scl@/python27/'): > > > > > > > > > > > > > > > # override __os_install_post for this collection > > > > > > > > > > > > > > > # the python27_os_install_post macro is defined in > > > > > macros.python2.python27 > > > > > in > > > > > python27-python-devel > > > > > > > > > > > > > > > # the name is intentionally hardcoded to always provide the same name > > > > > > > > > > > > > > > %scl_package_override() %{expand:%{?@scl at _os_install_post:%global > > > > > __os_install_post %@scl at _os_install_post} > > > > > > > > > > > > > > > %global __python_requires %@scl at _python_requires > > > > > > > > > > > > > > > %global __python_provides %@scl at _python_provides > > > > > > > > > > > > > > This looks like it has a typo in it. > > > > > > > > > > If @scl@ is python27, then > > > > > > > > > > %global __python_requires %@scl at _python_requires > > > > > > > > > > becomes > > > > > > > > > > %global __python_requires python27_python_requires > > > > > > > > > > and > > > > > > > > > > %global __python_provides %@scl at _python_provides > > > > > > > > > > becomes > > > > > > > > > > %global __python_provides python27_python_provides > > > > > > > > > > Why is the original spelled with two underscores ("__python_requires") > > > > but > > > > the replacement name ("python27_python_requires") only has one > > > > underscore? > > > > > > > > > > This seems a bit inconsistent... It looks correct, but inconsistent... > > > > > > > > > > I see that the python27_python_requires macro is defined in > > > > /etc/rpm/macros.python2.python27. I see that __python_requires is > > > > defined > > > > in > > > > the file /usr/lib/rpm/macros. > > > > > > > > > > The definition of python27_python_requires is: > > > > > > > > > > %python27_python_provides /usr/lib/rpm/pythondeps-scl.sh --provides > > > > %{?scl_prefix} > > > > > > > > > > %python27_python_requires /usr/lib/rpm/pythondeps-scl.sh --requires > > > > %{?scl_prefix} > > > > > > > > > > So, it expects you to set scl_prefix. I set it to "python27-" From what > > > > I > > > > can > > > > see in the macro definitions, that's what I expect it would want. > > > > > > > > > > Well, at least now I get different problems! > > > > > > > > > > + install -p -D -m0755 > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-cma > > > > > > > > > > + install -p -D -m0755 > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/rc.d/init.d/assimilation-nanoprobe > > > > > > > > > > + rm -f > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/cma > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/etc/init.d/nanoprobe > > > > > > > > > > + mkdir -p > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/assimilation > > > > > > > > > > + mkdir -p > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/var/run/nanoprobe > > > > > > > > > > + mkdir -p > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/usr/lib64 > > > > > > > > > > + mkdir -p > > > > /rpmbuild/BUILDROOT/assimilation-cma-0.1.4-0.30.x86_64/opt/rh/python27/root//usr/lib64/python2.7/site-packages/assimilation/testcode > > > > > > > > > > + /usr/lib/rpm/brp-scl-compress '%{_scl_root}' > > > > > > > > > > /var/tmp/rpm-tmp.uQBlOW: line 59: /usr/lib/rpm/brp-scl-compress: No > > > > such > > > > file > > > > or directory > > > > > > > > > > error: Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) > > > > > > > > > > Bad exit status from /var/tmp/rpm-tmp.uQBlOW (%install) > > > > > > > > > > Looks like that should come from scl-utils-build... > > > > > > > > -- > > > Alan Robertson - @OSSAlanR > > > "Openness is the foundation and preservative of friendship... Let me claim > > from you at all times your undisguised opinions." - William Wilberforce > > > _______________________________________________ > > > SCLorg mailing list SCLorg at redhat.com > > https://www.redhat.com/mailman/listinfo/sclorg > > -- > Alan Robertson - @OSSAlanR > "Openness is the foundation and preservative of friendship... Let me claim > from you at all times your undisguised opinions." - William Wilberforce -- Regards, Slavek Kabrda -------------- next part -------------- An HTML attachment was scrubbed... URL: