Yum

From OLPC
Revision as of 13:22, 31 July 2008 by OtherMichael (talk | contribs) (→‎Making persistent changes: will this work for older releases?)
Jump to navigation Jump to search
This article is a stub. You can help the OLPC project by expanding it.

Yum is Yellowdog Updater, Modified, a tool for managing Red Hat rpm packages.

To install a particular RPM on the XO, in a terminal enter

yum install package name

(somebody that knows needs to explain what package name can be)

For more on yum, on the XO, type in a terminal

yum -h

On other linux systems that have "man"

man yum

or on any many Red Hat or related Linux system that uses "yum" and "info" and ONLY IF you are familiar with "info" or "emacs"

info yum

Documentation

Note: To save space, OLPC OS builds for the XO are configured to not extract documentation from rpm packages to the file system. If there is a specific package for which you might want this overturned, edit the file:

/etc/rpm/macros.pilgrim

and change the line:

%_excludedocs 1

to:

%_excludedocs 0

before installing it. Remember to switch it back after you are done.

Making persistent changes

By default, any packages you install with yum will be removed during the next update, since our update mechanism always aims to provide a clean system install.

If you want to install packages that will persist across updates, first obtain a developer key. Then, as root:

# yum install yum-utils

Then, as the olpc user:

$ mkdir -p /home/olpc/.custom/rpms
$ cd /home/olpc/.custom/rpms
$ yumdownloader --resolve <pkgname>
$ rpm -Uvh *.rpm

This will download the RPM files needed to install <pkgname> into the ~olpc/.custom/rpms directory. When you upgrade to a new build, on first boot the olpc-configure program will check your developer key and then install all the RPMs found in that directory.

This is handy in order to ensure (for example) that emacs is always installed on your builds.

If you use this feature a lot, you may find it more convenient to create subdirectories under ~olpc/.custom/rpms for each major program you install, so that you can more easily keep track of which rpms go which what program. The first boot installation will look through all of the subdirectories of ~olpc/.custom/rpms to find RPMs it should install.

See <trac>6432</trac> for more discussion of this feature. This code was written for the 8.2 release and first appeared in joyride-2106.


Will this work for earlier releases? I'm still running 656, and found that I had to login as root to run yumdownloader. Even as normal olpc-user, the ~olpc path didn't work, it needed to be either ~/.custom<etc> or /home/olpc/.custom<etc>. And .custom didn't exist originally either. Is that a new addition? --OtherMichael 13:22, 31 July 2008 (UTC)

External References