Project Unfork

From Funtoo
Revision as of 01:22, October 6, 2015 by Drobbins (talk | contribs)
Jump to: navigation, search

Project Unfork is a Funtoo Linux effort to reduce the number of forked Gentoo packages and rely on other methods to promote consistent builds, such as the use of ebuild shards. See News:Project_Unfork_Status for more information on the rationale behind Project Unfork.

Status Update

As of October 4, 2015, a tree currently exists which is cloneable from This is a complete Portage tree, and can be used as a /usr/portage replacement, but it does not have cached metadata included, which means that dependency calculation will be very slow initially as Portage manually populates the local metadata cache when emerge calculates dependencies. This is only temporary and will go away once the cache is primed.

You can use this test tree to help me test the more ambitious efforts of Project Unfork. It is recommended that you use a fresh current stage3 for testing. First, add the new unfork tree, and then perform a system update, to ensure that the base stage3 has been updated to an "unfork stage3". t is also very important to do this prior to setting any profile settings via epro.

root # cd /usr
root # mv portage portage.old
root # git clone portage
root # emerge -auDN @system

The recommended profile settings for testing unfork with GNOME (which I am focusing on) are as follows. Enable these after @system is updated:

root # epro flavor desktop
root # epro mix-ins gnome gnome-3.16-fixups

At this point, test things by emerging xorg-x11, gnome, and other things.

What's Unforked?

The Project Unfork tree currently includes the following unforked components:

  1. The Progress Overlay has been removed and the upstream Gentoo Python ebuilds are available instead (unfork of ~500 packages)
  2. The Funtoo GNOME Overlay has been removed and the upstream Gentoo GNOME ebuilds are available instead (unfork of ~200 packages)
  3. Portage-2.4.0 (2.4.0 is our version of upstream's is available and recommended to be used.

I currently need testing of portage-2.4.0 and "'GNOME 3.16, with an emphasis on the funtoo-current build, and merging various things without blockers or other complications. Here are things we need to test:

@system (with profile changes)
root # emerge -auDN @system
X (try with various VIDEO_CARDS settings)
root # emerge xorg-x11
GNOME 3.16
root # emerge -auDN gnome

The above should merge perfectly without any necessary USE changes, blockers, or build failures. If not, please report any issues to the Funtoo Linux bug tracker at and note that you are testing the unfork tree. Once things build, we need to make sure things are working okay, particularly GNOME. Start it up, and report any issues you find.

Thanks very much!