Difference between pages "Wim42gnu's-setup" and "Package:Gentoolkit"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
=WIM42GNU's Funtoo Setup=
{{Ebuild
|Summary=Collection of administration scripts for funtoo
|CatPkg=app-portage/gentoolkit
}}
{{PageNeedsUpdates}}
Gentoolkit is a collection of tools used by Gentoo Linux to administer and develop the Portage package management system. The tools are managed and installed by Portage itself. Funtoo Linux offer this package as part of  stage3.


This is for everybody who might have seen my funtoo setup and liked it!
The tools are split into two related packages: gentoolkit and gentoolkit-dev. As with the rest of Portage they are written in Python.  
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.


Gentoolkit provides:
* eclean
* enalyze
* equery
* eread
* euse
* glsa-check
* revdep-rebuild


==1. Install Funtoo (not complete yet - I will update this part when I install funtoo the next time)==
== equery ==
Equery is a tool that displays  information about the installed packages on the system. equery is based on a system of modules, , running it with out arguments displays a list of options


''Follow the install instructions and setup a minimal system.''http://www.funtoo.org/Funtoo_Linux_Installation
<console>###i## equery</console>


Notice you will need to create/edit some configs in the installation prozess. Here are some of mine customizations:
=== equery b ===
Running equery with the b flag is useful to determine which package a file comes from.


a) <code>/etc/portage/make.conf</code>:
<console>###i## equery b /usr/lib/libpam.so
  CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer"
* Searching for /usr/lib/libpam.so ...
  CXXFLAGS="${CFLAGS}"
sys-libs/pam-1.1.8-r2 (/usr/lib64/libpam.so)
  CPU_FLAGS_X86="aes avx fma4 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 xop"
</console>


''for the CPU Flags checkout:'' http://www.funtoo.org/News:CPU_FLAGS_X86
=== equery f ===
Running equery with the f flag is useful to show all installed files from a package.


  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"
<console>###i## equery f domination
 
* Searching for domination ...
  EMERGE_DEFAULT_OPTS="--keep-going"
  * Contents of games-board/domination-1.1.1.5:
  FEATURES="-collision-protect ccache"
/usr
  CCACHE_SIZE="1G"
/usr/games
  PORTAGE_NICENESS=20
/usr/games/bin
  PORTAGE_IONICE_COMMAND="ionice -c 3 -p \${PID}"
/usr/games/bin/domination
  #EMERGE_DEFAULT_OPTS="--jobs=12"
...
  MAKEOPTS="-j12" ''<--- Number of CPU cores *2 in my case works best.''
</console>
 
  LANG="de_DE.UTF-8"
  LINGUAS="de"  
  ACCEPT_LICENSE="* -@EULA"
  INPUT_DEVICES="evdev"
  VIDEO_CARDS="nvidia"
 
 
b) <code>/etc/fstab</code>
 
  # /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:
== glsa-check ==
  eselect profile show
Glsa-check shows what potential vulnerabilities your system has.
 
  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


<console>###i## glsa-check -l
[A] means this GLSA was marked as applied (injected),
[U] means the system is not affected and
[N] indicates that the system might be affected.


==2. Install your WindowManager or DesktopEnviroment==
201310-15 [N] GNU Automake: Multiple vulnerabilities ( sys-devel/automake )
 
''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:
<console> emerge --ask i3 i3status dmenu lxappeareance
</console>
</console>
'' 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 <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''
==='''2.'''  <code>~/.i3/config</code>===
''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 <code>/etc/X11/xorg.conf</code> otherwise you need to use <code>setxkbmap</code>
  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 <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
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 <code>startx</code> to start my Window Manager, you can end/exit your i3 wm via <code>alt or windows key + shift + e</code>
==='''5.''' Background Image Viewer===
a) Feh
<console> emerge -a feh</console>
<code>~/.xinitrc</code>:
  feh --bg-center <path>/<image>.png
''more options → https://wiki.archlinux.org/index.php/Feh#As_a_desktop_wallpaper_manager ''
b) Nitrogen(GUI Programm)
<console> emerge -a nitrogen</console>
<code>~/.xinitrc</code>:
  exec --no-startup-id nitrogen --restore
==3. Additional Software:==
===1) File Manager:===
<console> emerge --ask thunar </console>
''thunar - filemanager that supports automounting''
''Make sure you create this rule: <code> /etc/polkit-1/rules.d/10-drives.rules</code>
  polkit.addRule(function(action, subject) {
  if (action.id.indexOf("org.freedesktop.udisks2.") == 0){
  return polkit.Result.YES;
  }
  }
  );
''Also you should have <code>udisk</code> installed''
===2) '''media-video/smplayer:'''===
''allow smplayer always to floate, just add''
  for_window [class="smplayer" instance="smplayer"] floating enable
''to your <code>~/.i3/config</code>''
===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
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


=gentoolkit-dev=
This package contains Portage development tools.


media-video/vlc
* eviewcvs - Generates ViewCVS URLs.
net-analyzer/wireshark
* gensync - Synchronize local Portage tree against an arbitrary upstream repository.
net-ftp/filezilla
* ekeyword - Change/update keywords in a set of ebuilds.
sys-apps/lm_sensors
* ebump - Bump the revision number of an ebuild and all support files.
virtual/jre
* echangelog - Automatically create ebuild changelog entries.
app-text/evince
{{EbuildFooter}}
app-text/calibre
app-emulation/virtualbox

Revision as of 18:13, March 3, 2015

Gentoolkit

   Tip

We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.

Gentoolkit is a collection of tools used by Gentoo Linux to administer and develop the Portage package management system. The tools are managed and installed by Portage itself. Funtoo Linux offer this package as part of stage3.

The tools are split into two related packages: gentoolkit and gentoolkit-dev. As with the rest of Portage they are written in Python.

Gentoolkit provides:

  • eclean
  • enalyze
  • equery
  • eread
  • euse
  • glsa-check
  • revdep-rebuild

equery

Equery is a tool that displays information about the installed packages on the system. equery is based on a system of modules, , running it with out arguments displays a list of options

root # equery

equery b

Running equery with the b flag is useful to determine which package a file comes from.

root # equery b /usr/lib/libpam.so
 * Searching for /usr/lib/libpam.so ... 
sys-libs/pam-1.1.8-r2 (/usr/lib64/libpam.so)

equery f

Running equery with the f flag is useful to show all installed files from a package.

root # equery f domination
 * Searching for domination ...
 * Contents of games-board/domination-1.1.1.5:
/usr
/usr/games
/usr/games/bin
/usr/games/bin/domination
...

glsa-check

Glsa-check shows what potential vulnerabilities your system has.

root # glsa-check -l
[A] means this GLSA was marked as applied (injected),
[U] means the system is not affected and
[N] indicates that the system might be affected.

201310-15 [N] GNU Automake: Multiple vulnerabilities ( sys-devel/automake )

gentoolkit-dev

This package contains Portage development tools.

  • eviewcvs - Generates ViewCVS URLs.
  • gensync - Synchronize local Portage tree against an arbitrary upstream repository.
  • ekeyword - Change/update keywords in a set of ebuilds.
  • ebump - Bump the revision number of an ebuild and all support files.
  • echangelog - Automatically create ebuild changelog entries.