Difference between pages "Funtoo Profiles" and "Wim42gnu's-setup"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
m (Reverted edits by Nuc1eon (talk) to last revision by Drobbins)
 
 
Line 1: Line 1:
== What is a profile? ==
=WIM42GNU's Funtoo Setup=


In Gentoo and Funtoo Linux, profiles are used to define base system settings, and have historically had a lot of untapped potential. In Funtoo Linux, I wanted to take advantage of some of this potential to allow Funtoo Linux users to easily tailor their system for various types of roles. Enter the new Funtoo profile system.
This is for everybody who might have seen my funtoo setup and liked it!
This is also for myself to keep track on my system. I have used most of the Linux distributions out there and I am currently most happy with funtoo.  
My reasons are:
# Gentoo/Funtoo is a rolling release distribution, meaning you only have to install it once and update it frequently.
# Gentoo/Funtoo is only what you make out of it, no unnesecary rubish like in Ubuntu, OpenSuse or Fedora will be installed by default. In the mean time being aware that Gentoo/Funtoo is for advanced users not careing that much about GUIs for Settings or Configs.
# Gentoo/Funtoo runs fast due to multiple reasons. (Compiling your own software,USE-Flags,...)
# Philosophy, one would think that Slackware would suite me most (KISS,Unix) but the fact is that these distributions require you more energy and time to work with. I want to get my jobs done, not careing to much about the system. It is okay to have tools that do things for you as long they are designed well - like in funtoo.


== What It Is ==


Historically, users have had to add a ton of settings to <tt>/etc/make.conf</tt> to customize their Gentoo or Funtoo Linux system, which made setup of the operating system more difficult than it should be.
==1. Install Funtoo (not complete yet - I will update this part when I install funtoo the next time)==


In Gentoo Linux, it is possible to only define one ''system profile''. Think of a system profile as the default settings that Portage uses for building everything on your system.
''Follow the install instructions and setup a minimal system.''http://www.funtoo.org/Funtoo_Linux_Installation


In Funtoo Linux, multiple profiles can be enabled at the same time. These include:
Notice you will need to create/edit some configs in the installation prozess. Here are some of mine customizations:


* '''arch''' - one arch profile is enabled, at build time, and is not changed. This defines CPU architecture-specific settings.
a) <code>/etc/portage/make.conf</code>:
* '''build''' - one build profile is enabled, at build time, and is generally not changed. It defines the type of build, such as 'current' or 'stable', and associated settings.
  CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer"
* '''flavor''' - one flavor is enabled per system, and can be changed by the user. This defines the general use of the system, such as 'minimal', 'core', 'desktop', 'workstation'
  CXXFLAGS="${CFLAGS}"
* '''mix-in''' - zero or more mix-ins can be enabled that enable settings specific to a particular subset of features, such as 'gnome', 'kde', 'media', 'mate', 'X', 'hardened'
  CPU_FLAGS_X86="aes avx fma4 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 xop"


{{Fancynote|1=
''for the CPU Flags checkout:'' http://www.funtoo.org/News:CPU_FLAGS_X86
See [[Flavors and Mix-ins]] for a complete list of all flavors and mix-ins available in Funtoo Linux, along with descriptions of what each one does.}}


=== Origins and Benefits ===
  USE="qt3support theora libkms xa cdr dvd dvdr alsa ffmpeg -gnome gtk -qt4 -kde lm_sensors mp3 mp4 mozilla multilib png python sound udev usb unicode static-libs hddtemp -bluetooth  nvidia X pulseaudio udisks"


This new system is really a completion of the original cascading profile design that was designed by Daniel Robbins and implemented by Seemant Kulleen as part of Portage. Funtoo Profiles designed to leverage the existing cascading profile system and provide something much more useable and maintainable for users and developers alike. Here are some of its benefits:
  EMERGE_DEFAULT_OPTS="--keep-going"
  FEATURES="-collision-protect ccache"
  CCACHE_SIZE="1G"
  PORTAGE_NICENESS=20
  PORTAGE_IONICE_COMMAND="ionice -c 3 -p \${PID}"
  #EMERGE_DEFAULT_OPTS="--jobs=12"
  MAKEOPTS="-j12" ''<--- Number of CPU cores *2 in my case works best.''


