FAQ
Hi,

I'm using the following repository :
http://download.opensuse.org/repositories/home:/eclipseagent:/puppet/openSUSE_12.1/

And I'm having a weird error when I try to update puppet-dashboard :
Problem: nothing provides ruby(abi) = 1.8.7 needed by
puppet-dashboard-1.2.7-6.1.noarch

My ruby (1.8.7.p357-2.3.1.i586) seems up-to-date and I didn't have this
message when I installed 1.2.6
Any idea what I'm missing ?

--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/PHeCGmPz5_QJ.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

Search Discussions

  • Jcbollinger at Apr 20, 2012 at 12:56 pm

    On Apr 20, 2:44 am, "Julien C." wrote:
    Hi,

    I'm using the following repository :http://download.opensuse.org/repositories/home:/eclipseagent:/puppet/...

    And I'm having a weird error when I try to update puppet-dashboard :
    Problem: nothing provides ruby(abi) = 1.8.7 needed by
    puppet-dashboard-1.2.7-6.1.noarch

    My ruby (1.8.7.p357-2.3.1.i586) seems up-to-date and I didn't have this
    message when I installed 1.2.6
    Any idea what I'm missing ?

    There is no (RPM) package installed on your system that declares it
    provides version 1.8.7 of feature "ruby(abi)". You can investigate
    this further with commands such as

    rpm -q --whatprovides "ruby(abi)"
    rpm -q --provides ruby ruby-libs | grep abi
    yum provides "ruby(abi)"

    I'm not confident about SUSE, but on CentOS 5 and 6, it is the ruby-
    libs packages that provide the ruby(abi) feature, and they version it
    as <major>.<minor> (e.g. 1.8). If SUSE is the same then there will be
    no standard package available that fulfills the requirement, and that
    would make your issue a packaging error by whomever built the
    Dashboard package. Alternatively, it may be that the package was
    built for a different version of the OS than you are using, and the
    ruby(abi) versioning is incompatible.

    Some things you could do:
    1) Grab the source RPM and rebuild it on a machine running the OS you
    want to install on. It is likely that the requirement is auto-
    generated, therefore it should be defined correctly for whatever
    system the RPM is built on (and others similar to it).

    1a) If the ruby(abi) requirement is expressed explicitly in the RPM's
    spec file, then you can easily change or remove it before building.

    2) Create and install a dummy RPM that provides ruby(abi) version
    1.8.7.

    3) Download the RPM manually (instead of via yum) and install it with
    'rpm --install --force'. This is the quickest and easiest method, but
    I cannot recommend circumventing RPM's dependency management this way.

    4) Persuade the package builder to fix it.


    John

    --
    You received this message because you are subscribed to the Google Groups "Puppet Users" group.
    To post to this group, send email to puppet-users@googlegroups.com.
    To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
  • Jeffrey Watts at Apr 20, 2012 at 3:54 pm
    SuSE doesn't use the ruby(abi) dependencies. That's a Red Hat thing. The
    good news is that it's trivial to rebuild the RPM so that it works with
    SLES. I posted a diff a while back on this list - it's what I use.

    Keep in mind that this was for an older version, so YMMV. Good luck.
    Jeffrey.

    $ diff puppet-dashboard.spec puppet-dashboard.spec-sles
    2c2
    < %global initrddir /etc/rc.d/init.d
    ---
    %global initrddir /etc/init.d
    9c9
    < Release: 1%{?dist}
    ---
    Release: 2%{?dist}
    17,18c17,18
    < Requires: ruby(abi) = 1.8, rubygems, ruby-mysql
    < Requires: ruby > 1.8.7, rubygem(rake)
    ---
    Requires: rubygems, ruby-mysql
    Requires: ruby > 1.8.7, rubygem-rake
    22,25d21
    < Requires(post): chkconfig
    < Requires(preun): chkconfig
    < Requires(preun): initscripts
    < Requires(postun): initscripts
    137a134,136
    * Wed Dec 07 2011 Jeffrey Watts <jwatts@adknowledge.com> - 1.2.3-2
    - Modified it to work on SLES
    On Fri, Apr 20, 2012 at 2:44 AM, Julien C. wrote:

    Hi,

    I'm using the following repository :

    http://download.opensuse.org/repositories/home:/eclipseagent:/puppet/openSUSE_12.1/

    And I'm having a weird error when I try to update puppet-dashboard :
    Problem: nothing provides ruby(abi) = 1.8.7 needed by
    puppet-dashboard-1.2.7-6.1.noarch

    My ruby (1.8.7.p357-2.3.1.i586) seems up-to-date and I didn't have this
    message when I installed 1.2.6
    Any idea what I'm missing ?
    --
    You received this message because you are subscribed to the Google Groups "Puppet Users" group.
    To post to this group, send email to puppet-users@googlegroups.com.
    To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
  • Darin Perusich at Apr 23, 2012 at 6:38 pm
    Actually ruby(abi) is defined as a Provides in ruby.spec for SuSE, see
    link below, but I don't know why it fails to pick it up. You can
    simply force the puppet-dashboard package with --nodeps and it works
    just fine.

    https://build.opensuse.org/package/view_file?file=ruby.spec&package=ruby&project=openSUSE%3A12.1%3AUpdate&rev=dbf21799e3d1bb8b3b21b5aa109d7530

    --
    Later,
    Darin



    On Fri, Apr 20, 2012 at 11:54 AM, Jeffrey Watts
    wrote:
    SuSE doesn't use the ruby(abi) dependencies.  That's a Red Hat thing.  The
    good news is that it's trivial to rebuild the RPM so that it works with
    SLES.  I posted a diff a while back on this list - it's what I use.

    Keep in mind that this was for an older version, so YMMV.  Good luck.
    Jeffrey.

    $ diff puppet-dashboard.spec puppet-dashboard.spec-sles
    2c2
    < %global initrddir /etc/rc.d/init.d
    ---
    %global initrddir /etc/init.d
    9c9
    < Release:        1%{?dist}
    ---
    Release:        2%{?dist}
    17,18c17,18
    < Requires:       ruby(abi) = 1.8, rubygems, ruby-mysql
    < Requires:       ruby > 1.8.7, rubygem(rake)
    ---
    Requires:       rubygems, ruby-mysql
    Requires:       ruby > 1.8.7, rubygem-rake
    22,25d21
    < Requires(post):   chkconfig
    < Requires(preun):  chkconfig
    < Requires(preun):  initscripts
    < Requires(postun): initscripts
    137a134,136
    * Wed Dec 07 2011 Jeffrey Watts <jwatts@adknowledge.com> - 1.2.3-2
    - Modified it to work on SLES
    On Fri, Apr 20, 2012 at 2:44 AM, Julien C. wrote:

    Hi,

    I'm using the following repository :

    http://download.opensuse.org/repositories/home:/eclipseagent:/puppet/openSUSE_12.1/

    And I'm having a weird error when I try to update puppet-dashboard :
    Problem: nothing provides ruby(abi) = 1.8.7 needed by
    puppet-dashboard-1.2.7-6.1.noarch

    My ruby (1.8.7.p357-2.3.1.i586) seems up-to-date and I didn't have this
    message when I installed 1.2.6
    Any idea what I'm missing ?
    --
    You received this message because you are subscribed to the Google Groups
    "Puppet Users" group.
    To post to this group, send email to puppet-users@googlegroups.com.
    To unsubscribe from this group, send email to
    puppet-users+unsubscribe@googlegroups.com.
    For more options, visit this group at
    http://groups.google.com/group/puppet-users?hl=en.
    --
    You received this message because you are subscribed to the Google Groups "Puppet Users" group.
    To post to this group, send email to puppet-users@googlegroups.com.
    To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
  • Jeffrey Watts at Apr 23, 2012 at 7:48 pm
    I should have clarified - I'm using SLES10 and 11 and ruby(abi) isn't
    provided See here:
    rpm -q ruby --provides
    /usr/bin/ruby
    bigdecimal.so()(64bit)
    bubblebabble.so()(64bit)
    cparse.so()(64bit)
    curses.so()(64bit)
    dbm.so()(64bit)
    digest.so()(64bit)
    dl.so()(64bit)
    etc.so()(64bit)
    fcntl.so()(64bit)
    gdbm.so()(64bit)
    iconv.so()(64bit)
    libruby.so.1.8()(64bit)
    md5.so()(64bit)
    nkf.so()(64bit)
    openssl.so()(64bit)
    pty.so()(64bit)
    readline.so()(64bit)
    rmd160.so()(64bit)
    sdbm.so()(64bit)
    sha1.so()(64bit)
    sha2.so()(64bit)
    socket.so()(64bit)
    stringio.so()(64bit)
    strscan.so()(64bit)
    syck.so()(64bit)
    syslog.so()(64bit)
    thread.so()(64bit)
    wait.so()(64bit)
    zlib.so()(64bit)
    ruby = 1.8.7.p72-5.30.5

    Jeffrey.

    On Mon, Apr 23, 2012 at 1:38 PM, Darin Perusich wrote:

    Actually ruby(abi) is defined as a Provides in ruby.spec for SuSE, see
    link below, but I don't know why it fails to pick it up. You can
    simply force the puppet-dashboard package with --nodeps and it works
    just fine.


    https://build.opensuse.org/package/view_file?file=ruby.spec&package=ruby&project=openSUSE%3A12.1%3AUpdate&rev=dbf21799e3d1bb8b3b21b5aa109d7530
    --
    You received this message because you are subscribed to the Google Groups "Puppet Users" group.
    To post to this group, send email to puppet-users@googlegroups.com.
    To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppuppet-users @
categoriespuppet
postedApr 20, '12 at 7:45a
activeApr 23, '12 at 7:48p
posts5
users4
websitepuppetlabs.com

People

Translate

site design / logo © 2022 Grokbase