Difference between pages "Fonts" and "Experimental branch"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
== Install the packages ==
{{Fancynote| Funtoo Experimental is where we test bleeding-edge stuff. Don't use experimental unless you are helping us test new features.}}
Linux font quality is a chronic issue, by default fonts configuration far from ideal look. This can solved by rebuilding <tt>media-libs/fontconfig</tt> with the infinality USE flag, which applies the infinality patch set. Infinality patches were previously available only in the lcd-filtering overlay and have now been merged into the main Funtoo portage tree.
{{Fancywarning| experimental tree perodically stopped and not getting updates. Current status is stopped}}
{{PageNeedsUpdates}}
== Status ==
Future plans:
* funtoo profile integration
* udev and friends bump


== Introduction ==
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.
== Upgrading an existing Funtoo installation to experimental ==
<console>
<console>
###i## echo "media-libs/fontconfig infinality" >> /etc/portage/package.use
###i## rm -rf /usr/portage
###i## emerge -uN fontconfig
</console>
</console>
== Advanced configuration ==
Add the following line (or modify it if it's already there):
=== Fontconfig ===
==== Default configuration ====
 
<console>
<console>
###i## eselect fontconfig enable 10-antialias.conf
###i## nano -w /etc/make.conf
###i## eselect fontconfig enable 10-autohint.conf 
SYNC="git://github.com/funtoo/experimental-mini-2011.git"
###i## eselect fontconfig enable 10-hinting.conf 
</console>
###i## eselect fontconfig enable 10-hinting-slight.conf 
###i## eselect fontconfig enable 10-sub-pixel-rgb.conf 
###i## eselect fontconfig enable 11-lcdfilter-default.conf 
###i## eselect fontconfig enable 70-no-bitmaps.conf 
###i## eselect fontconfig disable 10-hinting-full.conf 
###i## eselect fontconfig disable 10-hinting-medium.conf 
###i## eselect fontconfig disable 10-no-sub-pixel.conf 
###i## eselect fontconfig disable 10-sub-pixel-bgr.conf 
###i## eselect fontconfig disable 10-sub-pixel-vbgr.conf 
###i## eselect fontconfig disable 10-sub-pixel-vrgb.conf 
###i## eselect fontconfig disable 10-unhinted.conf</console>
===Linux configuration ===


Same as default configuration except:
=== First method ===
<console>
<console>
###i## eselect fontconfig enable 21-hinting-small-aquabase-slight.conf
###i## emerge --sync     
###i## eselect fontconfig enable 21-hinting-small-browallia-slight.conf 
###i## eselect fontconfig enable 22-hinting-courier-italic-slight.conf
</console>
</console>
=== Infinality’s configuration ===


Same as default configuration except:
Verify that the experimental tree has been properly installed:
<console>
<console>
###i## eselect fontconfig enable 15-hinting-tt-instructed-full.conf
###i## cat /usr/portage/.git/config
###i## eselect fontconfig enable 20-hinting-small-fonts-slight.conf 
...
###i## eselect fontconfig enable 21-hinting-small-aquabase-slight.conf 
[remote "origin"]
###i## eselect fontconfig enable 21-hinting-small-browallia-slight.conf 
fetch = +refs/heads/*:refs/remotes/origin/*
###i## eselect fontconfig enable 22-hinting-courier-italic-slight.conf 
url = git://github.com/funtoo/experimental-mini-2011.git
###i## eselect fontconfig enable 25-hinting-small-arial-black-slight.conf
...
</console>
</console>
=== Windows configuration ===


Same as default except:
You should see that the git repository is pointing to experimental-mini-2011.git.
 
If for any reason this method did not work, use the second method to manually clone the experimental branch.
 
=== Second method ===
<console>
<console>
###i## eselect fontconfig disable 10-autohint.conf
###i## rm -rf /usr/portage
###i## eselect fontconfig disable 10-hinting-slight.conf 
###i## cd /usr
###i## eselect fontconfig enable 10-hinting-full.conf 
###i## git clone git://github.com/funtoo/experimental-mini-2011.git portage
###i## eselect fontconfig enable 15-hinting-non-tt-instructed-slight.conf 
###i## emerge --sync
###i## eselect fontconfig enable 20-hinting-small-fonts-slight.conf 
###i## eselect fontconfig enable 21-hinting-small-aquabase-slight.conf 
###i## eselect fontconfig enable 21-hinting-small-browallia-slight.conf 
###i## eselect fontconfig enable 22-hinting-courier-italic-slight.conf 
###i## eselect fontconfig enable 25-hinting-small-arial-black-slight.conf
</console>
</console>
=== OSX configuration ===


Same as default configuration except:
== Installation from an experimental branch stage3 ==
<console>
You can find some stage3s on the Funtoo mirror: [http://ftp.osuosl.org/pub/funtoo/funtoo-experimental/]. These stages are updated weekly, possibly more often during active experimental development.
###i## eselect fontconfig disable 10-autohint.conf
 
###i## eselect fontconfig disable 10-hinting.conf 
== Building stage3s using Metro ==
###i## eselect fontconfig disable 10-hinting-slight.conf 
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.
###i## eselect fontconfig enable 10-unhinted.conf 
###i## eselect fontconfig enable 15-hinting-tt-instructed-none.conf
</console>
== Freetype ==
Freetype can be configured through environment variables (see <tt>/etc/env.d/99lcdfilter</tt> for a list of the variables and their description). Those variables can be overridden on a per-user basis by either redefining them in a startup file (such as <tt>~/.bash_profile</tt>) or by sourcing the <tt>/usr/lib/ft-settings.sh</tt> script with the desired style in parameter (you can, of course, source the script from a startup file).


usage: source ft-settings.sh <style>
== History ==
{{SectionNeedsUpdates}}
=== Iteration 1 (Completed Dec 16, 2011) ===


<console>
Implementation and stabilization of a new set of toolchain packages:
Possible styles:  
  default      - Use default settings.  A compromise that should please most people 
  osx          - Simulate OSX rendering 
  ubuntu      - Simulate UBUNTU rendering 
  linux        - Generic Linux style - no snapping or certain other tweaks 
  windows      - Simulate Windows rendering 
  vanilla      - Just subpixel hinting


Infinality styles: 
* gcc-4.6.2
  classic      - Infinality rendering circa 2010. No snapping 
* binutils-2.21-r1
  nudge        - CLASSIC with lightly stem snapping and tweaks 
* linux-headers-2.6.39
  push        - CLASSIC with medium stem snapping and tweaks 
* glibc-2.13-r4
  shove        - Full stem snapping and tweaks without sharpening 
* udev-171-r1
  sharpened    - Full stem snapping, tweaks, and Windows-style sharpening 
* patched lvm2-2.02.85
  infinality  - Settings used by Infinality
* Several patches to solve problems building with this toolchain
</console>
== LibXft ==
Only legacy programs still use libXft. The default configuration is defined in <tt>/usr/share/X11/app-defaults/Xft</tt>. It can be overriden on a per-user basis in the <tt>~/.Xresources</tt> or <tt>~/.Xdefaults</tt> files:


{{file|name=~/.Xdefaults|desc= |body=
And some other features:
Xft.antialias:  1
* [[Portage Dynamic Slot]]
Xft.autohint:   0 
* 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.
Xft.dpi:        96 
Xft.hinting:    1 
Xft.hintstyle:  hintfull 
Xft.lcdfilter:  lcddefault 
Xft.rgba:      rgb
}}


[[Category:Portage]]
[[Category:HOWTO]]
[[Category:HOWTO]]
[[Category:Featured]]

Revision as of 19:21, June 27, 2014

   Note
Funtoo Experimental is where we test bleeding-edge stuff. Don't use experimental unless you are helping us test new features.
   Warning
experimental tree perodically stopped and not getting updates. Current status is stopped

Status

Future plans:

  • funtoo profile integration
  • udev and friends bump

Introduction

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.

Upgrading an existing Funtoo installation to experimental

root # rm -rf /usr/portage

Add the following line (or modify it if it's already there):

root # nano -w /etc/make.conf
SYNC="git://github.com/funtoo/experimental-mini-2011.git"

First method

root # emerge --sync      

Verify that the experimental tree has been properly installed:

root # 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, use the second method to manually clone the experimental branch.

Second method

root # rm -rf /usr/portage
root # cd /usr
root # git clone git://github.com/funtoo/experimental-mini-2011.git portage
root # emerge --sync

Installation from an experimental branch stage3

You can find some stage3s on the Funtoo mirror: [1]. These stages are updated weekly, possibly more often during active experimental development.

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.

History

   Important

This section is in need of updates.

Iteration 1 (Completed Dec 16, 2011)

Implementation and stabilization of a new set of toolchain packages:

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

And some other features:

  • Portage Dynamic Slot
  • 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.