* Fewer settings in /etc/make.conf. <tt>CHOST</tt> and <tt>ARCH</tt> no longer set in <tt>/etc/make.conf</tt>.
  LANG="de_DE.UTF-8"
* Separation of concerns -- arch, build, and flavor-related settings are organized together.
  LINGUAS="de" 
* User flexibility - any number of mix-ins can be enabled to tweak masks or USE settings as needed.
  ACCEPT_LICENSE="* -@EULA"
  INPUT_DEVICES="evdev"
  VIDEO_CARDS="nvidia"


{{fancynote|See [[Custom Profiles]] for information on how to extend the profile system.}}


== What It Looks Like ==
b) <code>/etc/fstab</code>
Here's a what a list of profiles looks like:
 
<console>
  # /etc/fstab: static file system information.
###i## eselect profile list
  #
Currently available arch profiles:
  # The root filesystem should have a pass number of either 0 or 1.
   [1]   funtoo/1.0/linux-gnu/arch/x86-32bit
  # All other filesystems should have a pass number of 0 or greater than 1.
   [2]  funtoo/1.0/linux-gnu/arch/x86-64bit
  #
Currently available build profiles:
  # NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
   [3]  funtoo/1.0/linux-gnu/build/stable
  #
   [4]  funtoo/1.0/linux-gnu/build/current
  # See the manpage fstab(5) for more information.
  [5]  funtoo/1.0/linux-gnu/build/experimental
  #
Currently available flavor profiles:
  # <fs> <mountpoint> <type> <opts> <dump/pass>
  [6]  funtoo/1.0/linux-gnu/flavor/minimal
 
   [7]   funtoo/1.0/linux-gnu/flavor/core
   /dev/sda1 /boot ext2 noauto,noatime 1 2
  [8]  funtoo/1.0/linux-gnu/flavor/desktop
   #/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
  [9]  funtoo/1.0/linux-gnu/flavor/workstation
  /dev/mapper/vg-swap    none          swap      sw                              0 0
Currently available mix-ins profiles:
   /dev/mapper/vg-root    /             ext4      noatime,nodiratime,defaults    0 1
  [10]  funtoo/1.0/linux-gnu/mix-ins/audio
   /dev/sr0                /mnt/cdrom    auto      noauto,ro                      0 0
   [11]  funtoo/1.0/linux-gnu/mix-ins/console-extras
   /dev/mapper/vg-home    /home        ext4      noatime,nodiratime              0 0
   [12]  funtoo/1.0/linux-gnu/mix-ins/dvd
''' tmpfs /var/tmp/portage tmpfs uid=portage,gid=portage,mode=0775,size=16048M,noatime 0 0'''
   [13]  funtoo/1.0/linux-gnu/mix-ins/gnome
 
   [14]  funtoo/1.0/linux-gnu/mix-ins/kde
for tmpfs see: http://www.funtoo.org/Funtoo_Filesystem_Guide,_Part_3
   [15]  funtoo/1.0/linux-gnu/mix-ins/media
 
  [16]  funtoo/1.0/linux-gnu/mix-ins/print
c) Since I have an encrypted LVM, one needs an initramfs. I prefer the genkernel method.
   [17]  funtoo/1.0/linux-gnu/mix-ins/python3-only
    genkernel --kernel-config=/path/to/your/custom-kernel-config --no-mrproper --makeopts=-j5 --install --lvm --luks all
   [18]  funtoo/1.0/linux-gnu/mix-ins/rhel5-compat
more here: http://www.funtoo.org/Rootfs_over_encrypted_lvm or use better-initramfs: http://www.funtoo.org/Initramfs
   [19]  funtoo/1.0/linux-gnu/mix-ins/server-db
 
   [20]  funtoo/1.0/linux-gnu/mix-ins/server-mail
d) My Funtoo Profiles:
  [21]  funtoo/1.0/linux-gnu/mix-ins/server-web
   eselect profile show
   [22]  funtoo/1.0/linux-gnu/mix-ins/X
 
  [23]  funtoo/1.0/linux-gnu/mix-ins/xfce
   Currently set profiles:
</console>
    arch: gentoo:funtoo/1.0/linux-gnu/arch/x86-64bit
