Experimental branch

From Funtoo Linux
Revision as of 04:00, 29 September 2011 by P4 (Talk)

Jump to: navigation, search

Using the Funtoo experimental branch is considered as experimental (unsupported) and be prepared to see various package compilations errors or other problems.


The Funtoo experimental branch is used by Funtoo Core Developers to try and test new features to be included in Funtoo stable and current branches when ready. Users that want to help the developers test those new features are welcome to switch to the experimental branch and report problems on IRC or the forum. However, problems may arise from using it and there is no guarantee that your system will stay usable.

Contents

Features

We provide an updated toolchain:

  • gcc-4.6.1-r1
  • binutils-2.21-r1
  • linux-headers-2.6.39
  • glibc-2.13-r4
  • unmasked udev-171
  • patched lvm2-2.02.85
  • Several patches to solve building problems with this toolchain
  • Portage Dynamic Slot

We also provide modifications of Mesa, libdrm and radeon drivers to support each type of Radeon video card individually, as well as (masked) -9999 versions of those packages.

How to use

First way

# rm -rf /usr/portage
# nano -w /etc/make.conf
Add the line (or modify it if it's already there): 
SYNC="git://github.com/funtoo/experimental-mini-2011.git"
Remove mini-manifest from FEATURES if present.
# emerge --sync
# emerge -uNDav gcc
# gcc-config -l
Select the appropriate version of gcc:
# gcc-config <id>
# emerge -uNDav @world                     

It should be done. To verify:

# cat /usr/portage/.git/config

You should see that the git repository is pointing to experimental-mini-2011.git.

If for any reason this method did not work, you may use the second way of using the branch:

Second way

# rm -r /usr/portage
# cd /usr
# git clone git://github.com/funtoo/experimental-mini-2011.git
# mv experimental-mini-2011 portage
# emerge --sync
# emerge -uNDav @world

Build toolchain after Portage Switch

Following the --sync and prior to building/updating anything else, update your toolchain:

# emerge -1 portage                      # remove the mini-manifest from make.conf since portage-2.3.1 has thin manifests by default
# emerge -1 gcc                          # build the new compiler
# gcc-config x86_64-pc-linux-gnu-4.6.1   # set the new compiler active
# emerge -1 linux-headers glibc binutils # build a sane toolchain
# emerge -e @system                      # rebuild @system with new compiler

Installation from an experimental branch stage3

You will find some stage3s on the Funtoo mirror: [1]. However, those stages will not be updated very often.


Building stage3s using Metro

You may build your own stages of the experimental branch using Metro. The stages from the Funtoo mirror ([2]) can be used as a seed. A funtoo-experimental target is available.

Personal tools
Namespaces

Variants
Actions
Categories
Toolbox
Stuff