Difference between revisions of "Project Unfork"

From Funtoo
Jump to navigation Jump to search
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''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.
'''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.
{{Important|Project Unfork has been made the "official" Funtoo Linux Portage tree! This means that there is no separate "unfork" tree to test. If you experience issues, as always report a bug to https://bugs.funtoo.org.}}


== Status Update ==
== Status Update ==
As of October 12, 2015, the "unfork" tree is now merged into the main Funtoo Linux tree, and Funtoo Linux is now using shards for core packages, x11 (including media libraries), KDE, GNOME, python and perl.
As of October 9, 2015, openrc-0.18 is now available in the tree, masked for testing. While this ebuild is not unforked, we are getting closer to being able to unfork OpenRC. Please unmask and test. This new ebuild packages the funtoo network scripts (corenetwork) externally. I am also in the process of migrating the network scripts to using the Gentoo-standard "net" naming rather than "netif" naming, although the next 1.5.1 revision of  corenetwork scripts will be backwards compatible with netif naming to allow for an easy user transition to the more Gentoo-compatible naming scheme.
GNOME 3.16 should be working. So please test this as well.


As of October 4, 2015, a tree currently exists which is cloneable from http://github.com/funtoo/funtoo-staging-unfork. This is a complete Portage tree, and can be used as a {{f|/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.
As of October 4, 2015, a tree currently exists which is cloneable from http://github.com/funtoo/funtoo-staging-unfork. This is a complete Portage tree, and can be used as a {{f|/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.
{{Note|The following info is being retained for historical purposes but you now just type {{c|emerge --sync}} in Funtoo Linux to get an updated, unforked tree. The funtoo-staging-unfork tree mentioned below is no longer being updated.}}


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''.
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''.
Line 13: Line 23:
# ##i##emerge -auDN @system
# ##i##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:
{{console|body=
# ##i##epro flavor desktop
# ##i##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:
The Project Unfork tree currently includes the following unforked components:
Line 20: Line 41:
# Portage-2.4.0 (2.4.0 is our version of upstream's 2.2.2.1) is available and recommended to be used.
# Portage-2.4.0 (2.4.0 is our version of upstream's 2.2.2.1) 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. Details on GNOME 3.16 below.


== GNOME 3.16 ==


In our funtoo-staging-unfork tree, there is a new mix-in called {{c|gnome-3.16-fixups}}. This mix-in should be used to test GNOME 3.16 (without systemd). To use it, enable the desktop flavor and the existing gnome mix-in, and then also enable the new gnome-3.16-fixups mix-in. This will enable USE and other settings that should allow GNOME to merge cleanly with manual fixes by users, on both pure64 and multilib systems.
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:


I would like people to test the following items:
{{TableStart}}
# Merging GNOME following the [[GNOME First Steps]] instructions (but of course enabling the additional gnome-3.16-fixups mix-in instead.)
<tr><th>Test</th><th>Commands</th></tr>
# Using GNOME 3.16 and identifying any issues that need to be resolved.
<tr><td>@system (with profile changes)</td><td>{{console|body=# ##i##emerge -auDN @system}}</td></tr>
# If you need to manually enable any USE settings to get things to merge, that is a bug that I would like reported. This also includes {{c|abi_x86_32}} USE settings that may be necessary for various things.
<tr><td>X (try with various {{c|VIDEO_CARDS}} settings)</td><td>{{console|body=# ##i##emerge xorg-x11}}</td></tr>
<tr><td>GNOME 3.16</td><td>{{console|body=# ##i##emerge -auDN gnome}}</td></tr>
{{TableEnd}}


Please report any issues to the Funtoo Linux bug tracker at https://bugs.funtoo.org and note that you are testing the unfork tree.
{{Note|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 https://bugs.funtoo.org 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!
Thanks very much!


-Daniel
-Daniel

Latest revision as of 16:56, October 12, 2015

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.

   Important

Project Unfork has been made the "official" Funtoo Linux Portage tree! This means that there is no separate "unfork" tree to test. If you experience issues, as always report a bug to https://bugs.funtoo.org.

Status Update

As of October 12, 2015, the "unfork" tree is now merged into the main Funtoo Linux tree, and Funtoo Linux is now using shards for core packages, x11 (including media libraries), KDE, GNOME, python and perl.

As of October 9, 2015, openrc-0.18 is now available in the tree, masked for testing. While this ebuild is not unforked, we are getting closer to being able to unfork OpenRC. Please unmask and test. This new ebuild packages the funtoo network scripts (corenetwork) externally. I am also in the process of migrating the network scripts to using the Gentoo-standard "net" naming rather than "netif" naming, although the next 1.5.1 revision of corenetwork scripts will be backwards compatible with netif naming to allow for an easy user transition to the more Gentoo-compatible naming scheme.

GNOME 3.16 should be working. So please test this as well.

As of October 4, 2015, a tree currently exists which is cloneable from http://github.com/funtoo/funtoo-staging-unfork. 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.

   Note

The following info is being retained for historical purposes but you now just type emerge --sync in Funtoo Linux to get an updated, unforked tree. The funtoo-staging-unfork tree mentioned below is no longer being updated.

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 https://github.com/funtoo/funtoo-staging-unfork.git 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 2.2.2.1) 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:

TestCommands
@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
   Note

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 https://bugs.funtoo.org 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!

-Daniel