Gentoo Logo
Gentoo Spaceship

Installation:
Gentoo Handbook
Installation Docs

Documentation:
Home
Listing
About Gentoo
Philosophy
Social Contract

Resources:
Bug Tracker
Developer List
Discussion Forums
Gentoo BitTorrents
Gentoo Linux Enhancement Proposals
IRC Channels
Mailing Lists
Mirrors
Name and Logo Guidelines
Online Package Database
Security Announcements
Staffing Needs
Supporting Vendors
View our Sources

Graphics:
Logos and themes
ScreenShots

Miscellaneous Resources:
Gentoo Linux Store
IBM dW/Intel article archive



Portage 2.0.51 released
Posted on 21 October 2004 by Sven Vermeulen

gentoo

The Gentoo Portage team has traveled an interesting road on the way to releasing Portage 2.0.51. Myths about the changes and new features have been told in numerous circles, so allow us to mute the discussions and provide you with a list of changes and new features.

Rebuilding on USE flag changes

Portage now supports automated emerging (and reemerging) of packages affected by a USE flag change. To use it, run emerge with the --newuse option:

Code Listing 1.1: Keeping your applications USE-aware

# emerge --newuse --update --deep world

Initial GPG verification support

Each Gentoo package has a Manifest file that contains the checksum and filesize of the files in Portage pertaining to that package (not to be mistaken with the digest-* files which does the same for the downloaded sources of that package).

Portage now supports verification of the GPG signatures included in the more recent Manifest files. This means that a hacker who's been able to tamper with the rsync mirror you used can hardly do any damage on your system if you do strict GPG checking of the Manifest files. This is of course due to the fact that the hacker cannot change the GPG signature without invalidating it.

This is all handled transparently if you have gpg in your FEATURES variable. Depending on the other features Portage will handle it with minimal trust (no additional feature), marginal trust (strict) or fully trusted (severe) which requires that the GPG keys are signed as well.

Code Listing 1.1: Enabling GPG verification in /etc/make.conf

FEATURES="gpg"                (For minimal checking, or...)
FEATURES="gpg strict"         (... For strict checking, or...)
FEATURES="gpg severe strict"  (... For severe checking)

FHS compliance

This new Portage release introduces some file relocations:

  • The virtuals file (/var/cache/edb/virtuals) is no longer used. It is now calculated transparently.
  • The world-file is now located inside /var/lib/portage instead of /var/cache/edb.
  • /etc/portage/profile/virtuals is for user configurations only.

Thanks to the relocation of the world-file and dynamic checking of the virtuals, Portage is now FHS-compliant. For instance, data within /var/cache can be removed at will - it is actually cache data now.

Successful Package Compilation Verification

New ebuilds can define certain tests to be ran after an emerge to verify if the compile process has finished successfully. This allows ebuilds to verify certain aspects of the compilation process.

Code Listing 1.1: Enabling merge tests in /etc/make.conf

FEATURES="maketest"

Improved handling of injected packages

The use of --inject is deprecated for the time being. Injecting packages should now be done by adding the package to /etc/portage/profile/package.provided using the full name (<category>/<name>-<version>) instead.

Massive Speedups

A frequently heard complaint is that Portage is slow. Well, yes, but work is being put in this area :) Dependency calculations are already about 33% of that of 2.0.50!

Improved support for embedded systems

Through the autoconfig feature Portage will now automatically handle the building of uclibc-based systems by automatically updating the gnuconfig-provided files. This is no feature that will automatically configure applications for you!

Code Listing 1.1: Enabling uclibc-based building in /etc/make.conf

FEATURES="autoconfig"

Improved Locking

Portage now uses lockfiles for many aspects of it's software management. This allows for correct parallel working (including parallel fetching and merging).

Eye-candy

When you activate the "candy" feature you'll notice that Portage uses a brand new, cooler spinner:

Code Listing 1.1: Getting a cooler spinner

FEATURES="candy"

You also don't want to miss moo. And that's all we have to say about it!




Updated 21 October 2004

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Bytemark

Bytemark

Copyright 2001-2008 Gentoo Foundation, Inc. Questions, Comments? Contact us.