Обсуждение: RPM meta package

Поиск
Список
Период
Сортировка

RPM meta package

От
Jeremiah Penery
Дата:
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


Re: RPM meta package

От
Adrian Klaver
Дата:
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


Re: RPM meta package

От
Jeremiah Penery
Дата:
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


Re: RPM meta package

От
Adrian Klaver
Дата:
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


Re: RPM meta package

От
Jeremiah Penery
Дата:
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


Re: RPM meta package

От
Adrian Klaver
Дата:
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


Re: RPM meta package

От
Adrian Klaver
Дата:
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


Re: RPM meta package

От
Devrim Gündüz
Дата:
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


Вложения