Thread: RPM meta package
I have a package which previously depended on postgresql92-odbc, but I would like to be able to upgrade that without explicitly changing the dependency, for all future versions. Maybe something like "depends: postgresql-odbc > 9". The various postgresql-libs RPMs provide this - i.e., I can install postgresql94-libs and it satisfies any dependency for postgresql-libs. But the only RPM that satisfies the dependency for postgresql-odbc is an old one: > yum provides postgresql-odbc postgresql-odbc-08.04.0200-1.el6.x86_64 : PostgreSQL ODBC driver Repo : base Is there some reason that postgresqlxx-odbc RPMs don't provide the virtual package for postgresql-odbc, so that whatever version I have installed will fulfill the dependency? Thanks, Jeremiah
On 03/31/2015 09:06 AM, Jeremiah Penery wrote: > I have a package which previously depended on postgresql92-odbc, but I > would like to be able to upgrade that without explicitly changing the > dependency, for all future versions. Maybe something like "depends: > postgresql-odbc > 9". > > The various postgresql-libs RPMs provide this - i.e., I can install > postgresql94-libs and it satisfies any dependency for postgresql-libs. > But the only RPM that satisfies the dependency for postgresql-odbc is an > old one: > >> yum provides postgresql-odbc > postgresql-odbc-08.04.0200-1.el6.x86_64 : PostgreSQL ODBC driver > Repo : base > > Is there some reason that postgresqlxx-odbc RPMs don't provide the > virtual package for postgresql-odbc, so that whatever version I have > installed will fulfill the dependency? Not sure. What distro are you using? What repo are you pointing at? > > Thanks, > Jeremiah > > -- Adrian Klaver adrian.klaver@aklaver.com
On 03/31/2015 01:33 PM, Adrian Klaver wrote: > On 03/31/2015 09:06 AM, Jeremiah Penery wrote: >> Is there some reason that postgresqlxx-odbc RPMs don't provide the >> virtual package for postgresql-odbc, so that whatever version I have >> installed will fulfill the dependency? > Not sure. > > What distro are you using? > > What repo are you pointing at? CentOS 6, using any of the 'official' Postgres repos. Currently trying both: pgdg92 PostgreSQL 9.2 6 - x86_64 pgdg94 PostgreSQL 9.4 6 - x86_64 The .repo file for the second one looks like: [pgdg94] name=PostgreSQL 9.4 $releasever - $basearch baseurl=http://yum.postgresql.org/9.4/redhat/rhel-$releasever-$basearch enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-94 [pgdg94-source] ... Thanks, Jeremiah
On 03/31/2015 12:05 PM, Jeremiah Penery wrote: > On 03/31/2015 01:33 PM, Adrian Klaver wrote: >> On 03/31/2015 09:06 AM, Jeremiah Penery wrote: >>> Is there some reason that postgresqlxx-odbc RPMs don't provide the >>> virtual package for postgresql-odbc, so that whatever version I have >>> installed will fulfill the dependency? >> Not sure. >> >> What distro are you using? >> >> What repo are you pointing at? > CentOS 6, using any of the 'official' Postgres repos. Currently trying > both: > > pgdg92 PostgreSQL 9.2 6 - x86_64 > pgdg94 PostgreSQL 9.4 6 - x86_64 > > The .repo file for the second one looks like: > [pgdg94] > name=PostgreSQL 9.4 $releasever - $basearch > baseurl=http://yum.postgresql.org/9.4/redhat/rhel-$releasever-$basearch > enabled=1 > gpgcheck=1 > gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-94 > > [pgdg94-source] > ... You sure you do not have another repo configured. I ask because from you previous post: postgresql-odbc-08.04.0200-1.el6.x86_64 This does not look like the naming convention for the PGDG rpms: http://yum.postgresql.org/9.2/redhat/rhel-6-x86_64/ postgresql92-odbc-09.01.0200-1PGDG.rhel6.x86_64.rpm but does look like the CentOS naming: http://pkgs.org/centos-6/centos-x86_64/postgresql-odbc-08.04.0200-1.el6.x86_64.rpm.html > > Thanks, > Jeremiah > > -- Adrian Klaver adrian.klaver@aklaver.com
On 03/31/2015 02:21 PM, Adrian Klaver wrote: > On 03/31/2015 12:05 PM, Jeremiah Penery wrote: >> On 03/31/2015 01:33 PM, Adrian Klaver wrote: >>> On 03/31/2015 09:06 AM, Jeremiah Penery wrote: >>>> Is there some reason that postgresqlxx-odbc RPMs don't provide the >>>> virtual package for postgresql-odbc, so that whatever version I have >>>> installed will fulfill the dependency? >>> Not sure. >>> >>> What distro are you using? >>> >>> What repo are you pointing at? >> CentOS 6, using any of the 'official' Postgres repos. Currently trying >> both: >> >> pgdg92 PostgreSQL 9.2 6 - x86_64 >> pgdg94 PostgreSQL 9.4 6 - x86_64 >> >> The .repo file for the second one looks like: >> [pgdg94] >> name=PostgreSQL 9.4 $releasever - $basearch >> baseurl=http://yum.postgresql.org/9.4/redhat/rhel-$releasever-$basearch >> enabled=1 >> gpgcheck=1 >> gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-94 >> >> [pgdg94-source] >> ... > You sure you do not have another repo configured. I ask because from you > previous post: > > postgresql-odbc-08.04.0200-1.el6.x86_64 > > This does not look like the naming convention for the PGDG rpms: > > http://yum.postgresql.org/9.2/redhat/rhel-6-x86_64/ > postgresql92-odbc-09.01.0200-1PGDG.rhel6.x86_64.rpm > > but does look like the CentOS naming: > > http://pkgs.org/centos-6/centos-x86_64/postgresql-odbc-08.04.0200-1.el6.x86_64.rpm.html That's from the CentOS-6 - Base repo. I can't exactly get rid of that one. :) But it's not really the issue. If I install something that has a dependency on postgresql-libs, I can install postgresql9x-libs and the dependency is satisfied. If something depends on postgresql-odbc, it is *not* satisfied by installing postgresql9x-odbc. My question is whether there's a reason for that. For the RPM we're creating, we don't necessarily want to dictate exactly what version of psql(-odbc) people are installing, as long as it fits the requirements. It seems there's no way to do that. Thanks, Jeremiah
On 03/31/2015 01:03 PM, Jeremiah Penery wrote: > On 03/31/2015 02:21 PM, Adrian Klaver wrote: >> On 03/31/2015 12:05 PM, Jeremiah Penery wrote: >>> On 03/31/2015 01:33 PM, Adrian Klaver wrote: >>>> On 03/31/2015 09:06 AM, Jeremiah Penery wrote: >>>>> Is there some reason that postgresqlxx-odbc RPMs don't provide the >>>>> virtual package for postgresql-odbc, so that whatever version I have >>>>> installed will fulfill the dependency? >>>> Not sure. >>>> >>>> What distro are you using? >>>> >>>> What repo are you pointing at? >>> CentOS 6, using any of the 'official' Postgres repos. Currently trying >>> both: >>> >>> pgdg92 PostgreSQL 9.2 6 - x86_64 >>> pgdg94 PostgreSQL 9.4 6 - x86_64 >>> >>> The .repo file for the second one looks like: >>> [pgdg94] >>> name=PostgreSQL 9.4 $releasever - $basearch >>> baseurl=http://yum.postgresql.org/9.4/redhat/rhel-$releasever-$basearch >>> enabled=1 >>> gpgcheck=1 >>> gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-94 >>> >>> [pgdg94-source] >>> ... >> You sure you do not have another repo configured. I ask because from you >> previous post: >> >> postgresql-odbc-08.04.0200-1.el6.x86_64 >> >> This does not look like the naming convention for the PGDG rpms: >> >> http://yum.postgresql.org/9.2/redhat/rhel-6-x86_64/ >> postgresql92-odbc-09.01.0200-1PGDG.rhel6.x86_64.rpm >> >> but does look like the CentOS naming: >> >> http://pkgs.org/centos-6/centos-x86_64/postgresql-odbc-08.04.0200-1.el6.x86_64.rpm.html >> > > That's from the CentOS-6 - Base repo. I can't exactly get rid of that > one. :) But it's not really the issue. But you can hide it: https://wiki.postgresql.org/wiki/YUM_Installation#Install_PGDG_RPM_file Configure your YUM repository exclude=postgresql* > > If I install something that has a dependency on postgresql-libs, I can > install postgresql9x-libs and the dependency is satisfied. > > If something depends on postgresql-odbc, it is *not* satisfied by > installing postgresql9x-odbc. I am missing something, can you show an example? Also you realize the ODBC version numbers do not match the Postgres version numbers? > > My question is whether there's a reason for that. For the RPM we're > creating, we don't necessarily want to dictate exactly what version of > psql(-odbc) people are installing, as long as it fits the requirements. > It seems there's no way to do that. So you are creating your own RPM? > > Thanks, > Jeremiah > > -- Adrian Klaver adrian.klaver@aklaver.com
On 03/31/2015 01:03 PM, Jeremiah Penery wrote: > On 03/31/2015 02:21 PM, Adrian Klaver wrote: >> On 03/31/2015 12:05 PM, Jeremiah Penery wrote: >>> On 03/31/2015 01:33 PM, Adrian Klaver wrote: >>>> On 03/31/2015 09:06 AM, Jeremiah Penery wrote: >>>>> Is there some reason that postgresqlxx-odbc RPMs don't provide the >>>>> virtual package for postgresql-odbc, so that whatever version I have >>>>> installed will fulfill the dependency? >>>> Not sure. >>>> >>>> What distro are you using? >>>> >>>> What repo are you pointing at? >>> CentOS 6, using any of the 'official' Postgres repos. Currently trying >>> both: >>> >>> pgdg92 PostgreSQL 9.2 6 - x86_64 >>> pgdg94 PostgreSQL 9.4 6 - x86_64 >>> >>> The .repo file for the second one looks like: >>> [pgdg94] >>> name=PostgreSQL 9.4 $releasever - $basearch >>> baseurl=http://yum.postgresql.org/9.4/redhat/rhel-$releasever-$basearch >>> enabled=1 >>> gpgcheck=1 >>> gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-94 >>> >>> [pgdg94-source] >>> ... >> You sure you do not have another repo configured. I ask because from you >> previous post: >> >> postgresql-odbc-08.04.0200-1.el6.x86_64 >> >> This does not look like the naming convention for the PGDG rpms: >> >> http://yum.postgresql.org/9.2/redhat/rhel-6-x86_64/ >> postgresql92-odbc-09.01.0200-1PGDG.rhel6.x86_64.rpm >> >> but does look like the CentOS naming: >> >> http://pkgs.org/centos-6/centos-x86_64/postgresql-odbc-08.04.0200-1.el6.x86_64.rpm.html >> > > That's from the CentOS-6 - Base repo. I can't exactly get rid of that > one. :) But it's not really the issue. > > If I install something that has a dependency on postgresql-libs, I can > install postgresql9x-libs and the dependency is satisfied. Aaah, I see now, I think. I do not have a CentOS instance available, but from here: http://www.postgresonline.com/journal/archives/329-An-almost-idiots-guide-to-install-PostgreSQL-9.3,-PostGIS-2.1-and-pgRouting-with-Yum.html postgresql-libs is a RH/CentOS meta-package from updates and postgresql-odbc is from base. > > If something depends on postgresql-odbc, it is *not* satisfied by > installing postgresql9x-odbc. I would say that is because it is a base package, see above. > > My question is whether there's a reason for that. You are using a mixed environment of CentOS and PGDG rpms? For the RPM we're > creating, we don't necessarily want to dictate exactly what version of > psql(-odbc) people are installing, as long as it fits the requirements. > It seems there's no way to do that. > > Thanks, > Jeremiah > > -- Adrian Klaver adrian.klaver@aklaver.com
Hi, On Tue, 2015-03-31 at 15:03 -0500, Jeremiah Penery wrote: > If I install something that has a dependency on postgresql-libs, I > can > install postgresql9x-libs and the dependency is satisfied. > > If something depends on postgresql-odbc, it is *not* satisfied by > installing postgresql9x-odbc. > > My question is whether there's a reason for that. Unintended omission -- I will try to fix it in next 24 hours. Regards, -- Devrim GÜNDÜZ Principal Systems Engineer @ EnterpriseDB: http://www.enterprisedb.com PostgreSQL Danışmanı/Consultant, Red Hat Certified Engineer Twitter: @DevrimGunduz , @DevrimGunduzTR