OS Builder/Add repositories and packages

From OLPC
Jump to: navigation, search

Additional packages from Fedora

Use the custom_packages module:

  • Add 'custom_packages' to the modules list
  • Add a new section
 [custom_packages]
 add_packages=
           oneadditionalpackage,
           another-extra-package,
           a-package-with-specific-version-1.33a

See modules/custom_packages/README in OS Builder for documentation.

Additional packages from RPMFusion

RPM Fusion is a group of repositories that contain many packages that are not in the official Fedora repositories. This recipe shows you how to add packages from these repositories to your build.

NOTE: Some packages, specially on the 'non-free' repositories, have legal restrictions under some jurisdictions. Make sure you know and understand how those apply to you and your users.

Using repos and custom_packages

This technique is easier but requires OS Builder v1.3.1 or newer. See below for v1.3.0 and earlier.

  • Start with a working .ini config file
  • In the "[repos]" section, add some custom repositories
 custom_repocustom_repo_1=1,rpmfusion-free-f11,http://download1.rpmfusion.org/free/fedora/releases/11/Everything/i386/os/
 custom_repo_2=1,rpmfusion-free-updates-f11,http://download1.rpmfusion.org/free/fedora/updates/11/i386/
 custom_repo_3=1,rpmfusion-nonfree-f11,http://download1.rpmfusion.org/nonfree/fedora/releases/11/Everything/i386/os/
 custom_repo_4=1,rpmfusion-nonfree-updates-f11,http://download1.rpmfusion.org/nonfree/fedora/updates/11/i386/
  • And custom_packages to the list of modules, and then add a new section for the custom_packages module:
 [custom_packages]
 add_packages=
         oneadditionalpackage,
         another-extra-package,
         a-package-with-specific-version-1.33a

See modules/repos/README in OS Builder for documentation on the "[repos]" feature.

Using yumdownloader and a local repository

Recommended technique for users on v1.3.0 or earlier.

On your f11 build host

  • Install yum-utils and createrepo
  • Install/configure the rpmfusion yum repositories - use the rpms for free and non-free
  • Create a directory localrepo, right next to your INI file location
  • Use yumdownloader to fetch the needed rpms, and place them in localrepo. You will probably want to use the --resolve switch
  • Once you have downloaded the packages, run createrepo localrepo. If you update or add packages, you need to run this again.
  • In the [repos] section, add
 custom_repo_1=1,localrepo,file://%(oob_config_dir)s/localrepo/
  • And custom_packages to the list of modules, and then add a new section for the custom_packages module:
 [custom_packages]
 add_packages=
         oneadditionalpackage,
         another-extra-package,
         a-package-with-specific-version-1.33a