From Fedora Project Wiki
4.0 Managing Software


Managing Software

In Fedora, managing software is possible using either graphical interface or command line interface.

Using Graphical Tools

Graphical utility that allows you to manage software on your system is called pirut (pronounced pirate). pirut also includes the tool named pup. Pups, short for Package UPdater, sole purpose is to check repositories for updated packages and to update them.

Using these two tools you will be able to modify the software on your system in four ways:

  • To update existing software on your system

Updating Software With Package Updater (pup)

Updating software using pup is very straight forward. Here are 8 basic steps:

  • Step 1
    Open pup from Applications > System Tools > Software Updater.
    Opening pup might take some time since it will immediately after the opening start looking for updated software.
  • Step 2
    Once it opens, you will be presented with available updates. Select a package and use Update Details to see version information. Checkboxes on the left side allow you to deselect any update that you wish. By default, they are all selected for updating. Click Apply updates to continue.
  • Step 3
    Wait for pup to resolve dependencies for updates.
  • Step 4
    Once all dependencies are resovled, it might require to add additional updates. Click Continue to confirm.
  • Step 5
    Now, it's downloading packages from either fedora yum base server or one of many mirror servers.
  • Step 6
    If this is your first time updating packages, it might ask you to import key which requires to verify the packages. Click Import key to continue.
  • Step 7
    Now, it's updating software. It will take for a while if this is your first updates.
  • Step 8
    When all the updates are installed, it might ask you to reboot the system if the updates include kernel updates.
    You can either click on Reboot now or click Reboot later but it is recommended to reboot your system when new kernel updates are installed.
style="vertical-align: bottom; text-align: center;border-style: hidden;"-2>File:IgorMiletic Drafts ManageSoftware pup-01.png
Step 1
style="vertical-align: bottom; text-align: center;border-style: hidden;"-2:>File:IgorMiletic Drafts ManageSoftware pup-02.png
Step 2
File:IgorMiletic Drafts ManageSoftware pup-03.png
Step 3
File:IgorMiletic Drafts ManageSoftware pup-04.png
Step 4
File:IgorMiletic Drafts ManageSoftware pup-03.png
Step 5
File:IgorMiletic Drafts ManageSoftware pup-06.png
Step 6
File:IgorMiletic Drafts ManageSoftware pup-07.png
Step 7
File:IgorMiletic Drafts ManageSoftware pup-08.png
Step 8


Using Command Line Interface (CLI)

When using terminal you can use the yum utility to modify the software on your system in four ways:

  • To install new software from package repositories
  • To install new software from an individual package file
  • To update existing software on your system
  • To remove unwanted software from your system
Installing Software from a Package File
The yum commands shown in this section use repositories as package sources. Refer to Section 8, “Installing Software from an Isolated Package” for details of using yum to install software from an individual package file.

To use yum, specify a function and one or more packages or package groups. Each section below gives some examples.

For each operation, yum downloads the latest package information from the configured repositories. If your system uses a slow network connection yum may require several seconds to download the repository indexes and the header files for each package.

The yum utility searches these data files to determine the best set of actions to produce the required result, and displays the transaction for you to approve. The transaction may include the installation, update, or removal of additional packages, in order to resolve software dependencies.

This is an example of the transaction for installing tsclient:

=============================================================================
Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
tsclient                i386       0.132-6          base              247 k
Installing for dependencies:
rdesktop                i386       1.4.0-2          base              107 k

Transaction Summary
=============================================================================
Install      2 Package(s)
Update       0 Package(s)
Remove       0 Package(s)
Total download size: 355 k
Is this ok [y/N] :

Example 1. Format of yum Transaction Reports

Review the list of changes, and then press [y] to accept and begin the process. If you press [N] or [Enter] , yum does not download or change any packages.

Package Versions
The yum utility only displays and uses the newest version of each package, unless you specify an older version.

The yum utility also imports the repository public key if it is not already installed on the rpm keyring.

This is an example of the public key import:

warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
public key not available for tsclient-0.132-6.i386.rpm
Retrieving GPG key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
Importing GPG key 0x4F2A6FD2 "Fedora Project <fedora@redhat.com>"
Is this ok [y/N] :

Example 2. Format of yum Public Key Import

Check the public key, and then press [y] to import the key and authorize the key for use. If you press [N] or [Enter] , yum stops without installing any packages.

To ensure that downloaded packages are genuine, yum verifies the digital signature of each package against the public key of the provider. Once all of the packages required for the transaction are successfully downloaded and verified, yum applies them to your system.

Transaction Log
Every completed transaction records the affected packages in the log file /var/log/yum.log. You may only read this file with root access.

Installing New Software with yum

To install the package tsclient, enter the command:

su -c 'yum install tsclient'

Enter the password for the root account when prompted.

To install the package group MySQL Database, enter the command:

su -c 'yum groupinstall "MySQL Database"'

Enter the password for the root account when prompted.

New Services Require Activation
When you install a service, Fedora does not activate or start it. To configure a new service to run on bootup, choose Desktop → System Settings → Server Settings → Services, or use the chkconfig and service command-line utilities.

Updating Software with yum

To update the tsclient package to the latest version, type:

su -c 'yum update tsclient'

Enter the password for the root account when prompted.

New Software Versions Require Reloading
If a piece of software is in use when you update it, the old version remains active until the application or service is restarted. Kernel updates take effect when you reboot the system.
Kernel Packages
Kernel packages remain on the system after they have been superseded by newer versions. This enables you to boot your system with an older kernel if an error occurs with the current kernel. To minimize maintenance, yum automatically removes obsolete kernel packages from your system, retaining only the current kernel and the previous version.

To update all of the packages in the package group MySQL Database, enter the command:

su -c 'yum groupupdate "MySQL Database"'

Enter the password for the root account when prompted.

Updating the Entire System
To update all of the packages on your Fedora system, use the commands described in Section 6, “Updating Your System with yum” .

Removing Software with yum

To remove software, yum examines your system for both the specified software, and any software which claims it as a dependency. The transaction to remove the software deletes both the software and the dependencies.

To remove the tsclient package from your system, use the command:

su -c 'yum remove tsclient'

Enter the password for the root account when prompted.

To remove all of the packages in the package group MySQL Database, enter the command:

su -c 'yum groupremove "MySQL Database"'

Enter the password for the root account when prompted.

Data and Configuration File Retention
The removal process leaves user data in place but may remove configuration files in some cases. If a package removal does not include the configuration file, and you reinstall the package later, it may reuse the old configuration file.
Previous Page - 3. Software Management Tools in Fedora Core Table of Contents Next Page - 5. Searching for Packages with yum