portage и python 2.7

Случилось так что я поменял USE флаги для python (добавил sqlite), после чего 2.6 и 3.1 ветки благополучно были пересобраны, а emerge и ebuild больше не работали, привожу лог последнего
Traceback (most recent call last):
  File "/usr/bin/ebuild", line 138, in 
    ebuild_portdir not in portage.portdb.porttrees:
  File "/usr/lib64/portage/pym/portage/proxy/objectproxy.py", line 22, in __getattribute__
    result = object.__getattribute__(self, '_get_target')()
  File "/usr/lib64/portage/pym/portage/__init__.py", line 592, in _get_target
    return _get_legacy_global(name)
  File "/usr/lib64/portage/pym/portage/_legacy_globals.py", line 14, in _get_legacy_global
    portage.portdb = portage.db[portage.root]["porttree"].dbapi
  File "/usr/lib64/portage/pym/portage/util/__init__.py", line 1304, in __getitem__
    result = lazy_item.func(*pargs, **kwargs)
  File "/usr/lib64/portage/pym/portage/dbapi/porttree.py", line 1019, in __init__
    self.dbapi = portdbapi(mysettings=settings)
  File "/usr/lib64/portage/pym/portage/dbapi/porttree.py", line 152, in __init__
    self.auxdbmodule = self.settings.load_best_module("portdbapi.auxdbmodule")
  File "/usr/lib64/portage/pym/portage/package/ebuild/config.py", line 844, in load_best_module
    mod = load_mod(best_mod)
  File "/usr/lib64/portage/pym/portage/__init__.py", line 402, in load_mod
    mod = __import__(modname)
  File "/usr/lib64/portage/pym/portage/cache/sqlite.py", line 14, in 
    from pysqlite2 import dbapi2 as db_module
ImportError: No module named pysqlite2
А случилось так потому что я не так давно размаскировал dev-lang/python:2.7, очевидно что его надо было поставить как-то, было найдено простейшее решение - собрать его на другой машине и распаковать в корень.
На удалённой машине надо было закомментировать оптимизации под процессор и выполнить
sudo ACCEPT_KEYWORDS="~amd64" emerge -avB1 dev-lang/python:2.7
На локальной
sftp user@host:/usr/portage/packages/dev-lang/python-2.7.1.tbz2
(пример для ssh)

IPTV video player

После сравнительно долгого мучения сначала с smplayer, потом с vlc для просмотра IPTV я открыл для себя Tano ( нашёл я его тут ).
Конечно меня ожидали некоторые трудности - первая из которых никто не написал досих пор ebuild'ов для сборки оной программы. Написал, забирать напомню в моём оверлее
sudo layman -a wavilen

Вторая сложность - пришлось ручками поправить плейлист предоставляемый провайдером, чтобы tano его "скушал", благо примеры устанавливаются вместе с плеером
equery f tano | grep m3u 

Конфиг zsh (FreeBSD)

Комментарии и адаптация к linux скорее всего будут написаны позже.
Просто мне надо размножить основные принципы, решил выложить здесь.

setopt INC_APPEND_HISTORY SHARE_HISTORY HIST_IGNORE_DUPS HIST_IGNORE_ALL_DUPS HIST_REDUCE_BLANKS HIST_IGNORE_SPACE HIST_NO_STORE HIST_VERIFY
setopt EXTENDED_HISTORY HIST_SAVE_NO_DUPS HIST_EXPIRE_DUPS_FIRST HIST_FIND_NO_DUPS APPEND_HISTORY
setopt CORRECT MENUCOMPLETE ALL_EXPORT
setopt   notify globdots correct pushdtohome cdablevars autolist
setopt   correctall autocd recexact longlistjobs
setopt   autoresume histignoredups pushdsilent 
setopt   autopushd pushdminus extendedglob rcquotes mailwarning
setopt  No_Beep
unsetopt bgnice autoparamslash

HISTFILE=$HOME/.zhistory
HISTSIZE=10000
SAVEHIST=10000
autoload -U predict-on
zle -N predict-on
zle -N predict-off
bindkey -M emacs "^X^Z" predict-on
bindkey -M emacs "^Z" predict-off

alias ls='ls -G'
alias ll='ls -lh'
alias la='ls -a'
alias l='ls'
export GREP_OPTIONS='--color=auto'
export GREP_COLOR='1;33'