As you can see, there are multiple types of profiles to choose from.
    build: gentoo:funtoo/1.0/linux-gnu/build/current
Let's move on to how to start using it.
  flavor: gentoo:funtoo/1.0/linux-gnu/flavor/desktop
  mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/audio
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/console-extras
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/dvd
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/media
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/X
  Automatically enabled profiles:
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/print
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/X
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/audio
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/dvd
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/media
   mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/console-extras
 
 
==2. Install your WindowManager or DesktopEnviroment==


== Switch to the Funtoo 1.0 Profile ==
''My favourite Window Manager at the time is i3 followed by xfce and openbox.''
''Details about i3 & funtoo → http://www.funtoo.org/Package:I3_(Window_Manager) ''
'''i3 setup:'''


=== Using eselect ===
1) install these packages:
The preferred method of adding and removing profiles is to use [[eselect|eselect profile]]. This ensures that profiles are added correctly and in the proper order. The order is very important for things to work right.
<console> emerge --ask i3 i3status dmenu lxappeareance
For a list of options, run:
<console>
###i## eselect profile help
</console>
</console>
'' If you want to know what these packages are research them. I use lxappeareance to install and select gtk-themes.''
Config files:


As stated by the previous command output, let's see the list of what profiles currently defined the option '''list''':
==='''1.''' xinitrc at <code>~/.xinitrc </code>===
  exec ck-launch-session i3
''You only need --force-xinerama if you do have a nvidia grafics card that do not work without it. For more <code>startx</code> magic → https://wiki.archlinux.org/index.php/xinitrc''


<console>
==='''2.''' <code>~/.i3/config</code>===
###i## eselect profile list
Currently available arch profiles:
  [1]  funtoo/1.0/linux-gnu/arch/x86-64bit *
Currently available build profiles:
  [2]  funtoo/1.0/linux-gnu/build/stable
  [3]  funtoo/1.0/linux-gnu/build/current *
  [4]  funtoo/1.0/linux-gnu/build/experimental
Currently available flavor profiles:
  [5]  funtoo/1.0/linux-gnu/flavor/minimal
  [6]  funtoo/1.0/linux-gnu/flavor/core
  [7]  funtoo/1.0/linux-gnu/flavor/desktop *
Currently available mix-ins profiles:
  [8]  funtoo/1.0/linux-gnu/mix-ins/dvd
  [9]  funtoo/1.0/linux-gnu/mix-ins/gnome
  [10]  funtoo/1.0/linux-gnu/mix-ins/kde
  [11] funtoo/1.0/linux-gnu/mix-ins/media
  [12]  funtoo/1.0/linux-gnu/mix-ins/rhel5-compat
  [13]  funtoo/1.0/linux-gnu/mix-ins/server-db
  [14]  funtoo/1.0/linux-gnu/mix-ins/server-mail
  [15]  funtoo/1.0/linux-gnu/mix-ins/server-web
  [16]  funtoo/1.0/linux-gnu/mix-ins/workstation
  [17]  funtoo/1.0/linux-gnu/mix-ins/workstation-minimal
</console>


As in several other Funtoo utilities, a star on the right indicates an active item (your case may differ from the example above). To add, say, the mix-ins '''dvd''', '''kde''' and '''media''' you have to enter:
''specify window colors at the top of the file:''
  # class                border  backgr. text    indicator
  client.focused          #333333 #000000 #ffffff #000000
  client.focused_inactive #333333 #5f676a #ffffff #484e50
  client.unfocused        #333333 #222222 #888888 #292d2e
  client.urgent          #333333 #900000 #ffffff #900000


<console>
''specify the bar/workspace colors at the bottom of the file:''
###i## eselect profile add 8
 
###i## eselect profile add 10
  bar {
###i## eselect profile add 11
          status_command i3status
</console>
          # Bar color settings
          colors{
                  #background #000000
                  #statusline #ffffff
                  #separator  #666666
                  # Type            border  background font
                  focused_workspace  #008fff #007fff #ffffff
                  active_workspace  #333333 #5f676a #ffffff
                  inactive_workspace #333333 #222222 #888888
                  urgent_workspace  #aa0000 #990000 #ffffff
          }
  }


Or, in a one-shot:


<console>
Do not forget the keymap setting at <code>/etc/X11/xorg.conf</code> otherwise you need to use <code>setxkbmap</code>
###i## eselect profile add 8 10 11
  Section "InputClass"
</console>
    Identifier        "keyboard-all"
    Driver            "evdev"
    MatchIsKeyboard    "on"
  ''' Option        "XkbLayout" "de"'''
  EndSection


Verification:
==='''3. '''Display Power Management Signaling===


<console>
a) You can either use XScreenSaver(https://wiki.archlinux.org/index.php/XScreenSaver):
###i## eselect profile list 
   emerge -a xscreensaver
Currently available arch profiles:
  [1]  funtoo/1.0/linux-gnu/arch/x86-64bit *
Currently available build profiles:
  [2]  funtoo/1.0/linux-gnu/build/stable
  [3]  funtoo/1.0/linux-gnu/build/current *
  [4]  funtoo/1.0/linux-gnu/build/experimental
Currently available flavor profiles:
   [5]  funtoo/1.0/linux-gnu/flavor/minimal
  [6]  funtoo/1.0/linux-gnu/flavor/core
  [7]  funtoo/1.0/linux-gnu/flavor/desktop *
Currently available mix-ins profiles:
  [8]  funtoo/1.0/linux-gnu/mix-ins/dvd *
  [9]  funtoo/1.0/linux-gnu/mix-ins/gnome
  [10]  funtoo/1.0/linux-gnu/mix-ins/kde *
  [11]  funtoo/1.0/linux-gnu/mix-ins/media *
  [12]  funtoo/1.0/linux-gnu/mix-ins/rhel5-compat
  [13]  funtoo/1.0/linux-gnu/mix-ins/server-db
  [14]  funtoo/1.0/linux-gnu/mix-ins/server-mail
  [15]  funtoo/1.0/linux-gnu/mix-ins/server-web
  [16]  funtoo/1.0/linux-gnu/mix-ins/workstation
  [17]  funtoo/1.0/linux-gnu/mix-ins/workstation-minimal
</console>


{{Fancynote| You must use the numbers to reference the profiles bits you want.}}
and add <code>/usr/bin/xscreensaver -no-splash &</code> to your <code>~/.xinitrc</code> file:
 
  xscreensaver -no-splash &        # starts screensaver daemon
  exec ck-launch-session i3 --force-xinerama


No magic here, what you add is put by portage in the <tt>/etc/portage/make.profile/parent</tt> file. In the present case this file contains:
or b) modifi your Xorg server (https://wiki.archlinux.org/index.php/Display_Power_Management_Signaling).


<console>
==='''4. '''Note: ===
###i## cat /etc/portage/make.profile/parent
gentoo:funtoo/1.0/linux-gnu/arch/x86-64bit
gentoo:funtoo/1.0/linux-gnu/build/current
gentoo:funtoo/1.0/linux-gnu/flavor/desktop
gentoo:funtoo/1.0/linux-gnu/mix-ins/dvd
gentoo:funtoo/1.0/linux-gnu/mix-ins/gnome
gentoo:funtoo/1.0/linux-gnu/mix-ins/kde
gentoo:funtoo/1.0/linux-gnu/mix-ins/media
</console>


== For Developers ==
I login without a login manager using <code>startx</code> to start my Window Manager, you can end/exit your i3 wm via <code>alt or windows key + shift + e</code>


=== Define the profile sub-sets you will use ===
==='''5.''' Background Image Viewer===


So far in Funtoo we have used the exact same profiles as Gentoo thus Funtoo/2008.0 was strictly the same thing as Gentoo/2008.0 or the barely the same 10.0. This (monolithic) profile was set though a symbolic link named '''/etc/make.profile''' pointing on a complex directory architecture located somewhere under '''/usr/portage/profiles'''. This is no longer valid with the Funtoo 1.0 profiles as they are split in several smaller bricks which are then glued together via the  '''/etc/portage/make.profile/parent''' file (You do not need to include everything, just use the "bricks" you need). Those bricks belongs to several categories:
a) Feh
<console> emerge -a feh</console>
<code>~/.xinitrc</code>:
  feh --bg-center <path>/<image>.png


1. MANDATORY -- An "arch" profile which defines settings for a particular architecture. You'll want to set this to whatever arch your system is and leave it alone. '''Setting it to a different arch than your system could severely break it.'''
''more options → https://wiki.archlinux.org/index.php/Feh#As_a_desktop_wallpaper_manager ''


2. MANDATORY -- A "build" profile which should match the tree you wish to use. '''Stable''', '''Current''' (~arch), or '''Experimental''' (use it if you are brave enough and find '''current''' too stable).
b) Nitrogen(GUI Programm)
<console> emerge -a nitrogen</console>
<code>~/.xinitrc</code>:
  exec --no-startup-id nitrogen --restore
==3. Additional Software:==


3. MANDATORY -- A "flavor" profile (what was previously known as ''profiles'' is still known as such in Gentoo) which describes the kind of system you want.
===1) File Manager:===
* minimal - Be warned, minimal is exactly what it says, the minimal profile stuff you need for a usable system, nothing else. This is really for people who know what they're doing.
<console> emerge --ask thunar </console>
* core - This is the core profile. This is for stuff that affects both desktops and servers.
''thunar - filemanager that supports automounting''
* desktop - Exactly what it says. If you're using a desktop, you should set this as your flavor.
''Make sure you create this rule: <code> /etc/polkit-1/rules.d/10-drives.rules</code>
* server - If you're running a server, you should set this as your flavor.
  polkit.addRule(function(action, subject) {
  if (action.id.indexOf("org.freedesktop.udisks2.") == 0){
  return polkit.Result.YES;
  }
  }
  );


4. OPTIONAL -- One or more "mix-ins" profiles which describe optional add-ons. 'mix-ins' are the heart of the Funtoo 1.0 profiles. Unlike the monolithic profiles which sets a massive amount of use flags and options for you, we've split them into logical add-on profiles. For instance if you want support for gnome, you would add the gnome mix-in to your current profiles. That mix-in sets all the proper use flags and such for gnome. Same with others. Want dvd support? Add that one in. Using a rhel5 kernel which requires special versions of packages such as udev? There's a mix-in for that too. Run a mail server? web server? There's mix-ins for those also. Expect this category to grow in the future as new mix-ins are created.
''Also you should have <code>udisk</code> installed''


The contents of '''/etc/portage/make.profile/parent''' for a basic setup might look like this:
===2) '''media-video/smplayer:'''===


<pre>
''allow smplayer always to floate, just add''
gentoo:funtoo/1.0/linux-gnu/arch/x86-64bit
  for_window [class="smplayer" instance="smplayer"] floating enable
gentoo:funtoo/1.0/linux-gnu/build/current
''to your <code>~/.i3/config</code>''
gentoo:funtoo/1.0/linux-gnu/flavor/core
</pre>


A more rounded setup for a desktop might look like this:
===3)''' Internet Browser '''===
''I recommend <code>
www-client/chromium</code> or <code>www-client/google-chrome</code>
''see for more info: http://www.funtoo.org/Funtoo_Linux_Web_Browsers''
  Addons:
  1) Adblock
  2) uMatrix
  3) StayFocused
  4) WebRTC Block


<pre>
===n)''' usefull software '''===
gentoo:funtoo/1.0/linux-gnu/arch/x86-64bit
app-arch/file-roller
gentoo:funtoo/1.0/linux-gnu/build/current
app-editors/bluefish
gentoo:funtoo/1.0/linux-gnu/flavor/desktop
app-emulation/wine
gentoo:funtoo/1.0/linux-gnu/mix-ins/dvd
app-misc/freemind
gentoo:funtoo/1.0/linux-gnu/mix-ins/media
app-office/libreoffice
</pre>
app-portage/eix
mail-client/thunderbird
media-gfx/blender
media-gfx/gimp
media-sound/audacity
media-video/kdenlive


== Related ==
* [[Flavors and Mix-ins]]


[[Category:Funtoo features]]
media-video/vlc
[[Category:Portage]]
net-analyzer/wireshark
[[Category:Labs]]
net-ftp/filezilla
[[Category:HOWTO]]
sys-apps/lm_sensors
[[Category:Official Documentation]]
virtual/jre
app-text/evince
app-text/calibre
app-emulation/virtualbox

Revision as of 20:37, February 16, 2015

WIM42GNU's Funtoo Setup

This is for everybody who might have seen my funtoo setup and liked it! This is also for myself to keep track on my system. I have used most of the Linux distributions out there and I am currently most happy with funtoo. My reasons are:

  1. Gentoo/Funtoo is a rolling release distribution, meaning you only have to install it once and update it frequently.
  2. Gentoo/Funtoo is only what you make out of it, no unnesecary rubish like in Ubuntu, OpenSuse or Fedora will be installed by default. In the mean time being aware that Gentoo/Funtoo is for advanced users not careing that much about GUIs for Settings or Configs.
  3. Gentoo/Funtoo runs fast due to multiple reasons. (Compiling your own software,USE-Flags,...)
  4. Philosophy, one would think that Slackware would suite me most (KISS,Unix) but the fact is that these distributions require you more energy and time to work with. I want to get my jobs done, not careing to much about the system. It is okay to have tools that do things for you as long they are designed well - like in funtoo.


1. Install Funtoo (not complete yet - I will update this part when I install funtoo the next time)

Follow the install instructions and setup a minimal system.http://www.funtoo.org/Funtoo_Linux_Installation

Notice you will need to create/edit some configs in the installation prozess. Here are some of mine customizations:

a) /etc/portage/make.conf:

 CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer"
 CXXFLAGS="${CFLAGS}"
 CPU_FLAGS_X86="aes avx fma4 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 xop"

for the CPU Flags checkout: http://www.funtoo.org/News:CPU_FLAGS_X86

 USE="qt3support theora libkms xa cdr dvd dvdr alsa ffmpeg -gnome gtk -qt4 -kde lm_sensors mp3 mp4 mozilla multilib png python sound udev usb unicode static-libs hddtemp -bluetooth  nvidia X pulseaudio udisks"
 EMERGE_DEFAULT_OPTS="--keep-going"
 FEATURES="-collision-protect ccache"
 CCACHE_SIZE="1G"
 PORTAGE_NICENESS=20
 PORTAGE_IONICE_COMMAND="ionice -c 3 -p \${PID}"
 #EMERGE_DEFAULT_OPTS="--jobs=12" 
 MAKEOPTS="-j12" <--- Number of CPU cores *2 in my case works best.
 LANG="de_DE.UTF-8" 
 LINGUAS="de"  
 ACCEPT_LICENSE="* -@EULA" 
 INPUT_DEVICES="evdev"
 VIDEO_CARDS="nvidia"


b) /etc/fstab

 # /etc/fstab: static file system information.
 #
 # The root filesystem should have a pass number of either 0 or 1.
 # All other filesystems should have a pass number of 0 or greater than 1.
 #
 # NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
 #
 # See the manpage fstab(5) for more information.
 #
 # <fs>			<mountpoint>	<type>		<opts>		<dump/pass>
 /dev/sda1		/boot		ext2		noauto,noatime	1 2
 #/dev/cdrom		/mnt/cdrom	auto		noauto,ro	0 0
 /dev/mapper/vg-swap     none          swap      sw                              0 0
 /dev/mapper/vg-root     /             ext4      noatime,nodiratime,defaults     0 1
 /dev/sr0                /mnt/cdrom    auto      noauto,ro                       0 0
 /dev/mapper/vg-home     /home         ext4      noatime,nodiratime              0 0
 tmpfs		/var/tmp/portage	tmpfs	uid=portage,gid=portage,mode=0775,size=16048M,noatime	0 0

for tmpfs see: http://www.funtoo.org/Funtoo_Filesystem_Guide,_Part_3

c) Since I have an encrypted LVM, one needs an initramfs. I prefer the genkernel method.

   genkernel --kernel-config=/path/to/your/custom-kernel-config --no-mrproper --makeopts=-j5 --install --lvm --luks all 

more here: http://www.funtoo.org/Rootfs_over_encrypted_lvm or use better-initramfs: http://www.funtoo.org/Initramfs

d) My Funtoo Profiles:

 eselect profile show
 
 Currently set profiles:
    arch: gentoo:funtoo/1.0/linux-gnu/arch/x86-64bit
   build: gentoo:funtoo/1.0/linux-gnu/build/current
  flavor: gentoo:funtoo/1.0/linux-gnu/flavor/desktop
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/audio
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/console-extras
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/dvd
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/media
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/X

 Automatically enabled profiles:
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/print
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/X
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/audio
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/dvd
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/media
 mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/console-extras


2. Install your WindowManager or DesktopEnviroment

My favourite Window Manager at the time is i3 followed by xfce and openbox. Details about i3 & funtoo → http://www.funtoo.org/Package:I3_(Window_Manager) i3 setup:

1) install these packages:

 emerge --ask i3 i3status dmenu lxappeareance

If you want to know what these packages are research them. I use lxappeareance to install and select gtk-themes.

Config files:

1. xinitrc at ~/.xinitrc

 exec ck-launch-session i3

You only need --force-xinerama if you do have a nvidia grafics card that do not work without it. For more startx magic → https://wiki.archlinux.org/index.php/xinitrc

2. ~/.i3/config

specify window colors at the top of the file:

 # class                 border  backgr. text    indicator
 client.focused          #333333 #000000 #ffffff #000000
 client.focused_inactive #333333 #5f676a #ffffff #484e50
 client.unfocused        #333333 #222222 #888888 #292d2e
 client.urgent           #333333 #900000 #ffffff #900000

specify the bar/workspace colors at the bottom of the file:

 bar {
         status_command i3status
         # Bar color settings
         colors{
                 #background #000000
                 #statusline #ffffff
                 #separator  #666666
                 # Type             border  background font
                 focused_workspace  #008fff #007fff #ffffff
                 active_workspace   #333333 #5f676a #ffffff
                 inactive_workspace #333333 #222222 #888888
                 urgent_workspace   #aa0000 #990000 #ffffff
         }
 }


Do not forget the keymap setting at /etc/X11/xorg.conf otherwise you need to use setxkbmap

 Section "InputClass"
   Identifier         "keyboard-all"
   Driver             "evdev"
   MatchIsKeyboard    "on"
   Option         "XkbLayout" "de"
 EndSection

3. Display Power Management Signaling

a) You can either use XScreenSaver(https://wiki.archlinux.org/index.php/XScreenSaver):

 emerge -a xscreensaver

and add /usr/bin/xscreensaver -no-splash & to your ~/.xinitrc file:

 xscreensaver -no-splash &         # starts screensaver daemon 
 exec ck-launch-session i3 --force-xinerama 

or b) modifi your Xorg server (https://wiki.archlinux.org/index.php/Display_Power_Management_Signaling).

4. Note:

I login without a login manager using startx to start my Window Manager, you can end/exit your i3 wm via alt or windows key + shift + e

5. Background Image Viewer

a) Feh

 emerge -a feh

~/.xinitrc:

  feh --bg-center <path>/<image>.png

more options → https://wiki.archlinux.org/index.php/Feh#As_a_desktop_wallpaper_manager

b) Nitrogen(GUI Programm)

 emerge -a nitrogen

~/.xinitrc:

  exec --no-startup-id nitrogen --restore

3. Additional Software:

1) File Manager:

 emerge --ask thunar 

thunar - filemanager that supports automounting Make sure you create this rule: /etc/polkit-1/rules.d/10-drives.rules

 polkit.addRule(function(action, subject) {
 if (action.id.indexOf("org.freedesktop.udisks2.") == 0){
 return polkit.Result.YES;
 }
 }
 );

Also you should have udisk installed

2) media-video/smplayer:

allow smplayer always to floate, just add

 for_window [class="smplayer" instance="smplayer"] floating enable

to your ~/.i3/config

3) Internet Browser

I recommend www-client/chromium or www-client/google-chrome see for more info: http://www.funtoo.org/Funtoo_Linux_Web_Browsers

  Addons:
  1) Adblock
  2) uMatrix
  3) StayFocused
  4) WebRTC Block

n) usefull software

app-arch/file-roller app-editors/bluefish app-emulation/wine app-misc/freemind app-office/libreoffice app-portage/eix mail-client/thunderbird media-gfx/blender media-gfx/gimp media-sound/audacity media-video/kdenlive


media-video/vlc net-analyzer/wireshark net-ftp/filezilla sys-apps/lm_sensors virtual/jre app-text/evince app-text/calibre app-emulation/virtualbox