Difference between revisions of "Experimental branch"
(I think I got it all) |
|||
| Line 1: | Line 1: | ||
| − | {{fancywarning|Using the Funtoo experimental branch is considered | + | {{fancywarning|Using the Funtoo experimental branch is considered experimental (unsupported). Users should be prepared to have various package compilation 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. | 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. | ||
| Line 14: | Line 14: | ||
* [[Portage Dynamic Slot]] | * [[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 | + | 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 == | == How to use == | ||
| − | === | + | === Upgrading an existing Funtoo installation to experimental === |
| − | + | ||
<pre> | <pre> | ||
# rm -rf /usr/portage | # rm -rf /usr/portage | ||
# nano -w /etc/make.conf | # nano -w /etc/make.conf | ||
| − | Add the line (or modify it if it's already there): | + | </pre> |
| + | Remove mini-manifest from FEATURES if present. Portage-2.3.1 has thin manifests enabled by default. | ||
| + | |||
| + | Add the line (or modify it if it's already there): | ||
| + | <pre> | ||
SYNC="git://github.com/funtoo/experimental-mini-2011.git" | SYNC="git://github.com/funtoo/experimental-mini-2011.git" | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
</pre> | </pre> | ||
| − | + | === First method === | |
| + | <pre> | ||
| + | # emerge --sync | ||
| + | </pre> | ||
| + | |||
| + | Verify that the experimental tree has been properly installed: | ||
<pre> | <pre> | ||
# cat /usr/portage/.git/config | # cat /usr/portage/.git/config | ||
| + | ... | ||
| + | [remote "origin"] | ||
| + | fetch = +refs/heads/*:refs/remotes/origin/* | ||
| + | url = git://github.com/funtoo/experimental-mini-2011.git | ||
| + | ... | ||
</pre> | </pre> | ||
You should see that the git repository is pointing to experimental-mini-2011.git. | 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 | + | If for any reason this method did not work, you may use the second way of switching to the experimental branch: |
| − | ===Second | + | === Second method === |
<pre> | <pre> | ||
| − | # rm - | + | # rm -rf /usr/portage |
# cd /usr | # cd /usr | ||
# git clone git://github.com/funtoo/experimental-mini-2011.git | # git clone git://github.com/funtoo/experimental-mini-2011.git | ||
# mv experimental-mini-2011 portage | # mv experimental-mini-2011 portage | ||
# emerge --sync | # emerge --sync | ||
| − | |||
</pre> | </pre> | ||
| − | == | + | == Upgrade portage and rebuild toolchain == |
| − | + | ||
<pre> | <pre> | ||
| − | # emerge -1 portage | + | # emerge -1 portage |
# emerge -1 gcc # build the new compiler | # emerge -1 gcc # build the new compiler | ||
| − | # gcc-config | + | # gcc-config -l # list instances of gcc installations |
| + | # gcc-config <id> # select the appropriate version of gcc | ||
# emerge -1 linux-headers glibc binutils # build a sane toolchain | # emerge -1 linux-headers glibc binutils # build a sane toolchain | ||
# emerge -e @system # rebuild @system with new compiler | # emerge -e @system # rebuild @system with new compiler | ||
| + | # emerge -uNDav @world # complete the upgrade | ||
</pre> | </pre> | ||
| − | ==Installation from an experimental branch stage3== | + | == Installation from an experimental branch stage3 == |
You will find some stage3s on the Funtoo mirror: [http://ftp.osuosl.org/pub/funtoo/funtoo-experimental/]. However, those stages will not be updated very often. | You will find some stage3s on the Funtoo mirror: [http://ftp.osuosl.org/pub/funtoo/funtoo-experimental/]. However, those stages will not be updated very often. | ||
| − | ==Building stage3s using Metro== | + | == Building stage3s using Metro == |
You may build your own stages of the experimental branch using [[Metro]]. The stages from the Funtoo mirror ([http://ftp.osuosl.org/pub/funtoo/funtoo-experimental/]) can be used as a seed. A funtoo-experimental target is available. | You may build your own stages of the experimental branch using [[Metro]]. The stages from the Funtoo mirror ([http://ftp.osuosl.org/pub/funtoo/funtoo-experimental/]) can be used as a seed. A funtoo-experimental target is available. | ||
Revision as of 04:47, 29 September 2011
Using the Funtoo experimental branch is considered experimental (unsupported). Users should be prepared to have various package compilation 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
Upgrading an existing Funtoo installation to experimental
# rm -rf /usr/portage # nano -w /etc/make.conf
Remove mini-manifest from FEATURES if present. Portage-2.3.1 has thin manifests enabled by default.
Add the line (or modify it if it's already there):
SYNC="git://github.com/funtoo/experimental-mini-2011.git"
First method
# emerge --sync
Verify that the experimental tree has been properly installed:
# cat /usr/portage/.git/config ... [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = git://github.com/funtoo/experimental-mini-2011.git ...
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 switching to the experimental branch:
Second method
# rm -rf /usr/portage # cd /usr # git clone git://github.com/funtoo/experimental-mini-2011.git # mv experimental-mini-2011 portage # emerge --sync
Upgrade portage and rebuild toolchain
# emerge -1 portage # emerge -1 gcc # build the new compiler # gcc-config -l # list instances of gcc installations # gcc-config <id> # select the appropriate version of gcc # emerge -1 linux-headers glibc binutils # build a sane toolchain # emerge -e @system # rebuild @system with new compiler # emerge -uNDav @world # complete the upgrade
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.