autoload -U compinit
compinit
bindkey -v
bindkey "`echotc kI`" yank # Insert
bindkey "`echotc kD`" delete-char # Delete
bindkey "`echotc kP`" up-line-or-history # Page Up
bindkey "`echotc kN`" down-line-or-history # Page Down
bindkey "`echotc ku`" up-line-or-search ## up arrow for back-history-search
bindkey "`echotc kd`" down-line-or-search ## down arrow for fwd-history-search
bindkey "`echotc kh`" beginning-of-line # Home
bindkey "`echotc @7`" end-of-line # End



zstyle ':completion::complete:*' use-cache on
zstyle ':completion::complete:*' cache-path ~/.zsh/cache/$HOST
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
zstyle ':completion:*' list-prompt '%SAt %p: Hit TAB for more, or the character to insert%s'
zstyle ':completion:*' menu select=1 _complete _ignored _approximate
zstyle -e ':completion:*:approximate:*' max-errors \
    'reply=( $(( ($#PREFIX+$#SUFFIX)/2 )) numeric )'
zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s'
zstyle ':completion:*::::' completer _expand _complete _ignored _approximate
zstyle -e ':completion:*:approximate:*' max-errors \
    'reply=( $(( ($#PREFIX+$#SUFFIX)/2 )) numeric )'
zstyle ':completion:*:expand:*' tag-order all-expansions
zstyle ':completion:*' verbose yes
zstyle ':completion:*:descriptions' format '%B%d%b'
zstyle ':completion:*:messages' format '%d'
zstyle ':completion:*:warnings' format 'No matches for: %d'
zstyle ':completion:*:corrections' format '%B%d (errors: %e)%b'
zstyle ':completion:*' group-name ''
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31'
zstyle ':completion:*:*:kill:*:processes' command 'ps --forest -A -o pid,user,cmd'
zstyle ':completion:*:processes-names' command 'ps axho command' 

[[ -f /usr/local/bin/grc ]] && {
  alias ping="grc --colour=auto ping"
  alias traceroute="grc --colour=auto traceroute"
  alias make="grc --colour=auto make"
  alias diff="grc --colour=auto diff"
  alias cvs="grc --colour=auto cvs"
  alias netstat="grc --colour=auto netstat"
}


extract () {
    if [ -f $1 ] ; then
        case $1 in
            *.tar.bz2)   tar xvjf $1        ;;
            *.tar.gz)    tar xvzf $1     ;;
            *.bz2)       bunzip2 $1       ;;
            *.rar)       unrar x $1     ;;
            *.gz)        gunzip $1     ;;
            *.tar)       tar xvf $1        ;;
            *.tbz2)      tar xvjf $1      ;;
            *.tgz)       tar xvzf $1       ;;
            *.zip)       unzip $1     ;;
            *.Z)         uncompress $1  ;;
            *.7z)        7z x $1    ;;
            *)           echo "'$1' cannot be extracted via >extract<" ;;
        esac
    else
        echo "'$1' is not a valid file"
    fi
}




autoload -U colors

autoload colors zsh/terminfo
if [[ "$terminfo[colors]" -ge 8 ]]; then
   colors
fi
   for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE; do
   eval PR_$color='%{$terminfo[bold]$fg[${(L)color}]%}'
   eval PR_LIGHT_$color='%{$fg[${(L)color}]%}'
   (( count = $count + 1 ))
done
   PR_NO_COLOUR="%{$terminfo[sgr0]%}"

local blue_op=""$PR_BLUE"["$PR_NO_COLOUR""
local blue_cp=""$PR_BLUE"]"$PR_NO_COLOUR""
local blue_zd=""$PR_BLUE"╭─"$PR_NO_COLOUR""
local blue_zu=""$PR_BLUE"╰─"$PR_NO_COLOUR""
local path_p="${blue_op}$PR_MAGENTA%/$PR_NO_COLOUR${blue_cp}%b"
local user_host="${blue_op}%B$PR_GREEN%n@%m$PR_NO_COLOUR${blue_cp}"
PROMPT="${blue_zd}${user_host}$PR_BLUE─$PR_NO_COLOUR${path_p}
${blue_zu}$PR_BLUE%#$PR_NO_COLOUR "
RPROMPT="%B%*%b"


