EzDevInfo.com

rpm

New Relic RPM Ruby Agent Application Performance Management & Monitoring | New Relic a software analytics tool suite used by developers, ops, and software companies to understand how your applications are performing in development and production. we are all data nerds.

How to list the contents of a package using YUM?

I know how to use rpm to list the contents of a package (rpm -qpil package.rpm). However, this requires knowing the location of the .rpm file on the filesystem. A more elegant solution would be to use the package manager, which in my case is YUM. How can YUM be used to achieve this?


Source: (StackOverflow)

Determining the path that a yum package installed to [closed]

I've installed ffmpeg using yum under Redhat, and I'm having difficulty figuring out where (what path) it installed the package to. Is there an easy way of determining this without resorting to finding it myself manually?


Source: (StackOverflow)

Advertisements

What is the minimum I have to do to create an RPM file?

I just want to create an RPM file to distribute my Linux binary "foobar", with only a couple of dependencies. It has a config file, /etc/foobar.conf and should be installed in /usr/bin/foobar.

Unfortunately the documentation for RPM is 27 chapters long and I really don't have a day to sit down and read this, because I am also busy making .deb and EXE installers for other platforms.

What is the absolute minimum I have to do to create an RPM? Assume the foobar binary and foobar.conf are in the current working directory.


Source: (StackOverflow)

How do I find which rpm package supplies a file I'm looking for?

As an example, I am looking for a mod_files.sh file which presumably would come with the php-devel package. I guessed that yum would install the mod_files.sh file with the php-devel x86_64 5.1.6-23.2.el5_3 package , but the file appears to not to be installed on my filesystem. How do I find out which package installs the specific file? I'm looking for where I have not necessarily already locally downloaded the package which may include the file that I'm looking for?

I'm using CentOS 5.


Source: (StackOverflow)

How to make rpm auto install dependencies

I have built two RPM packages

  • proj1-1.0-1.x86_64.rpm
  • libtest1-1.0-1.x86_64.rpm

proj1 depends on the file libtest1.so being present and it is reflected correctly in the RPM packages as seen here:

user@my-pc:~$ rpm -qp --requires proj1-1.0-1.x86_64.rpm
libtest1.so()(64bit)

user@my-pc:~$ rpm -qp --provides libtest1-1.0-1.x86_64.rpm
libtest1.so()(64bit)

The installation of proj1 fails due to a missing dependency.

user@my-pc:~$ rpm -ivh proj1-1.0-1.x86_64.rpm
error: Failed dependencies:
libtest1.so()(64bit) is needed by proj1-1.0-1.x86_64.rpm

How do I ensure that libtest1-1.0-1.x86_64.rpm is installed automatically during the installation of proj1-1.0-1.x86_64.rpm?

I did try the --aid option with rpm -i as described here but it didn't work for me.

Is there any other way?

Thanks for any help.


Source: (StackOverflow)

Rails + New Relic: What does RPM mean?

I just started using New Relic RPM with my rails app, and one of the metrics they provide is "Throughput RPM". I have googled everywhere and thoroughly combed the New Relic docs, and I cannot find ANY written explanation of the RPM throughput metric.

Is it "requests per minute" or "requests per millisecond" or something else? ** combustion engines and revolutions per minute make this impossible to find answers about in Google.

What is throughput RPM? Is a good number higher or lower, what are some average benchmarks, etc?

I'd greatly appreciate an explanation of this metric, thanks!!


Source: (StackOverflow)

How do I extract the contents of an rpm?

I have an rpm and I want to treat it like a tarball. I want to extract the contents into a directory so I can inspect the contents. I am familiar with the querying commands of an uninstalled package. I do not simply want a list of the contents of the rpm. i.e.

$ rpm -qpl foo.rpm

I want to inspect the contents of several files contained in the rpm. I do not want to install the rpm. I am also aware of the rpms ability to do additional modifictions in the %post sections, and how to check for those. i.e.

$ rpm -qp --scripts foo.rpm

However in this case that is of no concern to me.


Source: (StackOverflow)

how to reinstall rpm

I have installed a package from .rpm file and it is stored in /opt.

After some configuration I found that I need to reinstall the software. So I deleted the directory and attempted to reinstall the file with rpm -i XXX.rpm. But it tells me that package xxx is already installed.

So how can I reinstall it?


Source: (StackOverflow)

How to set the build area for rpmbuild per-invocation

I'm modifying an automated build, and want to tell rpmbuild to use a specific build area when invoking it.