export LANG=ru_RU.UTF-8
export LC_ALL=ru_RU.UTF-8
export EDITOR=vim
export PAGER=less
export PORTSEARCH_OUTFIELDS=name,path,info,www
echo "List all tmux sessions managed by the server:"
tmux ls

VA-API plugins for GStreamer

В поисках лучшей жизни решил испытать, лучшей жизни не получилось - определённые неровности в работе всё же присутствуют, но раз работа проделана - надо описать ;)
Результат - ebuild - в моём оверлее:
sudo layman -a wavilen
После установки можно проверить действительно ли оно зарегистрировалось в системе:
# gst-inspect-0.10 | grep vaapi
vaapisink:  vaapisink: VA-API sink
vaapidecode:  vaapidecode: VA-API decoder
vaapiconvert:  vaapiconvert: VA-API colorspace converter

Ссылки на тему:
http://www.freedesktop.org/wiki/Software/vaapi
http://www.splitted-desktop.com/~gbeauchesne/gstreamer-vaapi/
https://bbs.archlinux.org/viewtopic.php?pid=830180
http://gstreamer-devel.966125.n4.nabble.com/VA-API-support-td2165423.html

e17( и *box'ы) и файловые ассоциации Chromium

sudo emerge -av dev-perl/File-MimeInfo

меняем /usr/bin/xdg-open
- BROWSER=chromium-browser:firefox:mozilla:epiphany:konqueror:google-chrome:$BROWSER
+ BROWSER=mimeopen

Два способа формировать файл конфига:
1) mimeopen -d <путь к открываемому файлу>
2) xdg-mime default application mimetype(s)
(где application - это *.desktop файл приложения из /usr/share/applications или в ~/.local/share/applications);

который можно и вручную поправить
mcedit ~/.local/share/applications/defaults.list




Простенький файрвол ferm

emerge net-misc/ferm
sudo mcedit /etc/ferm/ferm.conf
# workstation & fileserver
# Author: wavilen

table filter {
    chain INPUT {
        policy DROP;

        # connection tracking
        mod state state INVALID DROP;
        mod state state (ESTABLISHED RELATED) ACCEPT;

        # allow local connections
        interface lo ACCEPT;

        # respond to ping
        proto icmp icmp-type echo-request ACCEPT;

        # allow SSH connections
        proto tcp dport ssh ACCEPT;

        # ident connections are also allowed
        proto tcp dport auth ACCEPT;

        # samba
        proto tcp dport (139 445) ACCEPT; #smbd
        proto udp dport (137:138) ACCEPT; #nmbd

        # NFSv4
        proto tcp dport sunrpc ACCEPT;
        proto (tcp udp) dport 2049 ACCEPT;

        #torrent
        proto tcp dport (8000) ACCEPT;
        proto udp dport (8000) ACCEPT;

        #iptv
        proto (udp igmp) daddr 224.0.0.0/4 mod state state NEW ACCEPT;
        proto udp dport 1234 ACCEPT;

        # the rest is dropped by the above policy
    }

    # outgoing connections are not limited
    chain OUTPUT policy ACCEPT;

    # this is not a router
    chain FORWARD policy DROP;
}
sudo ferm -i /etc/ferm/ferm.conf
sudo /etc/init.d/iptables save
sudo /etc/init.d/iptables start
sudo rc-update add iptables default

NotifyOSD


Посетила идея допилить это чудо, чтобы всплывающие извещения лучше вписывались в e17 и torrent клиент flush всё же начал извещать о завершённых закачках.

С этой целью были получены и допилены, а также написаны на горячую руку патчи и ebuild'ы:
x11-libs/libnotify
Versions: 0.4.5-r1
Homepage: http://www.galago-project.org/

x11-misc/notify-osd
Versions: 0.9.29-r1
Homepage: https://launchpad.net/notify-osd

x11-misc/notifyconf
versions: 9999
Homepage: https://code.launchpad.net/notifyconf

Все эти результаты пары часов труда можно найти в моём оверлее
sudo layman -a wavilen

Спасибо всем кто писал ebuild'ы и patch'и
Ссылки на исходный материал:
http://www.webupd8.org/2010/05/gui-to-configure-notifyosd-in-ubuntu.html
http://www.linux.org.ru/forum/general/5096497
http://bugs.gentoo.org/show_bug.cgi?id=320697