This is similar to an existing question, but more specific.

  • I don't want to run any of the build commands as the root user; the aim is only to have an RPM, not to install anything into the system.

  • I don't want to require the user to change their dotfiles (e.g. $HOME/.rpmrc); the build should be self-contained and not affect the user's existing settings.

  • I don't want to hard-code the location into the foo.spec file; that file should be useable as-is if the user wants to build in a different location.

  • The --buildroot option is not what I need; that sets a pseudo-root filesystem for the make part of the build process, but I need to specify the “build area” for the entire RPM build process.

What I'm looking for is a hypothetical --build-area FOODIR option that can be given to the rpmbuild command, or an equivalent environment variable. It should thus affect just that single invocation of the command and cause it to use a specified user-writable location for its build area.

I've seen references to a _topdir macro that seems to be what I'm talking about, but it doesn't appear to be configurable per invocation.

It would be ideal if rpmbuild could set up its own environment in that location when it needs it, but I don't mind setting up the directories for that per build, since that can be automated as part of the build. The goal is to have that user-writable location exist only for the duration of the build run, and then clean up by deleting that entire location once the RPM file is generated.


Source: (StackOverflow)

rpmbuild %{dist} not defined on CentOS 5.5?

I'm attempting to use the %{dist} tag in my RPM spec file to provide distribution-specific dependencies between Fedora Core (e.g. fc12), CentOS 5 (e.g. el5) and Amazon's Linux AMI:

Release: %_svn_revision%{?dist}

and

# Depencencies
%{?rhel:Requires: ...}
%{?fedora:Requires: ...}

Unfortunately, %{dist} doesn't appear to be defined in CentOS 5.5, and I haven't found a distribution-specific conditional that matches CentOS 5.5 (I thought el5 would match, but doesn't appear to). This ticket reported the missing %{dist} in CentOS in 2008, but hasn't been updated since 2009.

How can I get %{dist} defined in CentOS and what conditional should I use to match CentOS 5? Can any RPM gurus point me in the right direction?


Source: (StackOverflow)

How can I build an RPM on my MacOS system?

I'm running Mac OS X 10.6.6. I have some data-only RPMs that I'd like to build.

Until recently I've done most of my development on a VM running CentOS, but one by one I've been able to transition these tasks to the Mac proper. I've been using Fink to access the Open/Free tools I need, but I'm not ready to go to Fink unstable, where the RPM5 package has been for a while.

I've also tried to build the RPM utilities from source, with little luck so far.

Is anyone else building RPMs natively on a Mac? If so, how?


Source: (StackOverflow)

setup.py examples?

After studying this page:

http://docs.python.org/distutils/builtdist.html

I am hoping to find some setup.py files to study so as to make my own (with the goal of making a fedora rpm file).

Could the s.o. community point me towards some good examples?


Source: (StackOverflow)

RPM upgrade uninstalls the RPM

I am upgrading our project RPM. The problem is when I upgrade from projectname-1.0-0 to projectname-1.0-1, it first installs the new project and uninstalls the old project, which, in overall view, removes my project entirely. I have used "vv" option while upgrading and the output showed the uninstallation is done after installation.

Somebody please help with this problem. Is there anything I should change specifically in the RPM spec or rpmbuild options?


Source: (StackOverflow)

yum error "Cannot retrieve metalink for repository: epel. Please verify its path and try again" updating ContextBroker

I'm trying to update Orion ContextBroker using the command yum install contextBroker. Unfortunatelly I get the following error:

Loaded plugins: fastestmirror, refresh-packagekit, security Loading

mirror speeds from cached hostfile

Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again

What could be going wrong ?


Source: (StackOverflow)

How do I use rpm to update/replace existing files?

I have several applications that I wish to deploy using rpm. Some of the files in my application deployments override files from other deployed packages. Simply including the new files in the deployment package will cause rpm conflicts.

I am looking for the proper way to use rpm to update/replace already installed files.

I have already come up with a few solutions but nothing seems quite right.

  • Maintain custom versions of the rpms containing the original files.

This seems like a large amount of work for a relatively small reward even though it feels less like a hack than some of the other possible solutions.

  • Include the files in the rpm with another name and copy them over in the post section.

This would work but will mean littering the system with multiple copies of the files. Also it means additional maintenance in the rpm build spec for each file.

  • Use wget in the post section to replace the original files from some known server.

This is similar to the copy technique but the files wouldn't even live in the rpm. This might act like a nice central configuration authority though.

  • Deploy the files as new files, then use symlinks to override the originals.

This is also similar to the copy technique but with less clutter. The problem here is that some files don't behave well as symlinks.


Source: (StackOverflow)