summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Väth <martin@mvath.de>2015-10-11 11:26:48 +0200
committerMartin Väth <martin@mvath.de>2015-10-11 11:32:18 +0200
commit109d6b4f673a249aea4deeb0cdb5b54a21592410 (patch)
treeec3589a50dac5be54ef6248d1e0ff3a9fd3b41b4
downloadmv-109d6b4f673a249aea4deeb0cdb5b54a21592410.tar.gz
mv-109d6b4f673a249aea4deeb0cdb5b54a21592410.tar.bz2
mv-109d6b4f673a249aea4deeb0cdb5b54a21592410.zip
Clear history for egencache --repo=mv --update-changelogs
-rw-r--r--.gitignore3
-rw-r--r--app-admin/checksec/Manifest1
-rw-r--r--app-admin/checksec/checksec-1.5.ebuild27
-rw-r--r--app-admin/checksec/files/_checksec18
-rw-r--r--app-admin/checksec/metadata.xml8
-rw-r--r--app-admin/sudox/Manifest1
-rw-r--r--app-admin/sudox/metadata.xml16
-rw-r--r--app-admin/sudox/sudox-3.20.ebuild29
-rw-r--r--app-arch/archwrap/Manifest1
-rw-r--r--app-arch/archwrap/archwrap-1.26.ebuild46
-rw-r--r--app-arch/archwrap/metadata.xml16
-rw-r--r--app-arch/bzwc/Manifest1
-rw-r--r--app-arch/bzwc/bzwc-2.18.ebuild41
-rw-r--r--app-arch/bzwc/metadata.xml16
-rw-r--r--app-dicts/stardict-dictd-BritannicaConcise/Manifest1
-rw-r--r--app-dicts/stardict-dictd-BritannicaConcise/metadata.xml8
-rw-r--r--app-dicts/stardict-dictd-BritannicaConcise/stardict-dictd-BritannicaConcise-2.4.2.ebuild18
-rw-r--r--app-dicts/stardict-dictd-cced/Manifest1
-rw-r--r--app-dicts/stardict-dictd-cced/metadata.xml8
-rw-r--r--app-dicts/stardict-dictd-cced/stardict-dictd-cced-2.4.2.ebuild18
-rw-r--r--app-dicts/stardict-dictd-longman/Manifest1
-rw-r--r--app-dicts/stardict-dictd-longman/metadata.xml8
-rw-r--r--app-dicts/stardict-dictd-longman/stardict-dictd-longman-2.4.2.ebuild18
-rw-r--r--app-dicts/stardict-dictd-merrianwebster/Manifest1
-rw-r--r--app-dicts/stardict-dictd-merrianwebster/metadata.xml8
-rw-r--r--app-dicts/stardict-dictd-merrianwebster/stardict-dictd-merrianwebster-2.4.2.ebuild18
-rw-r--r--app-dicts/stardict-dictd-oald/Manifest1
-rw-r--r--app-dicts/stardict-dictd-oald/metadata.xml8
-rw-r--r--app-dicts/stardict-dictd-oald/stardict-dictd-oald-2.4.2.ebuild18
-rw-r--r--app-dicts/stardict-dictd-thesaurus-ee/Manifest1
-rw-r--r--app-dicts/stardict-dictd-thesaurus-ee/metadata.xml8
-rw-r--r--app-dicts/stardict-dictd-thesaurus-ee/stardict-dictd-thesaurus-ee-2.4.2.ebuild18
-rw-r--r--app-dicts/stardict-freedict-deu-eng/Manifest1
-rw-r--r--app-dicts/stardict-freedict-deu-eng/metadata.xml8
-rw-r--r--app-dicts/stardict-freedict-deu-eng/stardict-freedict-deu-eng-2.4.2.ebuild18
-rw-r--r--app-dicts/stardict-freedict-deu-ita/Manifest1
-rw-r--r--app-dicts/stardict-freedict-deu-ita/metadata.xml8
-rw-r--r--app-dicts/stardict-freedict-deu-ita/stardict-freedict-deu-ita-2.4.2.ebuild18
-rw-r--r--app-dicts/stardict-freedict-ita-deu/Manifest1
-rw-r--r--app-dicts/stardict-freedict-ita-deu/metadata.xml8
-rw-r--r--app-dicts/stardict-freedict-ita-deu/stardict-freedict-ita-deu-2.4.2.ebuild18
-rw-r--r--app-emacs/mv_emacs/Manifest1
-rw-r--r--app-emacs/mv_emacs/metadata.xml16
-rw-r--r--app-emacs/mv_emacs/mv_emacs-1.2.ebuild52
-rw-r--r--app-portage/eix/eix-99999999.ebuild78
-rw-r--r--app-portage/eix/metadata.xml33
-rw-r--r--app-portage/find_cruft/Manifest1
-rw-r--r--app-portage/find_cruft/find_cruft-3.0.7.ebuild40
-rw-r--r--app-portage/find_cruft/metadata.xml16
-rw-r--r--app-portage/getdelta/Manifest1
-rw-r--r--app-portage/getdelta/files/eapi2.patch315
-rw-r--r--app-portage/getdelta/getdelta-0.7.9-r2.ebuild46
-rw-r--r--app-portage/getdelta/metadata.xml17
-rw-r--r--app-portage/logclean/Manifest1
-rw-r--r--app-portage/logclean/logclean-9.8-r1.ebuild39
-rw-r--r--app-portage/logclean/metadata.xml16
-rw-r--r--app-portage/portage-bashrc-mv/Manifest1
-rw-r--r--app-portage/portage-bashrc-mv/metadata.xml16
-rw-r--r--app-portage/portage-bashrc-mv/portage-bashrc-mv-13.6.ebuild45
-rw-r--r--app-portage/trickyfetch/Manifest1
-rw-r--r--app-portage/trickyfetch/metadata.xml16
-rw-r--r--app-portage/trickyfetch/trickyfetch-8.7.ebuild45
-rw-r--r--app-portage/useflags/Manifest1
-rw-r--r--app-portage/useflags/metadata.xml16
-rw-r--r--app-portage/useflags/useflags-3.4.ebuild37
-rw-r--r--app-portage/world-mv/Manifest1
-rw-r--r--app-portage/world-mv/metadata.xml16
-rw-r--r--app-portage/world-mv/world-mv-3.14.ebuild37
-rw-r--r--app-shells/auto-fu-zsh/Manifest1
-rw-r--r--app-shells/auto-fu-zsh/auto-fu-zsh-0.0.1.12-r4.ebuild129
-rw-r--r--app-shells/auto-fu-zsh/auto-fu-zsh-99999999.ebuild129
-rw-r--r--app-shells/auto-fu-zsh/files/exit.patch11
-rw-r--r--app-shells/auto-fu-zsh/files/reset-color.patch11
-rw-r--r--app-shells/auto-fu-zsh/files/zsh-compatibility.patch15
-rw-r--r--app-shells/auto-fu-zsh/metadata.xml18
-rw-r--r--app-shells/command-not-found/Manifest1
-rw-r--r--app-shells/command-not-found/command-not-found-0.4.5.ebuild49
-rw-r--r--app-shells/command-not-found/metadata.xml16
-rw-r--r--app-shells/oh-my-zsh/metadata.xml16
-rw-r--r--app-shells/oh-my-zsh/oh-my-zsh-99999999.ebuild49
-rw-r--r--app-shells/runtitle/Manifest1
-rw-r--r--app-shells/runtitle/metadata.xml16
-rw-r--r--app-shells/runtitle/runtitle-2.7.ebuild30
-rw-r--r--app-shells/set_prompt/Manifest1
-rw-r--r--app-shells/set_prompt/metadata.xml16
-rw-r--r--app-shells/set_prompt/set_prompt-1.22.ebuild33
-rw-r--r--app-shells/termcolors-mv/Manifest1
-rw-r--r--app-shells/termcolors-mv/metadata.xml20
-rw-r--r--app-shells/termcolors-mv/termcolors-mv-3.11.ebuild48
-rw-r--r--app-shells/zsh-completions/Manifest1
-rw-r--r--app-shells/zsh-completions/metadata.xml41
-rw-r--r--app-shells/zsh-completions/zsh-completions-0.12.0.ebuild123
-rw-r--r--app-shells/zsh-completions/zsh-completions-99999999.ebuild123
-rw-r--r--app-shells/zsh-syntax-highlighting/Manifest1
-rw-r--r--app-shells/zsh-syntax-highlighting/metadata.xml12
-rw-r--r--app-shells/zsh-syntax-highlighting/zsh-syntax-highlighting-0.2.1.ebuild52
-rw-r--r--app-shells/zsh-syntax-highlighting/zsh-syntax-highlighting-99999999.ebuild52
-rw-r--r--app-shells/zsh/Manifest2
-rw-r--r--app-shells/zsh/files/prompt_gentoo_setup-133
-rw-r--r--app-shells/zsh/files/zprofile-143
-rw-r--r--app-shells/zsh/files/zsh-5.1.0-gcc-5.patch16
-rw-r--r--app-shells/zsh/files/zsh-init.d-gentoo-r1.diff30
-rw-r--r--app-shells/zsh/metadata.xml40
-rw-r--r--app-shells/zsh/zsh-5.1.1-r1.ebuild301
-rw-r--r--app-shells/zsh/zsh-99999999.ebuild301
-rw-r--r--app-shells/zshrc-mv/Manifest1
-rw-r--r--app-shells/zshrc-mv/metadata.xml16
-rw-r--r--app-shells/zshrc-mv/zshrc-mv-2.22.ebuild34
-rw-r--r--app-text/psjoin/Manifest1
-rw-r--r--app-text/psjoin/metadata.xml14
-rw-r--r--app-text/psjoin/psjoin-0.3.ebuild34
-rw-r--r--app-text/stardict/Manifest3
-rw-r--r--app-text/stardict/files/stardict-3.0.3-zlib-1.2.5.2.patch39
-rw-r--r--app-text/stardict/metadata.xml23
-rw-r--r--app-text/stardict/stardict-3.0.6.ebuild144
-rw-r--r--dev-cpp/cpplint/cpplint-99999999.ebuild75
-rw-r--r--dev-cpp/cpplint/metadata.xml8
-rw-r--r--dev-perl/File-lchown/File-lchown-0.20-r1.ebuild22
-rw-r--r--dev-perl/File-lchown/Manifest1
-rw-r--r--dev-perl/File-lchown/metadata.xml8
-rw-r--r--dev-tex/chklref/Manifest1
-rw-r--r--dev-tex/chklref/chklref-2.6.0.ebuild40
-rw-r--r--dev-tex/chklref/metadata.xml15
-rw-r--r--dev-util/ccache/ccache-99999999-r3.ebuild73
-rw-r--r--dev-util/ccache/files/ccache-3.1.10-size-on-disk.patch21
-rw-r--r--dev-util/ccache/files/ccache-3.1.7-no-perl.patch15
-rw-r--r--dev-util/ccache/files/ccache-config-397
-rw-r--r--dev-util/ccache/metadata.xml12
-rw-r--r--dev-util/diffhelp/Manifest1
-rw-r--r--dev-util/diffhelp/diffhelp-1.9.ebuild29
-rw-r--r--dev-util/diffhelp/metadata.xml16
-rw-r--r--dev-util/mv_perl/Manifest1
-rw-r--r--dev-util/mv_perl/metadata.xml16
-rw-r--r--dev-util/mv_perl/mv_perl-2.49.ebuild37
-rw-r--r--dev-util/pyrep/Manifest1
-rw-r--r--dev-util/pyrep/metadata.xml16
-rw-r--r--dev-util/pyrep/pyrep-1.4-r1.ebuild33
-rw-r--r--eclass/ChangeLog33
-rw-r--r--eclass/monotone.eclass197
-rw-r--r--eclass/mv_mozextension.eclass154
-rw-r--r--games-rpg/m5figur-mv/Manifest1
-rw-r--r--games-rpg/m5figur-mv/m5figur-mv-2.4.ebuild50
-rw-r--r--games-rpg/m5figur-mv/metadata.xml19
-rw-r--r--games-rpg/magus/Manifest2
-rw-r--r--games-rpg/magus/magus-1.3.1.ebuild268
-rw-r--r--games-rpg/magus/magus-1.3.3.ebuild268
-rw-r--r--games-rpg/magus/magus-99999999.ebuild268
-rw-r--r--games-rpg/magus/metadata.xml31
-rw-r--r--licenses/sundtek1
-rw-r--r--media-gfx/pqiv/Manifest1
-rw-r--r--media-gfx/pqiv/metadata.xml14
-rw-r--r--media-gfx/pqiv/pqiv-2.2.ebuild49
-rw-r--r--media-tv/sundtek-tv/Manifest1
-rw-r--r--media-tv/sundtek-tv/files/_mediaclient202
-rw-r--r--media-tv/sundtek-tv/files/mediaclient.video31
-rw-r--r--media-tv/sundtek-tv/files/sundtek-local.service11
-rw-r--r--media-tv/sundtek-tv/files/sundtek.initd17
-rw-r--r--media-tv/sundtek-tv/metadata.xml21
-rw-r--r--media-tv/sundtek-tv/sundtek-tv-151002.142741.ebuild188
-rw-r--r--media-video/video-mv/Manifest1
-rw-r--r--media-video/video-mv/metadata.xml16
-rw-r--r--media-video/video-mv/video-mv-8.6.ebuild63
-rw-r--r--metadata/layout.conf3
-rw-r--r--net-dialup/accounting/Manifest1
-rw-r--r--net-dialup/accounting/accounting-1.60.45.3.1.ebuild76
-rw-r--r--net-dialup/accounting/files/ip-down.sh3
-rw-r--r--net-dialup/accounting/files/ip-up.sh4
-rw-r--r--net-dialup/accounting/metadata.xml8
-rw-r--r--net-dialup/martian-modem/Manifest1
-rw-r--r--net-dialup/martian-modem/files/martian-modem-20100123-grsecurity.patch15
-rw-r--r--net-dialup/martian-modem/files/martian-modem-20100123-makefile.patch34
-rw-r--r--net-dialup/martian-modem/files/martian-modem-kernel-3.8.patch22
-rw-r--r--net-dialup/martian-modem/files/martian-modem.conf.d45
-rw-r--r--net-dialup/martian-modem/files/martian-modem.init.d47
-rw-r--r--net-dialup/martian-modem/martian-modem-20100123-r2.ebuild93
-rw-r--r--net-dialup/martian-modem/metadata.xml13
-rw-r--r--net-firewall/firewall-mv/Manifest1
-rw-r--r--net-firewall/firewall-mv/firewall-mv-8.13.ebuild47
-rw-r--r--net-firewall/firewall-mv/metadata.xml16
-rw-r--r--net-misc/sshstart/Manifest1
-rw-r--r--net-misc/sshstart/metadata.xml19
-rw-r--r--net-misc/sshstart/sshstart-2.15.ebuild31
-rw-r--r--net-print/foo2zjs/Manifest19
-rw-r--r--net-print/foo2zjs/files/foo2zjs-20081129-Makefile.patch145
-rw-r--r--net-print/foo2zjs/files/foo2zjs-20081129-udevfwld.patch273
-rw-r--r--net-print/foo2zjs/foo2zjs-20081129-r1.ebuild128
-rw-r--r--net-print/foo2zjs/metadata.xml10
-rw-r--r--profiles/make.defaults1
-rw-r--r--profiles/package.mask4
-rw-r--r--profiles/repo_name1
-rw-r--r--profiles/use.desc4
-rw-r--r--profiles/use.local.desc125
-rw-r--r--sci-mathematics/genius/Manifest2
-rw-r--r--sci-mathematics/genius/genius-1.0.19.ebuild65
-rw-r--r--sci-mathematics/genius/metadata.xml19
-rw-r--r--sci-mathematics/reduce/Manifest1
-rw-r--r--sci-mathematics/reduce/files/64reduce-gentoo.el4
-rwxr-xr-xsci-mathematics/reduce/files/csl2
-rwxr-xr-xsci-mathematics/reduce/files/redcsl2
-rw-r--r--sci-mathematics/reduce/metadata.xml13
-rw-r--r--sci-mathematics/reduce/reduce-20141130-r1.ebuild105
-rw-r--r--sys-apps/cpi/Manifest1
-rw-r--r--sys-apps/cpi/cpi-2.10.ebuild31
-rw-r--r--sys-apps/cpi/metadata.xml16
-rw-r--r--sys-apps/less/Manifest3
-rw-r--r--sys-apps/less/files/README.Gentoo22
-rw-r--r--sys-apps/less/files/code2color-0.2.patch26
-rw-r--r--sys-apps/less/files/lesspipe.sh274
-rw-r--r--sys-apps/less/less-481.ebuild112
-rw-r--r--sys-apps/less/metadata.xml24
-rw-r--r--sys-apps/lesspipe/Manifest1
-rw-r--r--sys-apps/lesspipe/lesspipe-1.83.ebuild211
-rw-r--r--sys-apps/lesspipe/metadata.xml46
-rw-r--r--sys-apps/openrc-wrapper/Manifest1
-rw-r--r--sys-apps/openrc-wrapper/metadata.xml16
-rw-r--r--sys-apps/openrc-wrapper/openrc-wrapper-1.7.ebuild35
-rw-r--r--sys-apps/schedule/Manifest1
-rw-r--r--sys-apps/schedule/metadata.xml16
-rw-r--r--sys-apps/schedule/schedule-7.2.0.ebuild87
-rw-r--r--sys-apps/starter/Manifest1
-rw-r--r--sys-apps/starter/metadata.xml16
-rw-r--r--sys-apps/starter/starter-2.15.ebuild40
-rw-r--r--sys-block/zram-init/Manifest1
-rw-r--r--sys-block/zram-init/metadata.xml16
-rw-r--r--sys-block/zram-init/zram-init-3.4.ebuild43
-rw-r--r--sys-fs/aufs-util/aufs-util-99999999.ebuild42
-rw-r--r--sys-fs/aufs-util/metadata.xml8
-rw-r--r--sys-fs/aufs/aufs-99999999.ebuild200
-rw-r--r--sys-fs/aufs/files/grsecurity-2.2.0.patch61
-rw-r--r--sys-fs/aufs/files/grsecurity-2.2.1.patch63
-rw-r--r--sys-fs/aufs/files/grsecurity-2.2.2.patch61
-rw-r--r--sys-fs/aufs/files/grsecurity-2.2.2.r1.patch15
-rw-r--r--sys-fs/aufs/files/grsecurity-2.9.1.patch15
-rw-r--r--sys-fs/aufs/metadata.xml12
-rw-r--r--sys-fs/emount/Manifest1
-rw-r--r--sys-fs/emount/emount-2.8.3.ebuild41
-rw-r--r--sys-fs/emount/metadata.xml16
-rw-r--r--sys-fs/squash_dir/Manifest1
-rw-r--r--sys-fs/squash_dir/metadata.xml22
-rw-r--r--sys-fs/squash_dir/squash_dir-13.8.ebuild100
-rw-r--r--sys-fs/squashfs-tools/Manifest1
-rw-r--r--sys-fs/squashfs-tools/files/squashfs-tools-4.3-quiet.patch56
-rw-r--r--sys-fs/squashfs-tools/metadata.xml9
-rw-r--r--sys-fs/squashfs-tools/squashfs-tools-4.3.ebuild62
-rw-r--r--sys-fs/squashmount/Manifest1
-rw-r--r--sys-fs/squashmount/metadata.xml16
-rw-r--r--sys-fs/squashmount/squashmount-12.2.0.ebuild73
-rw-r--r--sys-kernel/kernel/Manifest1
-rw-r--r--sys-kernel/kernel/kernel-1.39.ebuild40
-rw-r--r--sys-kernel/kernel/metadata.xml16
-rw-r--r--www-plugins/classic-theme-restorer/Manifest1
-rw-r--r--www-plugins/classic-theme-restorer/classic-theme-restorer-1.4.0.ebuild18
-rw-r--r--www-plugins/classic-theme-restorer/metadata.xml8
-rw-r--r--www-plugins/duckduckgo/Manifest1
-rw-r--r--www-plugins/duckduckgo/duckduckgo-0.4.6-r1.ebuild18
-rw-r--r--www-plugins/duckduckgo/metadata.xml8
-rw-r--r--www-plugins/epubreader/Manifest1
-rw-r--r--www-plugins/epubreader/epubreader-1.5.0.6-r1.ebuild16
-rw-r--r--www-plugins/epubreader/metadata.xml8
-rw-r--r--www-plugins/form-history-control/Manifest1
-rw-r--r--www-plugins/form-history-control/form-history-control-1.4.0.4-r1.ebuild19
-rw-r--r--www-plugins/form-history-control/metadata.xml8
-rw-r--r--www-plugins/locale-switcher/Manifest1
-rw-r--r--www-plugins/locale-switcher/locale-switcher-3-r1.ebuild18
-rw-r--r--www-plugins/locale-switcher/metadata.xml8
-rw-r--r--www-plugins/noscript/Manifest1
-rw-r--r--www-plugins/noscript/metadata.xml12
-rw-r--r--www-plugins/noscript/noscript-2.6.9.37.ebuild20
-rw-r--r--www-plugins/requestpolicy/Manifest1
-rw-r--r--www-plugins/requestpolicy/metadata.xml8
-rw-r--r--www-plugins/requestpolicy/requestpolicy-0.5.28-r1.ebuild16
-rw-r--r--www-plugins/shumway/Manifest1
-rw-r--r--www-plugins/shumway/metadata.xml8
-rw-r--r--www-plugins/shumway/shumway-0.11.394.ebuild18
-rw-r--r--www-plugins/stylish/Manifest1
-rw-r--r--www-plugins/stylish/metadata.xml8
-rw-r--r--www-plugins/stylish/stylish-2.0.2-r1.ebuild33
-rw-r--r--www-plugins/xclear/Manifest1
-rw-r--r--www-plugins/xclear/metadata.xml8
-rw-r--r--www-plugins/xclear/xclear-1.8-r2.ebuild16
-rw-r--r--x11-drivers/nvidia-drivers/Manifest3
-rw-r--r--x11-drivers/nvidia-drivers/files/173.14.39-grsecurity.patch47
-rw-r--r--x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.13.patch12
-rw-r--r--x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.14.patch12
-rw-r--r--x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.17.patch56
-rw-r--r--x11-drivers/nvidia-drivers/files/NVIDIA_glx-defines.patch11
-rw-r--r--x11-drivers/nvidia-drivers/files/NVIDIA_glx-glheader.patch13
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-169.0714
-rw-r--r--x11-drivers/nvidia-drivers/metadata.xml14
-rw-r--r--x11-drivers/nvidia-drivers/nvidia-drivers-173.14.39-r1.ebuild568
-rw-r--r--x11-themes/fvwm-crystal/Manifest1
-rw-r--r--x11-themes/fvwm-crystal/fvwm-crystal-3.3.2-r1.ebuild64
-rw-r--r--x11-themes/fvwm-crystal/metadata.xml21
293 files changed, 10405 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 00000000..7465c705
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/metadata/md5-cache/
+ChangeLog
+!/eclass/ChangeLog
diff --git a/app-admin/checksec/Manifest b/app-admin/checksec/Manifest
new file mode 100644
index 00000000..58624369
--- /dev/null
+++ b/app-admin/checksec/Manifest
@@ -0,0 +1 @@
+DIST checksec-1.5.sh 27095 SHA256 77b8a7fd9393d10def665658a41176ee745d5c7969a4a0f43cefcc8a4cd90947 SHA512 de72caf32c9c3b53384b34b16ea86b29dad42ce7c8db5c769166dc43bcfdde91790e99f268d30151512c89550af6e7b19701d9561081cfa92bb7aeacd2306d04 WHIRLPOOL f1ec49650b4c4ce9ba835ec131b30a3ef6c5af1d3c85fc1274442d0a3310491235ce0ff479fce53e60330cbdc710b91852a1290d4e1e04c74fb410352d5f8e25
diff --git a/app-admin/checksec/checksec-1.5.ebuild b/app-admin/checksec/checksec-1.5.ebuild
new file mode 100644
index 00000000..45c465f9
--- /dev/null
+++ b/app-admin/checksec/checksec-1.5.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="Check for hardened protections like RELRO, NoExec, Stack protection, ASLR, PIE"
+HOMEPAGE="http://www.trapkit.de/tools/checksec.html"
+SRC_URI="http://www.trapkit.de/tools/${PN}.sh -> ${P}.sh"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+S="${WORKDIR}"
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ newbin "${DISTDIR}/${P}.sh" "${PN}"
+ insinto /usr/share/zsh/site-functions
+ doins "${FILESDIR}/_${PN}"
+}
diff --git a/app-admin/checksec/files/_checksec b/app-admin/checksec/files/_checksec
new file mode 100644
index 00000000..b30e0160
--- /dev/null
+++ b/app-admin/checksec/files/_checksec
@@ -0,0 +1,18 @@
+#compdef checksec
+_checksec_procname() {
+ compadd "$expl[@]" ${${${${(f)"$(_call_program processes-names ps ${${EUID/(#s)0(#e)/xa}//[0-9]#/}ho command 2> /dev/null)"//[][\(\)]/}:#(ps|COMMAND|-*)}%%\ *}:t}
+}
+_arguments : \
+'--help[print help]' \
+'--version[print version]' \
+'--file[FILE (check FILE)]:file to check:_files' \
+'--fortify-file[FILE (check FILE for fortify)]:file for fortify:_files' \
+'--fortify-proc[ID (check ID'\''s process for fortify)]:process ID for fortify: _pids' \
+'--proc[NAME (check process NAME)]:process name:_checksec_procname' \
+'--proc-all[check all procname]' \
+'--proc-libs[ID (check ID'\''s process libs)]:process ID to check: _pids' \
+'--kernel[check kernel]' \
+'--dir[DIR \[-v\] (check DIR)]:dir:_files -/'
+local stat=$?
+unset -f _checksec_procname
+return stat
diff --git a/app-admin/checksec/metadata.xml b/app-admin/checksec/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-admin/checksec/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-admin/sudox/Manifest b/app-admin/sudox/Manifest
new file mode 100644
index 00000000..d7fa1dd5
--- /dev/null
+++ b/app-admin/sudox/Manifest
@@ -0,0 +1 @@
+DIST sudox-3.20.tar.gz 5062 SHA256 e9df824fdf9a26983478bffd708d01f9b7ab2a9ec69111541fce2835b51707c6 SHA512 e99a80a53a5562a802bd5a3520eb37d522ad57d602b9839e13ddc0bf0239abc79427c0addf5c7a6b44f76080ce5774690b41e734f57ecdcb949ca003021918c2 WHIRLPOOL 4b8326ba0330c9cfcdd7285f78f14a92218ad43f33d46a8cee8df74479d945a9318675888b34b729b864eefb6844c72cdc2322c8da967ba615e4517495be0b34
diff --git a/app-admin/sudox/metadata.xml b/app-admin/sudox/metadata.xml
new file mode 100644
index 00000000..ec851a13
--- /dev/null
+++ b/app-admin/sudox/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/sudox</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-admin/sudox/sudox-3.20.ebuild b/app-admin/sudox/sudox-3.20.ebuild
new file mode 100644
index 00000000..e923996a
--- /dev/null
+++ b/app-admin/sudox/sudox-3.20.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="sudox is a wrapper for sudo which can pass X authority data and deal with screen and tmux"
+HOMEPAGE="https://github.com/vaeth/sudox/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="app-admin/sudo
+ app-shells/push"
+DEPEND=""
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ dobin "${PN}"
+ insinto /usr/share/zsh/site-functions
+ doins "_${PN}"
+}
diff --git a/app-arch/archwrap/Manifest b/app-arch/archwrap/Manifest
new file mode 100644
index 00000000..ab9a3642
--- /dev/null
+++ b/app-arch/archwrap/Manifest
@@ -0,0 +1 @@
+DIST archwrap-1.26.tar.gz 14098 SHA256 5bd917af8ad7b8e3c64bbd73919ea84b18f18cfd7e24c4cae342d2f24b2b4012 SHA512 218e97e36273ec5070db53ca3f5ca570d72011a51bd06d0075f394d0e66064fc0e8fa0944856573cfea35681e2d3e32fe2cdd77b164905a775f8181b09abba81 WHIRLPOOL 48c050c6ed9e52ce7082dca935859aafd2aea3a4b47c2b409f4f390b06385460fb1ac989ed655c10aad9546253c5f5b3a667cd146c0c5acd6766b03ad6c6ec51
diff --git a/app-arch/archwrap/archwrap-1.26.ebuild b/app-arch/archwrap/archwrap-1.26.ebuild
new file mode 100644
index 00000000..530af13f
--- /dev/null
+++ b/app-arch/archwrap/archwrap-1.26.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="A collection of POSIX shell scripts to invoke archiver programs"
+HOMEPAGE="https://github.com/vaeth/archwrap/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="app-shells/push"
+DEPEND=""
+
+src_prepare() {
+ local i
+ use prefix || for i in bin/*
+ do test -h "${i}" || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -e 's"^\. archwrap\.sh$". '"${EPREFIX}/usr/share/archwrap/archwrap.sh"'"' \
+ -- "${i}" || die
+ done
+ epatch_user
+}
+
+src_install() {
+ local i
+ insinto /usr/bin
+ for i in bin/*
+ do if test -h "${i}"
+ then doins "${i}"
+ elif [ "${i#*/}" != 'archwrap.sh' ]
+ then dobin "${i}"
+ fi
+ done
+ insinto /usr/share/archwrap
+ doins bin/archwrap.sh
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+ dodoc README archwrap_alias
+}
diff --git a/app-arch/archwrap/metadata.xml b/app-arch/archwrap/metadata.xml
new file mode 100644
index 00000000..9f364815
--- /dev/null
+++ b/app-arch/archwrap/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/archwrap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-arch/bzwc/Manifest b/app-arch/bzwc/Manifest
new file mode 100644
index 00000000..7df49bcd
--- /dev/null
+++ b/app-arch/bzwc/Manifest
@@ -0,0 +1 @@
+DIST bzwc-2.18.tar.gz 1844 SHA256 59091b3e210b1db89c02147f6efa1ab60e1b591978b14dde9fd3ac11c8bf5ffd SHA512 1479dc4576d5c05427bf06fd227a2eac7fba4b8cdd842cca9f4b3457a0baabe30d1fe4d2df1d958ec9d76d43c767b72e3c557f67349a19a90f3c88a26f0281e2 WHIRLPOOL 05b8da3017a7886dc3f9d1e6c2a29d3649bbd2595a9aefc45670001957c73be5fd82a76c8b5c394dd92f503fecfd0528d7c65aca99831fc9e7a7fa5c83852407
diff --git a/app-arch/bzwc/bzwc-2.18.ebuild b/app-arch/bzwc/bzwc-2.18.ebuild
new file mode 100644
index 00000000..e2227818
--- /dev/null
+++ b/app-arch/bzwc/bzwc-2.18.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="A POSIX shell wrapper for wc, supporting compressed files (xz, lzma, bz2, gz)"
+HOMEPAGE="https://github.com/vaeth/bzwc/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="app-shells/push"
+DEPEND=""
+
+src_prepare() {
+ local i
+ use prefix || for i in bin/*
+ do test -h "${i}" || \
+ sed -i -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' -- "${i}" \
+ || die
+ done
+ epatch_user
+}
+
+src_install() {
+ local i
+ insinto /usr/bin
+ for i in bin/*
+ do if test -h "${i}" || ! test -x "${i}"
+ then doins "${i}"
+ else dobin "${i}"
+ fi
+ done
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+}
diff --git a/app-arch/bzwc/metadata.xml b/app-arch/bzwc/metadata.xml
new file mode 100644
index 00000000..d8487bbc
--- /dev/null
+++ b/app-arch/bzwc/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/bzwc</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-dicts/stardict-dictd-BritannicaConcise/Manifest b/app-dicts/stardict-dictd-BritannicaConcise/Manifest
new file mode 100644
index 00000000..a5b1dbc5
--- /dev/null
+++ b/app-dicts/stardict-dictd-BritannicaConcise/Manifest
@@ -0,0 +1 @@
+DIST stardict-BritannicaConcise-2.4.2.tar.bz2 6999821 SHA256 f25aae8633b4b4f87424b745c87478772e74351d8674e756ef6252c087e01e9c SHA512 7602ea25c227c6334feed7ccf6c182f24585f6e634e7f00126eb1f0c64c92c9c9c1efb3daefad4b67bd7ac95509d1a7cf983337182eea6567ef82979de703be7 WHIRLPOOL 6dfe6e77a504dcf70bfe140474846949cc5191359cb4a9870c7360fcbe87ca42557cdba90bc51b6e37f6d96f98196e2a8ca263c93c219d791eae9952a1e58b90
diff --git a/app-dicts/stardict-dictd-BritannicaConcise/metadata.xml b/app-dicts/stardict-dictd-BritannicaConcise/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-dictd-BritannicaConcise/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-dictd-BritannicaConcise/stardict-dictd-BritannicaConcise-2.4.2.ebuild b/app-dicts/stardict-dictd-BritannicaConcise/stardict-dictd-BritannicaConcise-2.4.2.ebuild
new file mode 100644
index 00000000..b97fbcd2
--- /dev/null
+++ b/app-dicts/stardict-dictd-BritannicaConcise/stardict-dictd-BritannicaConcise-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+DICT_PREFIX=""
+inherit eutils stardict
+RESTRICT="mirror"
+
+DESCRIPTION="Stardict Dictionary for Dictd.org's The Britannica Concise Encyclopedia"
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.dict.org.php"
+
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-dicts/stardict-dictd-cced/Manifest b/app-dicts/stardict-dictd-cced/Manifest
new file mode 100644
index 00000000..06b1879f
--- /dev/null
+++ b/app-dicts/stardict-dictd-cced/Manifest
@@ -0,0 +1 @@
+DIST stardict-cced-2.4.2.tar.bz2 5151533 SHA256 0d67c82164aa44622c8dd652afd4445b4cb5b7ed7c426e8d68cd822a130ba9ef SHA512 7aef11c0ba0eb7e47d1cc44e853f3b60215eb768ea72bf02ab62a100748e0614fe91bde9b11504e664b09b3aac4a0193dabbd76d46f2af501e7da4cec8fe5ff8 WHIRLPOOL 2656c917f48cf13ef953cb2b7d6d2d70cf4fe1fc0c9ab8a309ad30d6b2b298ceed4343df77ea0c24d3a76ea1c9c897117363442be222943eb8fbe0023916ba41
diff --git a/app-dicts/stardict-dictd-cced/metadata.xml b/app-dicts/stardict-dictd-cced/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-dictd-cced/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-dictd-cced/stardict-dictd-cced-2.4.2.ebuild b/app-dicts/stardict-dictd-cced/stardict-dictd-cced-2.4.2.ebuild
new file mode 100644
index 00000000..b3d00897
--- /dev/null
+++ b/app-dicts/stardict-dictd-cced/stardict-dictd-cced-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+DICT_PREFIX=""
+inherit eutils stardict
+RESTRICT="mirror"
+
+DESCRIPTION="Stardict Dictionary for Dictd.org's Collins Cobuild English Dictionary"
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.dict.org.php"
+
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-dicts/stardict-dictd-longman/Manifest b/app-dicts/stardict-dictd-longman/Manifest
new file mode 100644
index 00000000..b558fbf0
--- /dev/null
+++ b/app-dicts/stardict-dictd-longman/Manifest
@@ -0,0 +1 @@
+DIST stardict-longman-2.4.2.tar.bz2 6402702 SHA256 e6ff22d606f54e6838e7edb590e7beaffd10ce059a6e2e1b2df0fc6b8ee212ec SHA512 f11b422518465496f9b2f87870f46fb61e1645ccff4d9fafdd42f3f0957cda1b4142a06b8512f407afb355eb0b29a64195711881aa7eaad12be7d3f004c5aaf0 WHIRLPOOL 3e2625b4f4a06d36471616daf950c723f82d32b1425d0faf747968cdbf81ecc1eca6be838dbd1acc1b519d37f4098164ff97497431d198d2d2f306c98845bad2
diff --git a/app-dicts/stardict-dictd-longman/metadata.xml b/app-dicts/stardict-dictd-longman/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-dictd-longman/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-dictd-longman/stardict-dictd-longman-2.4.2.ebuild b/app-dicts/stardict-dictd-longman/stardict-dictd-longman-2.4.2.ebuild
new file mode 100644
index 00000000..08a3e17f
--- /dev/null
+++ b/app-dicts/stardict-dictd-longman/stardict-dictd-longman-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+DICT_PREFIX=""
+inherit eutils stardict
+RESTRICT="mirror"
+
+DESCRIPTION="Stardict Dictionary for Dictd.org's Longman Dictionary of Contemporary English"
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.dict.org.php"
+
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-dicts/stardict-dictd-merrianwebster/Manifest b/app-dicts/stardict-dictd-merrianwebster/Manifest
new file mode 100644
index 00000000..d0bdbcca
--- /dev/null
+++ b/app-dicts/stardict-dictd-merrianwebster/Manifest
@@ -0,0 +1 @@
+DIST stardict-merrianwebster-2.4.2.tar.bz2 2532552 SHA256 e0424bb6087c608fb0b4d1f9c1f406966cf83cd96f2463b299f24b1410a82512 SHA512 ac2821062fe212b7aa3b974345b0af513a3b39ce448628ff67b2a0ad89ea1af8c8ba48be9aecdde16729dc1630d17787a75c063aa9c198896157409ad16aede6 WHIRLPOOL 3a842ade0d5db919b559e13461145a0a62fb526f7ff9e7ba44b6ad7cdd042b5d1772236c55e098f1e93f4c69a43c4b54d0a37211469e05b85d146179c66ae0ff
diff --git a/app-dicts/stardict-dictd-merrianwebster/metadata.xml b/app-dicts/stardict-dictd-merrianwebster/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-dictd-merrianwebster/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-dictd-merrianwebster/stardict-dictd-merrianwebster-2.4.2.ebuild b/app-dicts/stardict-dictd-merrianwebster/stardict-dictd-merrianwebster-2.4.2.ebuild
new file mode 100644
index 00000000..219903fe
--- /dev/null
+++ b/app-dicts/stardict-dictd-merrianwebster/stardict-dictd-merrianwebster-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+DICT_PREFIX=""
+inherit eutils stardict
+RESTRICT="mirror"
+
+DESCRIPTION="Stardict Dictionary for Dictd.org's Merrian Webster 10th dictionary"
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.dict.org.php"
+
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-dicts/stardict-dictd-oald/Manifest b/app-dicts/stardict-dictd-oald/Manifest
new file mode 100644
index 00000000..085fc625
--- /dev/null
+++ b/app-dicts/stardict-dictd-oald/Manifest
@@ -0,0 +1 @@
+DIST stardict-oald-2.4.2.tar.bz2 4730785 SHA256 c8f279f1013cfe4ed2becbcb541caca6c4fe51482da2c4726aa7aaef93f30e71 SHA512 bd9c72f9ace2e8d7c35ed22a16a80d28aadc4c5210843469a2d1c24f6cf18738e8655d7a26b2185c934b4de1a679e5bb424ac26df2705f8f5f61479e9e351075 WHIRLPOOL a873310fcdb5b06675438f167472e1205f52bc8526715fcea90c168c803f7212147ff08e344cc42aa328ca4e3ac7f4c12ac0077794e6a3c7f2184b57ba8857d2
diff --git a/app-dicts/stardict-dictd-oald/metadata.xml b/app-dicts/stardict-dictd-oald/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-dictd-oald/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-dictd-oald/stardict-dictd-oald-2.4.2.ebuild b/app-dicts/stardict-dictd-oald/stardict-dictd-oald-2.4.2.ebuild
new file mode 100644
index 00000000..cfa4f341
--- /dev/null
+++ b/app-dicts/stardict-dictd-oald/stardict-dictd-oald-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+DICT_PREFIX=""
+inherit eutils stardict
+RESTRICT="mirror"
+
+DESCRIPTION="Stardict Dictionary for Dictd.org's Oxford Advanced Learner's Dictionary"
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.dict.org.php"
+
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-dicts/stardict-dictd-thesaurus-ee/Manifest b/app-dicts/stardict-dictd-thesaurus-ee/Manifest
new file mode 100644
index 00000000..8f54f812
--- /dev/null
+++ b/app-dicts/stardict-dictd-thesaurus-ee/Manifest
@@ -0,0 +1 @@
+DIST stardict-thesaurus-ee-2.4.2.tar.bz2 2234937 SHA256 91f0b221d16a7fb67befddae6487f08d7b76dfe0342a4e6b01677167115ee135 SHA512 96b6416472507e20e7570c36123fd55c3f26fec19c74cb4ce18d0d67ef2c9685807b5f72ede293b8d0ba15c3e98df47c44c22a8865b7b74d2ac83934e1ebf6f2 WHIRLPOOL 8415bd369e29013fc43c7f7c44e35c152cb17ba718c5109a61a42aba8fb9bde89ff6c3e3bf51aa415b33a5770f007801c41f69bb6fc112cdc1195ca64a860c76
diff --git a/app-dicts/stardict-dictd-thesaurus-ee/metadata.xml b/app-dicts/stardict-dictd-thesaurus-ee/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-dictd-thesaurus-ee/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-dictd-thesaurus-ee/stardict-dictd-thesaurus-ee-2.4.2.ebuild b/app-dicts/stardict-dictd-thesaurus-ee/stardict-dictd-thesaurus-ee-2.4.2.ebuild
new file mode 100644
index 00000000..bdf0b458
--- /dev/null
+++ b/app-dicts/stardict-dictd-thesaurus-ee/stardict-dictd-thesaurus-ee-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+DICT_PREFIX=""
+inherit eutils stardict
+RESTRICT="mirror"
+
+DESCRIPTION="Stardict Dictionary for Dictd.org's English Thesaurus"
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.dict.org.php"
+
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-dicts/stardict-freedict-deu-eng/Manifest b/app-dicts/stardict-freedict-deu-eng/Manifest
new file mode 100644
index 00000000..5a2b8c6f
--- /dev/null
+++ b/app-dicts/stardict-freedict-deu-eng/Manifest
@@ -0,0 +1 @@
+DIST stardict-dictd_www.freedict.de_deu-eng-2.4.2.tar.bz2 2078539 SHA256 b0438a564b71a44e65a1f38d9bea68800471fbd1aa6020127229a4abe258601f SHA512 acd24ab6762198d770a396ceabf907cc1ae1dea7580053da053a8bb014e14791ce820f79266dc95e658cabfff23b682f97a5951ed24d825236158e2213c80fee WHIRLPOOL 4f8fc2b9fc4afa7537f2d5192a043bc7d0cca16afad9337a8d02bf6b69ec9aae66a7c89a1091fa5c9288f343ff4d3febe7a707359eb8bfb67d284bdc2926c41b
diff --git a/app-dicts/stardict-freedict-deu-eng/metadata.xml b/app-dicts/stardict-freedict-deu-eng/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-freedict-deu-eng/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-freedict-deu-eng/stardict-freedict-deu-eng-2.4.2.ebuild b/app-dicts/stardict-freedict-deu-eng/stardict-freedict-deu-eng-2.4.2.ebuild
new file mode 100644
index 00000000..339e2a56
--- /dev/null
+++ b/app-dicts/stardict-freedict-deu-eng/stardict-freedict-deu-eng-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+FROM_LANG="German"
+TO_LANG="English"
+DICT_PREFIX="dictd_www.freedict.de_"
+inherit eutils stardict
+RESTRICT="mirror"
+
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.freedict.de.php"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-dicts/stardict-freedict-deu-ita/Manifest b/app-dicts/stardict-freedict-deu-ita/Manifest
new file mode 100644
index 00000000..ca976b4b
--- /dev/null
+++ b/app-dicts/stardict-freedict-deu-ita/Manifest
@@ -0,0 +1 @@
+DIST stardict-dictd_www.freedict.de_deu-ita-2.4.2.tar.bz2 77889 SHA256 5d3b3361b8ed32c1540eca0aad7da8a0b2c96658913cf45b754dcf60e185a733 SHA512 eef8736f2796536bda114ce12874b1f772cac4a942c88debe92a82f9b286e22caae93231f322cd74464f90ecf05eef9fd195390b70e0a6939afad0c0aa5165a8 WHIRLPOOL 4add09ac9cad813c924428d9544396c0401c463c509ff442aa0bcf5dea0add13c6217122b3656c8546c5de3bfa9274b6540860b19e581d45acf9f5acf516d80a
diff --git a/app-dicts/stardict-freedict-deu-ita/metadata.xml b/app-dicts/stardict-freedict-deu-ita/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-freedict-deu-ita/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-freedict-deu-ita/stardict-freedict-deu-ita-2.4.2.ebuild b/app-dicts/stardict-freedict-deu-ita/stardict-freedict-deu-ita-2.4.2.ebuild
new file mode 100644
index 00000000..61c203aa
--- /dev/null
+++ b/app-dicts/stardict-freedict-deu-ita/stardict-freedict-deu-ita-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+FROM_LANG="German"
+TO_LANG="Italian"
+DICT_PREFIX="dictd_www.freedict.de_"
+inherit eutils stardict
+RESTRICT="mirror"
+
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.freedict.de.php"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-dicts/stardict-freedict-ita-deu/Manifest b/app-dicts/stardict-freedict-ita-deu/Manifest
new file mode 100644
index 00000000..c64a3295
--- /dev/null
+++ b/app-dicts/stardict-freedict-ita-deu/Manifest
@@ -0,0 +1 @@
+DIST stardict-dictd_www.freedict.de_ita-deu-2.4.2.tar.bz2 60360 SHA256 1b51359c90c78097eb04a6e144922ee06d3f9616e40bfeab47ccd52f2abed1a2 SHA512 11489d02f00953d94e72fb15c816fac5a527bb13ddacca0c7c81f9033dbf0f0a50db3450683208e5acfc9df86f69013e2c4fbea49b192a068f70098467306c18 WHIRLPOOL 8e27e361b67e8c68a053c558f25d3ddd2de91f25f6cff5fc1a70ff65b93c046c95f450701dd7d14495e277c11ecbcacb37d4d95cf9630748d3b1d13638c046cb
diff --git a/app-dicts/stardict-freedict-ita-deu/metadata.xml b/app-dicts/stardict-freedict-ita-deu/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/app-dicts/stardict-freedict-ita-deu/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-dicts/stardict-freedict-ita-deu/stardict-freedict-ita-deu-2.4.2.ebuild b/app-dicts/stardict-freedict-ita-deu/stardict-freedict-ita-deu-2.4.2.ebuild
new file mode 100644
index 00000000..29c121f2
--- /dev/null
+++ b/app-dicts/stardict-freedict-ita-deu/stardict-freedict-ita-deu-2.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+FROM_LANG="Italian"
+TO_LANG="German"
+DICT_PREFIX="dictd_www.freedict.de_"
+inherit eutils stardict
+RESTRICT="mirror"
+
+HOMEPAGE="http://stardict.sourceforge.net/Dictionaries_dictd-www.freedict.de.php"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
diff --git a/app-emacs/mv_emacs/Manifest b/app-emacs/mv_emacs/Manifest
new file mode 100644
index 00000000..a4d0335e
--- /dev/null
+++ b/app-emacs/mv_emacs/Manifest
@@ -0,0 +1 @@
+DIST mv_emacs-1.2.tar.gz 17842 SHA256 0a87284cf06eda11bfc8b3113651da27f01dfaf8ab7affd3a41ebb27249eff48 SHA512 4fc0f30dd0137b3c642d0e923c5605c93cafc78fa52f6f6b03b26f071b4ca3622e8ab8010d487a77db48f15940c0a7863be70595c8c1091d508bd708b2458b47 WHIRLPOOL bcf8ddd22787ac0ac5876e95861d7ad65bae5d30fe4793fdd45cba4432a58c7edcf86acf5d65b2023616f295b5b349d860ed6eba81c7d02cd42acc6fcb6fe70b
diff --git a/app-emacs/mv_emacs/metadata.xml b/app-emacs/mv_emacs/metadata.xml
new file mode 100644
index 00000000..4528aa92
--- /dev/null
+++ b/app-emacs/mv_emacs/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/mv_emacs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-emacs/mv_emacs/mv_emacs-1.2.ebuild b/app-emacs/mv_emacs/mv_emacs-1.2.ebuild
new file mode 100644
index 00000000..f3fd39a7
--- /dev/null
+++ b/app-emacs/mv_emacs/mv_emacs-1.2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit elisp-common eutils
+
+DESCRIPTION="(X)Emacs extensions: block support, macrorecorder, verify change"
+HOMEPAGE="https://github.com/vaeth/mv_emacs/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/emacs"
+RDEPEND=${DEPEND}
+
+src_unpack() {
+ default
+ cd "${S}"
+ mkdir sitefile
+ cat >"sitefile/50${PN}-gentoo.el" <<EOF
+(add-to-list 'load-path "@SITELISP@")
+(load "mv_emacs-autoloads")
+EOF
+}
+
+src_prepare() {
+ epatch_user
+}
+
+src_compile() {
+ elisp-make-autoload-file || die
+ elisp-compile *.el || die
+}
+
+src_install() {
+ dodoc README
+ elisp-install "${PN}" *.el *.elc || die
+ elisp-site-file-install "sitefile/50${PN}-gentoo.el" || die
+}
+
+pkg_postinst() {
+ elisp-site-regen
+}
+
+pkg_postrm() {
+ elisp-site-regen
+}
diff --git a/app-portage/eix/eix-99999999.ebuild b/app-portage/eix/eix-99999999.ebuild
new file mode 100644
index 00000000..ef6af13f
--- /dev/null
+++ b/app-portage/eix/eix-99999999.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGIT_REPO_URI="git://github.com/vaeth/${PN}.git"
+WANT_LIBTOOL=none
+PLOCALES="de ru"
+inherit autotools bash-completion-r1 eutils git-r3 l10n
+
+DESCRIPTION="Search and query ebuilds, portage incl. local settings, ext. overlays, version changes, and more"
+HOMEPAGE="https://github.com/vaeth/eix/"
+SRC_URI=""
+PROPERTIES="live"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="debug +dep doc nls optimization security strong-optimization strong-security sqlite swap-remote tools"
+
+BOTHDEPEND="sqlite? ( >=dev-db/sqlite-3 )
+ nls? ( virtual/libintl )"
+RDEPEND="${BOTHDEPEND}
+ app-shells/push"
+DEPEND="${BOTHDEPEND}
+ >=sys-devel/gettext-0.19.6"
+
+pkg_setup() {
+ case " ${REPLACING_VERSIONS}" in
+ *\ 0.[0-9].*|*\ 0.1[0-9].*|*\ 0.2[0-4].*|*\ 0.25.0*)
+ local eixcache="${EROOT}/var/cache/${PN}"
+ test -f "${eixcache}" && rm -f -- "${eixcache}";;
+ esac
+}
+
+src_prepare() {
+ sed -i -e "s'/'${EPREFIX}/'" -- "${S}"/tmpfiles.d/eix.conf
+ epatch_user
+ eautopoint
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_with sqlite) $(use_with doc extra-doc) \
+ $(use_enable nls) $(use_enable tools separate-tools) \
+ $(use_enable security) $(use_enable optimization) \
+ $(use_enable strong-security) \
+ $(use_enable strong-optimization) $(use_enable debug debugging) \
+ $(use_enable swap-remote) \
+ $(use_with prefix always-accept-keywords) \
+ $(use_with dep dep-default) \
+ --with-zsh-completion \
+ --with-portage-rootpath="${ROOTPATH}" \
+ --with-eprefix-default="${EPREFIX}" \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+}
+
+src_install() {
+ default
+ dobashcomp bash/eix
+ insinto "/usr/lib/tmpfiles.d"
+ doins tmpfiles.d/eix.conf
+}
+
+pkg_postinst() {
+ test -d "${EROOT}var/cache/${PN}" || {
+ mkdir "${EROOT}var/cache/${PN}"
+ use prefix || chown portage:portage "${EROOT}var/cache/${PN}"
+ }
+ local obs="${EROOT}var/cache/eix.previous"
+ ! test -f "${obs}" || ewarn "Found obsolete ${obs}, please remove it"
+}
+
+pkg_postrm() {
+ [ -n "${REPLACED_BY_VERSION}" ] || rm -rf -- "${EROOT}var/cache/${PN}"
+}
diff --git a/app-portage/eix/metadata.xml b/app-portage/eix/metadata.xml
new file mode 100644
index 00000000..d1e91558
--- /dev/null
+++ b/app-portage/eix/metadata.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ <description>Upstream developer, assign bugs</description>
+ </maintainer>
+ <maintainer>
+ <email>axs@gentoo.org</email>
+ <description>Proxy committer, CC bugs</description>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>https://github.com/vaeth/eix/issues/</bugs-to>
+ <remote-id type="github">vaeth/eix</remote-id>
+ </upstream>
+ <use>
+ <flag name="debug">Build with upstream's CXXFLAGS/LDFLAGS for debugging support; not recommended for normal use.</flag>
+ <flag name="dep">Make DEP=true the default which enables support for {,R,P}DEPEND but requires roughly double disk and memory.</flag>
+ <flag name="doc">Create description of the eix cache file additionally in html format</flag>
+ <flag name="optimization">Accept upstream's choices for CXXFLAGS/LDFLAGS for optimization. Absense of this USE flag does not strip user's *FLAGS</flag>
+ <flag name="security">This adds some checks which can prevent certain exploits if e.g. the eix code has a bug. If you use the hardened toolchain, using this flag does not increase security and can even lead to problems.</flag>
+ <flag name="strong-optimization">Adds several more agressive CXXFLAGS/LDFLAGS for optimization like graphite (if available). May cause trouble with some buggy compiler versions. Absense of this USE flag does not strip user's *FLAGS</flag>
+ <flag name="strong-security">Add many checks to prevent exploits if eix code has a bug. This will slow down eix considerably. Use only if you are paranoid or have reasons to suspect a bug.</flag>
+ <flag name="sqlite">Compile in support for portage's sqlite backend; to actually use it you need additional configuration of portage and eix</flag>
+ <flag name="swap-remote">Swap role of remote addresses in eix-remote, making the data from gpo.zugaina.org the first choice.</flag>
+ <flag name="tools">Create separate binary for script helper tools; useful if they are called extremely often</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-portage/find_cruft/Manifest b/app-portage/find_cruft/Manifest
new file mode 100644
index 00000000..51a7fc3b
--- /dev/null
+++ b/app-portage/find_cruft/Manifest
@@ -0,0 +1 @@
+DIST find_cruft-3.0.7.tar.gz 10212 SHA256 d9acce43a8f0b7869c89c954117ae4590233e8f0aa824144e070ca02cab92efb SHA512 74852373901cb8f2c122b59d98f07f1d56fc3fea84433be65bc1d9cd602ca0444554bd407d10b2e8dc04836c5112866c43806cabe109dd62b577276a4c3f9103 WHIRLPOOL 29275a95130d9aff8a063b7047f556986f72c2004f12c5b013db7d230d66634eabee17b7358b26f1be42325e9ffa4e1bd289344896c60c0afae31b684e96f39c
diff --git a/app-portage/find_cruft/find_cruft-3.0.7.ebuild b/app-portage/find_cruft/find_cruft-3.0.7.ebuild
new file mode 100644
index 00000000..6d7ca106
--- /dev/null
+++ b/app-portage/find_cruft/find_cruft-3.0.7.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="find cruft files not managed by portage"
+HOMEPAGE="https://github.com/vaeth/find_cruft/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=dev-lang/perl-5.12"
+# || ( >=dev-lang/perl-5.9.4 >=virtual/perl-File-Spec-3.0 )
+# || ( >=dev-lang/perl-5.6.1 >=virtual/perl-Getopt-Long-2.24 )
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env perl$"#!'"${EPREFIX}/usr/bin/perl"'"' \
+ -- bin/* || die
+ epatch_user
+}
+
+src_install() {
+ dobin bin/*
+ dodoc README
+ insinto /etc
+ doins -r etc/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/_*
+}
+
+pkg_postinst() {
+ optfeature "faster execution" 'app-portage/eix'
+}
diff --git a/app-portage/find_cruft/metadata.xml b/app-portage/find_cruft/metadata.xml
new file mode 100644
index 00000000..d66620e7
--- /dev/null
+++ b/app-portage/find_cruft/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/find_cruft</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-portage/getdelta/Manifest b/app-portage/getdelta/Manifest
new file mode 100644
index 00000000..df88baf5
--- /dev/null
+++ b/app-portage/getdelta/Manifest
@@ -0,0 +1 @@
+DIST getdelta-0.7.8.tar.bz2 10335 SHA256 72bd5dac59e86a5c78217a15e3198df513152dc784a8685b1a8c2c5efdb34217 SHA512 66374ce1a0ec5492d11478ddcaeb67b497a44357605f3cd1b9176796ca9f69d8c6865f9db188a6d7722c4ab372a5a317dfa6fafe97d9f08f76f332469f1ee2b2 WHIRLPOOL 88e6f1df59e4897c3c667634b8d08c0a225daad56f627793074947b8f2bd3840b9108e50e0506fe49ca2ab43179d43c902f3da49a994b1886b855bb3cc65f395
diff --git a/app-portage/getdelta/files/eapi2.patch b/app-portage/getdelta/files/eapi2.patch
new file mode 100644
index 00000000..5a8ce304
--- /dev/null
+++ b/app-portage/getdelta/files/eapi2.patch
@@ -0,0 +1,315 @@
+--- 1/getdelta.sh
++++ 1/getdelta.sh
+@@ -25,6 +25,17 @@
+ VERSION="0.7"
+
+ # Changelog
++# Changes since 2008 are by Martin V\"ath <martin@mvath.de>
++# version 0.7.12 2010/09/27
++# - Improve treatment of fetch errors
++# version 0.7.11 2010/09/14
++# - Support alternative location of make.global and
++# both locations of make.conf
++# version 0.7.10 2010/08/27
++# - Use alternative to "deltup-queued" file
++# version 0.7.9 2008/10/08
++# - add second parameter for destination name (EAPI=2)
++# - quote more carefully
+ # version 0.7.8 2007/07/13
+ # - added option -O to call of emerge when finding mirrors
+ # - replaced some calls of coreutils with bash-internals
+@@ -292,6 +303,12 @@
+ echo $vser
+ }
+
++GotFile() {
++ [ -n "${1}" ] && test -s "${1}" && {
++ [ "$(head -c5 -- "${1}")" = "sorry" ] || \
++ [ "$(file -bi -- "${1}" | cut -d"/" -f1)" = "application" ]
++ }
++}
+
+ # some colors for colored output
+ output() {
+@@ -326,13 +343,13 @@
+
+ remove() {
+ output "${GREEN}You have chosen to remove ${CYAN}$1\n"
+- pushd ${DISTDIR} >/dev/null 2>&1
++ pushd -- "${DISTDIR}" >/dev/null 2>&1
+ removeme=true
+ for n in $(grep -v "^#" ${DO_NOT_REMOVE})
+ do
+ grep -q $n <<< "$1" && removeme=false && output "${CYAN}${1}${RED} is not deleted, since it matches ${n} in ${DO_NOT_REMOVE}"
+ done
+- $removeme && rm -f $1
++ $removeme && rm -f -- "$1"
+ popd >/dev/null 2>&1
+ }
+
+@@ -349,7 +366,7 @@
+ -e "s/src4/srcDDD/g" \
+ -e "s/src5/srcEEE/g" \
+ -e "s/src6/srcFFF/g" \
+- -e "s/src7/srcGGG/g" <<< $MASK_FILENAME)
++ -e "s/src7/srcGGG/g" <<< "$MASK_FILENAME")
+ fi
+
+ # ignore PR for src-files of firefox
+@@ -375,7 +392,7 @@
+ -e "s/rc//g" \
+ -e "s/[\._-]//g" \
+ -e "s/\+//g" \
+- -e "s/ //g" <<< $MASK_FILENAME)
++ -e "s/ //g" <<< "$MASK_FILENAME")
+ }
+
+ # create or update a config-file
+@@ -384,6 +401,7 @@
+ add_to_configfile LOCAL_MIRROR "" "set this to one or more (space separated) URI ending with '/' if you want to check one or more local mirror(s) first\n# most people just leave it empty."
+ add_to_configfile DELTUP_SERVER "http://linux01.gwdg.de/~nlissne/deltup.php" "deltup-server to use"
+ add_to_configfile FETCH "/usr/bin/wget -t 1 --passive-ftp" "command to use for downloading"
++add_to_configfile FETCHNAME "\$FETCH -O" "command to use for downloading; first parameter is the filename, second the url"
+ add_to_configfile QUEUERETRY 15 "number of seconds to wait before a queued request is retried"
+ add_to_configfile MAXIMUM_ACCEPTABLE_QUEUEPOS "15" "the maximum queuepos you would accept (if higher download full archive instead)"
+ add_to_configfile QUEUETIMEOUT 900 "when a dtu-request is queued - how long should we wait max. before downloading the original archive instead (in seconds)"
+@@ -424,21 +442,26 @@
+ add_to_donotremove "^rp-pppoe"
+
+
+-if [ -z $1 ]
++if [ -z "$1" ]
+ then
+ COLOR=true
+ echo -e "${YELLOW}getdelta.sh version ${VERSION}"
+ echo "This script has to be called like this:"
+ echo -e "${CYAN}$0 <URI>"
+ echo -e "\n${YELLOW}To use it, you should just put the following line into your /etc/make.conf"
+- echo -e "${GREEN}FETCHCOMMAND=\"$0 \\\${URI}\""
++ echo -e "${GREEN}FETCHCOMMAND=\"$0 \\\"\\\${URI}\\\" \\\"\\\${FILE}\\\"\""
+ echo -e "\n${YELLOW}There is a config-file ${CYAN}${GETDELTA_CONFIGFILE}${YELLOW} with some variables to control the behaviour of this script."
+ echo -e "Edit it to your needs.${NORMAL}"
+ exit 1
+ fi
+ # include variables from gentoo make.globals and make.conf
+-source /etc/make.globals
+-source /etc/make.conf
++if test -f /etc/make.globals
++then source /etc/make.globals
++elif test -f /usr/share/portage/config/make.globals
++then source /usr/share/portage/config/make.globals
++fi
++test -f /etc/make.conf && source /etc/make.conf
++test -f /etc/portage/make.conf && source /etc/portage/make.conf
+
+
+ if ${COLOR}
+@@ -464,9 +487,10 @@
+ output "use getdelta.sh for your FETCHCOMMAND, only." &&
+ sleep 5 && exit 1
+
+-pushd $DISTDIR >/dev/null 2>/dev/null
++pushd -- "$DISTDIR" >/dev/null 2>/dev/null
+ ORIG_URI=$1
+-NEW_FILE=$(basename $ORIG_URI)
++NEW_FILE=$2
++[ -z "${NEW_FILE}" ] && NEW_FILE=${ORIG_URI##*/}
+
+ # repoman downloads metadata.dtd with FETCHCOMMAND
+ # this should not be done with getdelta - so just fetch the file and exit
+@@ -475,7 +499,7 @@
+ # dtu files.
+ if [ "${NEW_FILE}" = "metadata.dtd" ] || [ "$GETDELTA" = "0" ]
+ then
+- $FETCH $@
++ $FETCHNAME "$NEW_FILE" "$ORIG_URI"
+ exit $?
+ fi
+
+@@ -516,7 +540,7 @@
+ #
+ output "${GREEN}Searching for a previously downloaded file in ${YELLOW}${DISTDIR}\n"
+
+-first_chars=$(sed 's/[[:digit:]][[:print:]]*$//' <<< $NEW_FILE)
++first_chars=$(sed 's/[[:digit:]][[:print:]]*$//' <<< "$NEW_FILE")
+ length_first_chars=${#first_chars}
+ [ $length_first_chars -lt 3 ] && first_chars="${NEW_FILE:0:2}"
+
+@@ -527,7 +551,7 @@
+ let len1=${#mask}
+ filelist=""
+
+-for name in $( ls ${first_chars}* 2>/dev/null )
++for name in $( ls -- "${first_chars}"* 2>/dev/null )
+ do
+ mask2=$(mask_name "${name}")
+ # add any file, that results in the same mask or differ not more than two letters
+@@ -582,7 +606,7 @@
+
+ # find matching part of filename - first: frontmatch
+ x=0;
+- a=($NEW_FILE $filelist)
++ a=("$NEW_FILE" $filelist)
+ match=""
+ while [ -z "$match" ]
+ do
+@@ -657,7 +681,7 @@
+ FILE_IS_CORRUPT=false
+ if $CHECK_OLD_FILE
+ then
+- file_digest=$(grep -h ${best_candidate} ${FILESDIR}/digest-* | sed -n 1p)
++ file_digest=$(grep -h ${best_candidate} "${FILESDIR}"/digest-* | sed -n 1p)
+ if [ "$file_digest" ]
+ then
+ file_md5=$(cut -d ' ' -f2 <<< "$file_digest")
+@@ -669,7 +693,7 @@
+ FILE_IS_CORRUPT=true
+ fi
+ else
+- if [ $(rev <<< ${best_candidate} | cut -d. -f2 | rev) = "tar" ]
++ if [ $(rev <<< "${best_candidate}" | cut -d. -f2 | rev) = "tar" ]
+ then
+ output "${YELLOW}Could not find a digest-file for ${CYAN}${best_candidate}${YELLOW}. Testing file integrity with tar.\n"
+ if ! tar -tf ${best_candidate} >/dev/null
+@@ -694,21 +718,23 @@
+ sed -e "s/ /\\n/g" | egrep "(http|ftp)://" |
+ grep "${NEW_FILE}" | tail -n 1)
+ query="?have=${best_candidate}&want=${NEW_FILE}&url=${QUERY_URL}&version=${VERSION}&time=$(date +%s)"
+- output "${GREEN}Trying to download ${YELLOW}${best_candidate}-${NEW_FILE}.dtu\n"
++ dtubase="${best_candidate}-${NEW_FILE}"
++ dtufile="${dtubase}.dtu"
++ output "${GREEN}Trying to download ${YELLOW}${dtufile}\n"
+
+ # Remember where we are, and go to a new dir there we can work
+ tmp_dwn_dest="${DISTDIR}/.getdelta-`date +%N`-tmp"
+- mkdir ${tmp_dwn_dest}
++ mkdir -- "${tmp_dwn_dest}"
+ # If user abort Ctrl+C (signal 2), remove tmp-dir; enabable trap again and send it again to stop wget
+- trap "rm -r ${tmp_dwn_dest}; trap 2; kill -2 $$" 2
+- pushd ${tmp_dwn_dest} >/dev/null 2>&1
++ trap 'rm -r -- "${tmp_dwn_dest}"; trap 2; kill -2 '$$ 2
++ pushd -- "${tmp_dwn_dest}" >/dev/null 2>&1
+
+ # thanks to MATSUI Fe2+ Tetsushi for idea and patch
+ FILESIZE=$(stat -c %s "${DISTDIR}/${best_candidate}")
+ let TIMELIMIT=${FILESIZE}/${BANDWIDTH}
+ [[ $TIMELIMIT -lt $QUEUETIMEOUT ]] && QUEUETIMEOUT=$TIMELIMIT
+
+- if $FETCH "${DELTUP_SERVER}${query}"
++ if $FETCHNAME "${dtufile}" "${DELTUP_SERVER}${query}"
+ then
+ # thanks to deelkar for this much more elegant solution to the "broken pipe" problem with "head -n1"
+ GOTFILE=$(ls -c | sed -n 1p)
+@@ -718,14 +744,14 @@
+ # may have sento to us.
+
+ # first: the request have been queued
+- if [ "${GOTFILE}" = "deltup-queued" ]
++ if [ "${GOTFILE}" = "deltup-queued" ] || ! GotFile "${GOTFILE}"
+ then
+ let QTMOUT=$(date +%s)+QUEUETIMEOUT
+- while [ -f deltup-queued ]
++ while [ -f deltup-queued ] || ! GotFile "${GOTFILE}"
+ do
+ output "${GREEN}destination file: ${CYAN}${NEW_FILE}\n"
+- output "${YELLOW}$(cat deltup-queued)"
+- QUEUEPOS=$(grep "has been queued" deltup-queued | cut -d. -f2 | cut -d")" -f1)
++ output "${YELLOW}$(cat -- "${GOTFILE}")"
++ QUEUEPOS=$(grep "has been queued" -- "${GOTFILE}" | cut -d. -f2 | cut -d")" -f1)
+ rm -f deltup-queued
+ TSTAMP=$(date +%s)
+ if ((TSTAMP<QTMOUT)) && ((QUEUEPOS<=MAXIMUM_ACCEPTABLE_QUEUEPOS))
+@@ -741,18 +767,18 @@
+ sleep 1
+ done
+ echo -n -e "${NORMAL}"
+- $FETCH "${DELTUP_SERVER}${query}"
++ $FETCHNAME "${dtufile}" "${DELTUP_SERVER}${query}"
+ GOTFILE=$(ls -c | sed -n 1p)
+ else
+ if ((TSTAMP>=QTMOUT))
+ then
+- GOTFILE="timeout"
++ GOTFILE=''
+ output "\n${RED}TIMEOUT exceeded.\n"
+ break
+ fi
+ if ((QUEUEPOS>MAXIMUM_ACCEPTABLE_QUEUEPOS))
+ then
+- GOTFILE="unacceptable"
++ GOTFILE=''
+ output "\n${RED}You have configured getdelta.sh not to accept this queue-position.\n"
+ output "${YELLOW}We are going to download the ${RED}full archive${YELLOW} instead.\n"
+ break
+@@ -761,21 +787,31 @@
+ done
+ fi
+
+- if [ -f ${best_candidate}-${NEW_FILE}.failed ]
++ [ -n "${GOTFILE}" ] && test -f "${GOTFILE}" || GOTFILE=""
++ newfile_failed="${dtubase}.failed"
++ test -f "${newfile_failed}" || newfile_failed=""
++ if [ -n "${newfile_failed}" ] || {
++ [ -n "${GOTFILE}" ] && [ "$(head -c5 -- "${GOTFILE}")" = "sorry" ]
++ }
+ then
+ output "\n${RED}The server could not build the dtu-file for ${NEW_FILE}\n"
+- output "${YELLOW}reason:\n${RED}$(cat ${best_candidate}-${NEW_FILE}.failed)\n"
+- rm -rf ${best_candidate}-${NEW_FILE}.failed
++ output "${YELLOW}reason:\n${RED}$(
++ [ -n "${newfile_failed}" ] && cat -- "${newfile_failed}"
++ [ -n "${GOTFILE}" ] && cat -- "${GOTFILE}")\n"
++ rm -f -- "${newfile_failed}" "${GOTFILE}"
+ fi
+
+- if [ -f ${best_candidate}-${NEW_FILE}.dtu ]
++ [ -n "${dtufile}" ] && test -f "${dtufile}" || dtufile=""
++ if test -f "${dtufile}"
+ then
+ output "${GREEN}Successfully fetched the dtu-file - let's build ${NEW_FILE}...\n"
+- downloadsize=$(stat -c %s ${best_candidate}-${NEW_FILE}.dtu)
+- if deltup -p -v -D ${DISTDIR} ${best_candidate}-${NEW_FILE}.dtu
++ downloadsize=$(stat -c %s -- "${dtufile}")
++ if deltup -p -v -D "${DISTDIR}" "${dtufile}"
+ then
+- newsize=$(stat -c %s ${NEW_FILE})
++ newsize=$(stat -c %s -- "${NEW_FILE}")
++ : ${newsize:=0}
+ let savedsize=${newsize}-${downloadsize}
++ [ ${newsize} -eq 0 ] && percent=-100 || \
+ let percent=${savedsize}*100/${newsize}
+ unit="bytes"
+ [ $savedsize -gt 1024 ] && let savedsize=$savedsize/1024 && unit="kB"
+@@ -791,8 +827,8 @@
+ esac
+ output "${YELLOW}This dtu-file saved ${UCOLOR}${savedsize} ${unit} (${percent}%)${YELLOW} download size.\n"
+ fi
+- mv -f ${NEW_FILE} ${DISTDIR} &&
+- ${REMOVE_OLD} && remove "${best_candidate}"
++ mv -f -- "${NEW_FILE}" "${DISTDIR}" &&
++ ${REMOVE_OLD} && remove ${best_candidate}
+ fi
+
+ fi # if $FETCH "${DELTUP_SERVER}${query}"
+@@ -812,7 +848,7 @@
+ read
+ fi
+ popd >/dev/null 2>&1
+- rm -rf ${tmp_dwn_dest}
++ rm -rf -- "${tmp_dwn_dest}"
+ #stop respond to trap2
+ trap 2
+ fi # if ! FILE_IS_CORRUPT
+@@ -824,10 +860,10 @@
+
+ # Ok, once we are here, we should have got the delta (and used it)
+ # or we still have to download the full file
+-if ! [ -f ${DISTDIR}/${NEW_FILE} ]
++if ! [ -f "${DISTDIR}/${NEW_FILE}" ]
+ then
+ output "${RED}The dtu could not be fetched,${YELLOW} downloading full file from original URL\n"
+- $FETCH $ORIG_URI
++ $FETCHNAME "$NEW_FILE" "$ORIG_URI"
+ # remember we had a fallback to use correct exitcode for portage
+ FALLBACK=$?
+ fi
diff --git a/app-portage/getdelta/getdelta-0.7.9-r2.ebuild b/app-portage/getdelta/getdelta-0.7.9-r2.ebuild
new file mode 100644
index 00000000..d36a85c5
--- /dev/null
+++ b/app-portage/getdelta/getdelta-0.7.9-r2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils readme.gentoo
+
+DESCRIPTION="dynamic deltup client"
+HOMEPAGE="http://linux01.gwdg.de/~nlissne/"
+SRC_URI="http://linux01.gwdg.de/~nlissne/${PN}-0.7.8.tar.bz2"
+SLOT="0"
+IUSE=""
+LICENSE="GPL-2"
+KEYWORDS="~alpha ~amd64 ~sparc ~x86"
+S="${WORKDIR}"
+
+RDEPEND="app-portage/deltup
+ dev-util/bdelta"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="You need to put
+FETCHCOMMAND=\"/usr/bin/getdelta.sh \\\"\\\${URI}\\\" \\\"\\\${FILE}\\\"\"
+into your /etc/make.conf to make use of getdelta"
+
+src_prepare() {
+ epatch "${FILESDIR}/eapi2.patch"
+ sed -i -e "s:/bin/sh:/bin/bash:" getdelta.sh || die
+ epatch_user
+}
+
+src_install() {
+ dobin "${WORKDIR}"/getdelta.sh
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ local a b
+ # make sure permissions are ok
+ a="${EROOT}"/var/log/getdelta.log
+ b="${EROOT}"/etc/deltup
+ test -f "${a}" || touch -- "${a}"
+ mkdir -p -- "${b}"
+ use prefix || chown -R portage:portage -- "${a}" "${b}"
+ chmod -R ug+rwX -- "${a}" "${b}"
+ readme.gentoo_pkg_postinst
+}
diff --git a/app-portage/getdelta/metadata.xml b/app-portage/getdelta/metadata.xml
new file mode 100644
index 00000000..cd5e732e
--- /dev/null
+++ b/app-portage/getdelta/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ <description>maintainer of the updates in the mv overlay</description>
+ </maintainer>
+ <maintainer>
+ <email>patrick@gentoo.org</email>
+ <name>Patrick Lauer</name>
+ </maintainer>
+ <maintainer>
+ <email>nlissne@linux01.gwdg.de</email>
+ <name>Nicolai Lissner</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-portage/logclean/Manifest b/app-portage/logclean/Manifest
new file mode 100644
index 00000000..4b108640
--- /dev/null
+++ b/app-portage/logclean/Manifest
@@ -0,0 +1 @@
+DIST logclean-9.8.tar.gz 11335 SHA256 2c37a4edceb97a828afbb179bb109ecc905531400bb6a2cd38f9fa109d708628 SHA512 1c9dc6d458be711cb5c37ccfd13c0584b1499365111a4cd0bee171bbe12b9bf7eeab55d8f9a7caf22cdb9d5b2e6a49855ac9097577cca35533bc7ef38f09312a WHIRLPOOL 40d6a5d072720b5335802a67c1b1f441da414ed0e1dc9939604f65110fc8a1680b51348e2b4cb6f70ad11488fa220f12c0e0350a7a331b2475250d43f822385f
diff --git a/app-portage/logclean/logclean-9.8-r1.ebuild b/app-portage/logclean/logclean-9.8-r1.ebuild
new file mode 100644
index 00000000..e04173b4
--- /dev/null
+++ b/app-portage/logclean/logclean-9.8-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="Keep only (compressed) logs of installed packages and cleanup emerge.log"
+HOMEPAGE="https://github.com/vaeth/logclean/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-lang/perl
+ || ( >=dev-lang/perl-5.14 virtual/perl-Term-ANSIColor )
+ || ( >=dev-lang/perl-5.6.1 >=virtual/perl-Getopt-Long-2.24 )"
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env perl$"#!'"${EPREFIX}/usr/bin/perl"'"' \
+ -- "${PN}" || die
+ epatch_user
+}
+
+src_install() {
+ dobin "${PN}"
+ insinto /etc
+ doins "${PN}.conf"
+ insinto /usr/share/zsh/site-functions
+ doins "_${PN}"
+}
+
+pkg_postinst() {
+ optfeature "faster execution" 'app-portage/eix'
+}
diff --git a/app-portage/logclean/metadata.xml b/app-portage/logclean/metadata.xml
new file mode 100644
index 00000000..7d030fd7
--- /dev/null
+++ b/app-portage/logclean/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/logclean</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-portage/portage-bashrc-mv/Manifest b/app-portage/portage-bashrc-mv/Manifest
new file mode 100644
index 00000000..bea7a509
--- /dev/null
+++ b/app-portage/portage-bashrc-mv/Manifest
@@ -0,0 +1 @@
+DIST portage-bashrc-mv-13.6.tar.gz 13566 SHA256 73971b99567b292c9d00612959c73f0241ee42fc2d7689b8f6926aa8d4f0121b SHA512 19fc82395e804c708b08e130a2fe8ee896fa9c6fe44ccdeb6dc15bfcabc311a0aac8c18554d13e14172c54a0805c37d36bdd68490d9a93e11f082b49fab2b192 WHIRLPOOL 2c26b743725e4bcd1fa4ed50e635ee60c3464bc4ed670859d7ecd79730deb5227d16ab47a24105d1f78011e7e700e6a8cb49bdac12afb825e245a61302adcabe
diff --git a/app-portage/portage-bashrc-mv/metadata.xml b/app-portage/portage-bashrc-mv/metadata.xml
new file mode 100644
index 00000000..cb260f08
--- /dev/null
+++ b/app-portage/portage-bashrc-mv/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/portage-bashrc-mv</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-portage/portage-bashrc-mv/portage-bashrc-mv-13.6.ebuild b/app-portage/portage-bashrc-mv/portage-bashrc-mv-13.6.ebuild
new file mode 100644
index 00000000..a112f8df
--- /dev/null
+++ b/app-portage/portage-bashrc-mv/portage-bashrc-mv-13.6.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="Provide support for /etc/portage/bashrc.d and /etc/portage/package.cflags"
+HOMEPAGE="https://github.com/vaeth/portage-bashrc-mv/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="!<dev-util/ccache-3.2"
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ dodoc NEWS README
+ exeinto "/usr/share/doc/${PF}"
+ doexe fix-portage-2.2.15
+ docompress -x "/usr/share/doc/${PF}/fix-portage-2.2.15"
+ insinto /etc/portage
+ doins -r bashrc bashrc.d
+ docompress /etc/portage/bashrc.d/README
+}
+
+pkg_postinst() {
+ case ${REPLACING_VERSIONS} in
+ [0-9].*|1[0-2].*)
+ ewarn "Remember to run /usr/share/doc/${PF}/fix-portage-2.2.15"
+ ewarn "as the first command after upgrading to >=portage-2.2.15"
+ ewarn "See NEWS for details";;
+ esac
+ optfeature "improved mask handling" app-portage/eix
+ optfeature "output of expected emerge time" app-portage/portage-utils
+ optfeature "detailed information output in title bar" app-shells/runtitle
+ ! test -d /var/cache/gpo || \
+ ewarn "Obsolete /var/cache/gpo found. Please remove"
+}
diff --git a/app-portage/trickyfetch/Manifest b/app-portage/trickyfetch/Manifest
new file mode 100644
index 00000000..47df5fc8
--- /dev/null
+++ b/app-portage/trickyfetch/Manifest
@@ -0,0 +1 @@
+DIST trickyfetch-8.7.tar.gz 10933 SHA256 d830b83a10fd70ce0718c384b10cfd07a742abbd3b3ae44afabf8c3c6f6a4753 SHA512 81401826f1fe3523aec247980b6631e07b48edb94d628a9154a16a309f237ed695ff394f735b4f6587d51478197b1e8b120156dc214146f2f9abd41fcd308c03 WHIRLPOOL 8a81d7921e6c55ca8e2f134bdd52cd24958e79020dfae881b11b601bbb1c00b887b6474910b158d728f3902efaa84dc7f128d2dac84fcf9eec5ce0910c1dd519
diff --git a/app-portage/trickyfetch/metadata.xml b/app-portage/trickyfetch/metadata.xml
new file mode 100644
index 00000000..379e730b
--- /dev/null
+++ b/app-portage/trickyfetch/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/trickyfetch</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-portage/trickyfetch/trickyfetch-8.7.ebuild b/app-portage/trickyfetch/trickyfetch-8.7.ebuild
new file mode 100644
index 00000000..1a58aab1
--- /dev/null
+++ b/app-portage/trickyfetch/trickyfetch-8.7.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="Plugin for FETCHCOMMAND to help organize and cleanup your DISTDIR"
+HOMEPAGE="https://github.com/vaeth/trickyfetch/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ if use prefix
+ then sed -i \
+ -e "s'\\(PATH=.\\)/etc'\\1${EPREFIX}/etc'" \
+ -- "${S}/bin/trickyfetch" || die
+ else sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- "${S}"/bin/* || die
+ fi
+ epatch_user
+}
+
+src_install() {
+ dobin bin/*
+ insinto /etc
+ doins etc/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/_*
+ dodoc README
+}
+
+pkg_postinst() {
+ case " ${REPLACING_VERSIONS:-0.}" in
+ ' '[0-7].*)
+ elog "Please adapt /etc/trickyfetch.conf to your needs";;
+ esac
+ optfeature "faster execution" 'app-portage/eix'
+}
diff --git a/app-portage/useflags/Manifest b/app-portage/useflags/Manifest
new file mode 100644
index 00000000..83f6e133
--- /dev/null
+++ b/app-portage/useflags/Manifest
@@ -0,0 +1 @@
+DIST useflags-3.4.tar.gz 5328 SHA256 d12577f0ba6d5e8853c1e4bdb9589f903de09da5bb249b54a4452062ed25f921 SHA512 1a9e392f83eade3d0a2dd86765fe0289a740aa9d5ec633a857c753778bd3223feb8f2ca1dc623b6109bbef71072087f8068565c90224a3d17a84657de85f26e8 WHIRLPOOL 4087460721cb108eb4ea5f364cc7f5697511d5187fe6bb77d3a6a5ac783b92ec09c07d87e12c79948eee1a7d91ae7aebb8ab575ea507bd2f2b43b05367ad60fd
diff --git a/app-portage/useflags/metadata.xml b/app-portage/useflags/metadata.xml
new file mode 100644
index 00000000..4e3965d1
--- /dev/null
+++ b/app-portage/useflags/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/useflags</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-portage/useflags/useflags-3.4.ebuild b/app-portage/useflags/useflags-3.4.ebuild
new file mode 100644
index 00000000..2d4a2bf7
--- /dev/null
+++ b/app-portage/useflags/useflags-3.4.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="Print or save the current USE-flag state and compare with older versions"
+HOMEPAGE="https://github.com/vaeth/useflags/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-lang/perl
+ || ( >=dev-lang/perl-5.6.1 >=virtual/perl-Getopt-Long-2.24 )"
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env perl$"#!'"${EPREFIX}/usr/bin/perl"'"' \
+ -- "${PN}" || die
+ epatch_user
+}
+
+src_install() {
+ dobin "${PN}"
+ insinto /usr/share/zsh/site-functions
+ doins "_${PN}"
+}
+
+pkg_postinst() {
+ optfeature "faster execution" 'app-portage/eix'
+ optfeature "increased security" '>=app-portage/eix-0.27.7'
+}
diff --git a/app-portage/world-mv/Manifest b/app-portage/world-mv/Manifest
new file mode 100644
index 00000000..25e8b273
--- /dev/null
+++ b/app-portage/world-mv/Manifest
@@ -0,0 +1 @@
+DIST world-mv-3.14.tar.gz 3480 SHA256 e81e5ffaf6f4d9403e2b87d4fb55ea298e4b0cda1e05ae3e6d1edc7396d894f1 SHA512 8350c1f2f5213ceac326e41c1652708317e510b4ff007a7a0e35af112307d7978491c3eaf518df6d35e28f699e13a31079a666340e5ef663b20cc53400cbaf98 WHIRLPOOL 2ca466368424fc72c7657146de8bb9137754a329a29648297e3fa2b2e6773cbd1a7618196b564c095cbb4930caa8b38e27c2b6b60b1ee60cd7f8d27a312bb8cc
diff --git a/app-portage/world-mv/metadata.xml b/app-portage/world-mv/metadata.xml
new file mode 100644
index 00000000..8ba273b2
--- /dev/null
+++ b/app-portage/world-mv/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/world</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-portage/world-mv/world-mv-3.14.ebuild b/app-portage/world-mv/world-mv-3.14.ebuild
new file mode 100644
index 00000000..d1eff415
--- /dev/null
+++ b/app-portage/world-mv/world-mv-3.14.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+mPN="${PN%-*}"
+DESCRIPTION="Organize your world file and find installed packages or differences to @world"
+HOMEPAGE="https://github.com/vaeth/world/"
+SRC_URI="https://github.com/vaeth/${mPN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${mPN}-${PV}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+S="${WORKDIR}/${mPN}-${PV}"
+
+src_prepare() {
+ if use prefix
+ then sed -i \
+ -e "s'\${EPREFIX}'\\'${EPREFIX}\\''" \
+ -- "${mPN}" || die
+ else sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- "${mPN}" || die
+ fi
+ epatch_user
+}
+
+src_install() {
+ dobin "${mPN}"
+ insinto /usr/share/zsh/site-functions
+ doins _"${mPN}"
+}
diff --git a/app-shells/auto-fu-zsh/Manifest b/app-shells/auto-fu-zsh/Manifest
new file mode 100644
index 00000000..e0c1e71b
--- /dev/null
+++ b/app-shells/auto-fu-zsh/Manifest
@@ -0,0 +1 @@
+DIST auto-fu-zsh-0.0.1.12.tar.gz 9409 SHA256 cf692f8a81588289e44396f06e30e36fc6fa6bdcb2c87e4d462a15bad61db1c1 SHA512 7e5dbbb7329bfb220fe467de0eebc7d2aa2469ddea84d516deaa00d193729362f02355325765b29f16df66fbf458df69f984b70fad801b97af65a498080272ba WHIRLPOOL 10960ac344555312310170e6384e539767ce2c86a2948bf165b23b00bc282cea0f84d7a876e774df73e54a78bdc0606d4c9fc5b0cb9b41df99e2dc55f1a59bdd
diff --git a/app-shells/auto-fu-zsh/auto-fu-zsh-0.0.1.12-r4.ebuild b/app-shells/auto-fu-zsh/auto-fu-zsh-0.0.1.12-r4.ebuild
new file mode 100644
index 00000000..feb8d9bb
--- /dev/null
+++ b/app-shells/auto-fu-zsh/auto-fu-zsh-0.0.1.12-r4.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+pPN=${PN%-zsh}
+mPN="${pPN}.zsh"
+case ${PV} in
+99999999*)
+ LIVE=:
+ EGIT_REPO_URI="git://github.com/hchbaw/${mPN}.git"
+ EGIT_BRANCH="pu"
+ inherit git-r3
+ PROPERTIES="live"
+ SRC_URI=""
+ KEYWORDS="";;
+*)
+ LIVE=false
+ RESTRICT="mirror"
+ SRC_URI="https://github.com/hchbaw/${mPN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${mPN}-${PV}"
+ KEYWORDS="~amd64 ~x86";;
+esac
+
+DESCRIPTION="zsh automatic complete-word and list-choices: incremental completion"
+HOMEPAGE="https://github.com/hchbaw/auto-fu.zsh/"
+
+LICENSE="HPND"
+SLOT="0"
+IUSE="+compile"
+
+DEPEND="compile? ( app-shells/zsh )"
+
+DESTPATH="/usr/share/zsh/site-contrib/${mPN}"
+
+generate_example() {
+ echo "# Put something like the following into your ~/.zshrc
+
+# First, we set sane options for the standard completion system:
+
+autoload -Uz compinit is-at-least
+compinit -D -u
+zstyle ':completion:*' completer _complete
+zstyle ':completion:*' list-colors \${(s.:.)LS_COLORS}
+zstyle ':completion:*' menu select=1 # interactive
+zstyle ':completion:*' accept-exact-dirs true
+zstyle ':completion:*' path-completion false
+if is-at-least 4.3.10
+then zstyle ':completion:*' format \"%B%F{yellow}%K{blue}%d%k%f%b\"
+else zstyle ':completion:*' format \"%B%d%b\"
+fi
+
+# Now we source ${PN}"
+ if use compile
+ then echo ". ${DESTPATH}/${pPN}
+auto-fu-install"
+ else echo ". ${DESTPATH}/${pPN}.zsh"
+ fi
+ echo "
+# Finally, we configure ${PN}
+
+zstyle ':auto-fu:highlight' input
+zstyle ':auto-fu:highlight' completion bold,fg=blue
+zstyle ':auto-fu:highlight' completion/one fg=blue
+zstyle ':auto-fu:var' postdisplay # \$'\\n-azfu-'
+#zstyle ':auto-fu:var' enable all
+#zstyle ':auto-fu:var' track-keymap-skip opp
+#zstyle ':auto-fu:var' disable magic-space
+zle-line-init() auto-fu-init
+zle -N zle-line-init
+zle -N zle-keymap-select auto-fu-zle-keymap-select
+
+# Starting a line with a space or tab or quoting the first word
+# or escaping a word should deactivate auto-fu for that line/word.
+# This is useful e.g. if auto-fu is too slow for you in some cases.
+zstyle ':auto-fu:var' autoable-function/skiplines '[[:blank:]\\\\\"'\'']*'
+zstyle ':auto-fu:var' autoable-function/skipwords '[\\\\]*'
+
+# Let Ctrl-d successively remove tail of line, whole line, and exit
+kill-line-maybe() {
+ if ((\$#BUFFER > CURSOR))
+ then zle kill-line
+ else zle kill-whole-line
+ fi
+}
+zle -N kill-line-maybe
+bindkey '\C-d' kill-line-maybe
+
+# Keep Ctrl-d behavior also when auto-fu is active
+afu+orf-ignoreeof-deletechar-list() {
+ afu-eof-maybe afu-ignore-eof zle kill-line-maybe
+}
+afu+orf-exit-deletechar-list() {
+ afu-eof-maybe exit zle kill-line-maybe
+}"
+}
+
+src_prepare() {
+ (
+ umask 022
+ generate_example >"${S}"/zshrc-example
+ )
+ if ! ${LIVE}
+ then
+ # Make Ctrl-D return correctly.
+ epatch "${FILESDIR}"/exit.patch
+ # Reset color with "return":
+ epatch "${FILESDIR}"/reset-color.patch
+ # Make it work with older zsh versions:
+ epatch "${FILESDIR}"/zsh-compatibility.patch
+ fi
+ epatch_user
+}
+
+src_compile() {
+ ! use compile || mPN="${mPN}" \
+ zsh -c 'setopt extendedglob no_shwordsplit
+source ${mPN}
+auto-fu-zcompile ${PWD}/${mPN} ${PWD}' || die
+}
+
+src_install() {
+ insinto "${DESTPATH}"
+ doins "${mPN}"
+ ! use compile || doins "${pPN}" "${pPN}.zwc"
+ dodoc zshrc-example README*
+}
diff --git a/app-shells/auto-fu-zsh/auto-fu-zsh-99999999.ebuild b/app-shells/auto-fu-zsh/auto-fu-zsh-99999999.ebuild
new file mode 100644
index 00000000..feb8d9bb
--- /dev/null
+++ b/app-shells/auto-fu-zsh/auto-fu-zsh-99999999.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+pPN=${PN%-zsh}
+mPN="${pPN}.zsh"
+case ${PV} in
+99999999*)
+ LIVE=:
+ EGIT_REPO_URI="git://github.com/hchbaw/${mPN}.git"
+ EGIT_BRANCH="pu"
+ inherit git-r3
+ PROPERTIES="live"
+ SRC_URI=""
+ KEYWORDS="";;
+*)
+ LIVE=false
+ RESTRICT="mirror"
+ SRC_URI="https://github.com/hchbaw/${mPN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${mPN}-${PV}"
+ KEYWORDS="~amd64 ~x86";;
+esac
+
+DESCRIPTION="zsh automatic complete-word and list-choices: incremental completion"
+HOMEPAGE="https://github.com/hchbaw/auto-fu.zsh/"
+
+LICENSE="HPND"
+SLOT="0"
+IUSE="+compile"
+
+DEPEND="compile? ( app-shells/zsh )"
+
+DESTPATH="/usr/share/zsh/site-contrib/${mPN}"
+
+generate_example() {
+ echo "# Put something like the following into your ~/.zshrc
+
+# First, we set sane options for the standard completion system:
+
+autoload -Uz compinit is-at-least
+compinit -D -u
+zstyle ':completion:*' completer _complete
+zstyle ':completion:*' list-colors \${(s.:.)LS_COLORS}
+zstyle ':completion:*' menu select=1 # interactive
+zstyle ':completion:*' accept-exact-dirs true
+zstyle ':completion:*' path-completion false
+if is-at-least 4.3.10
+then zstyle ':completion:*' format \"%B%F{yellow}%K{blue}%d%k%f%b\"
+else zstyle ':completion:*' format \"%B%d%b\"
+fi
+
+# Now we source ${PN}"
+ if use compile
+ then echo ". ${DESTPATH}/${pPN}
+auto-fu-install"
+ else echo ". ${DESTPATH}/${pPN}.zsh"
+ fi
+ echo "
+# Finally, we configure ${PN}
+
+zstyle ':auto-fu:highlight' input
+zstyle ':auto-fu:highlight' completion bold,fg=blue
+zstyle ':auto-fu:highlight' completion/one fg=blue
+zstyle ':auto-fu:var' postdisplay # \$'\\n-azfu-'
+#zstyle ':auto-fu:var' enable all
+#zstyle ':auto-fu:var' track-keymap-skip opp
+#zstyle ':auto-fu:var' disable magic-space
+zle-line-init() auto-fu-init
+zle -N zle-line-init
+zle -N zle-keymap-select auto-fu-zle-keymap-select
+
+# Starting a line with a space or tab or quoting the first word
+# or escaping a word should deactivate auto-fu for that line/word.
+# This is useful e.g. if auto-fu is too slow for you in some cases.
+zstyle ':auto-fu:var' autoable-function/skiplines '[[:blank:]\\\\\"'\'']*'
+zstyle ':auto-fu:var' autoable-function/skipwords '[\\\\]*'
+
+# Let Ctrl-d successively remove tail of line, whole line, and exit
+kill-line-maybe() {
+ if ((\$#BUFFER > CURSOR))
+ then zle kill-line
+ else zle kill-whole-line
+ fi
+}
+zle -N kill-line-maybe
+bindkey '\C-d' kill-line-maybe
+
+# Keep Ctrl-d behavior also when auto-fu is active
+afu+orf-ignoreeof-deletechar-list() {
+ afu-eof-maybe afu-ignore-eof zle kill-line-maybe
+}
+afu+orf-exit-deletechar-list() {
+ afu-eof-maybe exit zle kill-line-maybe
+}"
+}
+
+src_prepare() {
+ (
+ umask 022
+ generate_example >"${S}"/zshrc-example
+ )
+ if ! ${LIVE}
+ then
+ # Make Ctrl-D return correctly.
+ epatch "${FILESDIR}"/exit.patch
+ # Reset color with "return":
+ epatch "${FILESDIR}"/reset-color.patch
+ # Make it work with older zsh versions:
+ epatch "${FILESDIR}"/zsh-compatibility.patch
+ fi
+ epatch_user
+}
+
+src_compile() {
+ ! use compile || mPN="${mPN}" \
+ zsh -c 'setopt extendedglob no_shwordsplit
+source ${mPN}
+auto-fu-zcompile ${PWD}/${mPN} ${PWD}' || die
+}
+
+src_install() {
+ insinto "${DESTPATH}"
+ doins "${mPN}"
+ ! use compile || doins "${pPN}" "${pPN}.zwc"
+ dodoc zshrc-example README*
+}
diff --git a/app-shells/auto-fu-zsh/files/exit.patch b/app-shells/auto-fu-zsh/files/exit.patch
new file mode 100644
index 00000000..a916f37f
--- /dev/null
+++ b/app-shells/auto-fu-zsh/files/exit.patch
@@ -0,0 +1,11 @@
+--- 1/auto-fu.zsh
++++ 1/auto-fu.zsh
+@@ -287,7 +287,7 @@
+
+ afu-eof-maybe () {
+ local eof="$1"; shift
+- [[ "$BUFFER" != '' ]] || { $eof; return }
++ [[ -z $BUFFER ]] && { $eof; return }
+ "$@"
+ }
+
diff --git a/app-shells/auto-fu-zsh/files/reset-color.patch b/app-shells/auto-fu-zsh/files/reset-color.patch
new file mode 100644
index 00000000..12b5265b
--- /dev/null
+++ b/app-shells/auto-fu-zsh/files/reset-color.patch
@@ -0,0 +1,11 @@
+--- 1/auto-fu.zsh
++++ 1/auto-fu.zsh
+@@ -370,7 +370,7 @@
+ [[ -z ${hi} ]] || region_highlight=("0 ${#BUFFER} ${hi}")
+ }
+ zstyle -T ':auto-fu:var' postdisplay/clearp && POSTDISPLAY=''
+- return 0
++ echo -en '\e[0m'
+ }
+ zle -N $afufun
+ EOT
diff --git a/app-shells/auto-fu-zsh/files/zsh-compatibility.patch b/app-shells/auto-fu-zsh/files/zsh-compatibility.patch
new file mode 100644
index 00000000..1c2d546c
--- /dev/null
+++ b/app-shells/auto-fu-zsh/files/zsh-compatibility.patch
@@ -0,0 +1,15 @@
+--- 1/auto-fu.zsh
++++ 1/auto-fu.zsh
+@@ -305,7 +305,11 @@
+ afu+vi-ins-mode () { zle -K afu ; }; zle -N afu+vi-ins-mode
+ afu+vi-cmd-mode () { zle -K afu-vicmd; }; zle -N afu+vi-cmd-mode
+
+-auto-fu-zle-keymap-select () { afu-track-keymap "$@" afu-adjust-main-keymap }
++# Some zsh versions omit the first argument:
++auto-fu-zle-keymap-select() {
++[[ $# -ge 2 ]] || set -- zle-keymap-select "${@}"
++afu-track-keymap "${@}" afu-adjust-main-keymap
++}
+
+ afu-adjust-main-keymap () { [[ "$KEYMAP" == 'main' ]] && { zle -K "$1" } }
+
diff --git a/app-shells/auto-fu-zsh/metadata.xml b/app-shells/auto-fu-zsh/metadata.xml
new file mode 100644
index 00000000..1576938b
--- /dev/null
+++ b/app-shells/auto-fu-zsh/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>takebi@laafc.net</email>
+ <name>Takeshi Banse</name>
+ </maintainer>
+ <remote-id type="github">hchbaw/auto-fu.zsh</remote-id>
+ </upstream>
+ <use>
+ <flag name="compile">Byte-compile to speed up. Do not use this if you are cross-compiling</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-shells/command-not-found/Manifest b/app-shells/command-not-found/Manifest
new file mode 100644
index 00000000..73ec8857
--- /dev/null
+++ b/app-shells/command-not-found/Manifest
@@ -0,0 +1 @@
+DIST command-not-found-0.4.5.tar.gz 28761 SHA256 891c5a7f2e55e420dd92ce4358d7c2f6028144c92bd522163848345c4c32b914 SHA512 3512ef8618a23416dd0da37ea2ccd40b78e44751b16703b745360345430ce697713a7b781c065536d7fd8b54ca0f4713ce153b2f32f5266b6db222ac2aa23c0b WHIRLPOOL 95e730db83571e6cab799a8c8865117cae74573cb1f2b769fb72e329793643058f6e49c406dd26adc18f63d38b66151a48c06e565382d2c78f864bdb22268fbc
diff --git a/app-shells/command-not-found/command-not-found-0.4.5.ebuild b/app-shells/command-not-found/command-not-found-0.4.5.ebuild
new file mode 100644
index 00000000..77f3273f
--- /dev/null
+++ b/app-shells/command-not-found/command-not-found-0.4.5.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit cmake-utils eutils flag-o-matic multilib
+
+DESCRIPTION="If a command is not found (bash/zsh), search ARCH database for packages with similar commands"
+HOMEPAGE="https://github.com/metti/command-not-found/"
+SRC_URI="https://github.com/metti/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+COMMON="sys-libs/tdb"
+DEPEND="${COMMON}"
+RDEPEND="${COMMON}"
+
+S="${WORKDIR}/${P}/src"
+
+src_prepare() {
+ PREFIX=${EPREFIX}
+ filter-flags -fwhole-program
+ sed -i -e 1d -e '2i#! /bin/sh' cnf-cron.in || die
+ sed -i \
+ -e "s!usr/lib!usr/$(get_libdir)!g" \
+ -e "/^INSTALL.*cnf\.sh/,/^INSTALL/{/EXECUTE/d}" \
+ CMakeLists.txt || die
+ sed -i -e "s/function[[:space:]]*\([^[:space:](]*\)[[:space:]]*(/\1(/" \
+ cnf.sh || die
+ epatch_user
+}
+
+src_install() {
+ dodir /var/lib/cnf
+ cmake-utils_src_install
+}
+
+pkg_postrm() {
+ local a
+ if [ -z "${REPLACED_BY_VERSION}" ] && a="${EPREFIX}/var/lib/cnf" && \
+ test -d "${a}"
+ then ewarn "removing now unneeded ${a}"
+ rm -rf -- "${a}"
+ fi
+}
diff --git a/app-shells/command-not-found/metadata.xml b/app-shells/command-not-found/metadata.xml
new file mode 100644
index 00000000..cc0f89f0
--- /dev/null
+++ b/app-shells/command-not-found/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>matthias@maennich.net</email>
+ <name>Matthias Maennich</name>
+ </maintainer>
+ <bugs-to>mailto:matthias@maennich.net</bugs-to>
+ <remote-id type="github">metti/command-not-found</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/oh-my-zsh/metadata.xml b/app-shells/oh-my-zsh/metadata.xml
new file mode 100644
index 00000000..ef32a6e3
--- /dev/null
+++ b/app-shells/oh-my-zsh/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email></email>
+ <name>Robby Russell</name>
+ </maintainer>
+ <bugs-to>https://github.com/robbyrussell/oh-my-zsh/issues</bugs-to>
+ <remote-id type="github">robbyrussell/oh-my-zsh</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/oh-my-zsh/oh-my-zsh-99999999.ebuild b/app-shells/oh-my-zsh/oh-my-zsh-99999999.ebuild
new file mode 100644
index 00000000..16b8d791
--- /dev/null
+++ b/app-shells/oh-my-zsh/oh-my-zsh-99999999.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGIT_REPO_URI="git://github.com/robbyrussell/${PN}.git"
+inherit eutils git-r3 readme.gentoo
+
+DESCRIPTION="A ready-to-use zsh configuration with plugins"
+HOMEPAGE="https://github.com/robbyrussell/oh-my-zsh"
+SRC_URI=""
+
+LICENSE="ZSH"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+PROPERTIES="live"
+
+RDEPEND="app-shells/zsh"
+
+ZSH_DEST="/usr/share/zsh/site-contrib/${PN}"
+ZSH_EDEST="${EPREFIX}${ZSH_DEST}"
+ZSH_TEMPLATE="templates/zshrc.zsh-template"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="In order to use ${CATEGORY}/${PN} add to your ~/.zshrc
+source '${ZSH_DEST}/${ZSH_TEMPLATE}'
+or copy a modification of that file to your ~/.zshrc
+If you just want to try, enter the above command in your zsh."
+
+src_prepare() {
+ local i
+ for i in "${S}"/tools/*install* "${S}"/tools/*upgrade*
+ do test -f "${i}" && : >"${i}"
+ done
+ sed -i -e 's!^ZSH=.*$!ZSH='"${ZSH_EDEST}"'!' \
+ -e 's!~/.oh-my-zsh!'"${ZSH_EDEST}"'!' "${S}/${ZSH_TEMPLATE}"
+ sed -i -e 's!~/.oh-my-zsh!'"${ZSH_EDEST}"'!' \
+ "${S}/plugins/dirpersist/dirpersist.plugin.zsh"
+ sed -i -e '/zstyle.*cache/d' "${S}/lib/completion.zsh"
+ epatch_user
+}
+
+src_install() {
+ insinto "${ZSH_DEST}"
+ doins -r *
+ readme.gentoo_create_doc
+}
diff --git a/app-shells/runtitle/Manifest b/app-shells/runtitle/Manifest
new file mode 100644
index 00000000..67133def
--- /dev/null
+++ b/app-shells/runtitle/Manifest
@@ -0,0 +1 @@
+DIST runtitle-2.7.tar.gz 3372 SHA256 6ea63935ad18ad3544e42db4ca93a218e1c9b7e3b70033af07cdc3c74e278022 SHA512 c31910a1af307fd0dcb12a4faf19de6613b70b13ed118e0e97f947540ee6128955de9c245de29b87ce75b611f08800df9bfafd70f53ae4b54772485607b87e46 WHIRLPOOL 75859849587241b34b4a8e1dc3cbbf8ce2fe54a37cb2473299d4b24a8e616ea8ccc71c1656e1b37a171582bdb4a76d8d53d858d950cfe24170d2af2c9d7a1b4a
diff --git a/app-shells/runtitle/metadata.xml b/app-shells/runtitle/metadata.xml
new file mode 100644
index 00000000..3b185b53
--- /dev/null
+++ b/app-shells/runtitle/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/runtitle</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/runtitle/runtitle-2.7.ebuild b/app-shells/runtitle/runtitle-2.7.ebuild
new file mode 100644
index 00000000..71ebe8a4
--- /dev/null
+++ b/app-shells/runtitle/runtitle-2.7.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="Scripts to run commands and set the hard status line (windows title)"
+HOMEPAGE="https://github.com/vaeth/runtitle/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- bin/* || die
+ epatch_user
+}
+
+src_install() {
+ dobin bin/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+ dodoc README
+}
diff --git a/app-shells/set_prompt/Manifest b/app-shells/set_prompt/Manifest
new file mode 100644
index 00000000..12db831c
--- /dev/null
+++ b/app-shells/set_prompt/Manifest
@@ -0,0 +1 @@
+DIST set_prompt-1.22.tar.gz 7981 SHA256 7dd9023da52099d60da7c4e0faca99aa421355c605c713371f2de9fad1d54596 SHA512 48b99c3e611297127059effdc1dadd9b1c50f8d7047922a75368780ea632c4e884cf537c5fa97f668cb7151764b9d42365bbf16c5c87ce612ebcc3881d7ccbb7 WHIRLPOOL 3cbe1b2f9dd0c277c0351165aa1a2d464337f31483dbd0d0629af4fc25490389bb7b1da111779d3bd35ae9de408ab5168a33e345c2e42bec4a8326253c2cb17f
diff --git a/app-shells/set_prompt/metadata.xml b/app-shells/set_prompt/metadata.xml
new file mode 100644
index 00000000..a7fc3713
--- /dev/null
+++ b/app-shells/set_prompt/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/set_prompt</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/set_prompt/set_prompt-1.22.ebuild b/app-shells/set_prompt/set_prompt-1.22.ebuild
new file mode 100644
index 00000000..94a9288d
--- /dev/null
+++ b/app-shells/set_prompt/set_prompt-1.22.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="An intelligent prompt for zsh or bash with status line (window title) support"
+HOMEPAGE="https://github.com/vaeth/set_prompt/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}"'/bin/sh"' \
+ -e '1s"^#!/usr/bin/env zsh$"#!'"${EPREFIX}"'/bin/zsh"' \
+ -- * || die
+ epatch_user
+}
+
+src_install() {
+ insinto /etc
+ doins set_prompt.config
+ insinto /usr/bin
+ doins set_prompt.sh git_prompt.zsh
+ dobin set_prompt git_update
+ dodoc README
+}
diff --git a/app-shells/termcolors-mv/Manifest b/app-shells/termcolors-mv/Manifest
new file mode 100644
index 00000000..85b3f608
--- /dev/null
+++ b/app-shells/termcolors-mv/Manifest
@@ -0,0 +1 @@
+DIST termcolors-mv-3.11.tar.gz 7821 SHA256 d2938b2e6e9080782c71e355090cc1f14ada6fa43b8c5dd866422545603f4489 SHA512 c8784352f5d6652fe358ee65d5481cc146b8ee57a83b20f7af5a1a3864b17230244e03e8e6a60e9e65ac3323db3ad2a82b3621416dddf342399a73b848965fbe WHIRLPOOL a646b0b0c8961f826d3c578c24fc4528186da2240d112753906584aace574c5e682ed3520ce5c6c84014f9a0c6b4323ef0dcd9eca7998f6369c477b8e2c62d01
diff --git a/app-shells/termcolors-mv/metadata.xml b/app-shells/termcolors-mv/metadata.xml
new file mode 100644
index 00000000..afa70177
--- /dev/null
+++ b/app-shells/termcolors-mv/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/termcolors-mv</remote-id>
+ </upstream>
+ <use>
+ <flag name="create">Install DIR_COLORS-create perl script</flag>
+ <flag name="perl">Install 256colors perl script</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-shells/termcolors-mv/termcolors-mv-3.11.ebuild b/app-shells/termcolors-mv/termcolors-mv-3.11.ebuild
new file mode 100644
index 00000000..dddc447e
--- /dev/null
+++ b/app-shells/termcolors-mv/termcolors-mv-3.11.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils readme.gentoo
+
+DESCRIPTION="256colors sample script and dircolors configuration for standard or 256 colors"
+HOMEPAGE="https://github.com/vaeth/termcolors-mv/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="create +perl"
+DEPEND="dev-lang/perl"
+RDEPEND="create? ( dev-lang/perl )
+perl? ( dev-lang/perl )"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="To use the colorschemes of ${PN} call
+ eval \"\`dircolors-mv\`\"
+e.g. in your bashrc; make sure that SOLARIZED (if desired)
+and DEFAULTS is set appropriately, see the documentation.
+For zsh, this happens if you use zshrc-mv"
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -e '1s"^#!/usr/bin/env perl$"#!'"${EPREFIX}/usr/bin/perl"'"' \
+ -- bin/* || die
+ epatch_user
+}
+
+src_compile() {
+ perl bin/DIR_COLORS-create
+}
+
+src_install() {
+ dodoc README
+ dobin bin/dircolors-mv
+ use create && dobin bin/DIR_COLORS-create
+ use perl && dobin bin/256colors
+ insinto /etc/dir_colors
+ doins DIR_COLORS*
+ readme.gentoo_create_doc
+}
diff --git a/app-shells/zsh-completions/Manifest b/app-shells/zsh-completions/Manifest
new file mode 100644
index 00000000..eec029ad
--- /dev/null
+++ b/app-shells/zsh-completions/Manifest
@@ -0,0 +1 @@
+DIST zsh-completions-0.12.0.tar.gz 193410 SHA256 770d92749b11b22192595b207208508f8bfa319d5d03210a71bc44c8b9cfa0d5 SHA512 3c6b19f10d9598f40cf37ca5c5828e5652b0cad144d48ca681f5a16c1921c308f8cd3d9b8a2dd1c50ddbf167d4bb2e2e5299d1e30591971f4c7d9b28c2250feb WHIRLPOOL 7c5a1cb45d2e045fb0f8eb64deb8d87cab506f11b94996b9ff6cb169fd20672040bdc624de78a58ab5908d2222130de93a179a8e00d5aa75365af0ab0566852a
diff --git a/app-shells/zsh-completions/metadata.xml b/app-shells/zsh-completions/metadata.xml
new file mode 100644
index 00000000..cb5fb51b
--- /dev/null
+++ b/app-shells/zsh-completions/metadata.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email></email>
+ <name>zsh-users</name>
+ </maintainer>
+ <remote-id type="github">zsh-users/zsh-completions</remote-id>
+ </upstream>
+ <use>
+ <flag name="completion_Android">Install zsh completions for Android-related programs</flag>
+ <flag name="completion_Google">Install zsh completions for googlecl</flag>
+ <flag name="completion_Unix">Install zsh completion for unix system tools</flag>
+ <flag name="completion_database">Install zsh completions for database programs</flag>
+ <flag name="completion_dev">Install zsh completions for development (build systems, editors, web)</flag>
+ <flag name="completion_disk">Install zsh completions for disk tools</flag>
+ <flag name="completion_distribute">Install zsh completions for tools for distributing tasks to machines</flag>
+ <flag name="completion_filesystem">Install zsh completions for filesystem tools</flag>
+ <flag name="completion_git">Install zsh completions for special git tools</flag>
+ <flag name="completion_hardware">Install zsh completions for low-level hardware tools</flag>
+ <flag name="completion_haskell">Install zsh completions for Haskell tools</flag>
+ <flag name="completion_managers">Install zsh completions for package managers (not portage)</flag>
+ <flag name="completion_multimedia">Install zsh completions for multimedia programs</flag>
+ <flag name="completion_net">Install zsh completions for net-related tools</flag>
+ <flag name="completion_nfs">Install zsh completions for network filesystem tools</flag>
+ <flag name="completion_perl">Install zsh completion for perl-related tools</flag>
+ <flag name="completion_pip">Install zsh completion for dev-python/pip (instead of completion of dev-python/pip project)</flag>
+ <flag name="completion_python">Install zsh completion for python development tools</flag>
+ <flag name="completion_ruby">Install zsh completion for ruby tools and tools in ruby</flag>
+ <flag name="completion_search">Install zsh completion for search tools like sys-apps/ack and sys-apps/the_silver_searcher</flag>
+ <flag name="completion_session">Install zsh completion for session-handling frontends</flag>
+ <flag name="completion_subtitles">Install zsh completion for subtitle tools</flag>
+ <flag name="completion_virtualization">Install zsh completion for virtualization programs</flag>
+ <flag name="completion_web">Install zsh completion for web-related tools incl. java/javascript/scala</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-shells/zsh-completions/zsh-completions-0.12.0.ebuild b/app-shells/zsh-completions/zsh-completions-0.12.0.ebuild
new file mode 100644
index 00000000..51991693
--- /dev/null
+++ b/app-shells/zsh-completions/zsh-completions-0.12.0.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+case ${PV} in
+99999999*)
+ LIVE=:
+ EGIT_REPO_URI="git://github.com/zsh-users/${PN}.git"
+ inherit git-r3
+ PROPERTIES="live"
+ KEYWORDS=""
+ SRC_URI="";;
+*)
+ LIVE=false
+ RESTRICT="mirror"
+ TARBALL_VERSION='0.12.0'
+ SRC_URI="https://github.com/zsh-users/${PN}/archive/${TARBALL_VERSION}.tar.gz -> ${PN}-${PV}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ S="${WORKDIR}/${PN}-${TARBALL_VERSION}"
+esac
+
+DESCRIPTION="Additional completion definitions for Zsh"
+HOMEPAGE="https://gentoo.org/zsh-users/zsh-completions/"
+LICENSE="ZSH"
+SLOT="0"
+if ${LIVE}
+then DEPEND=""
+else DEPEND="completion_pip? ( !dev-python/pip[zsh-completion] )"
+fi
+
+IUSE=""
+declare -a FILES
+FILES=()
+declare -A USEFILE FILEINDEX
+USEFILE=()
+FILEINDEX=()
+used_value() {
+ case ${!1} in
+ '*'*)
+ eval ${1}=\${${1}#?}
+ ${LIVE};;
+ '/'*)
+ eval ${1}=\${${1}#?}
+ ! ${LIVE};;
+ esac
+}
+calculate_data() {
+ local comp curr currfile used
+ for comp
+ do curr="${comp%% *}"
+ used_value curr || continue
+ case ${curr} in
+ '+'*)
+ curr="completion_${curr#?}"
+ IUSE="${IUSE}${IUSE:+ }+${curr}";;
+ *)
+ curr="completion_${curr}"
+ IUSE="${IUSE}${IUSE:+ }${curr}";;
+ esac
+ for currfile in ${comp#* }
+ do used_value currfile
+ used=${?}
+ USEFILE["${currfile}"]="${curr}"
+ [[ -z ${FILEINDEX["${currfile}"]} ]] || die "${currfile} listed twice"
+ [ ${used} -ne 0 ] && continue
+ FILEINDEX["${currfile}"]="${#FILES[@]}"
+ FILES+=("${currfile}")
+ done
+ done
+}
+calculate_data \
+ '+Android _adb _android _emulator' \
+ '+Google _google' \
+ '+Unix _cmake _dzen2 _logger _nl _ps _shutdown _watch _xinput' \
+ '+database _redis-cli _pgsql_utils' \
+ '+dev _artisan _choc _console _gradle _geany _phing _manage.py _mvn _pear _play _symfony _thor _vagrant _veewee' \
+ '+disk _sdd _smartmontools _srm' \
+ '+distribute _celery /_envoy _fab _glances _kitchen _knife _mina _mussh' \
+ '+filesystem _zfs' \
+ '+git _git-flow _git-pulls' \
+ '+hardware _optirun _perf _primus' \
+ '+haskell _cabal _ghc' \
+ '+managers _bower _brew *_cask _debuild _lein _pactree _pkcon _port _yaourt' \
+ '+multimedia _id3 _id3v2 _showoff' \
+ '+net _dget _dhcpcd _httpie _iw _mosh _rfkill _socat _ssh-copy-id _vpnc _vnstat' \
+ '+nfs _exportfs' \
+ '+perl _cpanm' \
+ '/+pip _pip' \
+ '+python _bpython _pygmentize _setup.py' \
+ '+ruby _bundle _cap _ditz _gas _gem _gist _github _git-wtf _jekyll _lunchy _rails _rspec _rubocop _rvm' \
+ '+search _ack _ag _jq' \
+ '+session _atach _teamocil _tmuxinator _wemux' \
+ '+subtitles _language_codes _periscope _subliminal' \
+ '+virtualization _boot2docker *_docker-machine /_docker _virtualbox _virsh' \
+ '+web _coffee _composer _docpad _drush _heroku *_hledger _jonas _jmeter _jmeter-plugins _lunar _middleman _node _nvm _ralio _salt _sbt _scala _svm'
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ insinto /usr/share/zsh/site-functions
+ local i j u
+ for i in src/*
+ do j=${i#src/}
+ u=${USEFILE["${j}"]}
+ if [ -z "${u}" ]
+ then elog "installing unknown completion ${i#*/}"
+ doins "${i}"
+ continue
+ fi
+ ! use "${u}" || doins "${i}"
+ u=${FILEINDEX["${j}"]}
+ FILES[${u}]=
+ done
+ for i in ${FILES[*]}
+ do elog "listed file ${i} not found"
+ done
+ dodoc README.md zsh-completions-howto.org
+}
diff --git a/app-shells/zsh-completions/zsh-completions-99999999.ebuild b/app-shells/zsh-completions/zsh-completions-99999999.ebuild
new file mode 100644
index 00000000..51991693
--- /dev/null
+++ b/app-shells/zsh-completions/zsh-completions-99999999.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+case ${PV} in
+99999999*)
+ LIVE=:
+ EGIT_REPO_URI="git://github.com/zsh-users/${PN}.git"
+ inherit git-r3
+ PROPERTIES="live"
+ KEYWORDS=""
+ SRC_URI="";;
+*)
+ LIVE=false
+ RESTRICT="mirror"
+ TARBALL_VERSION='0.12.0'
+ SRC_URI="https://github.com/zsh-users/${PN}/archive/${TARBALL_VERSION}.tar.gz -> ${PN}-${PV}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ S="${WORKDIR}/${PN}-${TARBALL_VERSION}"
+esac
+
+DESCRIPTION="Additional completion definitions for Zsh"
+HOMEPAGE="https://gentoo.org/zsh-users/zsh-completions/"
+LICENSE="ZSH"
+SLOT="0"
+if ${LIVE}
+then DEPEND=""
+else DEPEND="completion_pip? ( !dev-python/pip[zsh-completion] )"
+fi
+
+IUSE=""
+declare -a FILES
+FILES=()
+declare -A USEFILE FILEINDEX
+USEFILE=()
+FILEINDEX=()
+used_value() {
+ case ${!1} in
+ '*'*)
+ eval ${1}=\${${1}#?}
+ ${LIVE};;
+ '/'*)
+ eval ${1}=\${${1}#?}
+ ! ${LIVE};;
+ esac
+}
+calculate_data() {
+ local comp curr currfile used
+ for comp
+ do curr="${comp%% *}"
+ used_value curr || continue
+ case ${curr} in
+ '+'*)
+ curr="completion_${curr#?}"
+ IUSE="${IUSE}${IUSE:+ }+${curr}";;
+ *)
+ curr="completion_${curr}"
+ IUSE="${IUSE}${IUSE:+ }${curr}";;
+ esac
+ for currfile in ${comp#* }
+ do used_value currfile
+ used=${?}
+ USEFILE["${currfile}"]="${curr}"
+ [[ -z ${FILEINDEX["${currfile}"]} ]] || die "${currfile} listed twice"
+ [ ${used} -ne 0 ] && continue
+ FILEINDEX["${currfile}"]="${#FILES[@]}"
+ FILES+=("${currfile}")
+ done
+ done
+}
+calculate_data \
+ '+Android _adb _android _emulator' \
+ '+Google _google' \
+ '+Unix _cmake _dzen2 _logger _nl _ps _shutdown _watch _xinput' \
+ '+database _redis-cli _pgsql_utils' \
+ '+dev _artisan _choc _console _gradle _geany _phing _manage.py _mvn _pear _play _symfony _thor _vagrant _veewee' \
+ '+disk _sdd _smartmontools _srm' \
+ '+distribute _celery /_envoy _fab _glances _kitchen _knife _mina _mussh' \
+ '+filesystem _zfs' \
+ '+git _git-flow _git-pulls' \
+ '+hardware _optirun _perf _primus' \
+ '+haskell _cabal _ghc' \
+ '+managers _bower _brew *_cask _debuild _lein _pactree _pkcon _port _yaourt' \
+ '+multimedia _id3 _id3v2 _showoff' \
+ '+net _dget _dhcpcd _httpie _iw _mosh _rfkill _socat _ssh-copy-id _vpnc _vnstat' \
+ '+nfs _exportfs' \
+ '+perl _cpanm' \
+ '/+pip _pip' \
+ '+python _bpython _pygmentize _setup.py' \
+ '+ruby _bundle _cap _ditz _gas _gem _gist _github _git-wtf _jekyll _lunchy _rails _rspec _rubocop _rvm' \
+ '+search _ack _ag _jq' \
+ '+session _atach _teamocil _tmuxinator _wemux' \
+ '+subtitles _language_codes _periscope _subliminal' \
+ '+virtualization _boot2docker *_docker-machine /_docker _virtualbox _virsh' \
+ '+web _coffee _composer _docpad _drush _heroku *_hledger _jonas _jmeter _jmeter-plugins _lunar _middleman _node _nvm _ralio _salt _sbt _scala _svm'
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ insinto /usr/share/zsh/site-functions
+ local i j u
+ for i in src/*
+ do j=${i#src/}
+ u=${USEFILE["${j}"]}
+ if [ -z "${u}" ]
+ then elog "installing unknown completion ${i#*/}"
+ doins "${i}"
+ continue
+ fi
+ ! use "${u}" || doins "${i}"
+ u=${FILEINDEX["${j}"]}
+ FILES[${u}]=
+ done
+ for i in ${FILES[*]}
+ do elog "listed file ${i} not found"
+ done
+ dodoc README.md zsh-completions-howto.org
+}
diff --git a/app-shells/zsh-syntax-highlighting/Manifest b/app-shells/zsh-syntax-highlighting/Manifest
new file mode 100644
index 00000000..020adc4e
--- /dev/null
+++ b/app-shells/zsh-syntax-highlighting/Manifest
@@ -0,0 +1 @@
+DIST zsh-syntax-highlighting-0.2.1.tar.gz 12400 SHA256 3cdf47ee613ff748230e9666c0122eca22dc05352f266fe640019c982f3ef6db SHA512 40b04f45035081858d14d8044659db3e96e881e387c91564ff58314972207a47145f13ecdb604c0a7a5683c0a922811c4ee36e3d18558c6126db24b5da2d862c WHIRLPOOL 7707bd843d77bf53bd2aef4260a683fe8de6fb0529d9c58e7780b43131eda4541054165c3cd5e69f8d04721d2264a60233f4efda6958af819d1345e19dc715bb
diff --git a/app-shells/zsh-syntax-highlighting/metadata.xml b/app-shells/zsh-syntax-highlighting/metadata.xml
new file mode 100644
index 00000000..a1caaddd
--- /dev/null
+++ b/app-shells/zsh-syntax-highlighting/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/zsh-users/zsh-syntax-highlighting/issues</bugs-to>
+ <remote-id type="github">zsh-users/zsh-syntax-highlighting</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/zsh-syntax-highlighting/zsh-syntax-highlighting-0.2.1.ebuild b/app-shells/zsh-syntax-highlighting/zsh-syntax-highlighting-0.2.1.ebuild
new file mode 100644
index 00000000..be2a231c
--- /dev/null
+++ b/app-shells/zsh-syntax-highlighting/zsh-syntax-highlighting-0.2.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils readme.gentoo
+
+case ${PV} in
+99999999*)
+ EGIT_REPO_URI="git://github.com/zsh-users/${PN}.git"
+ inherit git-r3
+ PROPERTIES="live"
+ SRC_URI=""
+ KEYWORDS="";;
+*)
+ RESTRICT="mirror"
+ SRC_URI="https://github.com/zsh-users/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86";;
+esac
+
+DESCRIPTION="Fish shell like syntax highlighting for zsh"
+HOMEPAGE="https://github.com/zsh-users/zsh-syntax-highlighting"
+
+LICENSE="HPND"
+SLOT="0"
+IUSE=""
+
+RDEPEND="app-shells/zsh"
+DEPEND=""
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="In order to use ${CATEGORY}/${PN} add
+. /usr/share/zsh/site-contrib/${PN}/zsh-syntax-highlighting.zsh
+at the end of your ~/.zshrc
+For testing, you can also execute the above command in your zsh."
+
+src_prepare() {
+ grep -q 'local .*cdpath_dir' \
+ "${S}/highlighters/main/main-highlighter.zsh" >/dev/null 2>&1 || \
+ sed -i -e '/for cdpath_dir/ilocal cdpath_dir' \
+ -- "${S}/highlighters/main/main-highlighter.zsh" || die
+ epatch_user
+}
+
+src_install() {
+ dodoc *.md
+ insinto /usr/share/zsh/site-contrib/${PN}
+ doins *.zsh
+ doins -r highlighters
+ readme.gentoo_create_doc
+}
diff --git a/app-shells/zsh-syntax-highlighting/zsh-syntax-highlighting-99999999.ebuild b/app-shells/zsh-syntax-highlighting/zsh-syntax-highlighting-99999999.ebuild
new file mode 100644
index 00000000..be2a231c
--- /dev/null
+++ b/app-shells/zsh-syntax-highlighting/zsh-syntax-highlighting-99999999.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils readme.gentoo
+
+case ${PV} in
+99999999*)
+ EGIT_REPO_URI="git://github.com/zsh-users/${PN}.git"
+ inherit git-r3
+ PROPERTIES="live"
+ SRC_URI=""
+ KEYWORDS="";;
+*)
+ RESTRICT="mirror"
+ SRC_URI="https://github.com/zsh-users/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86";;
+esac
+
+DESCRIPTION="Fish shell like syntax highlighting for zsh"
+HOMEPAGE="https://github.com/zsh-users/zsh-syntax-highlighting"
+
+LICENSE="HPND"
+SLOT="0"
+IUSE=""
+
+RDEPEND="app-shells/zsh"
+DEPEND=""
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="In order to use ${CATEGORY}/${PN} add
+. /usr/share/zsh/site-contrib/${PN}/zsh-syntax-highlighting.zsh
+at the end of your ~/.zshrc
+For testing, you can also execute the above command in your zsh."
+
+src_prepare() {
+ grep -q 'local .*cdpath_dir' \
+ "${S}/highlighters/main/main-highlighter.zsh" >/dev/null 2>&1 || \
+ sed -i -e '/for cdpath_dir/ilocal cdpath_dir' \
+ -- "${S}/highlighters/main/main-highlighter.zsh" || die
+ epatch_user
+}
+
+src_install() {
+ dodoc *.md
+ insinto /usr/share/zsh/site-contrib/${PN}
+ doins *.zsh
+ doins -r highlighters
+ readme.gentoo_create_doc
+}
diff --git a/app-shells/zsh/Manifest b/app-shells/zsh/Manifest
new file mode 100644
index 00000000..74a49796
--- /dev/null
+++ b/app-shells/zsh/Manifest
@@ -0,0 +1,2 @@
+DIST zsh-5.1.1-doc.tar.xz 3061616 SHA256 f5944f29ec77100afdc3634f0bb8ffc4328a2d03147f23d1aa6280b6aa7d622f SHA512 868444662ca9b1cc91f2ecff56ce0944e5e75fc5f5a349eb538ca23a8eb8fb4ebaa8efc2ba1d8581424f25b0009305ed7a6f08ca06db1ecde467eeb5d6b71621 WHIRLPOOL c72760d754e19e7fe1f501bd395becc13877d4b0ba20fbf1f08855be5affb78aac07e2c14e779c1b554e21e29d8bfd5203dd41da5d3f21020dac7033510a4662
+DIST zsh-5.1.1.tar.xz 2788676 SHA256 74e9453b5470b3c0970f9f93cfd603d241c3d7b1968adc0e4b3951073e8d3dec SHA512 732f183a03125e83da11a38c638ca54a667326a23ca19418b0df27b1d5b3b1f360383d84f66bde064911effaa2ce9cbb9b6ab86deddb92f80e8f601af8a82b3e WHIRLPOOL 55199e45557c2667e8f9b7564af44b32b610fe09db451493bd64642c2987e12a638b2b96d6530a16427ba17a6ca8c20e73f88013cf47996eea24e5e1595691e7
diff --git a/app-shells/zsh/files/prompt_gentoo_setup-1 b/app-shells/zsh/files/prompt_gentoo_setup-1
new file mode 100644
index 00000000..046e2d87
--- /dev/null
+++ b/app-shells/zsh/files/prompt_gentoo_setup-1
@@ -0,0 +1,33 @@
+# gentoo prompt theme
+
+prompt_gentoo_help () {
+ cat <<'EOF'
+This prompt is color-scheme-able. You can invoke it thus:
+
+ prompt gentoo [<promptcolor> [<usercolor> [<rootcolor>]]]
+
+EOF
+}
+
+prompt_gentoo_setup () {
+ local prompt_gentoo_prompt=${1:-'blue'}
+ local prompt_gentoo_user=${2:-'green'}
+ local prompt_gentoo_root=${3:-'red'}
+
+ if [ "$USER" = 'root' ]
+ then
+ local base_prompt="%B%F{$prompt_gentoo_root}%m%k "
+ else
+ local base_prompt="%B%F{$prompt_gentoo_user}%n@%m%k "
+ fi
+ local post_prompt="%b%f%k"
+
+ #setopt noxtrace localoptions
+
+ local path_prompt="%B%F{$prompt_gentoo_prompt}%1~"
+ typeset -g PS1="$base_prompt$path_prompt %# $post_prompt"
+ typeset -g PS2="$base_prompt$path_prompt %_> $post_prompt"
+ typeset -g PS3="$base_prompt$path_prompt ?# $post_prompt"
+}
+
+prompt_gentoo_setup "$@"
diff --git a/app-shells/zsh/files/zprofile-1 b/app-shells/zsh/files/zprofile-1
new file mode 100644
index 00000000..0602c9c5
--- /dev/null
+++ b/app-shells/zsh/files/zprofile-1
@@ -0,0 +1,43 @@
+# @GENTOO_PORTAGE_EPREFIX@/etc/zsh/zprofile
+# $Header: /var/cvsroot/gentoo-x86/app-shells/zsh/files/zprofile-1,v 1.1 2010/08/15 12:21:56 tove Exp $
+
+# Load environment settings from profile.env, which is created by
+# env-update from the files in /etc/env.d
+if [ -e "@GENTOO_PORTAGE_EPREFIX@"/etc/profile.env ] ; then
+ . "@GENTOO_PORTAGE_EPREFIX@"/etc/profile.env
+fi
+
+# You should override these in your ~/.zprofile (or equivalent) for per-user
+# settings. For system defaults, you can add a new file in /etc/profile.d/.
+export EDITOR=${EDITOR:-/bin/nano}
+export PAGER=${PAGER:-/usr/bin/less}
+
+# 077 would be more secure, but 022 is generally quite realistic
+umask 022
+
+# Set up PATH depending on whether we're root or a normal user.
+# There's no real reason to exclude sbin paths from the normal user,
+# but it can make tab-completion easier when they aren't in the
+# user's PATH to pollute the executable namespace.
+#
+# It is intentional in the following line to use || instead of -o.
+# This way the evaluation can be short-circuited and calling whoami is
+# avoided.
+if [ "$EUID" = "0" ] || [ "$USER" = "root" ] ; then
+ @ZSH_NOPREFIX@PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:${ROOTPATH}"
+ @ZSH_PREFIX@PATH="@GENTOO_PORTAGE_EPREFIX@/usr/sbin:@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/sbin:@GENTOO_PORTAGE_EPREFIX@/bin:${ROOTPATH}:/usr/sbin:/usr/bin:/sbin:/bin"
+else
+ @ZSH_NOPREFIX@PATH="/usr/local/bin:/usr/bin:/bin:${PATH}"
+ @ZSH_PREFIX@PATH="@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/bin:${PATH}:/usr/bin:/bin"
+fi
+export PATH
+unset ROOTPATH
+
+shopts=$-
+setopt nullglob
+for sh in "@GENTOO_PORTAGE_EPREFIX@"/etc/profile.d/*.sh ; do
+ [ -r "$sh" ] && . "$sh"
+done
+unsetopt nullglob
+set -$shopts
+unset sh shopts
diff --git a/app-shells/zsh/files/zsh-5.1.0-gcc-5.patch b/app-shells/zsh/files/zsh-5.1.0-gcc-5.patch
new file mode 100644
index 00000000..74756d29
--- /dev/null
+++ b/app-shells/zsh/files/zsh-5.1.0-gcc-5.patch
@@ -0,0 +1,16 @@
+https://bugs.gentoo.org/547950
+http://www.zsh.org/mla/workers/2015/msg02660.html
+
+fix building w/gcc-5
+
+--- a/Src/Modules/system.mdd
++++ b/Src/Modules/system.mdd
+@@ -15,7 +15,7 @@
+ touch errtmp.out; \
+ else \
+ $(AWK) -f $(sdir)/errnames1.awk @ERRNO_H@ >errtmp.c; \
+- $(CPP) errtmp.c >errtmp.out; \
++ $(CPP) -P errtmp.c >errtmp.out; \
+ fi
+ $(AWK) -f $(sdir)/errnames2.awk errtmp.out > $@
+ rm -f errtmp.c errtmp.out
diff --git a/app-shells/zsh/files/zsh-init.d-gentoo-r1.diff b/app-shells/zsh/files/zsh-init.d-gentoo-r1.diff
new file mode 100644
index 00000000..9597a733
--- /dev/null
+++ b/app-shells/zsh/files/zsh-init.d-gentoo-r1.diff
@@ -0,0 +1,30 @@
+--- zsh-4.3.11/Completion/Unix/Command/_init_d
++++ zsh-4.3.11/Completion/Unix/Command/_init_d
+@@ -1,6 +1,6 @@
+ #compdef -p */(init|rc[0-9S]#).d/*
+
+-local cmds script
++local cmds script opts
+
+ _compskip=all
+
+@@ -83,10 +83,17 @@
+
+ script=$words[1]
+ [[ $script = */* ]] || script="$(_init_d_fullpath "$script")"
++[[ ! -f $script ]] &&
++ { _message "${words[1]:t} is not an init script" && return }
+
+ cmds=( $(_init_d_get_cmds) ) || return
+
+-(( $#cmds )) || zstyle -a ":completion:${curcontext}:commands" commands cmds ||
+- cmds=(start stop)
++(( $#cmds )) || zstyle -a ":completion:${curcontext}:commands" commands cmds
++opts=(start stop restart pause zap status ineed iuse needsme usesme broken)
++
++# If we didn't get $cmds from a zstyle, then read init script for opts.
++# If script doesn't specify opts, then default to the standard opts.
++(( $#cmds )) || cmds=( ${(eQz)${(M)${(f)"$( <$script)"}:#[[:blank:]]#opts=*}#*=} )
++(( $#cmds )) || cmds=($opts)
+
+ _sub_commands $cmds
diff --git a/app-shells/zsh/metadata.xml b/app-shells/zsh/metadata.xml
new file mode 100644
index 00000000..14b074fe
--- /dev/null
+++ b/app-shells/zsh/metadata.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>tove@gentoo.org</email>
+ <name>Torsten Veller</name>
+ <description>Interim maintainer</description>
+</maintainer>
+<maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ <description>Co-maintainer</description>
+</maintainer>
+<maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ <description>Maintainer of run-help, compile, and completion_* USE-flags</description>
+</maintainer>
+<longdescription>
+ Zsh is a shell designed for interactive use, although it is also a
+ powerful scripting language. Many of the useful features of bash, ksh,
+ and tcsh were incorporated into zsh; many original features were
+ added.
+</longdescription>
+<use>
+ <flag name="compile">Byte-compile. This costs disk space and may make things faster or slower. Do not use this if you are cross-compiling</flag>
+ <flag name='completion_AIX'>Install zsh completions for AIX</flag>
+ <flag name='completion_BSD'>Install zsh completions for BSD</flag>
+ <flag name='completion_Cygwin'>Install zsh completions for Cygwin</flag>
+ <flag name='completion_Darwin'>Install zsh completions for Darwin</flag>
+ <flag name='completion_Debian'>Install zsh completions for Debian</flag>
+ <flag name='completion_Linux'>Install zsh completions for Linux</flag>
+ <flag name='completion_Mandriva'>Install zsh completions for Mandriva</flag>
+ <flag name='completion_openSUSE'>Install zsh completions for openSUSE</flag>
+ <flag name='completion_Redhat'>Install zsh completions for Redhat</flag>
+ <flag name='completion_Solaris'>Install zsh completions for Solaris</flag>
+ <flag name='completion_Unix'>Install zsh completions for Unix</flag>
+ <flag name='completion_X'>Install zsh completions for X</flag>
+</use>
+</pkgmetadata>
diff --git a/app-shells/zsh/zsh-5.1.1-r1.ebuild b/app-shells/zsh/zsh-5.1.1-r1.ebuild
new file mode 100644
index 00000000..d5a8bc8e
--- /dev/null
+++ b/app-shells/zsh/zsh-5.1.1-r1.ebuild
@@ -0,0 +1,301 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib prefix readme.gentoo
+
+MY_PV=${PV/_p/-dev-}
+S=${WORKDIR}/${PN}-${MY_PV}
+
+zsh_ftp="http://www.zsh.org/pub"
+
+ZSH_URI="${zsh_ftp}/${PN}-${MY_PV}.tar.xz"
+ZSH_DOC_URI="${zsh_ftp}/${PN}-${PV%_*}-doc.tar.xz"
+
+DESCRIPTION="UNIX Shell similar to the Korn shell"
+HOMEPAGE="http://www.zsh.org/"
+case ${PV} in
+9999*)
+ SRC_URI=""
+ EGIT_REPO_URI="git://git.code.sf.net/p/zsh/code"
+ inherit git-r3
+ WANT_LIBTOOL="none"
+ inherit autotools
+ KEYWORDS=""
+# Creating help files needs util-linux for colcrt.
+# Please let me know if you have an arch where "colcrt" (or at least "col")
+# is provided by a different package.
+ DEPEND="app-text/yodl
+ dev-lang/perl
+ sys-apps/man
+ sys-apps/util-linux
+ doc? (
+ sys-apps/texinfo
+ app-text/texi2html
+ virtual/latex-base
+ )"
+ PROPERTIES="live"
+ LIVE=:;;
+*)
+ SRC_URI="${ZSH_URI}
+ doc? ( ${ZSH_DOC_URI} )"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ #KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ DEPEND=""
+ LIVE=false;;
+esac
+
+LICENSE="ZSH gdbm? ( GPL-2 )"
+SLOT="0"
+IUSE="caps compile"
+COMPLETIONS="AIX BSD Cygwin Darwin Debian +Linux Mandriva openSUSE Redhat Solaris +Unix +X"
+for curr in ${COMPLETIONS}
+do case ${curr} in
+ [+-]*)
+ IUSE+=" ${curr%%[!+-]*}completion_${curr#?}"
+ continue;;
+ esac
+ IUSE+=" completion_${curr}"
+done
+IUSE+=" debug doc examples gdbm maildir pcre static unicode"
+
+RDEPEND="
+ >=sys-libs/ncurses-5.1:0
+ static? ( >=sys-libs/ncurses-5.7-r4:0=[static-libs] )
+ caps? ( sys-libs/libcap )
+ pcre? (
+ >=dev-libs/libpcre-3.9
+ static? ( >=dev-libs/libpcre-3.9[static-libs] )
+ )
+ gdbm? ( sys-libs/gdbm )
+"
+DEPEND+="
+ sys-apps/groff
+ ${RDEPEND}"
+PDEPEND="
+ examples? ( app-doc/zsh-lovers )
+"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="
+If you want to enable Portage completions and Gentoo prompt,
+emerge app-shells/zsh-completion and add
+ autoload -U compinit promptinit
+ compinit
+ promptinit; prompt gentoo
+to your ~/.zshrc
+
+Also, if you want to enable cache for the completions, add
+ zstyle ':completion::complete:*' use-cache 1
+to your ~/.zshrc
+
+If you want to use run-help add to your ~/.zshrc
+ unalias run-help
+ autoload -Uz run-help
+
+Note that a system zprofile startup file is installed. This will override
+PATH and possibly other variables that a user may set in ~/.zshenv.
+Custom PATH settings and similar overridden variables can be moved
+to ~/.zprofile or other user startup files that are sourced after the
+system zprofile.
+
+If PATH must be set in ~/.zshenv to affect things like non-login ssh shells,
+one method is to use a separate path-setting file that is conditionally sourced
+in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the
+zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/.
+
+See https://wiki.gentoo.org/wiki/Zsh/HOWTO for more introduction documentation.
+"
+
+src_prepare() {
+ # fix zshall problem with soelim
+ ln -s Doc man1 || die
+ mv Doc/zshall.1 Doc/zshall.1.soelim || die
+ soelim Doc/zshall.1.soelim > Doc/zshall.1 || die
+
+ epatch "${FILESDIR}"/${PN}-init.d-gentoo-r1.diff
+ epatch "${FILESDIR}"/${PN}-5.1.0-gcc-5.patch #547950
+
+ cp "${FILESDIR}"/zprofile-1 "${T}"/zprofile || die
+ eprefixify "${T}"/zprofile || die
+ if use prefix ; then
+ sed -i -e 's|@ZSH_PREFIX@||' -e '/@ZSH_NOPREFIX@/d' "${T}"/zprofile || die
+ else
+ sed -i -e 's|@ZSH_NOPREFIX@||' -e '/@ZSH_PREFIX@/d' -e 's|""||' "${T}"/zprofile || die
+ fi
+ set --
+ file='Src/Zle/complete.mdd'
+ for i in ${COMPLETIONS}
+ do case ${i} in
+ [+-]*)
+ i=${i#?};;
+ esac
+ grep -q "Completion\/${i}" -- "${S}/${file}" \
+ || die "${file} does not contain Completion/${i}"
+ use completion_${i} || set -- "${@}" -e "s/Completion\/${i}[^ ']*//"
+ done
+ [ ${#} -eq 0 ] || sed -i "${@}" -- "${S}/${file}" \
+ || die "patching ${file} failed"
+ epatch_user
+ ! ${LIVE} || eautoreconf
+ PVPATH=$(. "${S}"/Config/version.mk && printf '%s' "${VERSION}") && \
+ [ -n "${PVPATH}" ] || PVPATH=${PV}
+}
+
+src_configure() {
+ local myconf
+ myconf=()
+
+ if use static ; then
+ myconf+=( --disable-dynamic )
+ append-ldflags -static
+ fi
+ if use debug ; then
+ myconf+=(
+ --enable-zsh-debug
+ --enable-zsh-mem-debug
+ --enable-zsh-mem-warning
+ --enable-zsh-secure-free
+ --enable-zsh-hash-debug
+ )
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=( --enable-libs=-liconv )
+ append-ldflags -Wl,-x
+ fi
+
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-etcdir="${EPREFIX}"/etc/zsh \
+ --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PVPATH}/help \
+ --enable-fndir="${EPREFIX}"/usr/share/zsh/${PVPATH}/functions \
+ --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions \
+ --enable-function-subdirs \
+ --with-tcsetpgrp \
+ $(use_enable maildir maildir-support) \
+ $(use_enable pcre) \
+ $(use_enable caps cap) \
+ $(use_enable unicode multibyte) \
+ $(use_enable gdbm ) \
+ "${myconf[@]}"
+
+ if use static ; then
+ # compile all modules statically, see Bug #27392
+ # removed cap and curses because linking failes
+ sed -e "s,link=no,link=static,g" \
+ -e "/^name=zsh\/cap/s,link=static,link=no," \
+ -e "/^name=zsh\/curses/s,link=static,link=no," \
+ -i "${S}"/config.modules || die
+ if ! use gdbm ; then
+ sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
+ "${S}"/config.modules || die
+ fi
+ fi
+}
+
+src_compile() {
+ default
+ ! ${LIVE} || ! use doc || emake -C Doc everything
+}
+
+src_test() {
+ addpredict /dev/ptmx
+ local i
+ for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
+ rm "${S}"/Test/${i} || die
+ done
+ emake check
+}
+
+zcompile_dirs() {
+ use compile || return 0
+ einfo "compiling modules"
+ local i
+ i="${S}/Src/zshpaths.h"
+ test -f "${i}" || die "cannot find ${i}"
+ # We need this directory also in pkg_postinst
+ FPATH_DIR="$(sed -n -e \
+ 's/^#define FPATH_DIR .*\"\(.*\)\".*$/\1/p' -- "${i}" 2>/dev/null)" \
+ || FPATH_DIR=
+ [ -n "${FPATH_DIR}" ] || die "cannot parse ${i}"
+ pushd -- "${ED}" >/dev/null || die
+ test -d ".${FPATH_DIR}" || die "parsing ${i} gave strange result ${FPATH_DIR}"
+ find ".${FPATH_DIR}" -type d -exec "${ED}bin/zsh" -fc 'setopt nullglob
+for i
+do a=(${i}/*(.))
+ [[ ${#a} -eq 0 ]] && continue
+ echo "Compiling ${i#.}.zwc"
+ zcompile -U -M ${i}.zwc ${a} || exit
+done' zsh '{}' '+' || die 'compiling failed. If you are cross-compiling set USE=-compile'
+ popd >/dev/null
+}
+
+touch_zwc() {
+ use compile || return 0
+ einfo "touching *.zwc files"
+ # Make a sanity check that variables are preserved after zcompile_dirs:
+ # If the package mangler is not faulty, this *must* succeeed.
+ [ -n "${FPATH_DIR}" ] && test -d "${FPATH_DIR}" || die "strange FPATH_DIR"
+ # Now the actual action
+ find "${EPREFIX}${FPATH_DIR}" -type f -name '*.zwc' \
+ -exec "$(command -v touch)" -- '{}' '+'
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install install.info
+
+ insinto /etc/zsh
+ doins "${T}"/zprofile
+
+ keepdir /usr/share/zsh/site-functions
+ insinto /usr/share/zsh/"${PVPATH}"/functions/Prompts
+ newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup
+
+ local i
+
+ # install miscellaneous scripts (bug #54520)
+ sed -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
+ -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" \
+ -i "${S}"/{Util,Misc}/* || die
+ for i in Util Misc ; do
+ insinto /usr/share/zsh/"${PVPATH}"/${i}
+ doins ${i}/*
+ done
+
+ # install header files (bug #538684)
+ insinto /usr/include/zsh
+ doins config.h Src/*.epro
+ for i in Src/{zsh.mdh,*.h} ; do
+ sed -e 's@\.\./config\.h@config.h@' \
+ -e 's@#\(\s*\)include "\([^"]\+\)"@#\1include <zsh/\2>@' \
+ -i "${i}"
+ doins "${i}"
+ done
+
+ dodoc ChangeLog* META-FAQ NEWS README config.modules
+ readme.gentoo_create_doc
+
+ if use doc ; then
+ pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
+ dohtml -r Doc/*
+ insinto /usr/share/doc/${PF}
+ doins Doc/zsh.{dvi,pdf}
+ popd >/dev/null
+ fi
+
+ docinto StartupFiles
+ dodoc StartupFiles/z*
+
+ zcompile_dirs
+
+ rm -vf -- "${ED}"/bin/zsh?*
+}
+
+pkg_postinst() {
+ readme.gentoo_pkg_postinst
+ touch_zwc
+}
diff --git a/app-shells/zsh/zsh-99999999.ebuild b/app-shells/zsh/zsh-99999999.ebuild
new file mode 100644
index 00000000..d5a8bc8e
--- /dev/null
+++ b/app-shells/zsh/zsh-99999999.ebuild
@@ -0,0 +1,301 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib prefix readme.gentoo
+
+MY_PV=${PV/_p/-dev-}
+S=${WORKDIR}/${PN}-${MY_PV}
+
+zsh_ftp="http://www.zsh.org/pub"
+
+ZSH_URI="${zsh_ftp}/${PN}-${MY_PV}.tar.xz"
+ZSH_DOC_URI="${zsh_ftp}/${PN}-${PV%_*}-doc.tar.xz"
+
+DESCRIPTION="UNIX Shell similar to the Korn shell"
+HOMEPAGE="http://www.zsh.org/"
+case ${PV} in
+9999*)
+ SRC_URI=""
+ EGIT_REPO_URI="git://git.code.sf.net/p/zsh/code"
+ inherit git-r3
+ WANT_LIBTOOL="none"
+ inherit autotools
+ KEYWORDS=""
+# Creating help files needs util-linux for colcrt.
+# Please let me know if you have an arch where "colcrt" (or at least "col")
+# is provided by a different package.
+ DEPEND="app-text/yodl
+ dev-lang/perl
+ sys-apps/man
+ sys-apps/util-linux
+ doc? (
+ sys-apps/texinfo
+ app-text/texi2html
+ virtual/latex-base
+ )"
+ PROPERTIES="live"
+ LIVE=:;;
+*)
+ SRC_URI="${ZSH_URI}
+ doc? ( ${ZSH_DOC_URI} )"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ #KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ DEPEND=""
+ LIVE=false;;
+esac
+
+LICENSE="ZSH gdbm? ( GPL-2 )"
+SLOT="0"
+IUSE="caps compile"
+COMPLETIONS="AIX BSD Cygwin Darwin Debian +Linux Mandriva openSUSE Redhat Solaris +Unix +X"
+for curr in ${COMPLETIONS}
+do case ${curr} in
+ [+-]*)
+ IUSE+=" ${curr%%[!+-]*}completion_${curr#?}"
+ continue;;
+ esac
+ IUSE+=" completion_${curr}"
+done
+IUSE+=" debug doc examples gdbm maildir pcre static unicode"
+
+RDEPEND="
+ >=sys-libs/ncurses-5.1:0
+ static? ( >=sys-libs/ncurses-5.7-r4:0=[static-libs] )
+ caps? ( sys-libs/libcap )
+ pcre? (
+ >=dev-libs/libpcre-3.9
+ static? ( >=dev-libs/libpcre-3.9[static-libs] )
+ )
+ gdbm? ( sys-libs/gdbm )
+"
+DEPEND+="
+ sys-apps/groff
+ ${RDEPEND}"
+PDEPEND="
+ examples? ( app-doc/zsh-lovers )
+"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="
+If you want to enable Portage completions and Gentoo prompt,
+emerge app-shells/zsh-completion and add
+ autoload -U compinit promptinit
+ compinit
+ promptinit; prompt gentoo
+to your ~/.zshrc
+
+Also, if you want to enable cache for the completions, add
+ zstyle ':completion::complete:*' use-cache 1
+to your ~/.zshrc
+
+If you want to use run-help add to your ~/.zshrc
+ unalias run-help
+ autoload -Uz run-help
+
+Note that a system zprofile startup file is installed. This will override
+PATH and possibly other variables that a user may set in ~/.zshenv.
+Custom PATH settings and similar overridden variables can be moved
+to ~/.zprofile or other user startup files that are sourced after the
+system zprofile.
+
+If PATH must be set in ~/.zshenv to affect things like non-login ssh shells,
+one method is to use a separate path-setting file that is conditionally sourced
+in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the
+zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/.
+
+See https://wiki.gentoo.org/wiki/Zsh/HOWTO for more introduction documentation.
+"
+
+src_prepare() {
+ # fix zshall problem with soelim
+ ln -s Doc man1 || die
+ mv Doc/zshall.1 Doc/zshall.1.soelim || die
+ soelim Doc/zshall.1.soelim > Doc/zshall.1 || die
+
+ epatch "${FILESDIR}"/${PN}-init.d-gentoo-r1.diff
+ epatch "${FILESDIR}"/${PN}-5.1.0-gcc-5.patch #547950
+
+ cp "${FILESDIR}"/zprofile-1 "${T}"/zprofile || die
+ eprefixify "${T}"/zprofile || die
+ if use prefix ; then
+ sed -i -e 's|@ZSH_PREFIX@||' -e '/@ZSH_NOPREFIX@/d' "${T}"/zprofile || die
+ else
+ sed -i -e 's|@ZSH_NOPREFIX@||' -e '/@ZSH_PREFIX@/d' -e 's|""||' "${T}"/zprofile || die
+ fi
+ set --
+ file='Src/Zle/complete.mdd'
+ for i in ${COMPLETIONS}
+ do case ${i} in
+ [+-]*)
+ i=${i#?};;
+ esac
+ grep -q "Completion\/${i}" -- "${S}/${file}" \
+ || die "${file} does not contain Completion/${i}"
+ use completion_${i} || set -- "${@}" -e "s/Completion\/${i}[^ ']*//"
+ done
+ [ ${#} -eq 0 ] || sed -i "${@}" -- "${S}/${file}" \
+ || die "patching ${file} failed"
+ epatch_user
+ ! ${LIVE} || eautoreconf
+ PVPATH=$(. "${S}"/Config/version.mk && printf '%s' "${VERSION}") && \
+ [ -n "${PVPATH}" ] || PVPATH=${PV}
+}
+
+src_configure() {
+ local myconf
+ myconf=()
+
+ if use static ; then
+ myconf+=( --disable-dynamic )
+ append-ldflags -static
+ fi
+ if use debug ; then
+ myconf+=(
+ --enable-zsh-debug
+ --enable-zsh-mem-debug
+ --enable-zsh-mem-warning
+ --enable-zsh-secure-free
+ --enable-zsh-hash-debug
+ )
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=( --enable-libs=-liconv )
+ append-ldflags -Wl,-x
+ fi
+
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-etcdir="${EPREFIX}"/etc/zsh \
+ --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PVPATH}/help \
+ --enable-fndir="${EPREFIX}"/usr/share/zsh/${PVPATH}/functions \
+ --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions \
+ --enable-function-subdirs \
+ --with-tcsetpgrp \
+ $(use_enable maildir maildir-support) \
+ $(use_enable pcre) \
+ $(use_enable caps cap) \
+ $(use_enable unicode multibyte) \
+ $(use_enable gdbm ) \
+ "${myconf[@]}"
+
+ if use static ; then
+ # compile all modules statically, see Bug #27392
+ # removed cap and curses because linking failes
+ sed -e "s,link=no,link=static,g" \
+ -e "/^name=zsh\/cap/s,link=static,link=no," \
+ -e "/^name=zsh\/curses/s,link=static,link=no," \
+ -i "${S}"/config.modules || die
+ if ! use gdbm ; then
+ sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
+ "${S}"/config.modules || die
+ fi
+ fi
+}
+
+src_compile() {
+ default
+ ! ${LIVE} || ! use doc || emake -C Doc everything
+}
+
+src_test() {
+ addpredict /dev/ptmx
+ local i
+ for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
+ rm "${S}"/Test/${i} || die
+ done
+ emake check
+}
+
+zcompile_dirs() {
+ use compile || return 0
+ einfo "compiling modules"
+ local i
+ i="${S}/Src/zshpaths.h"
+ test -f "${i}" || die "cannot find ${i}"
+ # We need this directory also in pkg_postinst
+ FPATH_DIR="$(sed -n -e \
+ 's/^#define FPATH_DIR .*\"\(.*\)\".*$/\1/p' -- "${i}" 2>/dev/null)" \
+ || FPATH_DIR=
+ [ -n "${FPATH_DIR}" ] || die "cannot parse ${i}"
+ pushd -- "${ED}" >/dev/null || die
+ test -d ".${FPATH_DIR}" || die "parsing ${i} gave strange result ${FPATH_DIR}"
+ find ".${FPATH_DIR}" -type d -exec "${ED}bin/zsh" -fc 'setopt nullglob
+for i
+do a=(${i}/*(.))
+ [[ ${#a} -eq 0 ]] && continue
+ echo "Compiling ${i#.}.zwc"
+ zcompile -U -M ${i}.zwc ${a} || exit
+done' zsh '{}' '+' || die 'compiling failed. If you are cross-compiling set USE=-compile'
+ popd >/dev/null
+}
+
+touch_zwc() {
+ use compile || return 0
+ einfo "touching *.zwc files"
+ # Make a sanity check that variables are preserved after zcompile_dirs:
+ # If the package mangler is not faulty, this *must* succeeed.
+ [ -n "${FPATH_DIR}" ] && test -d "${FPATH_DIR}" || die "strange FPATH_DIR"
+ # Now the actual action
+ find "${EPREFIX}${FPATH_DIR}" -type f -name '*.zwc' \
+ -exec "$(command -v touch)" -- '{}' '+'
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install install.info
+
+ insinto /etc/zsh
+ doins "${T}"/zprofile
+
+ keepdir /usr/share/zsh/site-functions
+ insinto /usr/share/zsh/"${PVPATH}"/functions/Prompts
+ newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup
+
+ local i
+
+ # install miscellaneous scripts (bug #54520)
+ sed -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
+ -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" \
+ -i "${S}"/{Util,Misc}/* || die
+ for i in Util Misc ; do
+ insinto /usr/share/zsh/"${PVPATH}"/${i}
+ doins ${i}/*
+ done
+
+ # install header files (bug #538684)
+ insinto /usr/include/zsh
+ doins config.h Src/*.epro
+ for i in Src/{zsh.mdh,*.h} ; do
+ sed -e 's@\.\./config\.h@config.h@' \
+ -e 's@#\(\s*\)include "\([^"]\+\)"@#\1include <zsh/\2>@' \
+ -i "${i}"
+ doins "${i}"
+ done
+
+ dodoc ChangeLog* META-FAQ NEWS README config.modules
+ readme.gentoo_create_doc
+
+ if use doc ; then
+ pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
+ dohtml -r Doc/*
+ insinto /usr/share/doc/${PF}
+ doins Doc/zsh.{dvi,pdf}
+ popd >/dev/null
+ fi
+
+ docinto StartupFiles
+ dodoc StartupFiles/z*
+
+ zcompile_dirs
+
+ rm -vf -- "${ED}"/bin/zsh?*
+}
+
+pkg_postinst() {
+ readme.gentoo_pkg_postinst
+ touch_zwc
+}
diff --git a/app-shells/zshrc-mv/Manifest b/app-shells/zshrc-mv/Manifest
new file mode 100644
index 00000000..fc7f4b24
--- /dev/null
+++ b/app-shells/zshrc-mv/Manifest
@@ -0,0 +1 @@
+DIST zshrc-mv-2.22.tar.gz 9335 SHA256 b8239c42abc7ba7cca92b7f21da137f082c722002027473deb24881300353f84 SHA512 5da027365d77f61735031c9a1d298b4d01131921c2b4fab8f7d9777a775a124c203446f3f1d7872c04f6da58e9d474b9b777a2940250b336f89fa103c72640b3 WHIRLPOOL d0bef8dce9b5219a461d056e9bf20b1c2842a8ad173db6b49bb960102d5d945814de3799b6376650335218d1f969130b538f37e9e7cead9ca4deec33f17ac904
diff --git a/app-shells/zshrc-mv/metadata.xml b/app-shells/zshrc-mv/metadata.xml
new file mode 100644
index 00000000..079e97cc
--- /dev/null
+++ b/app-shells/zshrc-mv/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/zshrc-mv</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-shells/zshrc-mv/zshrc-mv-2.22.ebuild b/app-shells/zshrc-mv/zshrc-mv-2.22.ebuild
new file mode 100644
index 00000000..6f08fdd9
--- /dev/null
+++ b/app-shells/zshrc-mv/zshrc-mv-2.22.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="A zshrc file initializing zsh specific interactive features"
+HOMEPAGE="https://github.com/vaeth/zshrc-mv/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="!app-shells/auto-fu-zsh[kill-line(-)]"
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ dodoc README
+ insinto /etc/zsh
+ doins zshrc
+}
+
+pkg_postinst() {
+ optfeature "automagic completion" '>=app-shells/auto-fu-zsh-0.0.1.13'
+ optfeature "syntax highlighting" 'app-shells/zsh-syntax-highlighting'
+ optfeature "a nice prompt" 'app-shells/set_prompt'
+ optfeature "nice directory colors" 'app-shells/termcolors-mv'
+}
diff --git a/app-text/psjoin/Manifest b/app-text/psjoin/Manifest
new file mode 100644
index 00000000..03dd9e4a
--- /dev/null
+++ b/app-text/psjoin/Manifest
@@ -0,0 +1 @@
+DIST psjoin-0.3 5122 SHA256 ac7a3f9512b1f6b0ea2bab4b6832431977649e88a0e6abd752fc097a8c0cd583 SHA512 5dd86a6c863f28bcf4e560ce0a1967a2d316f97ef702ac47dbe0db148c2d4164a973de0a8d0e3aa3ef57a08f92520129cebb99f4bce5a539401f1fc273a8c399 WHIRLPOOL 2c8b4b3309dd5d9ee3955c8d7944e5f911e842710a65c7c250210028f86598695ab0d99076790a630028346ad5898a51afc22786826f039294c81671f4b5285b
diff --git a/app-text/psjoin/metadata.xml b/app-text/psjoin/metadata.xml
new file mode 100644
index 00000000..8730610f
--- /dev/null
+++ b/app-text/psjoin/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>VEF00200@nifty.ne.jp</email>
+ <name>Tom Sato</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/app-text/psjoin/psjoin-0.3.ebuild b/app-text/psjoin/psjoin-0.3.ebuild
new file mode 100644
index 00000000..a8efb2ac
--- /dev/null
+++ b/app-text/psjoin/psjoin-0.3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+
+inherit eutils
+
+DESCRIPTION="concatenate postscript files. From new PostScript Utilities"
+HOMEPAGE="http://homepage3.nifty.com/tsato/tools/psjoin.html"
+SRC_URI="http://homepage3.nifty.com/tsato/tools/${PN} -> ${P}"
+
+LICENSE="psutils"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+src_unpack() {
+ mkdir -- "${S}"
+ cp -p -- "${DISTDIR}/${P}" "${S}/${PN}"
+}
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ dobin "${PN}"
+}
diff --git a/app-text/stardict/Manifest b/app-text/stardict/Manifest
new file mode 100644
index 00000000..bf64d7c7
--- /dev/null
+++ b/app-text/stardict/Manifest
@@ -0,0 +1,3 @@
+DIST QQWry.Dat.bz2 4114875 SHA256 3eda90ee8ea13ec88767336b078d2dfe2c971d6a31df60f409d526e3e29a4f83 SHA512 46fd677359a2144429eb9d16131ca6b19db1c086fa93e275aa3d702d3024a65d54064df931d1ed2ba5b0c1f7d9595a284f2a8995d9cd5aac96a45216422dc9ae WHIRLPOOL 456bab65658a8af76160f162fc66868c8a74653a88a1a115e2a20dd90ba9ae8a93b1aa1ee9856cc811d1b1229ca910868ea5db764a119ae9b31cbabf962cab5f
+DIST WyabdcRealPeopleTTS.tar.bz2 84329208 SHA256 96a398eaef3e84f6f23e61683e6439913a4d44055e695dd4a1936f9340d64870 SHA512 1553e62c139ecb005bb04163147d94aa58e4ba7f9ee3172b760c6e4776587c12bf816c42e0131c82195b7c738ec9ee5082f39b974790f5cacd522367919beaa0 WHIRLPOOL 210c121c25c7726cee62c2f2beb3186f0799d68c5537442eda967694f176cbbbc6d09a8c3759de093226e283ae651348ed7173a9f93bbf776325fb656e19720c
+DIST stardict-3.0.6.tar.bz2 9341740 SHA256 6a0a695a8977604e0509a3db1bc6a67e53599b14f29494ba942f21d2c26b82e7 SHA512 81d93324b6e8954af7c20ea6d2a3054bb564d786a21b1cb541c728da7a18a6e7ddb23e595055ccc77e6866bbb8c89fb4f17023e33664761dbe1ee8cd55768658 WHIRLPOOL 9502af310d5eba5ed23457fff9e9f00e2d8453873cece3c20e2c5daf861bd665fc7b9c8e292be5b1d886f9a9fd0d5ad9bd1d8fbd043d221e6637c1c8185f444f
diff --git a/app-text/stardict/files/stardict-3.0.3-zlib-1.2.5.2.patch b/app-text/stardict/files/stardict-3.0.3-zlib-1.2.5.2.patch
new file mode 100644
index 00000000..6a320bd4
--- /dev/null
+++ b/app-text/stardict/files/stardict-3.0.3-zlib-1.2.5.2.patch
@@ -0,0 +1,39 @@
+http://bugs.gentoo.org/401887
+
+diff --git a/lib/src/libcommon.cpp b/lib/src/libcommon.cpp
+index 16770a3..a4299e7 100644
+--- a/lib/src/libcommon.cpp
++++ b/lib/src/libcommon.cpp
+@@ -614,7 +614,7 @@ int unpack_zlib(const char* arch_file_name, const char* out_file_name)
+ return EXIT_FAILURE;
+ }
+ while(true) {
+- len = gzread(get_impl(in), buf, buffer_size);
++ len = gzread((gzFile)get_impl(in), buf, buffer_size);
+ if(len < 0) {
+ g_critical(read_file_err, arch_file_name, "");
+ return EXIT_FAILURE;
+@@ -871,3 +871,8 @@ int remove_recursive(const std::string& path)
+ return res;
+ }
+ }
++
++int gzclose_compat(void * file)
++{
++ return gzclose ((gzFile)file);
++}
+diff --git a/lib/src/libcommon.h b/lib/src/libcommon.h
+index 10f13b4..bdcbf2f 100644
+--- a/lib/src/libcommon.h
++++ b/lib/src/libcommon.h
+@@ -187,8 +187,9 @@ namespace clib {
+ typedef ResourceWrapper<FILE, FILE*, int, fclose> File;
+ }
+
++extern int gzclose_compat(void * file);
+ namespace zip {
+-typedef ResourceWrapper<void, void*, int, gzclose> gzFile;
++typedef ResourceWrapper<void, void*, int, gzclose_compat> gzFile;
+ }
+
+ /* Create a new temporary file. Return file name in file name encoding.
diff --git a/app-text/stardict/metadata.xml b/app-text/stardict/metadata.xml
new file mode 100644
index 00000000..ea6a8b5e
--- /dev/null
+++ b/app-text/stardict/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription>
+ StarDict is an international dictionary Software. It has powerful features
+ such as "Glob-style pattern matching", "Scan selection word," "Fuzzy
+ query," etc. Stardict Version3.0 has developed a lot of new functions, such
+ as Full-text translation, Net Dict.
+ </longdescription>
+ <use>
+ <flag name='espeak'>Enable text to speech synthesizer using espeak
+ engine</flag>
+ <flag name='gnome2'>Enable deprecated gnome2 support</flag>
+ <flag name='gucharmap'>Enable gucharmap dictionary plugin</flag>
+ <flag name='pronounce'>Install WyabdcRealPeopleTTS package (it is just
+ many .wav files) to make StarDict pronounce English words</flag>
+ <flag name='qqwry'>Enable QQWry plugin, which provides information (in
+ Chinese language) about geographical positions, owner, etc. for IP
+ addresses</flag>
+ <flag name='tools'>Build and install the extra stardict tools</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-text/stardict/stardict-3.0.6.ebuild b/app-text/stardict/stardict-3.0.6.ebuild
new file mode 100644
index 00000000..dabfe56f
--- /dev/null
+++ b/app-text/stardict/stardict-3.0.6.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# NOTE: Even though the *.dict.dz are the same as dictd/freedict's files,
+# their indexes seem to be in a different format. So we'll keep them
+# seperate for now.
+
+# NOTE: Festival plugin crashes, bug 188684. Disable for now.
+
+GNOME2_LA_PUNT=yes
+GCONF_DEBUG=no
+
+inherit autotools eutils gnome2
+
+DESCRIPTION="A international dictionary supporting fuzzy and glob style matching"
+HOMEPAGE="http://stardict-4.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}-4/${P}.tar.bz2
+ pronounce? ( http://${PN}-3.googlecode.com/files/WyabdcRealPeopleTTS.tar.bz2 )
+ qqwry? ( mirror://gentoo/QQWry.Dat.bz2 )"
+
+LICENSE="CPL-1.0 GPL-3 LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="espeak gnome gnome2 gucharmap qqwry pronounce spell tools"
+
+RESTRICT="test"
+
+COMMON_DEPEND=">=dev-libs/glib-2.16:2=
+ dev-libs/libsigc++:2=
+ sys-libs/zlib:=
+ >=x11-libs/gtk+-2.20:2=
+ gnome2? (
+ >=gnome-base/libbonobo-2
+ >=gnome-base/libgnome-2
+ >=gnome-base/libgnomeui-2
+ >=gnome-base/gconf-2
+ >=gnome-base/orbit-2
+ )
+ gucharmap? ( >=gnome-extra/gucharmap-2.22.1:0 )
+ spell? ( >=app-text/enchant-1.2 )
+ tools? (
+ dev-libs/libpcre:=
+ dev-libs/libxml2:=
+ virtual/mysql
+ )"
+RDEPEND="${COMMON_DEPEND}
+ espeak? ( >=app-accessibility/espeak-1.29 )"
+DEPEND="${COMMON_DEPEND}
+ gnome? (
+ app-text/docbook-xml-dtd:4.3
+ app-text/gnome-doc-utils
+ dev-libs/libxslt
+ )
+ dev-util/intltool
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+src_prepare() {
+ if ! use gnome
+ then sed -i \
+ -e 's/GNOME_DOC_INIT/GNOME_DOC_INIT([0.32],[:],[:])/' \
+ -e '/AM_GCONF_SOURCE/d' \
+ -e '/help\/Makefile/d' \
+ dict/configure.ac
+ sed -i \
+ -e 's/ help / /' \
+ dict/Makefile.am
+ sed -i \
+ -e 's/\(libstardict_la_LIBADD = \)/\1 -lgmodule-2.0 /' \
+ dict/src/lib/Makefile.am
+ eautoreconf
+ fi
+ gnome2_src_prepare
+}
+
+src_configure() {
+ gnome2_src_configure \
+ $(use_enable tools) \
+ --disable-scrollkeeper \
+ $(use_enable spell) \
+ $(use_enable gucharmap) \
+ --disable-festival \
+ $(use_enable espeak) \
+ $(use_enable qqwry) \
+ --disable-updateinfo \
+ $(use_enable gnome2 gnome-support) \
+ --disable-gpe-support \
+ --disable-schemas-install
+}
+
+src_install() {
+ gnome2_src_install
+
+ dodoc dict/doc/{Documentation,FAQ,HACKING,HowToCreateDictionary,Skins,StarDictFileFormat,Translation}
+
+ if use qqwry; then
+ insinto /usr/share/${PN}/data
+ doins ../QQWry.Dat
+ fi
+
+ if use pronounce; then
+ docinto WyabdcRealPeopleTTS
+ dodoc ../WyabdcRealPeopleTTS/{README,readme.txt}
+ rm -f ../WyabdcRealPeopleTTS/{README,readme.txt}
+ insinto /usr/share
+ doins -r ../WyabdcRealPeopleTTS
+ fi
+
+ # noinst_PROGRAMS with ${PN}_ prefix from tools/src/Makefile.am wrt #292773
+ if use tools; then
+ local app
+ local apps="${PN}-editor pydict2dic olddic2newdic oxford2dic directory2dic
+ dictd2dic wquick2dic ec50 directory2treedic treedict2dir jdictionary mova
+ xmlinout soothill kanjidic2 powerword kdic 21tech 21shiji buddhist
+ tabfile cedict edict duden ${PN}-dict-update degb2utf frgb2utf
+ jpgb2utf gmx2utf rucn kingsoft wikipedia wikipediaImage babylon
+ ${PN}2txt ${PN}-verify fest2dict i2e2dict downloadwiki
+ ooo2dict myspell2dic exc2i2e dictbuilder tabfile2sql KangXi Unihan
+ xiaoxuetang-ja wubi ydp2dict wordnet lingvosound2resdb
+ resdatabase2dir dir2resdatabase ${PN}-index sd2foldoc ${PN}-text2bin
+ ${PN}-bin2text ${PN}-repair"
+
+ for app in ${apps}; do
+ newbin tools/src/${app} ${PN}_${app}
+ done
+ fi
+}
+
+pkg_postinst() {
+ elog "Note: festival text to speech (TTS) plugin is not built. To use festival"
+ elog 'TTS plugin, please, emerge festival and enable "Use TTS program." at:'
+ elog '"Preferences -> Dictionary -> Sound" and fill in "Commandline" with:'
+ elog '"echo %s | festival --tts"'
+ elog
+ elog "You will now need to install ${PN} dictionary files. If"
+ elog "you have not, execute the below to get a list of dictionaries:"
+ elog
+ elog " emerge -s ${PN}-"
+
+ gnome2_pkg_postinst
+}
diff --git a/dev-cpp/cpplint/cpplint-99999999.ebuild b/dev-cpp/cpplint/cpplint-99999999.ebuild
new file mode 100644
index 00000000..127d6581
--- /dev/null
+++ b/dev-cpp/cpplint/cpplint-99999999.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( jython2_7 pypy python2_7 )
+EGIT_REPO_URI="git://github.com/google/styleguide.git"
+inherit elisp-common eutils git-r3 python-single-r1
+RESTRICT="mirror"
+
+DESCRIPTION="The google styleguide together with cpplint and an emacs file"
+HOMEPAGE="https://github.com/google/styleguide"
+SRC_URI=""
+LICENSE="CC-BY-3.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="emacs"
+
+EMACSNAME="google-c-style"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+COMMON="emacs? ( virtual/emacs )"
+DEPEND="${COMMON}"
+RDEPEND="dev-lang/python
+ ${PYTHON_DEPS}
+ ${COMMON}"
+
+src_prepare() {
+ if use emacs
+ then mkdir sitefile
+ cat >"sitefile/50${EMACSNAME}-gentoo.el" <<EOF
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'google-set-c-style "${EMACSNAME}"
+ "Set the current buffer's c-style to Google C/C++ Programming
+ Style. Meant to be added to \`c-mode-common-hook'." t)
+(add-hook 'c-mode-common-hook 'google-set-c-style)
+
+; If you want the RETURN key to go to the next line and space over
+; to the right place, uncomment the following line
+;(add-hook 'c-mode-common-hook 'google-make-newline-indent)
+EOF
+ fi
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env python$"#!'"${EPREFIX}/usr/bin/python"'"' \
+ -- "${S}/${PN}/${PN}.py" || die
+ python_fix_shebang "${S}"
+ epatch_user
+}
+
+src_compile() {
+ if use emacs
+ then elisp-compile *.el || die
+ fi
+}
+
+src_install() {
+ dobin ${PN}/cpplint.py
+ dodoc ${PN}/README README.md
+ if use emacs
+ then elisp-install "${EMACSNAME}" "${EMACSNAME}".{el,elc} || die
+ elisp-site-file-install "sitefile/50${EMACSNAME}-gentoo.el" "${EMACSNAME}" || die
+ fi
+ insinto /usr/share/vim/vimfiles/syntax
+ doins *.vim
+ insinto /usr/share/doc/${PF}/html
+ doins -r *.css *.html *.png *.xsl include
+}
+
+pkg_postinst() {
+ elisp-site-regen
+}
+
+pkg_postrm() {
+ elisp-site-regen
+}
diff --git a/dev-cpp/cpplint/metadata.xml b/dev-cpp/cpplint/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/dev-cpp/cpplint/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-perl/File-lchown/File-lchown-0.20-r1.ebuild b/dev-perl/File-lchown/File-lchown-0.20-r1.ebuild
new file mode 100644
index 00000000..a79c25d3
--- /dev/null
+++ b/dev-perl/File-lchown/File-lchown-0.20-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+
+MODULE_AUTHOR=PEVANS
+MODULE_VERSION=0.02
+inherit perl-module
+
+DESCRIPTION="Use the lchown(2) and lutimes(2) system call from Perl"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ dev-perl/ExtUtils-CChecker
+ dev-perl/Module-Build"
diff --git a/dev-perl/File-lchown/Manifest b/dev-perl/File-lchown/Manifest
new file mode 100644
index 00000000..5d63218e
--- /dev/null
+++ b/dev-perl/File-lchown/Manifest
@@ -0,0 +1 @@
+DIST File-lchown-0.02.tar.gz 11821 SHA256 a02fbf285406a8a4d9399284f032f2d55c56975154c2e1674bd109837b8096ec SHA512 0673176423465cd18d41708977216a3785e4d6204928472499be25be3f86f376646dc2636406855ae75a0bfbce26bc36d2fbf410950febc2978b4c6d5fb99922 WHIRLPOOL 7a78c507c527b2caa667edf536f4f56d3419d00a41a3404b372ec262b4419114f31291fa0d0ec6453e937821fdc9fdbda40cfc5a3e4968c33bd18e13ee196b79
diff --git a/dev-perl/File-lchown/metadata.xml b/dev-perl/File-lchown/metadata.xml
new file mode 100644
index 00000000..ab3ee0c6
--- /dev/null
+++ b/dev-perl/File-lchown/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="cpan">File-lchown</remote-id>
+ <remote-id type="cpan-module">File::lchown</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-tex/chklref/Manifest b/dev-tex/chklref/Manifest
new file mode 100644
index 00000000..3b752b69
--- /dev/null
+++ b/dev-tex/chklref/Manifest
@@ -0,0 +1 @@
+DIST chklref-2.6.0.tar.gz 330048 SHA256 eeede59fdffe79f4123480b7f72e31264556474f208348db9ffd5b0aa613fc9a SHA512 30e15be050fb344575245dc8e52455e406457491ee4fd3da66d22ab2e21cefc51673936900a6bc91c2eb05440dc46a68bfb77e9fe6d1a3d0bc94febf83de4343 WHIRLPOOL 80f72d0f23cb1a6109552e772ba6e5ea83e689ab9559090bea7feb2fec01c54854d586281ec94ce333a0301660f6f1417ce82b562cc0a2f3762b0249b9814cdb
diff --git a/dev-tex/chklref/chklref-2.6.0.ebuild b/dev-tex/chklref/chklref-2.6.0.ebuild
new file mode 100644
index 00000000..d2cbb04f
--- /dev/null
+++ b/dev-tex/chklref/chklref-2.6.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils latex-package
+RESTRICT="mirror"
+
+DESCRIPTION="Finds out useless references in latex files or numbered environments that should not be"
+HOMEPAGE="http://www-ljk.imag.fr/membres/Jerome.Lelong/soft/chklref/index.html"
+SRC_URI="http://www-ljk.imag.fr/membres/Jerome.Lelong/soft/chklref/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="virtual/latex-base
+ dev-lang/perl"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- "${S}"/src/chklref.in || die
+ epatch_user
+}
+
+src_configure() {
+ econf --with-texmf-prefix="${EPREFIX}${TEXMF}"
+}
+
+src_compile() {
+ default
+}
+
+src_install() {
+ default
+ dodoc README
+}
diff --git a/dev-tex/chklref/metadata.xml b/dev-tex/chklref/metadata.xml
new file mode 100644
index 00000000..472e8676
--- /dev/null
+++ b/dev-tex/chklref/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>jerome.lelong@imag.fr</email>
+ <name>Jérôme Lelong</name>
+ </maintainer>
+ <bugs-to>mailto:jerome.lelong@imag.fr</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-util/ccache/ccache-99999999-r3.ebuild b/dev-util/ccache/ccache-99999999-r3.ebuild
new file mode 100644
index 00000000..0d9fed91
--- /dev/null
+++ b/dev-util/ccache/ccache-99999999-r3.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+WANT_LIBTOOL=none
+EGIT_REPO_URI="git://git.samba.org/ccache.git"
+inherit autotools eutils git-r3 readme.gentoo
+
+DESCRIPTION="fast compiler cache"
+HOMEPAGE="http://ccache.samba.org/"
+
+SRC_URI=""
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+DEPEND="app-arch/xz-utils
+ sys-libs/zlib"
+RDEPEND="${DEPEND}
+ sys-apps/gentoo-functions"
+
+src_prepare() {
+ # make sure we always use system zlib
+ rm -rf zlib || die
+ epatch "${FILESDIR}"/${PN}-3.1.7-no-perl.patch #421609
+ epatch "${FILESDIR}"/${PN}-3.1.10-size-on-disk.patch #456178
+ sed \
+ -e "/^EPREFIX=/s:'':'${EPREFIX}':" \
+ "${FILESDIR}"/ccache-config-3 > ccache-config || die
+ epatch_user
+ eautoreconf
+}
+
+src_install() {
+ DOCS=( AUTHORS.txt MANUAL.txt NEWS.txt README.txt )
+ default
+
+ dobin ccache-config
+
+ DOC_CONTENTS="
+To use ccache with **non-Portage** C compiling, add
+'${EPREFIX}/usr/lib/ccache/bin' to the beginning of your path, before '${EPREFIX}/usr/bin'.
+Portage 2.0.46-r11+ will automatically take advantage of ccache with
+no additional steps. If this is your first install of ccache, type
+something like this to set a maximum cache size of 2GB:
+# ccache -M 2G
+If you are upgrading from an older version than 3.x you should clear all of your caches like so:
+# CCACHE_DIR='${CCACHE_DIR:-${PORTAGE_TMPDIR}/ccache}' ccache -C
+ccache now supports sys-devel/clang and dev-lang/icc, too!"
+
+ readme.gentoo_create_doc
+}
+
+pkg_prerm() {
+ if [[ -z ${REPLACED_BY_VERSION} ]] ; then
+ "${EROOT}"/usr/bin/ccache-config --remove-links
+ "${EROOT}"/usr/bin/ccache-config --remove-links ${CHOST}
+ fi
+}
+
+pkg_postinst() {
+ "${EROOT}"/usr/bin/ccache-config --install-links
+ "${EROOT}"/usr/bin/ccache-config --install-links ${CHOST}
+
+ # nuke broken symlinks from previous versions that shouldn't exist
+ rm -f "${EROOT}"/usr/lib/ccache/bin/${CHOST}-cc || die
+ rm -rf "${EROOT}"/usr/lib/ccache.backup || die
+
+ readme.gentoo_print_elog
+}
diff --git a/dev-util/ccache/files/ccache-3.1.10-size-on-disk.patch b/dev-util/ccache/files/ccache-3.1.10-size-on-disk.patch
new file mode 100644
index 00000000..5e502912
--- /dev/null
+++ b/dev-util/ccache/files/ccache-3.1.10-size-on-disk.patch
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/56178
+
+stick to the size of files on disk rather than their byte size.
+this func is only used for stats management, so this should be safe.
+
+--- a/util.c
++++ b/util.c
+@@ -845,12 +845,7 @@ file_size(struct stat *st)
+ #ifdef _WIN32
+ return (st->st_size + 1023) & ~1023;
+ #else
+- size_t size = st->st_blocks * 512;
+- if ((size_t)st->st_size > size) {
+- /* probably a broken stat() call ... */
+- size = (st->st_size + 1023) & ~1023;
+- }
+- return size;
++ return st->st_blocks * 512;
+ #endif
+ }
+
diff --git a/dev-util/ccache/files/ccache-3.1.7-no-perl.patch b/dev-util/ccache/files/ccache-3.1.7-no-perl.patch
new file mode 100644
index 00000000..5abd15e1
--- /dev/null
+++ b/dev-util/ccache/files/ccache-3.1.7-no-perl.patch
@@ -0,0 +1,15 @@
+avoid weak perl usage in tests
+
+https://bugs.gentoo.org/421609
+
+--- a/test.sh
++++ b/test.sh
+@@ -1466,7 +1466,7 @@
+ mkdir -p $dir
+ i=0
+ while [ $i -lt 10 ]; do
+- perl -e 'print "A" x 4017' >$dir/result$i-4017.o
++ printf '%4017s' '' | tr ' ' 'A' >$dir/result$i-4017.o
+ touch $dir/result$i-4017.stderr
+ touch $dir/result$i-4017.d
+ if [ $i -gt 5 ]; then
diff --git a/dev-util/ccache/files/ccache-config-3 b/dev-util/ccache/files/ccache-config-3
new file mode 100644
index 00000000..7f604f00
--- /dev/null
+++ b/dev-util/ccache/files/ccache-config-3
@@ -0,0 +1,97 @@
+#!/bin/sh
+#
+# ccache-config - helper script for ccache and its ebuild
+#
+# Copyright 2003-2014 Superlucidity Services, LLC
+# Copyright 2013-2014 Gentoo Foundation
+# This program licensed under the GNU GPL version 2.
+#
+# This script developed by Zachary T Welch at Superlucidity Services, LLC
+# it was cloned from the distcc-config script
+#
+# Additional features to come; this provides a starting point
+
+EPREFIX=''
+
+. "${EPREFIX}"/lib/gentoo/functions.sh 2>/dev/null || {
+ ebegin() { echo " * $* ..."; }
+ eend() {
+ local r=${1:-$?}
+ [ ${r} -eq 0 ] && echo " [ OK ]" || echo " [ !! ]"
+ return $r
+ }
+}
+
+LIBDIR="lib"
+
+# this should be getopt'd someday (override with CC_QUIET=1)
+CC_VERBOSE=1
+unset _CC_QUIET
+c_quiet() {
+ [ -n "${CC_QUIET:-${_CC_QUIET}}" ] || [ -z "${CC_VERBOSE}" ]
+}
+
+c_ebegin() { c_quiet || ebegin "$@" ; }
+c_eend() { c_quiet || eend "$@" ; }
+
+###
+# the following functions manage the ccache symlinks
+# they allow the user or other scripts (namely gcc-config) to
+# automatically update ccache's links when upgrading toolchains
+#
+cc_path() {
+ echo ${ROOT%/}${EPREFIX}/usr/${LIBDIR}/ccache/bin/$1
+}
+cc_remove_link() {
+ local t=$(cc_path "$1")
+ if [ -L ${t} ]; then
+ c_ebegin "Removing ${t}"
+ rm -f "${t}"
+ c_eend
+
+ # Trim the empty dir if possible. #517242
+ t=${t%/*}
+ if rmdir "${t}" 2>/dev/null; then
+ rmdir "${t%/*}" 2>/dev/null
+ fi
+ :
+ fi
+}
+cc_install_link() {
+ # Search the PATH for the specified compiler
+ # then create shadow link in /usr/lib/ccache/bin to ccache
+
+ if command -v "$1" >/dev/null ; then
+ # first be sure any old link is removed
+ _CC_QUIET=1
+ cc_remove_link "$1"
+ unset _CC_QUIET
+
+ # then create the new link
+ local t=$(cc_path "$1")
+ c_ebegin "Creating ccache shadow link ${t}"
+ mkdir -p -m 0755 "${t%/*}" && ln -s "${EPREFIX}"/usr/bin/ccache "${t}"
+ c_eend
+ fi
+}
+cc_links() {
+ local a
+ for a in gcc cc c++ g++ icc icpc clang clang++ ; do
+ "cc_${1}_link" "${2}${2:+-}${a}"
+ done
+}
+
+###
+# main routine
+
+case $1 in
+ --install-links )
+ cc_links install "$2"
+ ;;
+ --remove-links )
+ cc_links remove "$2"
+ ;;
+ * )
+ echo "usage: $0 {--install-links|--remove-links} [ CHOST ]"
+ ;;
+esac
diff --git a/dev-util/ccache/metadata.xml b/dev-util/ccache/metadata.xml
new file mode 100644
index 00000000..21bd7702
--- /dev/null
+++ b/dev-util/ccache/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>toolchain</herd>
+ <maintainer>
+ <email>robbat2@gentoo.org</email>
+ </maintainer>
+ <longdescription lang="en">
+ ccache acts as a caching pre-processor to C/C++ compilers, improving
+ compilation time when recompiling previously compiled source.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-util/diffhelp/Manifest b/dev-util/diffhelp/Manifest
new file mode 100644
index 00000000..86306f98
--- /dev/null
+++ b/dev-util/diffhelp/Manifest
@@ -0,0 +1 @@
+DIST diffhelp-1.9.tar.gz 1974 SHA256 b01883002d797c3d9d7e1268b66e24ef36e02642339151c3ad05645da5b69a06 SHA512 ea2ffa07041a28545facd6a626ab49c1853f2e32e64f05ba52cbb7afe8243f60474c48f46b853e99008d20fc4bebea70ee6516bfc794a9c601b786fa006dd0d1 WHIRLPOOL af924437aef7f58282606ed294c45d526fb7022f500cae9eb3acb9e589c7499b5a49ccff62f18f10548c4e3f70b95bbc13f0f5d67d18aa09aef06f322be38812
diff --git a/dev-util/diffhelp/diffhelp-1.9.ebuild b/dev-util/diffhelp/diffhelp-1.9.ebuild
new file mode 100644
index 00000000..f3539c9c
--- /dev/null
+++ b/dev-util/diffhelp/diffhelp-1.9.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="A frontend, beautifier, and path-fixer for diff -u"
+HOMEPAGE="https://github.com/vaeth/diffhelp/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- "${PN}" || die
+ epatch_user
+}
+
+src_install() {
+ dobin "${PN}"
+ insinto /usr/share/zsh/site-functions
+ doins "_${PN}"
+}
diff --git a/dev-util/diffhelp/metadata.xml b/dev-util/diffhelp/metadata.xml
new file mode 100644
index 00000000..a6ce60d0
--- /dev/null
+++ b/dev-util/diffhelp/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/diffhelp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-util/mv_perl/Manifest b/dev-util/mv_perl/Manifest
new file mode 100644
index 00000000..bc96c0ae
--- /dev/null
+++ b/dev-util/mv_perl/Manifest
@@ -0,0 +1 @@
+DIST mv_perl-2.49.tar.gz 66965 SHA256 f3554df1ca22431c45e1942127ee1ee771b9ef4be4606a276f9a3b146bfc36d4 SHA512 911390eb995e4b881a2944608e9917d197f4d16e983b131d8523d460b73233a5a4d3f71d0df7f33382e9b022b1f812880619994e61071756d93ad362cd0ce8aa WHIRLPOOL a82576ef7c8c8884e7d6d3f429e569a5cd0ccb7b21d5374856f6d969c7a49f1361faeac58cee34c5dc759134de17abf9f97d44542e39293dc9f16f8c40ce34b7
diff --git a/dev-util/mv_perl/metadata.xml b/dev-util/mv_perl/metadata.xml
new file mode 100644
index 00000000..6b63165a
--- /dev/null
+++ b/dev-util/mv_perl/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/mv_perl</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-util/mv_perl/mv_perl-2.49.ebuild b/dev-util/mv_perl/mv_perl-2.49.ebuild
new file mode 100644
index 00000000..83f2adcd
--- /dev/null
+++ b/dev-util/mv_perl/mv_perl-2.49.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="A collection of perl scripts (replacement in files, syncing dirs etc)"
+HOMEPAGE="https://github.com/vaeth/mv_perl/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=dev-lang/perl-5.12"
+# || ( >=dev-lang/perl-5.9.4 >=virtual/perl-File-Spec-3.0 )
+# || ( >=dev-lang/perl-5.6.1 >=virtual/perl-Getopt-Long-2.24 )
+# || ( >=dev-lang/perl-5.7.3 virtual/perl-Digest-MD5 )
+# || ( >=dev-lang/perl-5.7.3 virtual/perl-Time-HiRes )
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ dobin bin/*
+ dodoc README
+ insinto /usr/share/zsh/site-functions
+ doins zsh/_*
+}
+
+pkg_postinst() {
+ optfeature "support to set timestamps of symlinks" 'dev-perl/File-lchown'
+}
diff --git a/dev-util/pyrep/Manifest b/dev-util/pyrep/Manifest
new file mode 100644
index 00000000..516923ed
--- /dev/null
+++ b/dev-util/pyrep/Manifest
@@ -0,0 +1 @@
+DIST pyrep-1.4.tar.gz 8622 SHA256 8051593becdd43ceaa3e0602f4d20c02f85b70233d443147ffbbb9ab715451f4 SHA512 9038b6368930628488f5e47a08262c9a51aec20172e8528d199d113653e445d37a69d4f07c00087cc8359e04fcf864ea72c749d9552b580d8f38ff62d8ec55f7 WHIRLPOOL 7a752cde3c1e84d2900dd3704ef2bdfb72ae06741c801cbcc6c3b11decf88674a108dce704dd4038a5e9c9b21c6b45d37a9e10fadc9853748f8c0bfb0f121fe9
diff --git a/dev-util/pyrep/metadata.xml b/dev-util/pyrep/metadata.xml
new file mode 100644
index 00000000..d9f498ac
--- /dev/null
+++ b/dev-util/pyrep/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/pyrep</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-util/pyrep/pyrep-1.4-r1.ebuild b/dev-util/pyrep/pyrep-1.4-r1.ebuild
new file mode 100644
index 00000000..c10ea901
--- /dev/null
+++ b/dev-util/pyrep/pyrep-1.4-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+PYTHON_COMPAT=( jython2_7 pypy{,3} python{2_7,3_{4,5}} )
+inherit eutils python-single-r1
+
+DESCRIPTION="Search and/or replace regular expressions within many files interactively"
+HOMEPAGE="https://github.com/vaeth/pyrep/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RDEPEND="${PYTHON_DEPS}"
+
+src_prepare() {
+ python_fix_shebang "${S}"
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env python$"#!'"${EPREFIX}/usr/bin/python"'"' \
+ -- "${PN}" || die
+ epatch_user
+}
+
+src_install() {
+ dobin "${PN}"
+ dodoc AUTHORS README
+}
diff --git a/eclass/ChangeLog b/eclass/ChangeLog
new file mode 100644
index 00000000..ba3d84b4
--- /dev/null
+++ b/eclass/ChangeLog
@@ -0,0 +1,33 @@
+# ChangeLog for eclass directory
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+ 25 Jan 2015; Martin Väth <martin@mvath.de>:
+ avoid use_if_iuse in mv_mozextenstion.eclass to be fully pms compatible
+
+ 24 Jan 2015; Martin Väth <martin@mvath.de>:
+ Remove auteps from mv_mozextension.eclass
+
+ 14 Aug 2013; Martin Väth <martin@mvath.de>:
+ Simplify EPREFIX
+
+ 22 Sep 2012; Martin Väth <martin@mvath.de>:
+ Use AUTHOR tag. Use $ECLASS for message
+
+ 21 Sep 2012; Martin Väth <martin@mvath.de>:
+ mv_mozextension: Use slot dependencies; requires at least EAPI=5
+ monotone: Remove useless DESCRIPTION
+
+ 26 Aug 2012; Martin Väth <martin@mvath.de>:
+ Rename IUSE={copy,symlink}_extensions to {copy,symlink}-extensions to avoid
+ possible collision with USE_EXPAND
+
+ 10 Jun 2012; Martin Väth <martin@mvath.de>:
+ Remove support for icecat. Fix headers to make repoman happy.
+
+ 12 May 2012; Martin Väth <martin@mvath.de>:
+ base->eutils
+
+ 12 May 2012; Martin Väth <martin@mvath.de>:
+ Created ChangeLog
+
diff --git a/eclass/monotone.eclass b/eclass/monotone.eclass
new file mode 100644
index 00000000..a8d6ec46
--- /dev/null
+++ b/eclass/monotone.eclass
@@ -0,0 +1,197 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# @ECLASS: monotone.eclass
+# @MAINTAINER:
+# Martin Väth <martin@mvath.de>
+# @AUTHOR:
+# Martin Väth <martin@mvath.de>
+# @BLURB: The monotone eclass is written to fetch software sources from monotone repositories
+# @DESCRIPTION:
+# The monotone eclass provides functions to fetch software sources from
+# monotone repositories.
+
+# @ECLASS-VARIABLE: EMTN_STORE_DIR
+# @DESCRIPTION:
+# monotone sources store directory. Users may override this in /etc/make.conf
+: ${EMTN_STORE_DIR:=${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}/mtn-src}
+
+# @ECLASS-VARIABLE: EMTN_OFFLINE
+# @DESCRIPTION:
+# Set this variable to a non-empty value to disable the automatic updating of
+# an monotone source tree. This is intended to be set by users.
+: ${EMTN_OFFLINE:=${EVCS_OFFLINE}}
+
+# @ECLASS-VARIABLE: EMTN_CMD
+# @DESCRIPTION:
+# monotone command with argument for database which must be '$db'
+: ${EMTN_CMD:=mtn -d \"\$db\"}
+
+# @ECLASS-VARIABLE: EMTN_PULL_CMD
+# @DESCRIPTION:
+# monotone pull command
+: ${EMTN_PULL_CMD:=${EMTN_CMD} pull}
+
+# @ECLASS-VARIABLE: EMTN_INIT_CMD
+# @DESCRIPTION:
+# monotone init command
+: ${EMTN_INIT_CMD:=${EMTN_CMD} db init}
+
+# @ECLASS-VARIABLE: EMTN_CO_CMD
+# @DESCRIPTION:
+# monotone checkout command
+: ${EMTN_CO_CMD:=${EMTN_CMD} co}
+
+# @ECLASS-VARIABLE: EMTN_PRINT_HEADS_CMD
+# @DESCRIPTION:
+# monotone command to print the revision of the heads
+: ${EMTN_PRINT_HEADS_CMD:=${EMTN_CMD} automate heads}
+
+# @ECLASS-VARIABLE: EMTN_DB
+# @DESCRIPTION:
+# Name of the database file where the local monotone repository is stored.
+: ${EMTN_DB:=${PN}.db}
+
+# @ECLASS-VARIABLE: EMTN_REPO_URI
+# @DESCRIPTION:
+# Name of the external monotone repository, e.g. foo.bar.org
+: ${EMTN_REPO_URI:=}
+
+# @ECLASS-VARIABLE: EMTN_GLOB
+# @DESCRIPTION:
+# Name of the glob for the external repository. Typically '*'
+: ${EMTN_GLOB:=*}
+
+# @ECLASS-VARIABLE: EMTN_MODULEPATH
+# @DESCRIPTION:
+# Name of the module to checkout
+: ${EMTN_MODULEPATH:=${PN}}
+
+# @ECLASS-VARIABLE: EMTN_MODULEDIR
+# @DESCRIPTION:
+# Name where the module should come. Empty means: basename of modulepath.
+: ${EMTN_MODULEDIR:=}
+
+# @ECLASS-VARIABLE: EMTN_REVISIONARGS
+# @DESCRIPTION:
+# Args for revision to checkout, e.g. "-r something"
+# The special value "head" means to use the first head.
+: ${EMTN_REVISIONARGS=head}
+
+# @ECLASS-VARIABLE: EMTN_DISABLE_DEPENDENCIES
+# @DESCRIPTION:
+# Set this variable to a non-empty value to disable the automatic inclusion of
+# monotone in dependencies.
+: ${EMTN_DISABLE_DEPENDENCIES:=}
+
+# @FUNCTION: monotone_fetch
+# @USAGE: [repo_uri] [glob] [db]
+# @DESCRIPTION:
+# Fetch/update ${EMTN_STORE_DIR}/database from external uri (using glob)
+# and copy it into ${S}.
+# After this function, current working directory is ${S}.
+#
+# Can take three optional parameters:
+# repo_uri - a repository URI. If empty defaults to EMTN_REPO_URI.
+# glob - The glob for URI. If empty defaults to EMTN_GLOB.
+# db - the database filename. If empty defaults to EMTN_DB.
+monotone_fetch() {
+ local repo_uri glob db db_full
+ repo_uri=${1:-${EMTN_REPO_URI}}
+ glob=${2:-${EMTN_GLOB}}
+ db=${3:-${EMTN_DB}}
+ test -d "${EMTN_STORE_DIR}" || (
+ addwrite /
+ mkdir -p -- "/${EMTN_STORE_DIR}"
+ )
+ cd -P -- "${EMTN_STORE_DIR}" >/dev/null \
+ || die "cannot cd to ${EMTN_STORE_DIR}"
+
+ if ! test -e "${db}"
+ then (
+ addwrite "${PWD}"
+ einfo "Initializing new ${db}" && \
+ eval "${EMTN_INIT_CMD}" && \
+ einfo "Fetching ${db} from remote ${repo_uri}" && \
+ eval "${EMTN_PULL_CMD} \"\${repo_uri}\" \"\${glob}\""
+ )
+ elif [ -z "${EMTN_OFFLINE}" ]
+ then (
+ addwrite "${PWD}"
+ einfo "Updating ${db} from remote ${repo_uri}"
+ eval "${EMTN_PULL_CMD}"
+ )
+ fi || die "Could not fetch/update ${db}"
+ db_full="${EMTN_STORE_DIR}/${db}"
+ einfo "Copying database ${db_full} ..."
+ test -d "${S}" || mkdir -p -- "${S}" || die "mkdir ${S} failed"
+ cd -- "${S}" >/dev/null
+ cp -p -- "${db_full}" "${db}" || die "cp ${db_full} ${db} failed"
+}
+
+# @FUNCTION: monotone_co
+# @USAGE: [db] [modulepath] [moduledir] [revisionargs]
+# @DESCRIPTION:
+# Unpack monotone sources from the local database.
+#
+# All parameters are optional:
+# db - the database filename. If empty defaults to EMTN_DB.
+# modulepath - the name of the module to checkout.
+# If empty defaults to EMTN_MODULEPATH
+# moduledir - the name of the directory in which the module should come.
+# If empty defaults to EMTN_MODULEDIR
+# If that is also empty defaults to basename of EMTN_MODULEPATH.
+# revisionargs - Args for the revision to checkout. If empty defaults to
+# EMTN_REVISIONARGS.
+# The special value "head" means to use the first head.
+monotone_co() {
+ local db modulepath moduledir r
+ db=${1:-${EMTN_DB}}
+ modulepath=${2:-${EMTN_MODULEPATH}}
+ moduledir=${3:-${EMTN_MODULEDIR}}
+ [ -z "${moduledir}" ] && moduledir=${modulepath##*/}
+ if [ ${#} -gt 3 ]
+ then shift 3
+ else eval "set -- ${EMTN_REVISIONARGS}"
+ fi
+ if [ "${1}" = 'head' ]
+ then if r=`eval "${EMTN_PRINT_HEADS_CMD} \"\${modulepath}\"" \
+ | tail -n1` && [ -n "${r}" ]
+ then set -- -r "${r}"
+ else set --
+ fi
+ fi
+ if [ -n "${modulepath}" ]
+ then einfo "Checking out module ${modulepath}"
+ eval "${EMTN_CO_CMD} -b \"\${modulepath}\" \"\${@}\" \"\${moduledir}\"" \
+ || die "checkout of ${modulepath} failed"
+ else einfo "Checking out module ${module}"
+ eval "${EMTN_CO_CMD} \"\${@}\" \"\${moduledir}\"" \
+ || die "checkout of ${module} failed"
+ fi
+}
+
+# @FUNCTION: monotone_finish
+# @USAGE: [db]
+# @DESCRIPTION:
+# Call this when all modules are checked out: Removes the local database.
+# The optional argument db defaults to EMTN_DB.
+monotone_finish() {
+ local db
+ db=${1:-${EMTN_DB}}
+ rm -- "${S}/${db}" || die "cannot remove ${S}/${db}"
+}
+
+# @FUNCTION: monotone_src_unpack
+# @DESCRIPTION:
+# Default src_unpack. Call monotone_fetch, monotone_co, monotone_finish
+monotone_src_unpack() {
+ monotone_fetch
+ monotone_co
+ monotone_finish
+}
+
+[ -n "${EMTN_DISABLE_DEPENDENCIES}" ] || DEPEND='dev-vcs/monotone'
+
+EXPORT_FUNCTIONS src_unpack
diff --git a/eclass/mv_mozextension.eclass b/eclass/mv_mozextension.eclass
new file mode 100644
index 00000000..7d3ab08d
--- /dev/null
+++ b/eclass/mv_mozextension.eclass
@@ -0,0 +1,154 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# @ECLASS: mv_mozextension.eclass
+# @MAINTAINER:
+# Martin Väth <martin@mvath.de>
+# @BLURB: This eclass provides functions to install mozilla extensions
+# @DESCRIPTION:
+# The eclass is based on mozextension.eclass with many extensions.
+# 1. It has some compatibility fixes in xpi_install/xpi_unpack.
+# 2. A default src_unpack function is defined; set FILENAME to the archive name.
+# If FILENAME is unset or empty, the last part of the last SRC_URI is used.
+# 3. Default functions for installation for all mozilla type browsers.
+
+# @ECLASS-VARIABLE: MV_MOZ_MOZILLAS
+# @DESCRIPTION:
+# If this variables is set to the empty value, no default install functions
+# are defined. Otherwise, the value of this variable should be
+# "firefox seamonkey" (default)
+# or a subset of these.
+# The eclass will then install the extension for all these mozillas,
+# set corresponding dependencies and print corresponding messages.
+: ${MV_MOZ_MOZILLAS=firefox seamonkey}
+
+inherit eutils multilib
+
+case ${EAPI:-0} in
+[01234])
+ die "EAPI ${EAPI} no longer supported by ${ECLASS}";;
+esac
+
+MV_MOZ_IUSE=
+RDEPEND='|| ('
+case ${MV_MOZ_MOZILLAS} in
+*fire*)
+ MV_MOZ_IUSE="${MV_MOZ_IUSE}${MV_MOZ_IUSE:+ }firefox firefox-bin"
+ RDEPEND="${RDEPEND}
+ firefox? ( >=www-client/firefox-21 )
+ firefox-bin? ( >=www-client/firefox-bin-21 )"
+esac
+case ${MV_MOZ_MOZILLAS} in
+*sea*)
+ MV_MOZ_IUSE="${MV_MOZ_IUSE}${MV_MOZ_IUSE:+ }seamonkey seamonkey-bin"
+ RDEPEND="${RDEPEND}
+ seamonkey? ( www-client/seamonkey )
+ seamonkey-bin? ( www-client/seamonkey-bin )"
+esac
+RDEPEND="${RDEPEND} )"
+IUSE=${MV_MOZ_IUSE}
+REQUIRED_USE="|| ( ${MV_MOZ_IUSE} )"
+
+DEPEND='app-arch/unzip'
+
+mv_mozextension_src_unpack() {
+ local i
+ if [ -z "${FILENAME}" ]
+ then for i in ${SRC_URI}
+ do FILENAME=${i##*/}
+ done
+ fi
+ xpi_unpack "${FILENAME}"
+}
+
+mv_mozextension_src_prepare() {
+ epatch_user
+}
+
+EXPORT_FUNCTIONS src_unpack src_prepare
+
+mv_mozextension_src_install() {
+ local b e
+ b="${EPREFIX}/usr/$(get_libdir)"
+ e="${EPREFIX}/opt"
+ mv_mozextension_install firefox "${b}/firefox/browser/extensions"
+ mv_mozextension_install firefox-bin "${e}/firefox/browser/extensions"
+ mv_mozextension_install seamonkey "${b}/seamonkey/extensions"
+ mv_mozextension_install seamonkey-bin "${e}/seamonkey/extensions"
+}
+
+[ -z "${MV_MOZ_MOZILLAS}" ] || EXPORT_FUNCTIONS src_install
+
+xpi_unpack() {
+ local xpi srcdir u
+
+ # Not gonna use ${A} as we are looking for a specific option being passed to function
+ # You must specify which xpi to use
+ [ ${#} -eq 0 ] && die \
+ "Nothing passed to the ${FUNCNAME} command. Please pass which xpi to unpack"
+
+ test -d "${S}" || mkdir "${S}" || die
+ for xpi
+ do einfo "Unpacking ${xpi} to ${S}"
+ xpiname=${xpi%.*}
+ xpiname=${xpiname##*/}
+
+ case ${xpi} in
+ ./*|/*)
+ srcdir=;;
+ *)
+ srcdir="${DISTDIR}/";;
+ esac
+
+ test -s "${srcdir}${xpi}" || die "${xpi} does not exist"
+
+ case ${xpi##*.} in
+ ZIP|zip|jar|xpi)
+ mkdir -- "${S}/${xpiname}" && \
+ cd -- "${S}/${xpiname}" && \
+ unzip -qo -- "${srcdir}${xpi}" \
+ || die "failed to unpack ${xpi}"
+ chmod -R a+rX,u+w,go-w -- "${S}/${xpiname}";;
+ *)
+ einfo "unpack ${xpi}: file format not recognized. Ignoring.";;
+ esac
+ done
+}
+
+xpi_install() {
+ local d x
+
+ # You must tell xpi_install which dir to use
+ [ ${#} -eq 1 ] || die "${FUNCNAME} takes exactly one argument. Please specify the directory"
+
+ x=${1}
+ # determine id for extension
+ d='{ /\<\(em:\)*id\>/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }'
+ d=$(sed -n -e '/install-manifest/,$ '"${d}" "${x}"/install.rdf) \
+ && [ -n "${d}" ] || die 'failed to determine extension id'
+ : ${MOZILLA_EXTENSIONS_DIRECTORY:="${MOZILLA_FIVE_HOME}/extensions"}
+ d="${MOZILLA_EXTENSIONS_DIRECTORY}/${d}"
+ test -d "${D}${d}" || dodir "${d}" || die "failed to create ${d}"
+ cp -RPl -- "${x}"/* "${D}${d}" || {
+ ewarn 'Failed to hardlink extension. Falling back to USE=copy-extensions'
+ insinto "${d}" && doins -r "${x}"/*
+ } || die 'failed to copy extension'
+}
+
+# This function is called by mv_mozextension_src_install
+# and should be overridden if the paths do not match:
+# It just should call xpi_install with the correct argument(s)
+xpi_install_dirs() {
+ local d
+ for d in "${S}"/*
+ do [ -n "${d}" ] && test -d "${d}" && xpi_install "${d}"
+ done
+}
+
+mv_mozextension_install() {
+ local MOZILLA_EXTENSIONS_DIRECTORY
+ has "${1}" ${MV_MOZ_IUSE} && use "${1}" || return 0
+ MOZILLA_EXTENSIONS_DIRECTORY=${2}
+ xpi_install_dirs
+}
diff --git a/games-rpg/m5figur-mv/Manifest b/games-rpg/m5figur-mv/Manifest
new file mode 100644
index 00000000..b4a5da20
--- /dev/null
+++ b/games-rpg/m5figur-mv/Manifest
@@ -0,0 +1 @@
+DIST m5figur-mv-2.4.tar.gz 19263 SHA256 f01e88d8d05ff780fc9d4d97671dc7cd353df37094ddf5307f85e16e5041ef2e SHA512 2229896d120e78573f0add5c8e14f8d589da6d1cf4dc590f4cbc46e9112bda0926404b68f755d2b9ffb9b846b53eb556c53bc6bc1c45d4c0d5b20088bd5ccd4d WHIRLPOOL 073c6e67dc1e8ca183b5c1aca48dd20c944879193c4dd4f703f298d5e63cd915fcdbba8ce6f334e9ae2aea6179262e4e6815c53d122c00b09c7dd990f73c6c79
diff --git a/games-rpg/m5figur-mv/m5figur-mv-2.4.ebuild b/games-rpg/m5figur-mv/m5figur-mv-2.4.ebuild
new file mode 100644
index 00000000..068b1bdc
--- /dev/null
+++ b/games-rpg/m5figur-mv/m5figur-mv-2.4.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+# Do *not* inherit latex-package: It DEPENDS unconditionally on texinfo.
+# Moreover, it would attempt to compile the *.tex example with texinfo to dvi.
+inherit eutils
+RESTRICT="mirror"
+
+DESCRIPTION="LaTeX2e character sheet layout for the Midgard Role Playing Game (Edition M5)"
+HOMEPAGE="https://github.com/vaeth/m5figur-mv/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LPPL-1.2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+examples"
+# We need texlive-latexextra for toolbox.sty
+RDEPEND="virtual/latex-base
+ dev-texlive/texlive-latexextra"
+DEPEND="examples? ( ${RDEPEND} )"
+
+src_compile() {
+ if use examples
+ then einfo "Compiling example character sheet as pdf"
+ export VARTEXFONTS="${T}/fonts"
+ pdflatex *.tex && test -s *.pdf || die "could not create example"
+ fi
+}
+
+src_install() {
+ TEXMF="/usr/share/texmf-site"
+ insinto "${TEXMF}/tex/latex/${PN}"
+ doins *.cls
+ insinto "${TEXMF}/doc/latex/${PN}"
+ doins *.tex
+ if use examples
+ then doins *.pdf
+ fi
+ dodoc README
+}
+
+pkg_postinst() {
+ texconfig rehash
+}
+
+pkg_postrm() {
+ texconfig rehash
+}
diff --git a/games-rpg/m5figur-mv/metadata.xml b/games-rpg/m5figur-mv/metadata.xml
new file mode 100644
index 00000000..f388f698
--- /dev/null
+++ b/games-rpg/m5figur-mv/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/m5figur-mv</remote-id>
+ </upstream>
+ <use>
+ <flag name="examples">Compile example character sheet as PDF</flag>
+ </use>
+</pkgmetadata>
diff --git a/games-rpg/magus/Manifest b/games-rpg/magus/Manifest
new file mode 100644
index 00000000..16800cab
--- /dev/null
+++ b/games-rpg/magus/Manifest
@@ -0,0 +1,2 @@
+DIST magus-1.3.1.tar.bz2 7358580 SHA256 f7f118dff53b53a45d612d870bc2c9fb151d9c3aeea6f006b74fc6ab41dcb4d6 SHA512 b08231bb391d7f11c010afb0b881f063dbc1469d9032ba9ed9d3480e3d709709472a8e25d7104c5ee59f7e2fd222f417429233a9d730cb90a4538b089280e7c9 WHIRLPOOL 1b3dde3fc06e79ad80b4bc6ac34d5757ec81aa8a28fa9e82e46aa0ba9a3b30cb83d2c9ab8d8ca6f23cb51f00e978134b0646c839c0da4fa221b0fbbe4c10d522
+DIST magus-1.3.3.tar.bz2 7417528 SHA256 14d75aba616149e52252fe0f1d0bae796936295aacfb82f1f620d1efd20a8e86
diff --git a/games-rpg/magus/magus-1.3.1.ebuild b/games-rpg/magus/magus-1.3.1.ebuild
new file mode 100644
index 00000000..fd1eead1
--- /dev/null
+++ b/games-rpg/magus/magus-1.3.1.ebuild
@@ -0,0 +1,268 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils flag-o-matic
+RESTRICT="mirror"
+
+FETCH_RESTRICT=false
+LIVE_VERSION=false
+case ${PV} in
+9999*)
+ LIVE_VERSION=:;;
+1.3.3*)
+ FETCH_RESTRICT=:;;
+esac
+
+${LIVE_VERSION} && inherit monotone
+
+DESCRIPTION="A character generator for the popular German role playing game Midgard"
+HOMEPAGE="http://sourceforge.net/projects/midgard.berlios/"
+SRC_URI="mirror://sourceforge/midgard.berlios/${P}.tar.bz2"
+KEYWORDS="~amd64 ~x86"
+if ${LIVE_VERSION}
+then PROPERTIES="live"
+ SRC_URI=""
+ EMTN_REPO_URI="petig-baender.dyndns.org"
+ KEYWORDS=""
+elif ${FETCH_RESTRICT}
+then SRC_URI="ftp://ftp.berlios.de/pub/midgard/Source/${P}.tar.bz2"
+# Unfortunately, the URL is down forever:
+# You can only use it, if you already downloaded the tarball earlier
+ RESTRICT="${RESTRICT} fetch"
+ KEYWORDS=""
+fi
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+acroread imagemagick konqueror postgres pngcrush seamonkey"
+
+DEPENDCOMMON="dev-libs/libsigc++:2
+ dev-cpp/gtkmm:2.4
+ virtual/latex-base
+ postgres? ( dev-db/postgresql )
+ !postgres? ( dev-db/sqlite:3 )
+ || ( media-libs/netpbm media-gfx/graphicsmagick media-gfx/imagemagick )"
+
+DEPEND="${DEPENDCOMMON}
+ sys-devel/gettext
+ pngcrush? ( media-gfx/pngcrush )
+ imagemagick? ( || ( media-gfx/graphicsmagick[imagemagick] media-gfx/imagemagick ) )"
+
+RDEPEND="${DEPENDCOMMON}
+ seamonkey? ( www-client/seamonkey )
+ !seamonkey? (
+ konqueror? ( kde-base/konqueror )
+ !konqueror? (
+ || ( www-client/firefox www-client/firefox-bin )
+ )
+ )
+ acroread? ( app-text/acroread )
+ virtual/libintl"
+
+if ${LIVE_VERSION}
+then
+src_unpack() {
+ monotone_fetch
+ monotone_co "" "manuproc.berlios.de/ManuProC_Base"
+ monotone_co "" "manuproc.berlios.de/GtkmmAddons"
+ monotone_co "" "manuproc.berlios.de/ManuProC_Widgets"
+ monotone_co "" "midgard.berlios.de/midgard"
+ monotone_finish
+}
+fi
+
+src_cp() {
+ einfo "cp ${1} ${2}"
+ test -f "${1}" || {
+ ewarn "File ${1} does not exist"
+ return 0
+ }
+ if ! test -e "${2}" || diff -q -- "${1}" "${2}" >/dev/null 2>&1
+ then ewarn "cp ${1} ${2} appears no longer necessary"
+ return 0
+ fi
+ cp -- "${1}" "${2}"
+}
+
+src_sed() {
+ local short file ori ignore remove grep opt
+ ignore=false
+ remove=false
+ grep=''
+ OPTIND=1
+ while getopts 'fig:' opt
+ do case ${opt} in
+ f) remove=:;;
+ i) ignore=:;;
+ g) grep=${OPTARG};;
+ esac
+ done
+ shift $(( ${OPTIND} - 1 ))
+ short=${1}
+ file="${S}/${short}"
+ ori="${file}.ori"
+ test -e "${ori}" && ${ignore} && ori="${file}.ori-1" && remove=:
+ test -e "${ori}" && die "File ${ori} already exists"
+ if ! test -e "${file}"
+ then die "Expected file ${short} does not exist"
+ fi
+ einfo "Patching ${short}"
+ [ -n "${grep}" ] && grep -q -- "${grep}" "${file}" \
+ && ewarn "Redundant patching of ${short}"
+ mv -- "${file}" "${ori}"
+ shift
+ sed "${@}" -- "${ori}" >"${file}"
+ ! ${ignore} && cmp -s -- "${ori}" "${file}" \
+ && ewarn "Unneeded patching of ${short}"
+ ${remove} && rm -- "${ori}"
+ return 0
+}
+
+set_browser() {
+ local i browser
+ browser=
+ for i in seamonkey konqueror
+ do use "${i}" || continue
+ if [ -n "${browser}" ]
+ then ewarn "USE=${i} is overridden by USE=${browser}"
+ else browser=${i}
+ fi
+ done
+ einfo
+ if [ -z "${browser}" ]
+ then browser="firefox"
+ einfo "Patching for default browser ${browser}:"
+ elif [ "${browser}" = "mozilla" ]
+ then einfo "Keeping upstream's default browser (mozilla)"
+ einfo
+ return
+ else einfo "USE=${browser} overrides default browser firefox:"
+ fi
+ einfo
+ src_sed midgard/docs/BMod_Op.html -e "s#mozilla#${browser}#"
+ src_sed midgard/libmagus/Magus_Optionen.cc -e "s#mozilla#${browser}#"
+ src_sed midgard/midgard.glade -e "s#mozilla#${browser}#"
+ src_sed midgard/src/table_optionen_glade.cc -e "s#mozilla#${browser}#"
+}
+
+src_patch() {
+ einfo
+ einfo "Various patches:"
+ einfo
+ grep "saebel.png" midgard/src/Makefile.am && \
+ ewarn "Unneeded patching of midgard/src/Makefile.am"
+ src_sed midgard/src/Makefile.am \
+ -e 's/drache.png/Money-gray.png saebel.png drache.png/'
+ src_sed ManuProC_Widgets/configure.in \
+ -e 's/^[[:space:]]*AM_GNU_GETTEXT_VERSION/AM_GNU_GETTEXT_VERSION/'
+ src_sed -g 'AM_GNU_GETTEXT_VERSION' ManuProC_Base/configure.in \
+ -e '/AC_SUBST(GETTEXT_PACKAGE)/iAM_GNU_GETTEXT_VERSION([0.17])'
+# src_cp ManuProC_Base/macros/petig.m4 ManuProC_Widgets/macros/petig.m4
+ src_sed midgard/src/table_lernschema.cc \
+ -e '/case .*:$/{n;s/^[[:space:]]*\}/break;}/}'
+ find . -name configure.in -exec sh -c 'for i
+ do mv -- "${i}" "${i%in}ac"
+ done' sh '{}' +
+}
+
+my_cd() {
+ cd -- "${S}/${1}" >/dev/null || die "cd ${1} failed"
+}
+
+my_autoreconf() {
+ my_cd "${1}"
+ export AT_M4DIR
+ test -d macros && AT_M4DIR="macros" || AT_M4DIR=""
+ eautoreconf
+}
+
+src_prepare() {
+ local i
+ src_patch
+ epatch_user
+ set_browser
+ einfo
+ einfo "Calling eautoreconf for all subprojects:"
+ einfo
+ for i in "${S}"/*
+ do my_autoreconf "${i##*/}"
+ done
+}
+
+my_conf() {
+ einfo
+ einfo "configuring ${1}"
+ einfo
+ my_cd "${1}"
+ shift
+ if [ -z "${COMMON_CONF}" ]
+ then COMMON_CONF="$(use_enable !postgres sqlite)"
+ COMMON_CONF="${COMMON_CONF} $(use_with postgres postgresdir /usr)"
+ COMMON_CONF="${COMMON_CONF} --disable-static"
+ fi
+ econf ${COMMON_CONF} "${@}"
+}
+
+my_make() {
+ einfo
+ einfo "making ${*}"
+ einfo
+ my_cd "${1}"
+ emake || die "emake in ${1} failed"
+}
+
+my_confmake() {
+ # It is unfortunate that we must build here,
+ # but some ./configure's require make in other directories_
+ my_make "GtkmmAddons" "(needed for configuring ManuProC_Widget and midgard)"
+ my_make "ManuProC_Base" "(needed for configuring ManuProC_Widget and midgard)"
+ my_conf "ManuProC_Widgets"
+ my_make "ManuProC_Widgets" "(needed for configuring midgard)"
+ my_conf "midgard"
+}
+
+src_configure() {
+ filter-flags \
+ -pie \
+ -fPIE \
+ -flto \
+ -fwhole-program \
+ -fuse-linker-plugin \
+ -fvisibility-inlines-hidden
+ my_conf "ManuProC_Base"
+ my_conf "GtkmmAddons"
+ my_confmake
+}
+
+src_compile() {
+ my_make "midgard"
+}
+
+my_install() {
+ my_cd "${1}"
+ emake DESTDIR="${ED}" install || die "make install in ${1} failed"
+}
+
+src_install() {
+ local myicon myres
+ my_install "ManuProC_Base"
+ my_install "ManuProC_Widgets"
+ my_install "midgard"
+ rm -rf -- "${ED}"/usr/include
+ prune_libtool_files --all
+
+ insinto "/usr/share/magus"
+
+ my_cd "midgard"
+
+ doins -r docs
+ #doins xml/*.xml src/*.png src/*.tex
+
+ for myicon in pixmaps/desktop-icons/MAGUS-*.png
+ do test -e "${myicon}" || continue
+ myres=${myicon##*/MAGUS?}
+ myres=${myres%.png}
+ doicon -s "${myres}" "${myicon}"
+ done
+}
diff --git a/games-rpg/magus/magus-1.3.3.ebuild b/games-rpg/magus/magus-1.3.3.ebuild
new file mode 100644
index 00000000..fd1eead1
--- /dev/null
+++ b/games-rpg/magus/magus-1.3.3.ebuild
@@ -0,0 +1,268 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils flag-o-matic
+RESTRICT="mirror"
+
+FETCH_RESTRICT=false
+LIVE_VERSION=false
+case ${PV} in
+9999*)
+ LIVE_VERSION=:;;
+1.3.3*)
+ FETCH_RESTRICT=:;;
+esac
+
+${LIVE_VERSION} && inherit monotone
+
+DESCRIPTION="A character generator for the popular German role playing game Midgard"
+HOMEPAGE="http://sourceforge.net/projects/midgard.berlios/"
+SRC_URI="mirror://sourceforge/midgard.berlios/${P}.tar.bz2"
+KEYWORDS="~amd64 ~x86"
+if ${LIVE_VERSION}
+then PROPERTIES="live"
+ SRC_URI=""
+ EMTN_REPO_URI="petig-baender.dyndns.org"
+ KEYWORDS=""
+elif ${FETCH_RESTRICT}
+then SRC_URI="ftp://ftp.berlios.de/pub/midgard/Source/${P}.tar.bz2"
+# Unfortunately, the URL is down forever:
+# You can only use it, if you already downloaded the tarball earlier
+ RESTRICT="${RESTRICT} fetch"
+ KEYWORDS=""
+fi
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+acroread imagemagick konqueror postgres pngcrush seamonkey"
+
+DEPENDCOMMON="dev-libs/libsigc++:2
+ dev-cpp/gtkmm:2.4
+ virtual/latex-base
+ postgres? ( dev-db/postgresql )
+ !postgres? ( dev-db/sqlite:3 )
+ || ( media-libs/netpbm media-gfx/graphicsmagick media-gfx/imagemagick )"
+
+DEPEND="${DEPENDCOMMON}
+ sys-devel/gettext
+ pngcrush? ( media-gfx/pngcrush )
+ imagemagick? ( || ( media-gfx/graphicsmagick[imagemagick] media-gfx/imagemagick ) )"
+
+RDEPEND="${DEPENDCOMMON}
+ seamonkey? ( www-client/seamonkey )
+ !seamonkey? (
+ konqueror? ( kde-base/konqueror )
+ !konqueror? (
+ || ( www-client/firefox www-client/firefox-bin )
+ )
+ )
+ acroread? ( app-text/acroread )
+ virtual/libintl"
+
+if ${LIVE_VERSION}
+then
+src_unpack() {
+ monotone_fetch
+ monotone_co "" "manuproc.berlios.de/ManuProC_Base"
+ monotone_co "" "manuproc.berlios.de/GtkmmAddons"
+ monotone_co "" "manuproc.berlios.de/ManuProC_Widgets"
+ monotone_co "" "midgard.berlios.de/midgard"
+ monotone_finish
+}
+fi
+
+src_cp() {
+ einfo "cp ${1} ${2}"
+ test -f "${1}" || {
+ ewarn "File ${1} does not exist"
+ return 0
+ }
+ if ! test -e "${2}" || diff -q -- "${1}" "${2}" >/dev/null 2>&1
+ then ewarn "cp ${1} ${2} appears no longer necessary"
+ return 0
+ fi
+ cp -- "${1}" "${2}"
+}
+
+src_sed() {
+ local short file ori ignore remove grep opt
+ ignore=false
+ remove=false
+ grep=''
+ OPTIND=1
+ while getopts 'fig:' opt
+ do case ${opt} in
+ f) remove=:;;
+ i) ignore=:;;
+ g) grep=${OPTARG};;
+ esac
+ done
+ shift $(( ${OPTIND} - 1 ))
+ short=${1}
+ file="${S}/${short}"
+ ori="${file}.ori"
+ test -e "${ori}" && ${ignore} && ori="${file}.ori-1" && remove=:
+ test -e "${ori}" && die "File ${ori} already exists"
+ if ! test -e "${file}"
+ then die "Expected file ${short} does not exist"
+ fi
+ einfo "Patching ${short}"
+ [ -n "${grep}" ] && grep -q -- "${grep}" "${file}" \
+ && ewarn "Redundant patching of ${short}"
+ mv -- "${file}" "${ori}"
+ shift
+ sed "${@}" -- "${ori}" >"${file}"
+ ! ${ignore} && cmp -s -- "${ori}" "${file}" \
+ && ewarn "Unneeded patching of ${short}"
+ ${remove} && rm -- "${ori}"
+ return 0
+}
+
+set_browser() {
+ local i browser
+ browser=
+ for i in seamonkey konqueror
+ do use "${i}" || continue
+ if [ -n "${browser}" ]
+ then ewarn "USE=${i} is overridden by USE=${browser}"
+ else browser=${i}
+ fi
+ done
+ einfo
+ if [ -z "${browser}" ]
+ then browser="firefox"
+ einfo "Patching for default browser ${browser}:"
+ elif [ "${browser}" = "mozilla" ]
+ then einfo "Keeping upstream's default browser (mozilla)"
+ einfo
+ return
+ else einfo "USE=${browser} overrides default browser firefox:"
+ fi
+ einfo
+ src_sed midgard/docs/BMod_Op.html -e "s#mozilla#${browser}#"
+ src_sed midgard/libmagus/Magus_Optionen.cc -e "s#mozilla#${browser}#"
+ src_sed midgard/midgard.glade -e "s#mozilla#${browser}#"
+ src_sed midgard/src/table_optionen_glade.cc -e "s#mozilla#${browser}#"
+}
+
+src_patch() {
+ einfo
+ einfo "Various patches:"
+ einfo
+ grep "saebel.png" midgard/src/Makefile.am && \
+ ewarn "Unneeded patching of midgard/src/Makefile.am"
+ src_sed midgard/src/Makefile.am \
+ -e 's/drache.png/Money-gray.png saebel.png drache.png/'
+ src_sed ManuProC_Widgets/configure.in \
+ -e 's/^[[:space:]]*AM_GNU_GETTEXT_VERSION/AM_GNU_GETTEXT_VERSION/'
+ src_sed -g 'AM_GNU_GETTEXT_VERSION' ManuProC_Base/configure.in \
+ -e '/AC_SUBST(GETTEXT_PACKAGE)/iAM_GNU_GETTEXT_VERSION([0.17])'
+# src_cp ManuProC_Base/macros/petig.m4 ManuProC_Widgets/macros/petig.m4
+ src_sed midgard/src/table_lernschema.cc \
+ -e '/case .*:$/{n;s/^[[:space:]]*\}/break;}/}'
+ find . -name configure.in -exec sh -c 'for i
+ do mv -- "${i}" "${i%in}ac"
+ done' sh '{}' +
+}
+
+my_cd() {
+ cd -- "${S}/${1}" >/dev/null || die "cd ${1} failed"
+}
+
+my_autoreconf() {
+ my_cd "${1}"
+ export AT_M4DIR
+ test -d macros && AT_M4DIR="macros" || AT_M4DIR=""
+ eautoreconf
+}
+
+src_prepare() {
+ local i
+ src_patch
+ epatch_user
+ set_browser
+ einfo
+ einfo "Calling eautoreconf for all subprojects:"
+ einfo
+ for i in "${S}"/*
+ do my_autoreconf "${i##*/}"
+ done
+}
+
+my_conf() {
+ einfo
+ einfo "configuring ${1}"
+ einfo
+ my_cd "${1}"
+ shift
+ if [ -z "${COMMON_CONF}" ]
+ then COMMON_CONF="$(use_enable !postgres sqlite)"
+ COMMON_CONF="${COMMON_CONF} $(use_with postgres postgresdir /usr)"
+ COMMON_CONF="${COMMON_CONF} --disable-static"
+ fi
+ econf ${COMMON_CONF} "${@}"
+}
+
+my_make() {
+ einfo
+ einfo "making ${*}"
+ einfo
+ my_cd "${1}"
+ emake || die "emake in ${1} failed"
+}
+
+my_confmake() {
+ # It is unfortunate that we must build here,
+ # but some ./configure's require make in other directories_
+ my_make "GtkmmAddons" "(needed for configuring ManuProC_Widget and midgard)"
+ my_make "ManuProC_Base" "(needed for configuring ManuProC_Widget and midgard)"
+ my_conf "ManuProC_Widgets"
+ my_make "ManuProC_Widgets" "(needed for configuring midgard)"
+ my_conf "midgard"
+}
+
+src_configure() {
+ filter-flags \
+ -pie \
+ -fPIE \
+ -flto \
+ -fwhole-program \
+ -fuse-linker-plugin \
+ -fvisibility-inlines-hidden
+ my_conf "ManuProC_Base"
+ my_conf "GtkmmAddons"
+ my_confmake
+}
+
+src_compile() {
+ my_make "midgard"
+}
+
+my_install() {
+ my_cd "${1}"
+ emake DESTDIR="${ED}" install || die "make install in ${1} failed"
+}
+
+src_install() {
+ local myicon myres
+ my_install "ManuProC_Base"
+ my_install "ManuProC_Widgets"
+ my_install "midgard"
+ rm -rf -- "${ED}"/usr/include
+ prune_libtool_files --all
+
+ insinto "/usr/share/magus"
+
+ my_cd "midgard"
+
+ doins -r docs
+ #doins xml/*.xml src/*.png src/*.tex
+
+ for myicon in pixmaps/desktop-icons/MAGUS-*.png
+ do test -e "${myicon}" || continue
+ myres=${myicon##*/MAGUS?}
+ myres=${myres%.png}
+ doicon -s "${myres}" "${myicon}"
+ done
+}
diff --git a/games-rpg/magus/magus-99999999.ebuild b/games-rpg/magus/magus-99999999.ebuild
new file mode 100644
index 00000000..fd1eead1
--- /dev/null
+++ b/games-rpg/magus/magus-99999999.ebuild
@@ -0,0 +1,268 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils flag-o-matic
+RESTRICT="mirror"
+
+FETCH_RESTRICT=false
+LIVE_VERSION=false
+case ${PV} in
+9999*)
+ LIVE_VERSION=:;;
+1.3.3*)
+ FETCH_RESTRICT=:;;
+esac
+
+${LIVE_VERSION} && inherit monotone
+
+DESCRIPTION="A character generator for the popular German role playing game Midgard"
+HOMEPAGE="http://sourceforge.net/projects/midgard.berlios/"
+SRC_URI="mirror://sourceforge/midgard.berlios/${P}.tar.bz2"
+KEYWORDS="~amd64 ~x86"
+if ${LIVE_VERSION}
+then PROPERTIES="live"
+ SRC_URI=""
+ EMTN_REPO_URI="petig-baender.dyndns.org"
+ KEYWORDS=""
+elif ${FETCH_RESTRICT}
+then SRC_URI="ftp://ftp.berlios.de/pub/midgard/Source/${P}.tar.bz2"
+# Unfortunately, the URL is down forever:
+# You can only use it, if you already downloaded the tarball earlier
+ RESTRICT="${RESTRICT} fetch"
+ KEYWORDS=""
+fi
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+acroread imagemagick konqueror postgres pngcrush seamonkey"
+
+DEPENDCOMMON="dev-libs/libsigc++:2
+ dev-cpp/gtkmm:2.4
+ virtual/latex-base
+ postgres? ( dev-db/postgresql )
+ !postgres? ( dev-db/sqlite:3 )
+ || ( media-libs/netpbm media-gfx/graphicsmagick media-gfx/imagemagick )"
+
+DEPEND="${DEPENDCOMMON}
+ sys-devel/gettext
+ pngcrush? ( media-gfx/pngcrush )
+ imagemagick? ( || ( media-gfx/graphicsmagick[imagemagick] media-gfx/imagemagick ) )"
+
+RDEPEND="${DEPENDCOMMON}
+ seamonkey? ( www-client/seamonkey )
+ !seamonkey? (
+ konqueror? ( kde-base/konqueror )
+ !konqueror? (
+ || ( www-client/firefox www-client/firefox-bin )
+ )
+ )
+ acroread? ( app-text/acroread )
+ virtual/libintl"
+
+if ${LIVE_VERSION}
+then
+src_unpack() {
+ monotone_fetch
+ monotone_co "" "manuproc.berlios.de/ManuProC_Base"
+ monotone_co "" "manuproc.berlios.de/GtkmmAddons"
+ monotone_co "" "manuproc.berlios.de/ManuProC_Widgets"
+ monotone_co "" "midgard.berlios.de/midgard"
+ monotone_finish
+}
+fi
+
+src_cp() {
+ einfo "cp ${1} ${2}"
+ test -f "${1}" || {
+ ewarn "File ${1} does not exist"
+ return 0
+ }
+ if ! test -e "${2}" || diff -q -- "${1}" "${2}" >/dev/null 2>&1
+ then ewarn "cp ${1} ${2} appears no longer necessary"
+ return 0
+ fi
+ cp -- "${1}" "${2}"
+}
+
+src_sed() {
+ local short file ori ignore remove grep opt
+ ignore=false
+ remove=false
+ grep=''
+ OPTIND=1
+ while getopts 'fig:' opt
+ do case ${opt} in
+ f) remove=:;;
+ i) ignore=:;;
+ g) grep=${OPTARG};;
+ esac
+ done
+ shift $(( ${OPTIND} - 1 ))
+ short=${1}
+ file="${S}/${short}"
+ ori="${file}.ori"
+ test -e "${ori}" && ${ignore} && ori="${file}.ori-1" && remove=:
+ test -e "${ori}" && die "File ${ori} already exists"
+ if ! test -e "${file}"
+ then die "Expected file ${short} does not exist"
+ fi
+ einfo "Patching ${short}"
+ [ -n "${grep}" ] && grep -q -- "${grep}" "${file}" \
+ && ewarn "Redundant patching of ${short}"
+ mv -- "${file}" "${ori}"
+ shift
+ sed "${@}" -- "${ori}" >"${file}"
+ ! ${ignore} && cmp -s -- "${ori}" "${file}" \
+ && ewarn "Unneeded patching of ${short}"
+ ${remove} && rm -- "${ori}"
+ return 0
+}
+
+set_browser() {
+ local i browser
+ browser=
+ for i in seamonkey konqueror
+ do use "${i}" || continue
+ if [ -n "${browser}" ]
+ then ewarn "USE=${i} is overridden by USE=${browser}"
+ else browser=${i}
+ fi
+ done
+ einfo
+ if [ -z "${browser}" ]
+ then browser="firefox"
+ einfo "Patching for default browser ${browser}:"
+ elif [ "${browser}" = "mozilla" ]
+ then einfo "Keeping upstream's default browser (mozilla)"
+ einfo
+ return
+ else einfo "USE=${browser} overrides default browser firefox:"
+ fi
+ einfo
+ src_sed midgard/docs/BMod_Op.html -e "s#mozilla#${browser}#"
+ src_sed midgard/libmagus/Magus_Optionen.cc -e "s#mozilla#${browser}#"
+ src_sed midgard/midgard.glade -e "s#mozilla#${browser}#"
+ src_sed midgard/src/table_optionen_glade.cc -e "s#mozilla#${browser}#"
+}
+
+src_patch() {
+ einfo
+ einfo "Various patches:"
+ einfo
+ grep "saebel.png" midgard/src/Makefile.am && \
+ ewarn "Unneeded patching of midgard/src/Makefile.am"
+ src_sed midgard/src/Makefile.am \
+ -e 's/drache.png/Money-gray.png saebel.png drache.png/'
+ src_sed ManuProC_Widgets/configure.in \
+ -e 's/^[[:space:]]*AM_GNU_GETTEXT_VERSION/AM_GNU_GETTEXT_VERSION/'
+ src_sed -g 'AM_GNU_GETTEXT_VERSION' ManuProC_Base/configure.in \
+ -e '/AC_SUBST(GETTEXT_PACKAGE)/iAM_GNU_GETTEXT_VERSION([0.17])'
+# src_cp ManuProC_Base/macros/petig.m4 ManuProC_Widgets/macros/petig.m4
+ src_sed midgard/src/table_lernschema.cc \
+ -e '/case .*:$/{n;s/^[[:space:]]*\}/break;}/}'
+ find . -name configure.in -exec sh -c 'for i
+ do mv -- "${i}" "${i%in}ac"
+ done' sh '{}' +
+}
+
+my_cd() {
+ cd -- "${S}/${1}" >/dev/null || die "cd ${1} failed"
+}
+
+my_autoreconf() {
+ my_cd "${1}"
+ export AT_M4DIR
+ test -d macros && AT_M4DIR="macros" || AT_M4DIR=""
+ eautoreconf
+}
+
+src_prepare() {
+ local i
+ src_patch
+ epatch_user
+ set_browser
+ einfo
+ einfo "Calling eautoreconf for all subprojects:"
+ einfo
+ for i in "${S}"/*
+ do my_autoreconf "${i##*/}"
+ done
+}
+
+my_conf() {
+ einfo
+ einfo "configuring ${1}"
+ einfo
+ my_cd "${1}"
+ shift
+ if [ -z "${COMMON_CONF}" ]
+ then COMMON_CONF="$(use_enable !postgres sqlite)"
+ COMMON_CONF="${COMMON_CONF} $(use_with postgres postgresdir /usr)"
+ COMMON_CONF="${COMMON_CONF} --disable-static"
+ fi
+ econf ${COMMON_CONF} "${@}"
+}
+
+my_make() {
+ einfo
+ einfo "making ${*}"
+ einfo
+ my_cd "${1}"
+ emake || die "emake in ${1} failed"
+}
+
+my_confmake() {
+ # It is unfortunate that we must build here,
+ # but some ./configure's require make in other directories_
+ my_make "GtkmmAddons" "(needed for configuring ManuProC_Widget and midgard)"
+ my_make "ManuProC_Base" "(needed for configuring ManuProC_Widget and midgard)"
+ my_conf "ManuProC_Widgets"
+ my_make "ManuProC_Widgets" "(needed for configuring midgard)"
+ my_conf "midgard"
+}
+
+src_configure() {
+ filter-flags \
+ -pie \
+ -fPIE \
+ -flto \
+ -fwhole-program \
+ -fuse-linker-plugin \
+ -fvisibility-inlines-hidden
+ my_conf "ManuProC_Base"
+ my_conf "GtkmmAddons"
+ my_confmake
+}
+
+src_compile() {
+ my_make "midgard"
+}
+
+my_install() {
+ my_cd "${1}"
+ emake DESTDIR="${ED}" install || die "make install in ${1} failed"
+}
+
+src_install() {
+ local myicon myres
+ my_install "ManuProC_Base"
+ my_install "ManuProC_Widgets"
+ my_install "midgard"
+ rm -rf -- "${ED}"/usr/include
+ prune_libtool_files --all
+
+ insinto "/usr/share/magus"
+
+ my_cd "midgard"
+
+ doins -r docs
+ #doins xml/*.xml src/*.png src/*.tex
+
+ for myicon in pixmaps/desktop-icons/MAGUS-*.png
+ do test -e "${myicon}" || continue
+ myres=${myicon##*/MAGUS?}
+ myres=${myres%.png}
+ doicon -s "${myres}" "${myicon}"
+ done
+}
diff --git a/games-rpg/magus/metadata.xml b/games-rpg/magus/metadata.xml
new file mode 100644
index 00000000..e6abf3f2
--- /dev/null
+++ b/games-rpg/magus/metadata.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email></email>
+ <name>Christof Petig</name>
+ </maintainer>
+ <maintainer>
+ <email></email>
+ <name>Malte Thoma</name>
+ </maintainer>
+ <maintainer>
+ <email></email>
+ <name>Alessandro Filippetti</name>
+ </maintainer>
+ <bugs-to>http://midgard.berlios.de/pages/bugform.html</bugs-to>
+ </upstream>
+ <use>
+ <flag name="acroread">Depend on acroread (otherwise you are responsible to install/configure a pdf viewer)</flag>
+ <flag name="konqueror">Depend on konqueror browser instead of firefox</flag>
+ <flag name="postgres">Use postgresql instead of sqlite</flag>
+ <flag name="seamonkey">Depend on seamonkey browser instead of firefox</flag>
+ <flag name="pngcrush">Use pngcrush for opimizing png before installation</flag>
+ <flag name="imagemagick">Use convert from graphicsmagick/imagemagick to scale pictures before installation</flag>
+ </use>
+</pkgmetadata>
diff --git a/licenses/sundtek b/licenses/sundtek
new file mode 100644
index 00000000..d992f738
--- /dev/null
+++ b/licenses/sundtek
@@ -0,0 +1 @@
+http://support.sundtek.com/index.php?topic=37.0
diff --git a/media-gfx/pqiv/Manifest b/media-gfx/pqiv/Manifest
new file mode 100644
index 00000000..00d42ffd
--- /dev/null
+++ b/media-gfx/pqiv/Manifest
@@ -0,0 +1 @@
+DIST pqiv-2.2.tar.gz 52414 SHA256 88d625de4437c8e65a49d74e993df5debf224ecf726365e138bf90a602b8b74b SHA512 2f504e228607b4b7b3cb341def5a104c86d932dc93f54b68893acbf5becc9cfa5c4d7549ead8ee25c4cb1f6a3cf13623eb3836e368299de2a21624d9773458bc WHIRLPOOL 0df549d3cc686806413741e453335e7e54f1e194c4296ccc9a72f9b6805b5f83514ee6dbdb45478753c91d36b7baf6b1bf88abb5f84ea9fb1c1bf9643c4fe2f9
diff --git a/media-gfx/pqiv/metadata.xml b/media-gfx/pqiv/metadata.xml
new file mode 100644
index 00000000..1dadc3ec
--- /dev/null
+++ b/media-gfx/pqiv/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>graphics</herd>
+ <upstream>
+ <maintainer>
+ <email>phillip.berndt@googlemail.com</email>
+ <name>Phillip Berndt</name>
+ </maintainer>
+ </upstream>
+ <use>
+ <flag name="gtk2">Use gtk:2 instead of gtk:3</flag>
+ </use>
+</pkgmetadata>
diff --git a/media-gfx/pqiv/pqiv-2.2.ebuild b/media-gfx/pqiv/pqiv-2.2.ebuild
new file mode 100644
index 00000000..31a0a5ca
--- /dev/null
+++ b/media-gfx/pqiv/pqiv-2.2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit linux-info toolchain-funcs eutils
+
+DESCRIPTION="Modern rewrite of Quick Image Viewer"
+HOMEPAGE="https://github.com/phillipberndt/pqiv http://www.pberndt.com/Programme/Linux/pqiv/"
+SRC_URI="https://github.com/phillipberndt/pqiv/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gtk2 kernel_linux"
+
+RDEPEND=">=dev-libs/glib-2.8:2
+ >=x11-libs/cairo-1.6
+ gtk2? ( x11-libs/gtk+:2 )
+ !gtk2? ( x11-libs/gtk+:3 )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ if use kernel_linux; then
+ CONFIG_CHECK="~INOTIFY_USER"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ epatch_user
+}
+
+src_configure() {
+ local gtkver=3
+ ! use gtk2 || gtkver=2
+ ./configure --gtk-version=${gtkver} --prefix=/usr --destdir="${D}" || die
+}
+
+src_compile() {
+ tc-export CC
+ emake CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ default
+ dodoc README.markdown
+}
diff --git a/media-tv/sundtek-tv/Manifest b/media-tv/sundtek-tv/Manifest
new file mode 100644
index 00000000..7ef6c46e
--- /dev/null
+++ b/media-tv/sundtek-tv/Manifest
@@ -0,0 +1 @@
+DIST sundtek_installer_151002.142741.sh 28592676 SHA256 16441a0c5e0ab02a5b66c992370f49f13a2cb24d591ffa3834c53204bf1ec507 SHA512 044786e76d48123cfc0c111bb17513cef5d68003052b588d02650323d5a2a9f782332080a4399391969356021eb102ac26372cdfbd44e475c447ebb273acaf51 WHIRLPOOL e00eece7d100e88b08855960a6d27e74fc72dd38f2a82df1bfefa61c1e84789a9611666b4e9bd646662522a53bd137cf3bdc0eb5dd91e4dd3082cc3624f2e243
diff --git a/media-tv/sundtek-tv/files/_mediaclient b/media-tv/sundtek-tv/files/_mediaclient
new file mode 100644
index 00000000..3d0ed826
--- /dev/null
+++ b/media-tv/sundtek-tv/files/_mediaclient
@@ -0,0 +1,202 @@
+#compdef mediaclient mediaclient.video mediaclient.radio mediaclient.dvb
+local curcontext="$curcontext" state state_descr line
+typeset -A opt_args
+local service_opts
+service_opts=(
+'--help[help]'
+{'(--enumdevices)-e','(-e)--enumdevices'}'[show up devices]'
+{'(--mode)-m+','(-m)--mode='}'[MODE (device mode)]:device mode:(DVBT DVBT2 DVBC DVBS DVBS2 ATSC ATV RADIO)'
+{'(--tuner)-t+','(-t)--tuner'}'[ID (tuner id)]:tuner id:->tunerid'
+{'(--setdtvmode)-D+','(-D)--setdtvmode='}'[MODE (dtv mode)]:dtv mode:(DVBT DVBC ATSC)'
+{'(--listatvstd)-L','(-L)--listatvstd'}'[list analog TV standards]'
+'--crc=[MODE (crc check for PSI on/off)]:check active:(on off)'
+{'(--vmode)-v+','(-v)--vmode='}'[MODE (set analog TV mode)]:tv mode:(PAL-BG PAL-DK PAL-I PAL-M NTSC-M Secam-L Secam-LC Secam-K Secam-B Secam-G Secam-H)'
+'--setvcr=[DEVICE (lock device)]:video device:(/dev/video*)'
+{'(--inputs)-i','(-i)--inputs'}'[list analog TV inputs]'
+{'(--size)-s+','(-s)--size='}'[DIM (set scalar size)]:dimension:(720x576)'
+{'(--Input)-I+','(-I)--Input='}'[INPUT (set TV input)]:input:(Television Composite S-Video)'
+{'(--frequency)-f+','(-f)--frequency='}'[HZ (frequency)]:frequency:()'
+'--rawfreq[HZ (raw DVB-S/S2 frequency)]:frequency:()'
+{'(--listarea)-a','(-a)--listarea'}'[list Area]'
+{'(--setarea)-A+','(-A)--setarea='}'[AREA (set Area)]:Area:()'
+{'(--Modulation)-M+','(-M)--Modulation='}'[MODULATION (for DVB-C)]:Modulation:(Q16 Q32 Q64 Q128 Q256)'
+{'(--Symbolrate)-S+','(-S)--Symbolrate='}'[HZ (Symbolrate for DVB-C)]:Symbolrate:()'
+{'(--voltage)-V+','(-V)--voltage='}'[VOLTAGE (DVB-S/S2 Polarisation)]:voltage:->voltage'
+'--band=[BAND (set band)]:band:(C-BAND UNIVERSAL)'
+{'(--fec)-E','(-E)--fec'}'[forward error connection]'
+{'(--polarisation)-p+','(-p)--polarisation='}'[DIRECTION (polarisation)]:polarisation:->polarisation'
+{'(--bandwidth)-b+','(-b)--bandwidth='}'[MHZ (set bandwidth for DVB-T)]:bandwidth:(6 7 8)'
+{'(--rds)-r','(-r)--rds'}'[get RDS information]'
+{'(--properties)-C','(-C)--properties'}'[list device properties]'
+'--loglevel=[LOGLEVEL (set log verbosity)]:loglevel:(off min max)'
+'--signalreporting=[MODE (set signal mode)]:signal reporting:->signalreporting'
+'--readsignal=[N (read signalstrength N times)]:signalstrength:()'
+'--powerlevel=[N (read powerlevel N times)]:powerlevel:()'
+'--powerlevel=[N (read powerlevel N times)]:powerlevel:()'
+'--lockstatus[check dvb/atsc channel lock]'
+'--enable5v=[5V output for DVB-C/T/T2]:enable 5V output:(on off)'
+'--wssdecoder=[DEVICE (VBI for wss)]:VBI device:(dev/vbi*)'
+'--dumpvbi=[DEVICE (dump VBI for wss)]:VBI device:(dev/vbi*)'
+'--wsscallback=[SCRIPT (Aspect ratio change wss)]:aspect ratio script:_files'
+'--stopwdd[stop background wss server]'
+'--cc-list[list closed caption]'
+'--cc-flush[clear closed caption settings]'
+'--cc-enable[CAP (enable closed caption)]:closed caption:(CC1 CC2 T1 T2)'
+'--cc-disable[CAP (disable closed caption)]:closed caption:(CC1 CC2 T1 T2)'
+{'(--pidfilter)-P+','(-P)--pidfilter='}'[MODE (DVB pidfilter on/off)]:pidfilter:(on off)'
+{'(--addpid)-H+','(-H)--addpid='}'[PIDS (add DVB pids)]:pids:("0x10" 16 "0x10,16")'
+{'(--removepid)-x+','(-x)--removepid='}'[PIDS (remove DVB pids)]:pids:("0x10" 16 "0x10,16")'
+{'(--listpids)-w','(-w)--listpids'}'[list filtered DVB pids]'
+{'(--flushpids)-F+','(-F)--flushpids='}'[flush DVB pidtable]'
+'--softpidfilter=[MODE (software DVB PID filter)]:pidfilter mode:(on off passthrough)'
+{'(--internalaudio)-c+','(-c)--internalaudio='}'[MODE (internal audio)]:internal audio:->internalaudio'
+'--audiothreshold=[N (audio threshold N ms)]:audio threshold:(0 2000)'
+'--loudness=[N (loudness)]:loudness:(0 15)'
+'--volume=[N (volume)]:volume:(0 255)'
+'--treble=[N (treble)]:treble:(0 255)'
+'--audiomode=[MODE (mono/stereo)]:audio mode:(mono stereo)'
+{'(--mute)-g+','(-g)--mute='}'[MODE (FM mute)]:FM mute mode:(on off)'
+'--diseqc-support=[MODE (diseqc)]:diseqc mode:(on off)'
+'--diseqc=[COMMAND (diseqc)]:diseqc command:(E0 10 38 F0)'
+'--list-diseqc[list diseqc dish configuration]'
+'--set-diseqc=[CONFIG (set diseqc dish)]:diseqc dish configuration:(S19.2E)'
+'--setmini=[SEC_MINI_A/B (set burst tone)]:burst tone:(A B)'
+{'(--listrc)-l','(-l)--listrc'}'[list rc protocols]'
+{'(--setrc)-s+','(-s)--setrc='}'[PROTOCOL (set rc)]:protocol:()'
+'--enablerc=[DEVICE (enable rc polling)]:rc device:(/dev/mediainput*)'
+'--disablerc=[DEVICE (disable rc polling)]:rc device:(/dev/mediainput*)'
+'--pollrc[poll raw rc]'
+'--dumprcmap[dump rc map]'
+'--setrcmap=[MAP (set rc MAP)]:rc map:_files'
+'--updaterc=[update rc layout]:rc layout:->rclayout'
+'--transfermode=[MODE (usb transfer mode)]:transfer mode:(bulk iso)'
+'--nullpackets=[MODE (usb null packets)]:pass null packets:->nullpackets'
+'--bulkpackets=[N (usb bulk transfer)]:bulk transfer number:()'
+'--ts-settle-timemout=[N (usb timeout in ms)]:timeout:(0 4000)'
+'--disable-dvb=[ADAPTER (disable dvb)]:dvb adapter:(/dev/dvb/adapter*)'
+'--enable-dvb=[ADAPTER (enable dvb)]:dvb adapter:(/dev/dvb/adapter*)'
+'--setver=[API (set DVB API)]:DVB API:(5.0)'
+'--vfilter=[MODE (analog deinterlacer)]:deinterlacer:(on off)'
+'--vfilterid=[ID (analog deinterlacer type)]:deinterlacer id:->deinterlacerid'
+'--lc[list connected clients]'
+'--lc=[PID (disconnect client)]:pid:()'
+'--shutdown[shutdown multimediastack]'
+'--start=[N (start multimediastack in N sec)]:seconds:(1)'
+'--systemdcheck[start via systemd]'
+'--wait-for-devices[start when devices are ready]'
+'--enablenetwork=[MODE (network listening)]:network mode:(on off)'
+'--mount=[ADAPTER (create virtual)]:virtual adapter:->createmount'
+'--unmount=[ADAPTER (delete virtual)]:virtual adapter:(1)'
+'--lrc=[RC (list remote clients)]:rc clients:(1 192.168.1.2:0)'
+'--tvdummy[add tv-dummydevice]'
+'--remove=[N (delete dummy adapter)]:dummy adapter:(1)'
+'--scan-network[scan for IPTV devices]'
+'--nettransfermode=[MODE (set transfer mode)]:transfer mode:(tcp udp)'
+'--nti=[N (increase maximum packet)]:maximum packet:(0 10000)'
+'--netrecoverymode=[MODE (netrecoverymode)]:net recover mode:(on off)'
+'--enabledreambox=[DEVICE (connect vtuner)]:vtuner device:(/dev/dvb/adapter*/frontend*)'
+'--disabledreambox=[DEVICE (disconnect vtuner)]:vtuner device:(/dev/dvb/adapter*/frontend*)'
+'--nimbus[display dreambox nimbus]'
+'--avoffset=[N (dreambox AV offset in ms)]:AV PTS offset:()'
+'--audiooffset=[N (dreambox audio offset in ms)]:Audio PTS offset:()'
+'--videooffset=[N (dreambox video offset in ms)]:Video PTS offset:()'
+'--portforward=[N (debugging)]:port:()'
+'--pipecount=[N (read stdin)]:seconds:(1)'
+'--cat=[FILE (read FILE)]:file:_files'
+'--strings=[FILE (strings FILE)]:file:_files'
+'--lsusb=[DEVICE (print usb ids)]:usb device:(/dev/bus/usb)'
+'--reset=[DEVICE (reset usb device)]:usb device:(/dev/bus/usb/*)'
+'--tsscan=[DEVICE (scan channel)]:transponder:(/dev/dvb/adapter*/dvr*)'
+'--nitscan=[DEVICE (scan NIT)]:transponder:(/dev/dvb/adapter*/dvr*)'
+'--blindscan=[DEVICE (blindscan)]:transponder:(nim_socket /dev/dvb/adapter*/dvr*)'
+'--timeout=[N (nitscan timeout in ms)]:timeout:()'
+'--zf=[N (ZF/IF universal frequesncy)]:frequency:()'
+'--frontendinfo=[DEVICE (get DVB API)]:dvb device:(/dev/dvb/adapter*/frontend*)'
+'--createadapter[create dvb loopback]'
+#'--remove=[N (remove dvb loopback)]:loopback device:()'
+)
+case $service in
+(*mediaclient)
+ service_opts+=(
+{'(--device)-d+','(-d)--device='}'[DEVICE (video device)]:video device:(/dev/dvb/adapter*/frontend* /dev/radio* /dev/video*)'
+);
+esac
+_arguments -C -s -S -A '-*' : $service_opts
+local ret=$?
+case $state in
+(tunerid)
+ local tunerids
+ tunerids=(
+ '0:FM receiver'
+ '1:FM transmitter'
+ )
+ _describe -t tunerid 'tuner id' tunerids
+ ret=$?;;
+(voltage)
+ local voltages
+ voltages=(
+ 'H:18V'
+ 'V:13V'
+ 'OFF:0V'
+ )
+ _describe -t voltage 'voltage' voltages
+ ret=$?;;
+(polarisation)
+ local polarisations
+ polarisations=(
+ 'H:horizontal'
+ 'V:vertical'
+ )
+ _describe -t polarisation 'polarisation' polarisations
+ ret=$?;;
+(signalreporting)
+ local signalreport
+ signalreport=(
+ '0:videodecoder (fast, default)'
+ '1:demodulator (slow, detailed)'
+ )
+ _describe -t signalreporting 'signal reporting' signalreport
+ ret=$?;;
+(internalaudio)
+ local internalaudios
+ internalaudios=(
+ 'auto:on if tvtime gets started'
+ 'internal:use internal bridge'
+ 'external:require external application'
+ 'audioonly:only initialize audio transfer'
+ )
+ _describe -t internalaudio 'internal audio' internalaudios
+ ret=$?;;
+(rclayout)
+ local rclayouts
+ rclayouts=(
+ '0:internal keymap for flat remote control'
+ '1:internal keymap for black VCR remote control'
+ )
+ _describe -t rclayout 'rc layout' rclayouts
+ ret=$?;;
+(nullpackets)
+ local nullpackets
+ nullpackets=(
+ 'on'
+ 'off:default'
+ )
+ _describe -t nullpackets 'pass null packets' nullpackets
+ ret=$?;;
+(deinterlacerid)
+ local deinterlacerids
+ deinterlacerids=(
+ '0:default'
+ )
+ _describe -t deinterlacerid 'deinterlacer id' deinterlacerids
+ ret=$?;;
+(createmount)
+ local virtualadapters
+ virtualadapters=(
+ '0:local device'
+ '192.168.1.2:0:remote device'
+ )
+ _describe -t virtualadapter 'virtual adapter' virtualadapters
+ ret=$?;;
+esac
+return ret
diff --git a/media-tv/sundtek-tv/files/mediaclient.video b/media-tv/sundtek-tv/files/mediaclient.video
new file mode 100644
index 00000000..2382c21a
--- /dev/null
+++ b/media-tv/sundtek-tv/files/mediaclient.video
@@ -0,0 +1,31 @@
+#!/bin/sh
+Echo() {
+ printf '%s\n' "${*}"
+}
+Die() {
+ Echo "${0##*/}: ${*}" >&2
+ exit 1
+}
+EchoExec() {
+ Echo "# ${*}"
+ exec "${@}"
+ Die "failed to exec ${1}"
+}
+mediaclient=`PATH="${PATH}${PATH:+:}/bin:/opt/bin" command -v mediaclient` \
+ && [ -n "${mediaclient}" ] || Die 'cannot find mediaclient executable'
+case ${0} in
+*video*)
+ regexp='video[0-9]*'
+ text='video';;
+*radio)
+ regexp='radio[0-9]*'
+ text='radio';;
+*)
+ regexp='dvb\/adapter[0-9]*\/frontend[0-9]*'
+ text='adapter';;
+esac
+regexp='\/dev\/'${regexp}
+sedx='/'${regexp}'/{s/^.*\('${regexp}'\).*$/\1/p;q}'
+device=`"${mediaclient}" -e | sed -n -e "${sedx}"`
+[ -n "${device}" ] || Die "${mediaclient} -e returned no ${text} device"
+EchoExec "${mediaclient}" -d "${device}" "${@}"
diff --git a/media-tv/sundtek-tv/files/sundtek-local.service b/media-tv/sundtek-tv/files/sundtek-local.service
new file mode 100644
index 00000000..c2e298fc
--- /dev/null
+++ b/media-tv/sundtek-tv/files/sundtek-local.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Sundtek MediaTV Local Settings
+After=sundtek.service
+Wants=sundtek.service
+
+[Service]
+Type=oneshot
+ExecStart=/bin/sleep 60 ; /usr/bin/mediaclient.video -c external
+
+[Install]
+WantedBy=multi-user.target
diff --git a/media-tv/sundtek-tv/files/sundtek.initd b/media-tv/sundtek-tv/files/sundtek.initd
new file mode 100644
index 00000000..315da43e
--- /dev/null
+++ b/media-tv/sundtek-tv/files/sundtek.initd
@@ -0,0 +1,17 @@
+#!/sbin/openrc-run
+
+description="sundtek TV mediaclient"
+#command=/opt/bin/mediasrv
+#command_args="-d --pluginpath /opt/bin"
+
+start() {
+ ebegin "Starting ${SVCNAME}"
+ /opt/bin/mediaclient --start=4
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ /opt/bin/mediaclient --shutdown
+ eend $?
+}
diff --git a/media-tv/sundtek-tv/metadata.xml b/media-tv/sundtek-tv/metadata.xml
new file mode 100644
index 00000000..3a906d81
--- /dev/null
+++ b/media-tv/sundtek-tv/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/video-mv</remote-id>
+ </upstream>
+ <use>
+ <flag name="pax_kernel">Mark package which is necessary if you use a PAX kernel</flag>
+ <flag name="ld-preload-file">Install /etc/ld.so.preload</flag>
+ <flag name="ld-preload-env">Install LD_PRELOAD in /etc/env.d/50sundtek-tv</flag>
+ </use>
+</pkgmetadata>
diff --git a/media-tv/sundtek-tv/sundtek-tv-151002.142741.ebuild b/media-tv/sundtek-tv/sundtek-tv-151002.142741.ebuild
new file mode 100644
index 00000000..2025ee3f
--- /dev/null
+++ b/media-tv/sundtek-tv/sundtek-tv-151002.142741.ebuild
@@ -0,0 +1,188 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils linux-info pax-utils readme.gentoo systemd unpacker
+
+# The following variable is only for testing purposes. Leave it to "false"
+keep_original=false
+
+DESCRIPTION="Sundtek MediaTV Pro III Drivers"
+HOMEPAGE="http://support.sundtek.com/index.php/topic,2.0.html"
+# Current version number can be found in http://sundtek.de/media/latest.phtml
+SRC_URI="http://www.sundtek.de/media/sundtek_installer_${PV}.sh"
+
+RESTRICT="mirror strip"
+LICENSE="sundtek"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="ld-preload-env +ld-preload-file pax_kernel"
+RDEPEND="!<sys-apps/openrc-0.13"
+DEPEND="pax_kernel? ( || ( sys-apps/elfix sys-apps/paxctl ) )"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="To initialize sundtek drivers during booting call
+ rc-update add sundtek default # for openrc
+ systemctl enable sundtek-local.service # for systemd
+You will probably need to adapt sundtek-local.service to your defaults
+"
+
+QA_PREBUILT="opt/bin/* opt/bin/*/* usr/$(get_libdir)/* usr/share/doc/*/*/*"
+
+src_unpack() {
+ local subdir a
+ a="${S}/archives"
+ mkdir -- "${S}" # "|| die" no necessary: test happens in cd
+ mkdir -- "${a}"
+ cd -- "${a}" || die "cannot cd to ${a}"
+ bash -- "${DISTDIR}/${A}" -e || die "extracting failed"
+ cd -- "${S}" || die
+ if use amd64
+ then subdir=64bit
+ elif use x86
+ then subdir=32bit
+ else die "This ebuild does not support the architecture.
+Download from Sundtek directly, write your own ebuild, or send me patches."
+ fi
+ unpacker "${a}/${subdir}/installer.tar.gz" || die
+ rm -rf -- "${a}" || die "cannot remove ${a}"
+ cp -- \
+ "${FILESDIR}"/sundtek.initd \
+ "${FILESDIR}"/sundtek-local.service \
+ "${FILESDIR}"/_mediaclient \
+ "${FILESDIR}"/mediaclient.video \
+ "${S}" || die
+}
+
+my_movlibdir() {
+ local i
+ for i in bin/*
+ do if test -d "${i}"
+ then mv "${i}" "${2}" || die
+ fi
+ done
+}
+
+src_prepare() {
+ local mybinprefix mylibdir myinclude myinclsundtek mysystemd \
+ myudev mypkgconfig mylirc myusr
+ if ${keep_original}
+ then mylibdir="opt/lib"
+ myinclude="opt/include"
+ myusr=
+ else mylibdir="usr/$(get_libdir)"
+ myinclude="usr/include"
+ myusr="usr"
+ fi
+ mybinprefix="opt"
+ mypkgconfig="usr/share/pkgconfig"
+ myinclsundtek="${myinclude}/sundtek"
+ myudev="lib/udev"
+ mylirc="etc/lirc"
+ umask 022
+ if use pax_kernel
+ then pax-mark em opt/bin/mediasrv
+ pax-mark e opt/bin/mediaclient
+ fi
+ mv opt 1 || die
+ mkdir -p ${myusr} "${mybinprefix}" lib "${mypkgconfig}" "${mylirc}" \
+ 1/lib/pm-utils || die
+ mv 1/bin "${mybinprefix}" || die
+ ${keep_original} || mv 1/lib/pm 1/lib/pm-utils/sleep.d || die
+ mv 1/lib "${mylibdir}" || die
+ mv 1/include "${myinclude}" || die
+ sed -e "s#/opt/lib#${EPREFIX}/${mylibdir}#" \
+ -e "s#/opt/include#${EPREFIX}/${myinclsundtek}#" \
+ -e "s#prefix=/opt#prefix=${EPREFIX}/${mybinprefix}#" \
+ 1/doc/libmedia.pc >"${mypkgconfig}/libmedia.pc" || die
+ sed -i -e "s#/opt#${EPREFIX}/${mybinprefix}#" \
+ etc/udev/rules.d/*.rules 1/doc/*.service sundtek.initd || die
+ sed -i -e "s/^\([^#]\)/#\1/" \
+ etc/udev/rules.d/80-mediasrv-eeti.rules || die
+ mv etc/udev/rules.d/80-mediasrv.rules etc/hal . || die
+ mv etc/udev "${myudev}" || die
+ mv 1/doc/hardware.conf 1/doc/sundtek.conf "${mylirc}" || die
+ rm 1/doc/lirc_install.sh 1/doc/libmedia.pc || die
+ mv 1/doc/*.service "${S}" || die
+ mkdir "${S}/doc" && mkdir "${S}/doc/bin" || die
+ mv 1/doc/README 1/doc/*.conf "${S}/doc" || die
+ mv 1/doc/*.cgi "${S}/doc/bin" || die
+ rmdir 1/doc || die "${S}/1/doc contains files not known to the ebuild"
+ rmdir 1 || die "${S}/1 contains files not known to the ebuild"
+ my_movlibdir "${mylibdir}"
+ mkdir etc/revdep-rebuild || die
+ echo "SEARCH_DIRS_MASK=\"${EPREFIX}/${mybinprefix}/bin/audio/libpulse.so\"" \
+ >etc/revdep-rebuild/50-sundtek-tv
+ if use ld-preload-file
+ then echo "/${mylibdir}/libmediaclient.so" >etc/ld.so.preload
+ fi
+ if use ld-preload-env
+ then mkdir etc/env.d
+ echo "LD_PRELOAD=\"/${mylibdir}/libmediaclient.so\"" >etc/env.d/50sundtek-tv
+ fi
+ DOC_CONTENTS="${DOC_CONTENTS}
+You have to put /${mylibdir}/libmediaclient.so into /etc/ld.so.preload
+or to export LD_PRELOAD=\"/${mylibdir}/libmediaclient.so\"
+before you start a multimedia applications like mplayer or mpv which should
+be able to access the sundtek device.
+
+This happens with USE=ld-preload-file or with ld-preload-env (in the global
+environment), respectively.
+
+However, such a global setting in some cases this gives warnings when
+32-bit applications are used.
+
+Thus, it might be a good idea to do it only locally by writing
+corresponding wrapper scripts for those multimedia applications you
+want to use with sundtek-tv.
+"
+ ln -sfn mediaclient.video mediaclient.audio
+ ln -sfn mediaclient.video mediaclient.dvb
+ epatch_user
+}
+
+src_install() {
+ insinto /
+ local i
+ for i in etc lib64 lib32 lib usr opt
+ do test -d "${i}" && mv -- "${i}" "${ED}"
+ done
+ for i in "${ED}"/usr/bin "${ED}"/usr/$(get_libdir) "${ED}"/opt
+ do test -d "${i}" && chmod -R 755 "${i}"
+ done
+ if ! ${keep_original}
+ then newinitd sundtek.initd sundtek
+ systemd_dounit *.service
+ dodoc doc/README doc/*.conf
+ mv -- doc/bin "${ED}/usr/share/doc/${PF}" || die
+ docompress -x "/usr/share/doc/${PF}/bin"
+ fi
+ dobin mediaclient.video
+ insinto /usr/bin
+ doins mediaclient.dvb mediaclient.audio
+ insinto /usr/share/zsh/site-functions
+ doins _mediaclient
+ readme.gentoo_create_doc
+}
+
+pkg_pretend() {
+ local CONFIG_CHECK="~INPUT_UINPUT"
+ check_extra_config
+}
+
+pkg_postinst() {
+ einfo "Adding root to the audio group"
+ usermod -aG audio root || {
+ ewarn "Could not add root to the audio group."
+ ewarn "You should do this manually if you have problems with sound"
+ }
+ false chmod 6111 "${EPREFIX}/opt/bin/mediasrv" || \
+ elog "You might need to chmod 6111 ${EPREFIX}/opt/bin/mediasrv"
+ if ! use ld-preload-file
+ then if use ld-preload-env
+ then elog "You might have to call env-update and source /etc/profile"
+ else elog "You need to set LD_PRELOAD locally, see /usr/share/doc/${PF}/README.gentoo*"
+ fi
+ fi
+}
diff --git a/media-video/video-mv/Manifest b/media-video/video-mv/Manifest
new file mode 100644
index 00000000..b4727af9
--- /dev/null
+++ b/media-video/video-mv/Manifest
@@ -0,0 +1 @@
+DIST video-mv-8.6.tar.gz 17738 SHA256 0b171761cbf7b7ee8bd44aaecca1c51d72e1b0bd45cfa47a8f20aaa0d6d4b07d SHA512 57f376401b2019d18b86c86a70a717fed90ba1d22047c34b04c27dc523cb0f6856fe16d8993899fadfe81dd9b945fd62397f81830719917f439cc4553b6ec885 WHIRLPOOL bd0153a0ed47dec2853e80303d9bcc27e8b13ba957a029cd7d7de15ed595198a3889956b568625c36568766f3d1d51e08031fd0e4e717f39bbb7451f0ba6c8cd
diff --git a/media-video/video-mv/metadata.xml b/media-video/video-mv/metadata.xml
new file mode 100644
index 00000000..e85a5d21
--- /dev/null
+++ b/media-video/video-mv/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/video-mv</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/media-video/video-mv/video-mv-8.6.ebuild b/media-video/video-mv/video-mv-8.6.ebuild
new file mode 100644
index 00000000..21383ea3
--- /dev/null
+++ b/media-video/video-mv/video-mv-8.6.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils readme.gentoo
+
+DESCRIPTION="Frontends for using mplayer/mencoder, ffmpeg/libav, or tzap as video recorder"
+HOMEPAGE="https://github.com/vaeth/video-mv/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="app-shells/push
+ >=app-shells/runtitle-2.3
+ || ( ( media-sound/alsa-utils
+ || ( media-video/mplayer[encode] virtual/ffmpeg ) )
+ media-tv/linuxtv-dvb-apps )"
+DEPEND=""
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="If you use dvb-t with zsh completion, you might want to put
+zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}'
+into your ~/.zshrc or /etc/zshrc for case-insensitive matching."
+
+src_prepare() {
+ local i
+ use prefix || for i in bin/*
+ do test -h "${i}" || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -e 's"^\. _videoscript\.sh$". '"${EPREFIX}/usr/share/video-mv/_videoscript.sh"'"' \
+ -- "${i}" || die
+ done
+ epatch_user
+}
+
+src_install() {
+ local i
+ insinto /usr/bin
+ for i in bin/*
+ do if test -h "${i}"
+ then doins "${i}"
+ elif [ "${i#*/}" != '_videoscript.sh' ]
+ then dobin "${i}"
+ fi
+ done
+ insinto /usr/share/video-mv
+ doins bin/_videoscript.sh
+ insinto /etc
+ doins etc/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+ dodoc README
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ optfeature "status bar support" app-shells/runtitle
+ readme.gentoo_pkg_postinst
+}
diff --git a/metadata/layout.conf b/metadata/layout.conf
new file mode 100644
index 00000000..46c88c9e
--- /dev/null
+++ b/metadata/layout.conf
@@ -0,0 +1,3 @@
+cache-formats = md5-dict
+thin-manifests = true
+masters = gentoo
diff --git a/net-dialup/accounting/Manifest b/net-dialup/accounting/Manifest
new file mode 100644
index 00000000..e92258e4
--- /dev/null
+++ b/net-dialup/accounting/Manifest
@@ -0,0 +1 @@
+DIST smpppd-1.60.45-3.1.src.rpm 175561 SHA256 2203eaf1e358219cd208ccb2bb104dd39408eb9b12411991b596ccc45a0b2f14 SHA512 7393891861de4dbb74f720f4db2f8a668081f643ec019a5764ae4ef03b2f088e89c566f1b6f5f2fea49b286830cb8d13d9629ef3a40ed30c94300a6d1c3b42c0 WHIRLPOOL 714c71822afd4ecfbe7f9b7653ac585fa298cf3acc44d709bcb3b80e0a62a0fbad2c62338123af727c9f6fe969a8de3e16f8cadf821f588c5b38d8a1d8bd1904
diff --git a/net-dialup/accounting/accounting-1.60.45.3.1.ebuild b/net-dialup/accounting/accounting-1.60.45.3.1.ebuild
new file mode 100644
index 00000000..91d88aad
--- /dev/null
+++ b/net-dialup/accounting/accounting-1.60.45.3.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils rpm toolchain-funcs
+RESTRICT="mirror"
+
+MY_PN="smpppd"
+case "${PV}" in
+*.*.*.*)
+ MY_PV="${PV#*.*.*.}"
+ MY_PV=${PV%".${MY_PV}"}
+ MY_P="${MY_PN}-${MY_PV}-${PV#*.*.*.}"
+ ;;
+*)
+ MY_PV="${PV}"
+ MY_P="${MY_PN}-${MY_PV}"
+ ;;
+esac
+S="${WORKDIR}/${MY_PN}-${MY_PV}"
+DESCRIPTION="Give statistics about dialup connections. Originally part of SuSE's smpppd"
+HOMEPAGE="http://www.opensuse.org"
+SRC_URI="http://download.opensuse.org/source/distribution/11.3/repo/oss/suse/src/${MY_P}.src.rpm"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+test -z "${ACCOUNTING_LOG}" && ACCOUNTING_LOG="/var/log/accounting.log"
+
+DEPEND=">=net-dialup/ppp-2.4.4-r13"
+RDEPEND="${DEPEND}"
+
+CDIR="${S}/${MY_PN}"
+DDIR="${S}/doc"
+
+src_prepare() {
+ printf '%s "%s"\n' '#define VERSION' "${MY_PV}" >"${CDIR}"/config.h
+ sed -i -e's!^\(#define ACCOUNTING_LOG \).*$!\1"'"${ACCOUNTING_LOG}"'"!' \
+ "${CDIR}"/defines.h
+ sed -i -e's!/var/log/[^.]*\.log!'"${ACCOUNTING_LOG}"'!' \
+ "${DDIR}"/accounting.1
+ epatch_user
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ cd -- "${CDIR}"
+ "$(tc-getCXX)" ${CXXFLAGS} ${LDFLAGS} -o accounting \
+ accounting.cc utils.cc format.cc parse.cc tempus.cc filter.cc \
+ || die "compiling failed"
+}
+
+my_sedbin() {
+ dodir "${2%/*}"
+ sed -e "s!ACCOUNTING_LOG!${ACCOUNTING_LOG}!" -- "${1}" >"${D}/${2}"
+ fperms 755 "${2}"
+}
+
+src_install() {
+ dobin "${CDIR}/accounting"
+ doman "${DDIR}/accounting.1"
+ my_sedbin "${FILESDIR}"/ip-up.sh /etc/ppp/ip-up.d/80-accounting.sh
+ my_sedbin "${FILESDIR}"/ip-down.sh /etc/ppp/ip-down.d/10-accounting.sh
+}
+
+pkg_postinst() {
+ ewarn "The accounting tool only interprets ${ACCOUNTING_LOG}"
+ ewarn "This file is updated by scripts in /etc/ppp/ip-up.d and /etc/ppp/ip-down.d"
+ ewarn "You might want to modify these scripts (e.g. add provider info)."
+}
diff --git a/net-dialup/accounting/files/ip-down.sh b/net-dialup/accounting/files/ip-down.sh
new file mode 100644
index 00000000..10074598
--- /dev/null
+++ b/net-dialup/accounting/files/ip-down.sh
@@ -0,0 +1,3 @@
+#! /bin/sh
+echo `/bin/date --utc +'%F %X'` "${1}" d om "${BYTES_RCVD}" "${BYTES_SENT}" \
+ >>'ACCOUNTING_LOG'
diff --git a/net-dialup/accounting/files/ip-up.sh b/net-dialup/accounting/files/ip-up.sh
new file mode 100644
index 00000000..fa5618c0
--- /dev/null
+++ b/net-dialup/accounting/files/ip-up.sh
@@ -0,0 +1,4 @@
+#! /bin/sh
+[ -z "${PROVIDER}" ] && PROVIDER='Gentoo'
+echo `/bin/date --utc +'%F %X'` "${1}" u om "\"${PROVIDER} ${1}\"" \
+ >>'ACCOUNTING_LOG'
diff --git a/net-dialup/accounting/metadata.xml b/net-dialup/accounting/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/net-dialup/accounting/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-dialup/martian-modem/Manifest b/net-dialup/martian-modem/Manifest
new file mode 100644
index 00000000..5774fade
--- /dev/null
+++ b/net-dialup/martian-modem/Manifest
@@ -0,0 +1 @@
+DIST martian-full-20100123.tar.gz 275365 SHA256 bf3ad369dc90e3ef7952e6bb7873b3121ce79a855060a1b4b4e3a1d8e7d08ac3 SHA512 bcd51103792bd1d477ab81f8bbb591f3eb5341920e6b0b35e8ba066a50b8a6ddf076c0bc0d21cf686c8137f8164221635b3c296185283f6e20ce2d04709f69ec WHIRLPOOL b38fb4ea1e7282cf51547c4d6ab3423350dabe717ebe89efa20cc92148347d7e1b2fcc32085d3edc677768f7286715087034bace7f51415ce31a24d840c85c59
diff --git a/net-dialup/martian-modem/files/martian-modem-20100123-grsecurity.patch b/net-dialup/martian-modem/files/martian-modem-20100123-grsecurity.patch
new file mode 100644
index 00000000..332680d9
--- /dev/null
+++ b/net-dialup/martian-modem/files/martian-modem-20100123-grsecurity.patch
@@ -0,0 +1,15 @@
+--- kmodule/mfifo.h
++++ kmodule/mfifo.h
+@@ -20,7 +20,11 @@
+
+ void (*wrap) (mfifo_t *fifo, int *ending);
+ int (*space) (mfifo_t *fifo);
+-};
++}
++#ifdef __no_const
++__no_const
++#endif
++;
+
+ struct _mfifo {
+ /* struct circ_buf header; */
diff --git a/net-dialup/martian-modem/files/martian-modem-20100123-makefile.patch b/net-dialup/martian-modem/files/martian-modem-20100123-makefile.patch
new file mode 100644
index 00000000..e6ce7ca7
--- /dev/null
+++ b/net-dialup/martian-modem/files/martian-modem-20100123-makefile.patch
@@ -0,0 +1,34 @@
+--- martian-full-20100123/Makefile 2008-07-02 15:42:48.000000000 -0800
++++ martian-full-20100123.new/Makefile 2012-10-08 12:14:33.284275312 -0800
+@@ -1,10 +1,10 @@
+
+-KERNEL_DIR:=/lib/modules/$(shell uname -r)/build
+-SUBLEVEL:=$(shell echo $(KERNEL_DIR) | cut -d. -f3 | cut -d. -f1 | cut -d- -f1)
+-# support begins at SUBLEVEL 20
+-after20:=$(shell if [ "$(SUBLEVEL)" -gt 20 ] ;then echo OK; fi)
++#KERNEL_DIR:=/lib/modules/$(shell uname -r)/build
++#SUBLEVEL:=$(shell echo $(KERNEL_DIR) | cut -d. -f3 | cut -d. -f1 | cut -d- -f1)
++## support begins at SUBLEVEL 20
++#after20:=$(shell if [ "$(SUBLEVEL)" -gt 20 ] ;then echo OK; fi)
+
+-ifdef after20
++#ifdef after20
+ all:
+ $(MAKE) -C kmodule/ modules
+ $(MAKE) -C modem/ all
+@@ -14,11 +14,11 @@
+ $(MAKE) -C kmodule/ install
+ $(MAKE) -C modem/ install
+
+-else
+-20less:
+- @echo "The martian_dev.ko driver and the complementary helper martian_helper are for use with kernels after 2.6.20. Use the martian-20080407.tar.gz for earlier kernels."
++#else
++#20less:
++# @echo "The martian_dev.ko driver and the complementary helper martian_helper are for use with kernels after 2.6.20. Use the martian-20080407.tar.gz for earlier kernels."
+
+-endif
++#endif
+
+ clean:
+ $(MAKE) -C kmodule/ clean
diff --git a/net-dialup/martian-modem/files/martian-modem-kernel-3.8.patch b/net-dialup/martian-modem/files/martian-modem-kernel-3.8.patch
new file mode 100644
index 00000000..eb138df8
--- /dev/null
+++ b/net-dialup/martian-modem/files/martian-modem-kernel-3.8.patch
@@ -0,0 +1,22 @@
+--- kmodule/martian.c
++++ kmodule/martian.c
+@@ -46,6 +46,19 @@
+ #include "../martian.h"
+ #include "marsio.h"
+
++#ifndef __devinit
++#define __devinit
++#endif
++#ifndef __devexit
++#define __devexit
++#endif
++#ifndef __devexit_p
++#define __devexit_p
++#endif
++#ifndef __devinitdata
++#define __devinitdata
++#endif
++
+ /***** Driver globals *****/
+
+ struct proc_dir_entry *martians_proc_dir = NULL;
diff --git a/net-dialup/martian-modem/files/martian-modem.conf.d b/net-dialup/martian-modem/files/martian-modem.conf.d
new file mode 100644
index 00000000..47e2f62b
--- /dev/null
+++ b/net-dialup/martian-modem/files/martian-modem.conf.d
@@ -0,0 +1,45 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/martian-modem/files/martian-modem.conf.d,v 1.1 2012/12/15 16:41:36 pacho Exp $
+#
+### Configuration for martian-modem initscript
+#
+### DEVICE
+# Device that will martian-modem daemon create to act as modem device.
+# Default is /dev/ttySM0.
+#DEVICE="/dev/ttySM0"
+#
+#
+### USER/GROUP
+# User and group that will have access to the modem device.
+# Default values are nobody/dialout.
+# Note: the daemon itself needs to be run as root!
+#USER="nobody"
+#GROUP="dialout"
+#
+#
+### MARTIAN_OPTS
+# Other options to be passed to the daemon, see description below.
+# Defaults to empty.
+# --realtime - raise priority of threads to realtime.
+# --smp - true smp (symmetric multiprocessing) mode.
+# --country=<country> - two-letter code for the country.
+# Run `/usr/sbin/martian_modem --info countries` for list.
+# --no-cdclose - keep working with client when carrier lost.
+# --hide-pty - save pty from others as soon its open. Client
+# should notify it's here writing to device. For callback feature.
+#MARTIAN_OPTS=""
+#
+#
+### LOGGING
+# Should we log to syslog [YES/NO]
+# Default to YES. If you do not want this, say NO here to use LOGFILE instead.
+#USE_SYSLOG="YES"
+# Alternatively, you can log to a separate file. The default location is below.
+#LOGFILE="/var/log/martian-modem.log"
+#
+#
+### DEBUG
+# How verbose should the log be [1-5]
+# Default debug_level=1; debug_level=3 is suitable for normal debugging.
+#DEBUG_LEVEL=1
diff --git a/net-dialup/martian-modem/files/martian-modem.init.d b/net-dialup/martian-modem/files/martian-modem.init.d
new file mode 100644
index 00000000..540d14c5
--- /dev/null
+++ b/net-dialup/martian-modem/files/martian-modem.init.d
@@ -0,0 +1,47 @@
+#!/sbin/openrc-run
+
+daemon=/usr/sbin/martian_modem
+description="Initscript to run the userspace daemon for winmodems supported by martian-modem driver"
+
+: ${device:=${DEVICE:-/dev/ttySM0}}
+: ${logfile:=${LOGFILE:-/var/log/martian-modem.log}}
+: ${user:=${USER:-nobody}}
+: ${group:=${GROUP:-dialout}}
+: ${debug_level:=${DEBUG_LEVEL:-1}}
+: ${use_syslog:=${USE_SYSLOG:-YES}}
+pidfile=/var/run/${SVCNAME}.pid
+
+depend() {
+ need localmount
+ [ "${use_syslog}" = "YES" ] && use syslog
+}
+
+start() {
+ if [ -e /proc/modules ] ; then
+ local modem=
+ for modem in /dev/modem /dev/ttySM[0-9]* ; do
+ [ -e "${modem}" ] && break
+ done
+ fi
+ if [ ! -e "${modem}" ] ; then
+ modprobe martian-dev || eerror $? "Error loading martian-dev module"
+ fi
+
+ if ! yesno "${use_syslog}" ; then
+ martian_opts="${MARTIAN_OPTS} --log=${logfile}"
+ else
+ martian_opts="${MARTIAN_OPTS} --syslog"
+ fi
+
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --start --exec ${daemon} --user ${user}:${group} \
+ --pidfile ${pidfile} --make-pidfile --background \
+ -- ${martian_opts} --debug=${debug_level} ${device}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --pidfile ${pidfile}
+ eend $?
+}
diff --git a/net-dialup/martian-modem/martian-modem-20100123-r2.ebuild b/net-dialup/martian-modem/martian-modem-20100123-r2.ebuild
new file mode 100644
index 00000000..915fb342
--- /dev/null
+++ b/net-dialup/martian-modem/martian-modem-20100123-r2.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils linux-mod readme.gentoo
+
+MY_P="martian-full-${PV}"
+DESCRIPTION="ltmodem alternative driver providing support for Agere Systems winmodems"
+HOMEPAGE="http://packages.debian.org/sid/martian-modem-source http://phep2.technion.ac.il/linmodems/packages/ltmodem/kernel-2.6/martian"
+#SRC_URI="mirror://debian/pool/non-free/m/martian-modem/${MY_P}.tar.gz"
+#SRC_URI="http://phep2.technion.ac.il/linmodems/packages/ltmodem/kernel-2.6/martian/${MY_P}.tar.gz"
+SRC_URI="http://linmodems.technion.ac.il/packages/ltmodem/kernel-2.6/martian/${MY_P}.tar.gz"
+
+LICENSE="GPL-2 AgereSystems-WinModem"
+KEYWORDS="~amd64 ~x86 -*"
+IUSE=""
+SLOT=0
+
+DEPEND="!net-dialup/ltmodem"
+RDEPEND="!<sys-apps/openrc-0.13
+ ${DEPEND}"
+
+# Do NOT remove this. Stripping results in broken communication
+# with core state communication channel (also see QA_* stuff below)
+RESTRICT="strip"
+
+# contains proprietary precompiled 32 bit ltmdmobj.o
+QA_PREBUILT="usr/sbin/martian_modem"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="See /etc/conf.d/${PN} for configuration options.
+After you have finished the configuration, you need to run
+ /etc/init.d/${PN} start
+
+To run the userspace daemon automatically on every boot,
+just add it to a runlevel:
+ rc-update add ${PN} default
+
+If using net-dialup/wvdial, you need
+ Carrier Check = no
+line."
+
+S="${WORKDIR}/${P/modem/full}"
+MODULE_NAMES="martian_dev(ltmodem::kmodule)"
+CONFIG_CHECK="SERIAL_8250"
+SERIAL_8250_ERROR="This driver requires you to compile your kernel with serial core (CONFIG_SERIAL_8250) support."
+
+pkg_setup() {
+ linux-mod_pkg_setup
+
+ if kernel_is 2 4; then
+ eerror "This driver works only with 2.6 kernels!"
+ die "unsupported kernel detected"
+ fi
+}
+
+src_prepare() {
+ # Exclude Makefile kernel version check, we used kernel_is above.
+ # TODO: More exactly, martian-modem-full-20100123 is for >kernel-2.6.20!
+ epatch "${FILESDIR}/${P}-makefile.patch"
+ epatch "${FILESDIR}/${P}-grsecurity.patch"
+
+ # fix compile on amd64
+ sed -i -e "/^HOST.*$/s:uname -i:uname -m:" modem/Makefile || die "sed failed"
+
+ BUILD_TARGETS="all"
+ BUILD_PARAMS="KERNEL_DIR='${KV_DIR}' SUBLEVEL='${KV_PATCH}'"
+
+ if kernel_is ge 3 8
+ then epatch "${FILESDIR}/${PN}-kernel-3.8.patch"
+ fi
+ epatch_user
+}
+
+src_install() {
+ linux-mod_src_install
+
+ # userspace daemon and initscripts stuff
+ dosbin modem/martian_modem
+ newconfd "${FILESDIR}/${PN}.conf.d" ${PN}
+ newinitd "${FILESDIR}/${PN}.init.d" ${PN}
+}
+
+pkg_postinst() {
+ linux-mod_pkg_postinst
+
+ if linux_chkconfig_present SMP ; then
+ elog "You have SMP (symmetric multi processor) support enabled in kernel."
+ elog "You should run martian-modem with --smp enabled in MARTIAN_OPTS."
+ fi
+ readme.gentoo_pkg_postinst
+}
diff --git a/net-dialup/martian-modem/metadata.xml b/net-dialup/martian-modem/metadata.xml
new file mode 100644
index 00000000..21c33b12
--- /dev/null
+++ b/net-dialup/martian-modem/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>rogerx.oss@gmail.com</email>
+ <name>Roger</name>
+ <description>Please assign bugs</description>
+</maintainer>
+<maintainer>
+ <email>pacho@gentoo.org</email>
+ <description>proxy-maintainer, please CC on bugs</description>
+</maintainer>
+</pkgmetadata>
diff --git a/net-firewall/firewall-mv/Manifest b/net-firewall/firewall-mv/Manifest
new file mode 100644
index 00000000..9a138a03
--- /dev/null
+++ b/net-firewall/firewall-mv/Manifest
@@ -0,0 +1 @@
+DIST firewall-mv-8.13.tar.gz 15578 SHA256 784a49c7ee50432f6d9666406978d2b1a283be72d7eb6e4fd36543c5552f98a0 SHA512 4ad7e0686078254683a49ee0956c37a6bda80ece5c806f792a4cafb773fd74fda86c901e1ef1cb4ecae52fa67bd149a84c303aacc98f44b3973da600c0667cee WHIRLPOOL a721a4fd824cf10325d9cb716fb2d8843d48c9667c38c700f8fa99a4d78a81a9ad3f0999aaf2fea0b20cca8ae611164fe58a5d4b5f16429ede54fcf93000c3a7
diff --git a/net-firewall/firewall-mv/firewall-mv-8.13.ebuild b/net-firewall/firewall-mv/firewall-mv-8.13.ebuild
new file mode 100644
index 00000000..4584ba78
--- /dev/null
+++ b/net-firewall/firewall-mv/firewall-mv-8.13.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils systemd
+
+DESCRIPTION="Initialize iptables and net-related sysctl variables"
+HOMEPAGE="https://github.com/vaeth/firewall-mv/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="!<sys-apps/openrc-0.13
+ app-shells/push"
+DEPEND=""
+
+src_prepare() {
+ if use prefix
+ then sed -i \
+ -e "s!/etc/!${EPREFIX}/etc/!g" \
+ -e "s!/usr/!${EPREFIX}/usr/!g" \
+ -- sbin/* etc/* systemd/* || die
+ else sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- sbin/* || die
+ fi
+ epatch_user
+}
+
+src_install() {
+ into /
+ dosbin sbin/*
+ insinto /etc
+ doins -r etc/*
+ insinto /usr/lib/modules-load.d
+ doins modules-load.d/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+ doconfd openrc/conf.d/*
+ doinitd openrc/init.d/*
+ dodoc README
+ systemd_dounit systemd/*
+}
diff --git a/net-firewall/firewall-mv/metadata.xml b/net-firewall/firewall-mv/metadata.xml
new file mode 100644
index 00000000..3f9b1748
--- /dev/null
+++ b/net-firewall/firewall-mv/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/firewall-mv</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-misc/sshstart/Manifest b/net-misc/sshstart/Manifest
new file mode 100644
index 00000000..9476acf8
--- /dev/null
+++ b/net-misc/sshstart/Manifest
@@ -0,0 +1 @@
+DIST sshstart-2.15.tar.gz 2479 SHA256 30b269c6c017bae176aa144383ffae3cd82b1f990049b9e6ac2ac9d8428a5d19 SHA512 d27c1568b14a11209f8605f837bb885ce3ef763afbbe76135f76ef4e1e2d4cd0cb7cceb31008a67a33dca95335dbb818cbe54acd7fa5f61de63e415c276c0e77 WHIRLPOOL 4a10dae6c38990f7bd41a11117043253ad8365c2ab76442c6b51d767742347c3aa2a5c6701e01efb3a93d1dfd5eb8a3067a1575cad76ac15dee036a1ff94ec90
diff --git a/net-misc/sshstart/metadata.xml b/net-misc/sshstart/metadata.xml
new file mode 100644
index 00000000..b59a0326
--- /dev/null
+++ b/net-misc/sshstart/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/sshstart</remote-id>
+ </upstream>
+ <use>
+ <flag name="keychain">Pull in keychain as dependency. Not required, but recommended for smoother operation.</flag>
+ </use>
+</pkgmetadata>
diff --git a/net-misc/sshstart/sshstart-2.15.ebuild b/net-misc/sshstart/sshstart-2.15.ebuild
new file mode 100644
index 00000000..a12d6f9f
--- /dev/null
+++ b/net-misc/sshstart/sshstart-2.15.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="Start ssh-agent/ssh-add only if you really use ssh or friends"
+HOMEPAGE="https://github.com/vaeth/sshstart/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+keychain"
+RDEPEND="app-shells/push
+ keychain? ( net-misc/keychain )"
+DEPEND=""
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- "${PN}" || die
+ epatch_user
+}
+
+src_install() {
+ dobin "${PN}"
+ dodoc README
+}
diff --git a/net-print/foo2zjs/Manifest b/net-print/foo2zjs/Manifest
new file mode 100644
index 00000000..0a74a3a3
--- /dev/null
+++ b/net-print/foo2zjs/Manifest
@@ -0,0 +1,19 @@
+DIST cpplxp.exe 4799488 SHA256 5f4c8b6f20ccf2d525f683847f5dc24bb4c7f58131d6704047d6c9a90d6895af
+DIST foo2zjs-20081129.tar.gz 1556478 SHA256 7b372e51a1251445f0150a7160148f4682ca32a2253f8ae9cbb845283b883b97
+DIST hpclj2600n.tar.gz 573660 SHA256 1f2c92055f22a7a6526b84b2c31e36ce1a6de003f66b31eb60cd400b84e213b6
+DIST km2430.tar.gz 929112 SHA256 88e21cc7f5c124223a6e4baea9d18dfae4a74f28f500dfae8e035495434ff572
+DIST km2530.tar.gz 2045958 SHA256 36226589e899f5d79476f5a718575eed51e81a81632ea11ba5db9e289572fb9b
+DIST lexc500.tar.gz 239577 SHA256 823fd57b2e1b5aa6ed7a07055616238ed9b02e324b9d1c5f4f281e5ae4b0a667
+DIST m22dlicc.exe 634368 SHA256 1d57413f4c36941c64599dae2ac2b1f8a397e128796c2796a108be5b8fd282b3
+DIST m23dlicc.exe 170496 SHA256 1416cda7e2e3496ff1d121c87dd8984ad1d16ed3396096f05f4919dafd445ae4
+DIST okic3200.tar.gz 527532 SHA256 f5503854d4537868d24a797912b2fa70c1fb5e0f097fc61a45f100725a064521
+DIST okic3400.tar.gz 453326 SHA256 5f64ac0002c6f2f25d481bada150121d7d77e29e616de0639446903904043a70
+DIST okic5600.tar.gz 674998 SHA256 7b2d59d54ecefecd053766bdb1d81db08c9d32979031cb8c4e2d5162d7d8f6bd
+DIST samclp300.tar.gz 427584 SHA256 cf7eaca16a6a1892e13cd87825dcb57060c4c50815a52b0f2cb09b27304ec140
+DIST sihp1000.tar.gz 50416 SHA256 28ee34195a976212800c6abd29047c297c4367aaf727f279e16de297f13562f5
+DIST sihp1005.tar.gz 52297 SHA256 fb044ea77cbe3c5e2f86d00db02733ab1f8bdf102fcbfc55ba4eb2bee94535ee
+DIST sihp1018.tar.gz 70544 SHA256 95505c88af25d0c2130077af68e0404d88fc8dfb0a58943bdb9313f3e6c10f10
+DIST sihp1020.tar.gz 70139 SHA256 c6117961ff9a4a1a880093daea52d800636f6c1002e4cf4fda2009f08f652751
+DIST sihpP1005.tar.gz 153447 SHA256 9672c09945f4d1b19841187b30832f3afdfbdf0a1e770f41d95c1575fb865c5c
+DIST sihpP1006.tar.gz 153532 SHA256 7974d669cd68a88674e0b6c44c5fa48f7c6625d16714cac6ded7b26024184f50
+DIST sihpP1505.tar.gz 166072 SHA256 f631bce116447af89b1740c3b9732666348579a9dcd96d6f31121d5586332f35
diff --git a/net-print/foo2zjs/files/foo2zjs-20081129-Makefile.patch b/net-print/foo2zjs/files/foo2zjs-20081129-Makefile.patch
new file mode 100644
index 00000000..8391dad8
--- /dev/null
+++ b/net-print/foo2zjs/files/foo2zjs-20081129-Makefile.patch
@@ -0,0 +1,145 @@
+diff -urN foo2zjs.orig/icc2ps/Makefile foo2zjs/icc2ps/Makefile
+--- foo2zjs.orig/icc2ps/Makefile 2007-11-27 22:13:53.000000000 +0100
++++ foo2zjs/icc2ps/Makefile 2008-12-02 13:51:12.000000000 +0100
+@@ -1,11 +1,11 @@
+ UNAME := $(shell uname)
+-PREFIX= /usr
++PREFIX= $(DESTDIR)/usr
+ BIN= $(PREFIX)/bin
+ SRC= icc2ps.c xgetopt.c
+ LIB= cmscam97.c cmscnvrt.c cmserr.c cmsgamma.c cmsgmt.c cmsintrp.c cmsio1.c \
+ cmslut.c cmsmatsh.c cmsmtrx.c cmsnamed.c cmspack.c cmspcs.c cmsps2.c \
+ cmssamp.c cmswtpnt.c cmsxform.c cmsio0.c cmsvirt.c
+-CFLAGS= -O3
++CFLAGS?= -O3
+ INSTALL=install
+ ifeq ($(UNAME),SunOS)
+ INSTALL=/usr/ucb/install
+diff -urN foo2zjs.orig/Makefile foo2zjs/Makefile
+--- foo2zjs.orig/Makefile 2008-09-23 15:56:20.000000000 +0200
++++ foo2zjs/Makefile 2008-12-02 14:00:42.000000000 +0100
+@@ -251,7 +251,7 @@
+ endif
+
+ # Compiler flags
+-CFLAGS += -O2 -Wall
++CFLAGS ?= -O2 -Wall
+ #CFLAGS += -g
+
+ #
+@@ -543,14 +543,15 @@
+ UDEVBIN=$(DESTDIR)/bin/
+
+ install-prog:
++ [ -d $(BIN) ] || install -d -m 755 $(BIN)/
++ [ -d $(DESTDIR)/bin/ ] || install -d -m 755 $(DESTDIR)/bin/
+ #
+ # Install driver, wrapper, and development tools
+ #
+ $(INSTALL) -d $(BIN)
+ $(INSTALL) -c $(PROGS) $(SHELLS) $(BIN)/
+ if [ "$(BINPROGS)" != "" ]; then \
+- $(INSTALL) -d $(UDEVBIN); \
+- $(INSTALL) -c $(BINPROGS) $(UDEVBIN); \
++ install -c $(BINPROGS) $(DESTDIR)/bin/; \
+ fi
+ #
+ # Install gamma correction files. These are just templates,
+@@ -570,6 +571,7 @@
+ #
+ # Remove obsolete foomatic database files from previous versions
+ #
++ mkdir -p $(FOODB)/opt/
+ rm -f $(FOODB)/opt/foo2zjs-Media.xml
+ rm -f $(FOODB)/opt/foo2zjs-PaperSize.xml
+ rm -f $(FOODB)/opt/foo2zjs-Source.xml
+@@ -583,6 +585,7 @@
+ # Install current database files
+ #
+ @if [ -d $(FOODB) ]; then \
++ [ -d $(FOODB)/$$dir/ ] || install -d -m 755 $(FOODB)/$$dir/; \
+ for dir in driver printer opt; do \
+ echo install -m 644 foomatic-db/$$dir/*.xml $(FOODB)/$$dir/; \
+ $(INSTALL) -c -m 644 foomatic-db/$$dir/*.xml $(FOODB)/$$dir/; \
+@@ -601,10 +604,10 @@
+ #
+ # Clear foomatic cache and rebuild database if needed
+ #
+- rm -rf /var/cache/foomatic/*/*
+- rm -f /var/cache/foomatic/printconf.pickle
+- if [ -d /var/cache/foomatic/compiled ]; then \
+- cd /var/cache/foomatic/compiled; \
++ rm -rf $(DESTDIR)/var/cache/foomatic/*/*
++ rm -f $(DESTDIR)/var/cache/foomatic/printconf.pickle
++ if [ -d $(DESTDIR)/var/cache/foomatic/compiled ]; then \
++ cd $(DESTDIR)/var/cache/foomatic/compiled; \
+ foomatic-combo-xml -O >overview.xml; \
+ fi
+
+@@ -736,13 +739,6 @@
+ done; \
+ ppdmgr -u; \
+ elif [ -d $(PPD) ]; then \
+- find $(PPD) -name '*foo2zjs*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2hp*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2xqx*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2lava*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2qpdl*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2slx*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2hiperc*' | xargs rm -rf; \
+ [ -d $(PPD)/foo2zjs ] || mkdir $(PPD)/foo2zjs; \
+ cd PPD; \
+ for ppd in *.ppd; do \
+@@ -789,10 +785,8 @@
+ $(INSTALL) -c -m 755 hplj10xx_gui.tcl $(SHAREZJS)
+
+
+-USBDIR=/etc/hotplug/usb
+-UDEVDIR=/etc/udev/rules.d
+-RULES=hplj10xx.rules
+-install-hotplug: install-hotplug-test install-hotplug-prog
++USBDIR=$(DESTDIR)/etc/hotplug/usb
++install-hotplug: install-hotplug-test install-udev
+
+ install-hotplug-test:
+ #
+@@ -810,9 +804,6 @@
+ #
+
+ install-hotplug-prog:
+- if [ -d $(UDEVDIR) ]; then \
+- $(INSTALL) -c -m 644 $(RULES) $(UDEVDIR)/11-$(RULES); \
+- fi
+ [ -d $(USBDIR) ] || $(INSTALL) -d -m 755 $(USBDIR)/
+ $(INSTALL) -c -m 755 hplj1000 $(USBDIR)/
+ ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hplj1005
+@@ -823,15 +814,12 @@
+ ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hpljP1007
+ ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hpljP1008
+ ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hpljP1505
+- $(USBDIR)/hplj1000 install-usermap
+- $(USBDIR)/hplj1005 install-usermap
+- $(USBDIR)/hplj1018 install-usermap
+- $(USBDIR)/hplj1020 install-usermap
+- $(USBDIR)/hpljP1005 install-usermap
+- $(USBDIR)/hpljP1006 install-usermap
+- $(USBDIR)/hpljP1007 install-usermap
+- $(USBDIR)/hpljP1008 install-usermap
+- $(USBDIR)/hpljP1505 install-usermap
++ install -c -m 644 hplj.usermap $(USBDIR)/
++UDEVDIR=$(DESTDIR)/etc/udev/rules.d
++RULES=hplj10xx.rules
++install-udev:
++ [ -d $(UDEVDIR) ] || install -d -m 755 $(UDEVDIR)/
++ install -c -m 644 $(RULES) $(UDEVDIR)/11-$(RULES)
+
+ cups: FRC
+ if [ -x /etc/init.d/cups ]; then \
+@@ -1223,7 +1211,6 @@
+ $(INSTALL) -c -m 644 README $(DOCDIR)
+ $(INSTALL) -c -m 644 ChangeLog $(DOCDIR)
+
+-GROFF=/usr/local/test/bin/groff
+ GROFF=groff
+ manual.pdf: $(MANPAGES)
+ -$(GROFF) -t -man $(MANPAGES) | ps2pdf - $@
diff --git a/net-print/foo2zjs/files/foo2zjs-20081129-udevfwld.patch b/net-print/foo2zjs/files/foo2zjs-20081129-udevfwld.patch
new file mode 100644
index 00000000..808b32f1
--- /dev/null
+++ b/net-print/foo2zjs/files/foo2zjs-20081129-udevfwld.patch
@@ -0,0 +1,273 @@
+--- 1/Makefile
++++ 1/Makefile
+@@ -20,6 +20,10 @@
+ PREFIX=/usr
+ PREFIX=$(DESTDIR)/usr
+
++# USB_PRINTERID is also installed there because it is needed by the FWloader
++FWLOADERDIR=$(DESTDIR)/sbin
++FIRMWAREDIR=$(DESTDIR)/lib/firmware
++
+ # Pathnames for this package...
+ BIN=$(PREFIX)/bin
+ SHAREZJS=$(PREFIX)/share/foo2zjs
+@@ -661,21 +665,21 @@
+ fi; \
+ done
+ # foo2zjs Firmware files (if any)
+- $(INSTALL) $(LPuid) $(LPgid) -m 775 -d $(SHAREZJS)/firmware/
++ $(INSTALL) $(LPuid) $(LPgid) -m 775 -d $(FIRMWAREDIR)/
+ for i in sihp1*.img; do \
+ if [ -f $$i ]; then \
+ base=`basename $$i .img`; \
+ ./arm2hpdl $$i >$$base.dl; \
+- $(INSTALL) -c -m 644 $$base.dl $(SHAREZJS)/firmware/; \
++ $(INSTALL) -c -m 644 $$base.dl $(FIRMWAREDIR)/; \
+ fi; \
+ done
+ # foo2xqx Firmware files (if any)
+- $(INSTALL) $(LPuid) $(LPgid) -m 775 -d $(SHAREXQX)/firmware/
++ $(INSTALL) $(LPuid) $(LPgid) -m 775 -d $(FIRMWAREDIR)/
+ for i in sihpP*.img; do \
+ if [ -f $$i ]; then \
+ base=`basename $$i .img`; \
+ ./arm2hpdl $$i >$$base.dl; \
+- $(INSTALL) -c -m 644 $$base.dl $(SHAREXQX)/firmware/; \
++ $(INSTALL) -c -m 644 $$base.dl $(FIRMWAREDIR)/; \
+ fi; \
+ done
+ # foo2oak ICM files (if any)
+@@ -818,6 +822,8 @@
+ UDEVDIR=$(DESTDIR)/etc/udev/rules.d
+ RULES=hplj10xx.rules
+ install-udev:
++ [ -d $(FWLOADERDIR) ] || install -d -m 755 $(FWLOADERDIR)/
++ install -c -m 755 foo2zjs-loadfw $(FWLOADERDIR)/
+ [ -d $(UDEVDIR) ] || install -d -m 755 $(UDEVDIR)/
+ install -c -m 644 $(RULES) $(UDEVDIR)/11-$(RULES)
+
+--- foo2zjs-loadfw
++++ foo2zjs-loadfw
+@@ -0,0 +1,151 @@
++#!/bin/sh
++
++# foo2zjs-loadfw:
++#
++# Hotplug script for 100[05],1018,1020,P100[5678],P1505,P1505n
++# USB laser printers. The model number
++# that this script deals with is determined from the udev env.
++#
++# Used to download firmware automatically into the printer when it
++# is powered up or plugged into the USB port.
++#
++# The inspiration fo this script is from:
++# Oscar Santacreu. Alicante-Spain (2002)
++# Mike Morgan (2004)
++# Modified by Stefan Schweizer (2005) to work as a udev-RUN-script
++
++#
++# Directory to find downloadable HP firmware files sihpMMMM.dl
++#
++FWDIR=/lib/firmware
++
++#
++# Program used to determine USB printer id information
++#
++USBID=/bin/usb_printerid
++
++#
++# Timeout to load firmware
++#
++TIMEOUT=6
++
++#
++# Figure out how to log our messages
++#
++if [ -t 1 ]; then
++ # Running from a tty...
++ log() {
++ echo "$0: $@"
++ }
++elif [ -x /usr/bin/logger ]; then
++ # Have logger...
++ log() {
++ logger -t "$0" -- "$@"
++ }
++else
++ # No logger...
++ log() {
++ echo "$0: $@" >> /var/log/messages
++ }
++fi
++
++#
++# Figure out the model number from the argument of this script
++#
++MODELNAME=''
++FWMODEL=''
++case "$1" in
++P1005)
++ MODEL=P1005
++ ;;
++P1006)
++ MODEL=P1006
++ ;;
++P1007)
++ MODEL=P1007
++ FWMODEL=P1005
++ ;;
++P1008)
++ MODEL=P1008
++ FWMODEL=P1006
++ ;;
++P1505)
++ MODEL=P1505
++ ;;
++P1505n)
++ MODEL=P1505n
++ FWMODEL=P1505
++ ;;
++1000)
++ MODEL=1000
++ MODELNAME="hp LaserJet $MODEL"
++ ;;
++1005)
++ MODEL=1005
++ MODELNAME="hp LaserJet $MODEL"
++ ;;
++1018)
++ MODEL=1018
++ ;;
++1020)
++ MODEL=1020
++ ;;
++*)
++ log "Only HP LaserJet 100[05],1018,1020,P100[5678],P1505,P1505n are supported"
++ log "You need to supply one of these on the cmdline: $0 10**"
++ exit
++ ;;
++esac
++: ${MODELNAME:="HP LaserJet $MODEL"}
++: ${FWMODEL:="$MODEL"}
++
++if [ -n "$2" ]; then
++ DEVNAME=$2
++elif [ -n "$DEVNAME" ]; then
++ log 'using $DEVNAME'
++else
++ log "You need to either have $DEVNAME set in the environment or supply it on the cmdline, like:"
++ log "$0 10** /dev/usb/lp0"
++ exit 1
++fi
++
++#
++# Procedure to load a single device with firmware
++#
++load1() {
++ fw="$FWDIR/sihp$FWMODEL.dl"
++ if [ ! -f "$fw" ]; then
++ log "Missing HP LaserJet $MODEL firmware file $fw"
++ log "...read foo2zjs installation instructions and run ./getweb $MODEL"
++ return 1
++ fi
++
++ log "loading HP LaserJet $MODEL firmware $fw to $DEVNAME ..."
++ if cat $fw > $DEVNAME; then
++ sleep $TIMEOUT
++ log "... download successful."
++ else
++ log "... download failed."
++ fi
++ return 0
++}
++
++#
++# OK, now download firmware to any printers that need it
++#
++if [ -x $USBID ]; then
++ if $USBID $DEVNAME | grep "$MODELNAME" 2> /dev/null; then
++ # This is a LaserJet 100x
++ if $USBID $DEVNAME | grep 'FWVER' 2> /dev/null; then
++ log "HP LaserJet $MODEL firmware already loaded into $DEVNAME"
++ else
++ # Firmware is not yet loaded
++ load1 "$DEVNAME"
++ fi
++ else
++ log "No supported printer found."
++ fi
++else
++ log "HP LaserJet $MODEL firmware was not downloaded..."
++ log "...couldn't find $USBID"
++fi
+--- hplj1000
++++ hplj1000
+@@ -35,7 +35,7 @@
+ #
+ # Directory to find downloadable HP firmware files sihpMMMM.dl
+ #
+-FWDIR=/usr/share/foo2zjs/firmware
++FWDIR=/lib/firmware
+
+ #
+ # Program used to determine USB printer id information
+--- hplj10xx.rules
++++ hplj10xx.rules
+@@ -1,36 +1,21 @@
+-#Own udev rule for HP Laserjet 1000
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="hp LaserJet 1000", NAME="usb/%k", \
+- SYMLINK+="hplj1000-%n", MODE="0666", RUN+="/etc/hotplug/usb/hplj1000"
+-#Own udev rule for HP Laserjet 1005
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="hp LaserJet 1005 series", NAME="usb/%k", \
+- SYMLINK+="hplj1005-%n", MODE="0666", RUN+="/etc/hotplug/usb/hplj1005"
+-#Own udev rule for HP Laserjet 1018
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet 1018", NAME="usb/%k", \
+- SYMLINK+="hplj1018-%n", MODE="0666", RUN+="/etc/hotplug/usb/hplj1018"
+-#Own udev rule for HP Laserjet 1020
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet 1020", NAME="usb/%k", \
+- SYMLINK+="hplj1020-%n", MODE="0666", RUN+="/etc/hotplug/usb/hplj1020"
+-#Own udev rule for HP Laserjet P1005
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1005", NAME="usb/%k", \
+- SYMLINK+="hpljP1005-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1005"
+-#Own udev rule for HP Laserjet P1006
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1006", NAME="usb/%k", \
+- SYMLINK+="hpljP1006-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1006"
+-#Own udev rule for HP Laserjet P1007
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1007", NAME="usb/%k", \
+- SYMLINK+="hpljP1007-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1007"
+-#Own udev rule for HP Laserjet P1008
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1008", NAME="usb/%k", \
+- SYMLINK+="hpljP1008-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1008"
+-#Own udev rule for HP Laserjet P1505
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1505", NAME="usb/%k", \
+- SYMLINK+="hpljP1505-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1505"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="3d17", RUN+="/sbin/foo2zjs-loadfw P1005 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="3e17", RUN+="/sbin/foo2zjs-loadfw P1006 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="4817", RUN+="/sbin/foo2zjs-loadfw P1007 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="4917", RUN+="/sbin/foo2zjs-loadfw P1008 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="3f17", RUN+="/sbin/foo2zjs-loadfw P1505 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="4017", RUN+="/sbin/foo2zjs-loadfw P1505n $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="0517", RUN+="/sbin/foo2zjs-loadfw 1000 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="1317", RUN+="/sbin/foo2zjs-loadfw 1005 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="4117", RUN+="/sbin/foo2zjs-loadfw 1018 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="2b17", RUN+="/sbin/foo2zjs-loadfw 1020 $tempnode"
++
diff --git a/net-print/foo2zjs/foo2zjs-20081129-r1.ebuild b/net-print/foo2zjs/foo2zjs-20081129-r1.ebuild
new file mode 100644
index 00000000..ec664b77
--- /dev/null
+++ b/net-print/foo2zjs/foo2zjs-20081129-r1.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="Support for printing to ZjStream-based printers. Fixes bug 271079"
+HOMEPAGE="http://foo2zjs.rkkda.com/"
+
+# extracted by http://gentooexperimental.org/~genstef/dist/foo2zjs-helper.sh
+DEVICES=( "hp2600n" "hp1600" "hp1500" "hp1215" "km2530" "km2490" "km2480"
+"xp6115" "km2430" "km2300" "km2200" "kmcpwl" "sa300" "sa315" "sa2160"
+"sa3160" "xp6110" "lm500" "oki3200" "oki3300" "oki3400" "oki3530" "oki5100"
+"oki5200" "oki5500" "oki5600" "oki5800" "hp1020" "hp1018" "hp1005" "hp1000"
+"hpp1505" "hpp1008" "hpp1007" "hpp1006" "hpp1005" )
+#"sa610" has no file to download
+URIS=(
+"http://foo2hp.rkkda.com/icm/hpclj2600n.tar.gz
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"http://foo2hp.rkkda.com/icm/hpclj2600n.tar.gz
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"http://foo2hp.rkkda.com/icm/hpclj2600n.tar.gz
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"http://foo2hp.rkkda.com/icm/hpclj2600n.tar.gz
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"http://foo2lava.rkkda.com/icm/km2530.tar.gz"
+"http://foo2lava.rkkda.com/icm/km2530.tar.gz"
+"http://foo2lava.rkkda.com/icm/km2530.tar.gz"
+"http://foo2lava.rkkda.com/icm/km2530.tar.gz"
+"http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"ftp://ftp.minolta-qms.com/pub/crc/out_going/other/m23dlicc.exe
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"ftp://ftp.minolta-qms.com/pub/crc/out_going/win2000/m22dlicc.exe"
+"ftp://ftp.minolta-qms.com/pub/crc/out_going/windows/cpplxp.exe"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2slx.rkkda.com/icm/lexc500.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3200.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3400.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3400.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3400.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3200.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3200.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic5600.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic5600.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic5600.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihp1020.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihp1018.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihp1005.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihp1000.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1505.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1006.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1005.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1006.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1005.tar.gz"
+)
+
+SRC_URI="http://dev.gentooexperimental.org/~scarabeus/${P}.tar.gz"
+IUSE="cups foomaticdb usb"
+for ((DEV=0; DEV < ${#DEVICES[*]}; DEV++)); do
+ SRC_URI="${SRC_URI} foo2zjs_devices_${DEVICES[DEV]}? ( ${URIS[DEV]} )"
+ IUSE="${IUSE} foo2zjs_devices_${DEVICES[DEV]}"
+ ALL_BEGIN="${ALL_BEGIN} !foo2zjs_devices_${DEVICES[DEV]}? ("
+ ALL_MIDDLE="${ALL_MIDDLE} ${URIS[DEV]}"
+ ALL_END="${ALL_END} )"
+done
+SRC_URI="${SRC_URI}${ALL_BEGIN}${ALL_MIDDLE}${ALL_END}"
+
+LICENSE="GPL-2"
+# due to those firmwares/icms/etc...
+RESTRICT="mirror"
+SLOT="0"
+DEPEND="app-arch/unzip"
+RDEPEND="cups? ( net-print/cups )
+ foomaticdb? ( net-print/foomatic-db-engine )
+ net-print/foomatic-filters
+ virtual/udev"
+KEYWORDS="~x86 ~amd64 ~ppc"
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-Makefile.patch
+ epatch "${FILESDIR}"/${P}-udevfwld.patch
+ epatch_user
+}
+
+src_unpack() {
+ unpack ${P}.tar.gz
+
+ # link getweb files in ${S} to get unpacked
+ local i
+ for i in ${A}
+ do ln -s "${DISTDIR}"/${i} "${S}"
+ done
+}
+
+src_compile() {
+ emake getweb
+
+ # remove wget as we got the firmware with portage
+ sed -i -e "s/.*wget .*//" \
+ -e 's/.*rm $.*//' \
+ -e "s/error \"Couldn't dow.*//" getweb
+
+ # unpack files
+ GOT=0;
+ for ((DEV=0; DEV < ${#DEVICES[*]}; DEV++)); do
+ if use foo2zjs_devices_${DEVICES[DEV]}; then
+ ./getweb ${DEVICES[DEV]:2}
+ GOT=1
+ fi
+ done
+ if [ ${GOT} == 0 ]; then ./getweb all; fi
+
+ emake
+}
+
+src_install() {
+ use foomaticdb && dodir /usr/share/foomatic/db/source
+
+ use cups && dodir /usr/share/cups/model
+
+ emake DESTDIR="${ED}" install install-udev
+}
diff --git a/net-print/foo2zjs/metadata.xml b/net-print/foo2zjs/metadata.xml
new file mode 100644
index 00000000..fd829cb5
--- /dev/null
+++ b/net-print/foo2zjs/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ <description>Maintainer of patch for the abandoned ebuild</description>
+ </maintainer>
+</pkgmetadata>
diff --git a/profiles/make.defaults b/profiles/make.defaults
new file mode 100644
index 00000000..5eaf9274
--- /dev/null
+++ b/profiles/make.defaults
@@ -0,0 +1 @@
+USE_EXPAND="COMPLETION"
diff --git a/profiles/package.mask b/profiles/package.mask
new file mode 100644
index 00000000..90901425
--- /dev/null
+++ b/profiles/package.mask
@@ -0,0 +1,4 @@
+# Martin Väth <martin@mvath.de> (10 Jan 2015)
+# sys-fs/squash_dir is no longer maintained. Use instead the successor project
+# sys-fs/squashmount (or sys-apps/openrc-wrapper for the openrc-wrapper script)
+sys-fs/squash_dir
diff --git a/profiles/repo_name b/profiles/repo_name
new file mode 100644
index 00000000..4291d7f5
--- /dev/null
+++ b/profiles/repo_name
@@ -0,0 +1 @@
+mv
diff --git a/profiles/use.desc b/profiles/use.desc
new file mode 100644
index 00000000..337f6fe5
--- /dev/null
+++ b/profiles/use.desc
@@ -0,0 +1,4 @@
+firefox - Install extension for www-client/firefox
+firefox-bin - Install extension for the www-client/firefox-bin
+seamonkey - Install extension for the www-client/seamonkey
+seamonkey-bin - Install extension for the www-client/seamonkey-bin
diff --git a/profiles/use.local.desc b/profiles/use.local.desc
new file mode 100644
index 00000000..c138eae8
--- /dev/null
+++ b/profiles/use.local.desc
@@ -0,0 +1,125 @@
+# This file is deprecated as per GLEP 56 in favor of metadata.xml. Please add
+# your descriptions to your package's metadata.xml ONLY.
+# * generated automatically using egencache *
+
+app-portage/eix:debug - Build with upstream's CXXFLAGS/LDFLAGS for debugging support; not recommended for normal use.
+app-portage/eix:dep - Make DEP=true the default which enables support for {,R,P}DEPEND but requires roughly double disk and memory.
+app-portage/eix:doc - Create description of the eix cache file additionally in html format
+app-portage/eix:optimization - Accept upstream's choices for CXXFLAGS/LDFLAGS for optimization. Absense of this USE flag does not strip user's *FLAGS
+app-portage/eix:security - This adds some checks which can prevent certain exploits if e.g. the eix code has a bug. If you use the hardened toolchain, using this flag does not increase security and can even lead to problems.
+app-portage/eix:sqlite - Compile in support for portage's sqlite backend; to actually use it you need additional configuration of portage and eix
+app-portage/eix:strong-optimization - Adds several more agressive CXXFLAGS/LDFLAGS for optimization like graphite (if available). May cause trouble with some buggy compiler versions. Absense of this USE flag does not strip user's *FLAGS
+app-portage/eix:strong-security - Add many checks to prevent exploits if eix code has a bug. This will slow down eix considerably. Use only if you are paranoid or have reasons to suspect a bug.
+app-portage/eix:swap-remote - Swap role of remote addresses in eix-remote, making the data from gpo.zugaina.org the first choice.
+app-portage/eix:tools - Create separate binary for script helper tools; useful if they are called extremely often
+app-shells/auto-fu-zsh:compile - Byte-compile to speed up. Do not use this if you are cross-compiling
+app-shells/termcolors-mv:create - Install DIR_COLORS-create perl script
+app-shells/termcolors-mv:perl - Install 256colors perl script
+app-shells/zsh:compile - Byte-compile. This costs disk space and may make things faster or slower. Do not use this if you are cross-compiling
+app-shells/zsh:completion_AIX - Install zsh completions for AIX
+app-shells/zsh:completion_BSD - Install zsh completions for BSD
+app-shells/zsh:completion_Cygwin - Install zsh completions for Cygwin
+app-shells/zsh:completion_Darwin - Install zsh completions for Darwin
+app-shells/zsh:completion_Debian - Install zsh completions for Debian
+app-shells/zsh:completion_Linux - Install zsh completions for Linux
+app-shells/zsh:completion_Mandriva - Install zsh completions for Mandriva
+app-shells/zsh:completion_Redhat - Install zsh completions for Redhat
+app-shells/zsh:completion_Solaris - Install zsh completions for Solaris
+app-shells/zsh:completion_Unix - Install zsh completions for Unix
+app-shells/zsh:completion_X - Install zsh completions for X
+app-shells/zsh:completion_openSUSE - Install zsh completions for openSUSE
+app-shells/zsh-completions:completion_Android - Install zsh completions for Android-related programs
+app-shells/zsh-completions:completion_Google - Install zsh completions for googlecl
+app-shells/zsh-completions:completion_Unix - Install zsh completion for unix system tools
+app-shells/zsh-completions:completion_database - Install zsh completions for database programs
+app-shells/zsh-completions:completion_dev - Install zsh completions for development (build systems, editors, web)
+app-shells/zsh-completions:completion_disk - Install zsh completions for disk tools
+app-shells/zsh-completions:completion_distribute - Install zsh completions for tools for distributing tasks to machines
+app-shells/zsh-completions:completion_filesystem - Install zsh completions for filesystem tools
+app-shells/zsh-completions:completion_git - Install zsh completions for special git tools
+app-shells/zsh-completions:completion_hardware - Install zsh completions for low-level hardware tools
+app-shells/zsh-completions:completion_haskell - Install zsh completions for Haskell tools
+app-shells/zsh-completions:completion_managers - Install zsh completions for package managers (not portage)
+app-shells/zsh-completions:completion_multimedia - Install zsh completions for multimedia programs
+app-shells/zsh-completions:completion_net - Install zsh completions for net-related tools
+app-shells/zsh-completions:completion_nfs - Install zsh completions for network filesystem tools
+app-shells/zsh-completions:completion_perl - Install zsh completion for perl-related tools
+app-shells/zsh-completions:completion_pip - Install zsh completion for dev-python/pip (instead of completion of dev-python/pip project)
+app-shells/zsh-completions:completion_python - Install zsh completion for python development tools
+app-shells/zsh-completions:completion_ruby - Install zsh completion for ruby tools and tools in ruby
+app-shells/zsh-completions:completion_search - Install zsh completion for search tools like sys-apps/ack and sys-apps/the_silver_searcher
+app-shells/zsh-completions:completion_session - Install zsh completion for session-handling frontends
+app-shells/zsh-completions:completion_subtitles - Install zsh completion for subtitle tools
+app-shells/zsh-completions:completion_virtualization - Install zsh completion for virtualization programs
+app-shells/zsh-completions:completion_web - Install zsh completion for web-related tools incl. java/javascript/scala
+app-text/stardict:espeak - Enable text to speech synthesizer using espeak engine
+app-text/stardict:gnome2 - Enable deprecated gnome2 support
+app-text/stardict:gucharmap - Enable gucharmap dictionary plugin
+app-text/stardict:pronounce - Install WyabdcRealPeopleTTS package (it is just many .wav files) to make StarDict pronounce English words
+app-text/stardict:qqwry - Enable QQWry plugin, which provides information (in Chinese language) about geographical positions, owner, etc. for IP addresses
+app-text/stardict:tools - Build and install the extra stardict tools
+games-rpg/m5figur-mv:examples - Compile example character sheet as PDF
+games-rpg/magus:acroread - Depend on acroread (otherwise you are responsible to install/configure a pdf viewer)
+games-rpg/magus:imagemagick - Use convert from graphicsmagick/imagemagick to scale pictures before installation
+games-rpg/magus:konqueror - Depend on konqueror browser instead of firefox
+games-rpg/magus:pngcrush - Use pngcrush for opimizing png before installation
+games-rpg/magus:postgres - Use postgresql instead of sqlite
+games-rpg/magus:seamonkey - Depend on seamonkey browser instead of firefox
+media-gfx/pqiv:gtk2 - Use gtk:2 instead of gtk:3
+media-tv/sundtek-tv:ld-preload-env - Install LD_PRELOAD in /etc/env.d/50sundtek-tv
+media-tv/sundtek-tv:ld-preload-file - Install /etc/ld.so.preload
+media-tv/sundtek-tv:pax_kernel - Mark package which is necessary if you use a PAX kernel
+net-misc/sshstart:keychain - Pull in keychain as dependency. Not required, but recommended for smoother operation.
+sys-apps/less:less-select - Add the less-select feature (additional options and a binary helper).
+sys-apps/less:lesspipe - Use sys-apps/lesspipe instead of Gentoo's default lesspipe.sh.
+sys-apps/less:original-gentoo - Use the gentoo default for the LESS variable.
+sys-apps/less:source - Install sources for keybindings (only useful with less-select).
+sys-apps/lesspipe:antiword - Support doc files with app-text/antiword; this overrides catdoc
+sys-apps/lesspipe:cabextract - Support cabextract files
+sys-apps/lesspipe:catdoc - Support doc files with app-text/catdoc; unused if antiword is set
+sys-apps/lesspipe:cpio - Support cpio files
+sys-apps/lesspipe:djvu - Support djvu files
+sys-apps/lesspipe:dpkg - Support Debian package files
+sys-apps/lesspipe:dvi2tty - Support dvi files with dev-tex/dvi2tty
+sys-apps/lesspipe:elinks - Support html files with www-client/elinks; ignored if html2text, links, or lynx is set; this overrides w3m
+sys-apps/lesspipe:fastjar - Support jar files with app-arch/fastjar
+sys-apps/lesspipe:ghostscript - Support ps files with app-text/ghostscript-gpl; ignored if pstotext is set
+sys-apps/lesspipe:gpg - Support gpg files
+sys-apps/lesspipe:groff - Support man and nroff files
+sys-apps/lesspipe:hdf5 - Support h5dump from sci-libs/hdf5
+sys-apps/lesspipe:html2text - Support html files with app-text/html2text; this overrides links, lynx, elinks, w3m
+sys-apps/lesspipe:id3v2 - Support mp3 files with media-sound/id3v2; this overrides mp3info2, mp3info
+sys-apps/lesspipe:image - Support image/jpg files
+sys-apps/lesspipe:isoinfo - Support CD/DVD-iso files
+sys-apps/lesspipe:libplist - Support Apple Property List files
+sys-apps/lesspipe:links - Support html files with www-client/links; ignored if html2text is set; this overrides lynx, elinks, w3m
+sys-apps/lesspipe:lynx - Support html files with www-client/lynx; ignored if html2text or links is set; this overrides elinks, w3m
+sys-apps/lesspipe:lzip - Support lzip files
+sys-apps/lesspipe:mp3info - Support mp3 files with media-sound/mp3info; unused if id3v2 or mp3info2 is set
+sys-apps/lesspipe:mp3info2 - Support mp3 files with dev-perl/MP3-Tag (mp3info2); ignored if id3v2 is set; this overrides mp3info
+sys-apps/lesspipe:netcdf - Support ncdump from sci-libs/netcdf
+sys-apps/lesspipe:ooffice - Support OpenOffice files
+sys-apps/lesspipe:p7zip - Support p7zip files
+sys-apps/lesspipe:pdf - Support pdf files
+sys-apps/lesspipe:pstotext - Support ps files with app-text/pstotext; this overrides ghostscript
+sys-apps/lesspipe:rar - Support rar files with app-arch/rar; unused if unrar is set
+sys-apps/lesspipe:rpm - Support rpm files with app-arch/rpm or rpm5; ignored if rpm2targz is set
+sys-apps/lesspipe:rpm2targz - Support rpm files with app-arch/rpm2targz; this overrides rpm
+sys-apps/lesspipe:unrar - Support rar files with app-arch/unrar; this overrides rar
+sys-apps/lesspipe:unrtf - Support rtf files with app-text/unrtf
+sys-apps/lesspipe:unzip - Support zip files with app-arch/unzip
+sys-apps/lesspipe:w3m - Support html files with www-client/w3m; ignored if html2text, links, lynx, or elinks is set
+sys-apps/lesspipe:xlhtml - Support Excel and Powerpoint files with app-arch/xlhtml
+sys-fs/aufs:all-patches - Apply all patches - also those which do not start with aufs
+sys-fs/aufs:kernel-patch - Apply the aufs kernel patches instead of just copying them
+sys-fs/squash_dir:aufs - Prefer aufs
+sys-fs/squash_dir:bundled-openrc-wrapper - Install the bundled openrc-wrapper
+sys-fs/squash_dir:overlayfs - Prefer overlayfs
+sys-fs/squash_dir:unionfs-fuse - Prefer unionfs-fuse
+sys-fs/squashfs-tools:lz4 - Enable support for LZ4 compression using app-arch/lz4
+sys-fs/squashfs-tools:xz - Enable support for XZ ("LZMA2") compression using app-arch/xz-utils
+x11-drivers/nvidia-drivers:kernel3-13 - Install unofficial patches for linux-3.13 and newer
+x11-drivers/nvidia-drivers:kernel3-14 - Install unofficial patches for linux-3.14 and newer
+x11-drivers/nvidia-drivers:kernel3-17 - Install unofficial patches for linux-3.17 and newer
+x11-drivers/nvidia-drivers:pax_kernel - Patch to compile with hardened-sources/grsecurity
+x11-drivers/nvidia-drivers:tools - Install additional tools such as nvidia-settings
diff --git a/sci-mathematics/genius/Manifest b/sci-mathematics/genius/Manifest
new file mode 100644
index 00000000..b4116bf5
--- /dev/null
+++ b/sci-mathematics/genius/Manifest
@@ -0,0 +1,2 @@
+DIST genius-1.0.19.tar.xz 2447724 SHA256 e5a979d13ae39fb1ae176078dbb301222e6c7a1c2cda8d999bac3ff6a4a7e6c2 SHA512 84ec48c0e13af088f61674e170c23cbc06e081bea43babe3460b88fd2e256c9fc44b891afa3270d5117ccd91ec6d2c25b022dde3d468635df9d1c6e573c4ef05 WHIRLPOOL 772637bd2c2333a08115397781773b1aa74cb195b9731b1b07ddf689fef47790aad79d2f2a6c7e45fe5c6738eb8bda56e0cebe3802c01cd5c1a99bfb3b00b0d5
+DIST genius-reference.pdf 1024944 SHA256 79011ae33ff781507185898ba76b156699061eda78ed16e15aa02195c896ee4b SHA512 04af3870104d2320b1d4b345d74d713a0dfcdf8a228002506508f437659b3ef6037ead0b1f6b37cc335692150750b58c4007fdaaddd9540233474ccd10dac285 WHIRLPOOL 301302145d43843ddd749ab33612438d360462c9d3daa12d7050d9ca6da82bdea3ef53b917989d0c518327780b147a9f74e407f555a62dcdbe0f0c2ef864fa88
diff --git a/sci-mathematics/genius/genius-1.0.19.ebuild b/sci-mathematics/genius/genius-1.0.19.ebuild
new file mode 100644
index 00000000..49955d39
--- /dev/null
+++ b/sci-mathematics/genius/genius-1.0.19.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit autotools eutils gnome2
+
+DESCRIPTION="Genius Mathematics Tool and the GEL Language"
+HOMEPAGE="http://www.jirka.org/genius.html"
+SRC_URI="
+ mirror://gnome/sources/${PN}/1.0/${P}.tar.xz
+ doc? ( http://www.jirka.org/${PN}-reference.pdf )"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc gnome nls"
+
+RDEPEND="
+ dev-libs/glib:2
+ dev-libs/gmp
+ dev-libs/mpfr
+ dev-libs/popt
+ sys-libs/ncurses
+ sys-libs/readline
+ gnome? (
+ app-text/scrollkeeper
+ app-text/gnome-doc-utils
+ x11-libs/gtk+:2
+ gnome-base/libgnome
+ gnome-base/libgnomeui
+ gnome-base/libglade:2.0
+ x11-libs/gtksourceview:2.0
+ x11-libs/vte:0 )"
+DEPEND="${RDEPEND}
+ dev-util/intltool
+ || ( sys-devel/bison dev-util/yacc )
+ sys-devel/flex
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ if ! use gnome
+ then sed -i \
+ -e "/GNOME_DOC_INIT/d" \
+ configure.in
+ sed -i \
+ -e '/gnome-doc-utils\.make/d' \
+ help/Makefile.am
+ eautoreconf
+ fi
+ G2CONF="${G2CONF} $(use_enable gnome) $(use_enable nls) \
+ --disable-update-mimedb --disable-scrollkeeper \
+ --disable-extra-gcc-optimization"
+ # gnome2.eclass adds --disable-gtk-doc or --enable-gtk-doc to G2CONF
+ # if there is the USE flag doc, thus leading to QA warnings
+ GCONF_DEBUG="no"
+ DOCS="AUTHORS ChangeLog NEWS README TODO"
+ USE_DESTDIR="1"
+ gnome2_src_prepare
+}
+
+src_install() {
+ use doc && DOCS+=" ${DISTDIR}/${PN}-reference.pdf"
+ gnome2_src_install
+}
diff --git a/sci-mathematics/genius/metadata.xml b/sci-mathematics/genius/metadata.xml
new file mode 100644
index 00000000..cbdd7f0a
--- /dev/null
+++ b/sci-mathematics/genius/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>grozin@gentoo.org</email>
+ <name>Andrey Grozin</name>
+ </maintainer>
+ <longdescription>Genius is a calculator program which can work
+ with arbitrary precision integers, multiple precision floats,
+ rational numbers, complex numbers, linear algebra, number theory,
+ numerical calculus, statistics, numerical equation solving,
+ combinatorics, elementary functions, modular arithmetic.
+ It has a programming language with automatic typing.
+ It can do various 2D and 3D plots, with possibility
+ to export to eps or png. Genius has a GUI IDE.
+ It can output matrices in LaTeX, Troff (eqn) or MathML.
+ </longdescription>
+</pkgmetadata>
diff --git a/sci-mathematics/reduce/Manifest b/sci-mathematics/reduce/Manifest
new file mode 100644
index 00000000..77447adb
--- /dev/null
+++ b/sci-mathematics/reduce/Manifest
@@ -0,0 +1 @@
+DIST reduce-src-2014-11-30.tar.bz2 253343100 SHA256 b15debc944475d4daee1bcbdbaff415693522306785507f2d3110d75df6e7006 SHA512 46dfead80b2778b37ac723343d2922d00a48f4bd5ca7d92c14039abd880cd1b0b3276c660e9ee443cdc6383e42448479893411360bfdbe2a239e11a780d6672b WHIRLPOOL ef020a09dd23794d7363062d96ae18b35d622b27549790b19addc84292fa78fbcb687312dcc7449c9f6844d041a6d5e14430ecf33ce9696495c7d0c0219860c6
diff --git a/sci-mathematics/reduce/files/64reduce-gentoo.el b/sci-mathematics/reduce/files/64reduce-gentoo.el
new file mode 100644
index 00000000..2c20bff9
--- /dev/null
+++ b/sci-mathematics/reduce/files/64reduce-gentoo.el
@@ -0,0 +1,4 @@
+;; site-init for sci-mathematics/reduce
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'reduce-mode "reduce-mode" "Major mode for REDUCE code editing" t)
+(add-to-list 'auto-mode-alist '("\\.red\\'" . reduce-mode))
diff --git a/sci-mathematics/reduce/files/csl b/sci-mathematics/reduce/files/csl
new file mode 100755
index 00000000..895b6bd8
--- /dev/null
+++ b/sci-mathematics/reduce/files/csl
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/lib/reduce/csl $*
diff --git a/sci-mathematics/reduce/files/redcsl b/sci-mathematics/reduce/files/redcsl
new file mode 100755
index 00000000..ff40e3e0
--- /dev/null
+++ b/sci-mathematics/reduce/files/redcsl
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/lib/reduce/reduce $*
diff --git a/sci-mathematics/reduce/metadata.xml b/sci-mathematics/reduce/metadata.xml
new file mode 100644
index 00000000..523cb94a
--- /dev/null
+++ b/sci-mathematics/reduce/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci-mathematics</herd>
+<maintainer>
+ <email>grozin@gentoo.org</email>
+ <name>Andrey Grozin</name>
+</maintainer>
+<longdescription lang="en">
+A general-purpose computer algebra system.
+Powerful, mature and efficient.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-mathematics/reduce/reduce-20141130-r1.ebuild b/sci-mathematics/reduce/reduce-20141130-r1.ebuild
new file mode 100644
index 00000000..80f9ed9e
--- /dev/null
+++ b/sci-mathematics/reduce/reduce-20141130-r1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit elisp-common eutils multilib
+
+DESCRIPTION="A general-purpose computer algebra system"
+HOMEPAGE="http://reduce-algebra.sourceforge.net/
+ http://reduce-algebra.com/"
+IUSE="doc emacs gnuplot X"
+PVyear=${PV%????}
+PVday=${PV#??????}
+PVmonth=${PV#????}
+PVmonth=${PVmonth%??}
+mPV="${PVyear}-${PVmonth}-${PVday}"
+TARBALL="${PN}-src-${mPV}"
+SRC_URI="mirror://sourceforge/${PN}-algebra/Snapshot_${mPV}/${TARBALL}.tar.bz2"
+LICENSE="BSD-2 X? ( LGPL-2.1 )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+S="${WORKDIR}/${TARBALL}"
+
+RDEPEND="X? ( x11-libs/libXrandr
+ x11-libs/libXcursor
+ x11-libs/libXft )
+ gnuplot? ( sci-visualization/gnuplot )
+ emacs? ( virtual/emacs )"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ sed -i -e '2iecho gentoo; exit' -- "${S}"/scripts/findos.sh
+ # sed -i -e 's/\${l}/"\${l}"/g' -- "${S}"/scripts/make.sh
+ epatch_user
+}
+
+src_configure() {
+ # If you pass --prefix to this damn configure,
+ # make (not make install!) will try to install stuff
+ # into the live file system => sandbox violation
+ # Therefore, I cannot use econf here
+ # Also, make calls configure in maintainer mode in subdirs *by design*
+ # The trunk sucks less => WONTFIX until the next release
+ ./configure --with-csl $(use_with X gui)
+ # psl build requires Internet connection at build time
+ # we cannot support it
+}
+
+src_compile() {
+ emake -j1 STRIP=true
+
+ pushd cslbuild/*/csl/reduce.doc > /dev/null
+ rm -f *.txt *.tex
+ popd > /dev/null
+
+ if use emacs; then
+ einfo "Compiling emacs lisp files"
+ elisp-compile generic/emacs/*.el || die "elisp-compile failed"
+ fi
+}
+
+src_test() {
+ emake -j1 testall || die "emake testall failed"
+}
+
+src_install() {
+ local lib="$(get_libdir)"
+ dodoc README BUILDING DEPENDENCY_TRACKING
+ pushd bin > /dev/null
+ cp "${FILESDIR}"/redcsl "${FILESDIR}"/csl .
+ sed -e "s/lib/${lib}/" -i redcsl
+ sed -e "s/lib/${lib}/" -i csl
+ exeinto /usr/bin
+ doexe redcsl csl
+ popd > /dev/null
+
+ pushd cslbuild/*/csl > /dev/null
+ exeinto /usr/${lib}/${PN}
+ doexe reduce csl
+ insinto /usr/$(get_libdir)/${PN}
+ doins reduce.img csl.img
+ insinto /usr/share/${PN}
+ doins -r ${PN}.doc
+ mv "${D}"usr/share/${PN}/${PN}.doc "${D}"usr/share/${PN}/doc
+ dosym /usr/share/${PN}/doc /usr/${lib}/${PN}/${PN}.doc
+ if use X; then
+ doins -r ${PN}.fonts
+ mv "${D}"usr/share/${PN}/${PN}.fonts "${D}"usr/share/${PN}/fonts
+ dosym /usr/share/${PN}/fonts /usr/${lib}/${PN}/${PN}.fonts
+ fi
+ popd > /dev/null
+
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ doins doc/util/r38.pdf
+ fi
+
+ if use emacs; then
+ pushd generic/emacs > /dev/null
+ elisp-install ${PN} *.el *.elc || die "elisp-install failed"
+ elisp-site-file-install "${FILESDIR}/64${PN}-gentoo.el"
+ popd > /dev/null
+ fi
+}
diff --git a/sys-apps/cpi/Manifest b/sys-apps/cpi/Manifest
new file mode 100644
index 00000000..50552014
--- /dev/null
+++ b/sys-apps/cpi/Manifest
@@ -0,0 +1 @@
+DIST cpi-2.10.tar.gz 3416 SHA256 67d6ea00b9817c1da523158ea61ed4441683343b9df83babdf1b707ac7d6d35f SHA512 19e6c6aa297e7ebba73eddfe1eb1d78252756eda39ac34b82557747c78789d0503e824d9e2902e42d63c1bea1c49becf02ad5c6b7c4fd4737a29e6708a2f4633 WHIRLPOOL 9592f1bab4a3a516a3e94e45c60a80046e963f47347099820f8a5a5649e207e403780b712eeb613be9d2dadbee15b781f35ce7c2f39ef6b393866ef62decc7cf
diff --git a/sys-apps/cpi/cpi-2.10.ebuild b/sys-apps/cpi/cpi-2.10.ebuild
new file mode 100644
index 00000000..736a1051
--- /dev/null
+++ b/sys-apps/cpi/cpi-2.10.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="A wrapper for cp -i -a, making use of diff"
+HOMEPAGE="https://github.com/vaeth/cpi/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- bin/cpi || die
+ epatch_user
+}
+
+src_install() {
+ dobin bin/cpi
+ insinto /usr/bin
+ doins bin/mvi
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+}
diff --git a/sys-apps/cpi/metadata.xml b/sys-apps/cpi/metadata.xml
new file mode 100644
index 00000000..4b3260b1
--- /dev/null
+++ b/sys-apps/cpi/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/cpi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/less/Manifest b/sys-apps/less/Manifest
new file mode 100644
index 00000000..002809e8
--- /dev/null
+++ b/sys-apps/less/Manifest
@@ -0,0 +1,3 @@
+DIST code2color-0.2 200711 SHA256 2365c9009b1cc3c30430b88775ec402164df105fd12364871d05dcaed20be954 SHA512 c0ab9f411d5a106c81334343e3c4a63b67d27b95e2d128145e3ac1ee46cd6c228c61796cf96e51826e69b3e465e7bdaa81b1a48cad934c23b310f2ea2ebd8e75 WHIRLPOOL d0207e84a5849c554b1dfc5882ab46d8afc411c7d26e912235ec05565880e6ed0db8449133502234a01ae8f59feae211486b6a523e37859d8404f72fff9b8f93
+DIST less-481.tar.gz 316622 SHA256 3fa38f2cf5e9e040bb44fffaa6c76a84506e379e47f5a04686ab78102090dda5 SHA512 29995757ac416ed6770cf6e82e6fe325bd1d61d51666d80c4fe72b2b4217b0b1d706d337d89ed54bdc4d83d57f3e2c0166e642b20ef2ad194e52aad630b3e717 WHIRLPOOL e5c8b22d7d1149feafdad0130e00aa5564e818a845c3b4e2b6d151e851dd64ff390fdad01ee79580fe6ab92defc11930d3f3e0ca0d189d2882419444a3d7028c
+DIST less-select-2.6.tar.gz 26354 SHA256 df4ab8f17568cabd864358e5f0a765241f586b8c30341116a649db91db9048bf SHA512 d674e2bcbda2155bd3da862452a78f8aa410661b887ab1c28ac2b338bd602335bbaaebf4daaf3eba120400b2d58244c98e5a96d4d2c7b74fb5b12e2210dbb00d WHIRLPOOL 04a2df34bb0daf0b86044f887bf10a6af9d941314028b052f5dfe7c0dbd4e74ecb69f88eaf8c24dbad446e8de1bcc81401118df04e186887eba126362bbb32d5
diff --git a/sys-apps/less/files/README.Gentoo b/sys-apps/less/files/README.Gentoo
new file mode 100644
index 00000000..dca83280
--- /dev/null
+++ b/sys-apps/less/files/README.Gentoo
@@ -0,0 +1,22 @@
+This version of less comes with some Gentoo enhancements:
+ - default lesspipe.sh script to "view" files
+ - colorization support
+
+To see what file types are supported, just read the /usr/bin/lesspipe.sh
+script (it's just a plain text bash script).
+
+Colorization support is disabled by default. To enable it, export the
+LESSCOLOR variable to "yes":
+ $ export LESSCOLOR=yes
+
+We also provide a colorization script, 'code2color', that is used by
+default. If you wish to use another script, simply export the LESSCOLORIZER
+variable to name of the script:
+ $ export LESSCOLORIZER=some-other-script
+
+If you want to use the code2color script and the default color schemes are
+not acceptable, you can develop your own schemes and save them in one of
+the following places:
+ /etc/code2color
+ ~/.code2color
+ CODE2COLOR_CONFIG env var
diff --git a/sys-apps/less/files/code2color-0.2.patch b/sys-apps/less/files/code2color-0.2.patch
new file mode 100644
index 00000000..f8a78250
--- /dev/null
+++ b/sys-apps/less/files/code2color-0.2.patch
@@ -0,0 +1,26 @@
+--- code2color
++++ code2color
+@@ -163,11 +163,11 @@
+ # building up the database
+ # newer entries overwrite old ones
+ my @CONFIG_FILES;
+- push @CONFIG_FILES, "/etc/code2html.config";
++ push @CONFIG_FILES, "/etc/code2color";
+ push @CONFIG_FILES,
+- $ENV{'HOME'}."/.code2html.config" if $ENV{'HOME'};
++ $ENV{'HOME'}."/.code2color" if $ENV{'HOME'};
+ push @CONFIG_FILES,
+- split(/:/,$ENV{'CODE2HTML_CONFIG'}) if $ENV{'CODE2HTML_CONFIG'};
++ split(/:/,$ENV{'CODE2COLOR_CONFIG'}) if $ENV{'CODE2COLOR_CONFIG'};
+ push @CONFIG_FILES,
+ split(/:/,$params{'langfile'}) if $params{'langfile'};
+
+@@ -3192,7 +3192,7 @@
+ #
+
+ $LANGUAGE{'shellscript'} = {
+- 'filename' => '\\.(sh|shell)$',
++ 'filename' => '\\.(ebuild|eclass|sh|shell)$',
+ 'regex' => '^\\s*#\\s*![^\\s]*(sh|bash|ash|zsh|ksh)',
+ 'patterns' => [ {
+ 'name' => 'comment',
diff --git a/sys-apps/less/files/lesspipe.sh b/sys-apps/less/files/lesspipe.sh
new file mode 100644
index 00000000..6edaa3ce
--- /dev/null
+++ b/sys-apps/less/files/lesspipe.sh
@@ -0,0 +1,274 @@
+#!/bin/bash
+#
+# Preprocessor for 'less'. Used when this environment variable is set:
+# LESSOPEN="|lesspipe %s"
+
+# TODO: handle compressed files better
+
+[[ -n ${LESSDEBUG} ]] && set -x
+
+trap 'exit 0' PIPE
+
+guesscompress() {
+ case "$1" in
+ *.gz|*.z) echo "gunzip -c" ;;
+ *.bz2|*.bz) echo "bunzip2 -c" ;;
+ *.lz) echo "lzip -dc" ;;
+ *.lzma) echo "unlzma -c" ;;
+ *.lzo) echo "lzop -dc" ;;
+ *.xz) echo "xzdec" ;;
+ *) echo "cat" ;;
+ esac
+}
+
+lesspipe_file() {
+ local out=$(file -L -- "$1")
+ local suffix
+ case ${out} in
+ *" 7-zip archive"*) suffix="7z";;
+ *" ar archive"*) suffix="a";;
+ *" CAB-Installer"*) suffix="cab";;
+ *" cpio archive"*) suffix="cpio";;
+ *" ELF "*) suffix="elf";;
+ *" LHa"*archive*) suffix="lha";;
+ *" troff "*) suffix="man";;
+ *" script text"*) suffix="sh";;
+ *" shared object"*) suffix="so";;
+ *" tar archive"*) suffix="tar";;
+ *" Zip archive"*) suffix="zip";;
+ *": data") hexdump -C -- "$1"; return 0;;
+ *) return 1;;
+ esac
+ lesspipe "$1" ".${suffix}"
+ return 0
+}
+
+lesspipe() {
+ local match=$2
+ [[ -z ${match} ]] && match=$1
+
+ local DECOMPRESSOR=$(guesscompress "${match}")
+
+ # User filters
+ if [[ -x ~/.lessfilter ]] ; then
+ ~/.lessfilter "$1" && exit 0
+ fi
+
+ local ignore
+ for ignore in ${LESSIGNORE} ; do
+ [[ ${match} == *.${ignore} ]] && exit 0
+ done
+
+ case "${match}" in
+
+ ### Doc files ###
+ *.[0-9n]|*.man|\
+ *.[0-9n].bz2|*.man.bz2|\
+ *.[0-9n].gz|*.man.gz|\
+ *.[0-9n].lzma|*.man.lzma|\
+ *.[0-9n].xz|*.man.xz|\
+ *.[0-9][a-z].gz|*.[0-9][a-z].gz)
+ local out=$(${DECOMPRESSOR} -- "$1" | file -)
+ case ${out} in
+ *troff*)
+ # Need to make sure we pass path to man or it will try
+ # to locate "$1" in the man search paths
+ if [[ $1 == /* ]] ; then
+ man -- "$1"
+ else
+ man -- "./$1"
+ fi
+ ;;
+ *text*)
+ ${DECOMPRESSOR} -- "$1"
+ ;;
+ *)
+ # We could have matched a library (libc.so.6), so let
+ # `file` figure out what the hell this thing is
+ lesspipe_file "$1"
+ ;;
+ esac
+ ;;
+ *.dvi) dvi2tty "$1" ;;
+ *.ps|*.pdf) ps2ascii "$1" || pstotext "$1" || pdftotext "$1" ;;
+ *.doc) antiword "$1" || catdoc "$1" ;;
+ *.rtf) unrtf --nopict --text "$1" ;;
+ *.conf|*.txt|*.log) ;; # force less to work on these directly #150256
+
+ ### URLs ###
+ ftp://*|http://*|*.htm|*.html)
+ for b in links2 links lynx ; do
+ ${b} -dump "$1" && exit 0
+ done
+ html2text -style pretty "$1"
+ ;;
+
+ ### Tar files ###
+ *.tar|\
+ *.tar.bz2|*.tar.bz|*.tar.gz|*.tar.z|\
+ *.tar.lz|*.tar.tlz|\
+ *.tar.lzma|*.tar.xz)
+ ${DECOMPRESSOR} -- "$1" | tar tvvf -;;
+ *.tbz2|*.tbz|*.tgz|*.tlz|*.txz)
+ lesspipe "$1" "$1".tar.${1##*.t} ;;
+
+ ### Misc archives ###
+ *.bz2|\
+ *.gz|*.z|\
+ *.lz|\
+ *.lzma|*.xz) ${DECOMPRESSOR} -- "$1" ;;
+ *.rpm) rpm -qpivl --changelog -- "$1" || rpm2tar -O "$1" | tar tvvf -;;
+ *.cpi|*.cpio) cpio -itv < "$1" ;;
+ *.ace) unace l "$1" ;;
+ *.arc) arc v "$1" ;;
+ *.arj) unarj l -- "$1" ;;
+ *.cab) cabextract -l -- "$1" ;;
+ *.lha|*.lzh) lha v "$1" ;;
+ *.zoo) zoo -list "$1" || unzoo -l "$1" ;;
+ *.7z|*.exe) 7z l -- "$1" || 7za l -- "$1" || 7zr l -- "$1" ;;
+ *.a) ar tv "$1" ;;
+ *.elf) readelf -a -W -- "$1" ;;
+ *.so) readelf -h -d -s -W -- "$1" ;;
+ *.mo|*.gmo) msgunfmt -- "$1" ;;
+
+ *.rar|.r[0-9][0-9]) unrar l -- "$1" ;;
+
+ *.jar|*.war|*.ear|*.xpi|*.zip)
+ unzip -v "$1" || miniunzip -l "$1" || miniunz -l "$1" || zipinfo -v "$1"
+ ;;
+
+ *.deb|*.udeb)
+ if type -P dpkg > /dev/null ; then
+ dpkg --info "$1"
+ dpkg --contents "$1"
+ else
+ ar tv "$1"
+ ar p "$1" data.tar.gz | tar tzvvf -
+ fi
+ ;;
+
+ ### Filesystems ###
+ *.squashfs) unsquashfs -s "$1" && unsquashfs -ll "$1" ;;
+
+ ### Media ###
+ *.bmp|*.gif|*.jpeg|*.jpg|*.ico|*.pcd|*.pcx|*.png|*.ppm|*.tga|*.tiff|*.tif|*.webp)
+ identify "$1" || file -L -- "$1"
+ ;;
+ *.asf|*.avi|*.mov|*.mp4|*.mpeg|*.mpg|*.qt|*.ram|*.rm|*.webm|*.wmv)
+ midentify "$1" || file -L -- "$1"
+ ;;
+ *.mp3) mp3info "$1" || id3info "$1" ;;
+ *.ogg) ogginfo "$1" ;;
+ *.flac) metaflac --list "$1" ;;
+ *.torrent) torrentinfo "$1" || torrentinfo-console "$1" || ctorrent -x "$1" ;;
+ *.bin|*.cue|*.raw)
+ # not all .bin/.raw files are cd images #285507
+ # fall back to lesspipe_file if .cue doesn't exist, or if
+ # cd-info failed to parse things sanely
+ [[ -e ${1%.*}.cue ]] \
+ && cd-info --no-header --no-device-info "$1" \
+ || lesspipe_file "$1"
+ ;;
+ *.iso)
+ iso_info=$(isoinfo -d -i "$1")
+ echo "${iso_info}"
+ # Joliet output overrides Rock Ridge, so prefer the better Rock
+ case ${iso_info} in
+ *$'\n'"Rock Ridge"*) iso_opts="-R";;
+ *$'\n'"Joliet"*) iso_opts="-J";;
+ *) iso_opts="";;
+ esac
+ isoinfo -l ${iso_opts} -i "$1"
+ ;;
+
+ ### Encryption stuff ###
+ *.crl) openssl crl -hash -text -noout -in "$1" ;;
+ *.csr) openssl req -text -noout -in "$1" ;;
+ *.crt|*.pem) openssl x509 -hash -text -noout -in "$1" ;;
+
+# May not be such a good idea :)
+# ### Device nodes ###
+# /dev/[hs]d[a-z]*)
+# fdisk -l "${1:0:8}"
+# [[ $1 == *hd* ]] && hdparm -I "${1:0:8}"
+# ;;
+
+ ### Everything else ###
+ *)
+ case $(( recur++ )) in
+ # Maybe we didn't match due to case issues ...
+ 0) lesspipe "$1" "$(echo $1 | LC_ALL=C tr '[:upper:]' '[:lower:]')" ;;
+
+ # Maybe we didn't match because the file is named weird ...
+ 1) lesspipe_file "$1" ;;
+ esac
+
+ # So no matches from above ... finally fall back to an external
+ # coloring package. No matching here so we don't have to worry
+ # about keeping in sync with random packages. Any coloring tool
+ # you use should not output errors about unsupported files to
+ # stdout. If it does, it's your problem.
+
+ # Allow people to flip color off if they dont want it
+ case ${LESSCOLOR} in
+ always) LESSCOLOR=2;;
+ [yY][eE][sS]|[yY]|1|true) LESSCOLOR=1;;
+ [nN][oO]|[nN]|0|false) LESSCOLOR=0;;
+ *) LESSCOLOR=0;; # default to no color #188835
+ esac
+ if [[ ${LESSCOLOR} != "0" ]] && [[ -n ${LESSCOLORIZER=code2color} ]] ; then
+ # 2: Only colorize if user forces it ...
+ # 1: ... or we know less will handle raw codes -- this will
+ # not detect -seiRM, so set LESSCOLORIZER yourself
+ if [[ ${LESSCOLOR} == "2" ]] || [[ " ${LESS} " == *" -"[rR]" "* ]] ; then
+ LESSQUIET=true ${LESSCOLORIZER} "$1"
+ fi
+ fi
+
+ # Nothing left to do but let less deal
+ exit 0
+ ;;
+ esac
+}
+
+if [[ -z $1 ]] ; then
+ echo "Usage: lesspipe <file>"
+elif [[ $1 == "-V" || $1 == "--version" ]] ; then
+ Id="cvsid"
+ cat <<-EOF
+ $Id$
+ Copyright 2001-2013 Gentoo Foundation
+ Mike Frysinger <vapier@gentoo.org>
+ (with plenty of ideas stolen from other projects/distros)
+
+
+ EOF
+ less -V
+elif [[ $1 == "-h" || $1 == "--help" ]] ; then
+ cat <<-EOF
+ lesspipe: preprocess files before sending them to less
+
+ Usage: lesspipe <file>
+
+ lesspipe specific settings:
+ LESSCOLOR env - toggle colorizing of output (no/yes/always)
+ LESSCOLORIZER env - program used to colorize output (default: code2color)
+ LESSIGNORE - list of extensions to ignore (don't do anything fancy)
+
+ You can create per-user filters as well by creating the executable file:
+ ~/.lessfilter
+ One argument is passed to it: the file to display.
+
+ To use lesspipe, simply add to your environment:
+ export LESSOPEN="|lesspipe %s"
+
+ Run 'less --help' or 'man less' for more info
+ EOF
+elif [[ -d $1 ]] ; then
+ ls -alF -- "$1"
+else
+ recur=0
+ [[ -n ${LESSDEBUG} ]] \
+ && lesspipe "$1" \
+ || lesspipe "$1" 2> /dev/null
+fi
diff --git a/sys-apps/less/less-481.ebuild b/sys-apps/less/less-481.ebuild
new file mode 100644
index 00000000..ddbb26ff
--- /dev/null
+++ b/sys-apps/less/less-481.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+CODE2COLOR_PV="0.2"
+CODE2COLOR_P="code2color-${CODE2COLOR_PV}"
+DESCRIPTION="Excellent text file viewer, optionally with additional selection feature"
+PATCHN="less-select"
+PATCHV="2.6"
+PATCHVER="466"
+PATCHRUMP="${PATCHN}-${PATCHV}"
+PATCHBALL="${PATCHRUMP}.tar.gz"
+SELECTDIR="${WORKDIR}/${PATCHRUMP}"
+HOMEPAGE="http://www.greenwoodsoftware.com/less/ https://github.com/vaeth/${PATCHN}"
+SRC_URI="http://www.greenwoodsoftware.com/less/${P}.tar.gz
+ less-select? ( https://github.com/vaeth/${PATCHN}/archive/v${PATCHV}.tar.gz -> ${PATCHBALL} )
+ http://www-zeuthen.desy.de/~friebel/unix/less/code2color -> ${CODE2COLOR_P}"
+
+LICENSE="|| ( GPL-3 BSD-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+lesspipe +less-select pcre original-gentoo source unicode"
+
+DEPEND=">=app-misc/editor-wrapper-3
+ >=sys-libs/ncurses-5.2
+ pcre? ( dev-libs/libpcre )"
+RDEPEND="${DEPEND}
+ less-select? ( dev-lang/perl
+ || ( >=dev-lang/perl-5.10.1 >=virtual/perl-File-Temp-0.19 )
+ )"
+PDEPEND="lesspipe? ( sys-apps/lesspipe )"
+
+pkg_setup() {
+ if use source && ! use less-select
+ then ewarn 'ignoring USE=source without USE=less-select'
+ fi
+}
+
+src_unpack() {
+ unpack ${P}.tar.gz
+ cp "${DISTDIR}/${CODE2COLOR_P}" "${S}"/code2color || die
+ if use less-select
+ then unpack ${PATCHBALL}
+ fi
+}
+
+src_prepare() {
+ if use less-select
+ then epatch "${SELECTDIR}/patches/less-${PATCHVER}-select.patch" || die
+ "${SELECTDIR}"/after-patch || die "${SELECTDIR}/after-patch failed"
+ sed -i -e 's|\([^a-zA-Z]\)/etc/less-select-key.bin|\1'"${EPREFIX}"'/etc/less/select-key.bin|g' \
+ "${SELECTDIR}/bin/less-select" || die
+ fi
+ epatch "${FILESDIR}/${CODE2COLOR_P}.patch"
+ chmod a+x configure || die
+ epatch_user
+}
+
+src_configure() {
+ export ac_cv_lib_ncursesw_initscr=$(usex unicode)
+ export ac_cv_lib_ncurses_initscr=$(usex !unicode)
+ econf \
+ --with-regex=$(usex pcre pcre posix) \
+ --with-editor="${EPREFIX}"/usr/libexec/editor
+}
+
+src_compile() {
+ default
+ if use less-select
+ then ./lesskey -o normal-key.bin "${SELECTDIR}/keys/less-normal-key.src" || die
+ ./lesskey -o select-key.bin "${SELECTDIR}/keys/less-select-key.src" || die
+ fi
+}
+
+src_install() {
+ local a
+ default
+
+ if ! use lesspipe
+ then dobin code2color
+ newbin "${FILESDIR}"/lesspipe.sh lesspipe
+ dosym lesspipe /usr/bin/lesspipe.sh
+ fi
+ if use original-gentoo
+ then a="-R -M --shift 5"
+ else a="-sFRiMX --shift 5"
+ fi
+ printf '%s\n' 'LESSOPEN="|lesspipe.sh %s"' "LESS=\"${a}\"" >70less
+ doenvd 70less
+
+ dodoc "${FILESDIR}"/README.Gentoo
+
+ if use less-select
+ then newdoc "${SELECTDIR}"/README README.less-select
+ dobin "${SELECTDIR}/bin/"*
+ insinto /etc/less
+ doins select-key.bin normal-key.bin
+ if use source
+ then newins "${SELECTDIR}/keys/less-select-key.src" select-key.src
+ newins "${SELECTDIR}/keys/less-normal-key.src" normal-key.src
+ fi
+ fi
+}
+
+pkg_postinst() {
+ use lesspipe || \
+ elog "lesspipe offers colorization options. Run 'lesspipe -h' for info."
+}
diff --git a/sys-apps/less/metadata.xml b/sys-apps/less/metadata.xml
new file mode 100644
index 00000000..b6405b97
--- /dev/null
+++ b/sys-apps/less/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>base-system</herd>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ <description>Maintainer of the less-select patch</description>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/less-select</remote-id>
+ </upstream>
+ <use>
+ <flag name="original-gentoo">Use the gentoo default for the LESS variable.</flag>
+ <flag name="lesspipe">Use sys-apps/lesspipe instead of Gentoo's default lesspipe.sh.</flag>
+ <flag name="less-select">Add the less-select feature (additional options and a binary helper).</flag>
+ <flag name="source">Install sources for keybindings (only useful with less-select).</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-apps/lesspipe/Manifest b/sys-apps/lesspipe/Manifest
new file mode 100644
index 00000000..0e2dc272
--- /dev/null
+++ b/sys-apps/lesspipe/Manifest
@@ -0,0 +1 @@
+DIST lesspipe-1.83.tar.gz 115129 SHA256 d616f0d51852e60fb0d0801eec9c31b10e0acc6fdfdc62ec46ef7bfd60ce675e SHA512 c6418ac2bfc2dee9d32d56b0ea4a94954b1431db54fef8b67a9cf7d961cf4a23d87b2f41b2a4560d2333029c6d4ed5c6f399cb635f857bd43f1603993b5cb55d WHIRLPOOL 4ff4baac25c768a4177d71a82f766b326cff6840e0032d6b9125506de38ff20264b71c765cb08777adda9e9f24e18e33e452667be8e7a94f7fef062f1d6f019f
diff --git a/sys-apps/lesspipe/lesspipe-1.83.ebuild b/sys-apps/lesspipe/lesspipe-1.83.ebuild
new file mode 100644
index 00000000..be9849e0
--- /dev/null
+++ b/sys-apps/lesspipe/lesspipe-1.83.ebuild
@@ -0,0 +1,211 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+
+inherit eutils
+
+DESCRIPTION="Wolfgang Friebel's preprocessor for sys-apps/less. Append colon to filename to disable"
+HOMEPAGE="http://www-zeuthen.desy.de/~friebel/unix/lesspipe.html"
+SRC_URI="http://www-zeuthen.desy.de/~friebel/unix/less/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="antiword cabextract catdoc +cpio +djvu dpkg +dvi2tty +elinks fastjar +ghostscript gpg +groff hdf5 +html2text id3v2 image isoinfo libplist +links +lynx lzip mp3info mp3info2 netcdf ooffice p7zip pdf pstotext rar rpm +rpm2targz unrar unrtf +unzip +w3m xlhtml"
+
+htmlmode="( || ( html2text links lynx elinks w3m ) )"
+REQUIRED_USE="!rpm2targz? ( rpm? ( cpio ) )
+ ooffice? ${htmlmode}
+ xlhtml? ${htmlmode}
+ amd64-fbsd? ( !antiword !catdoc !dpkg !elinks !fastjar !html2text
+ !id3v2 !lzip !mp3info !mp3info2 !ooffice !p7zip !pstotext
+ !rar !rpm !unrtf !w3m !xlhtml )
+ alpha? ( !catdoc !fastjar !id3v2 !libplist !mp3info !mp3info2
+ !ooffice !pstotext !rar )
+ arm? ( !antiword !catdoc !fastjar !html2text !id3v2 !mp3info
+ !ooffice !pstotext !rar !xlhtml )
+ hppa? ( !catdoc !fastjar !libplist !mp3info2 !ooffice !rar !w3m !xlhtml )
+ ia64? ( !antiword !catdoc !fastjar !id3v2 !libplist !mp3info !mp3info2
+ !ooffice !pstotext !rar !xlhtml )
+ ppc64? ( !catdoc !fastjar !ooffice !xlhtml )
+ sparc? ( !catdoc !fastjar !id3v2 !libplist !mp3info2 !ooffice !pstotext )"
+
+RDEPEND="sys-apps/file
+ app-arch/xz-utils
+ app-arch/bzip2
+ dev-lang/perl
+ sys-apps/less[lesspipe]
+ unzip? ( app-arch/unzip )
+ fastjar? ( !amd64-fbsd? ( !alpha? ( !arm? ( !hppa? ( !ia64? ( !ppc64?
+ ( !sparc? ( app-arch/fastjar ) ) ) ) ) ) ) )
+ unrar? ( app-arch/unrar )
+ !unrar? (
+ rar? ( !amd64-fbsd? ( !alpha? ( !arm? ( !hppa? ( !ia64?
+ ( app-text/o3read ) ) ) ) ) )
+ )
+ lzip? ( !amd64-fbsd? ( app-arch/lzip ) )
+ p7zip? ( !amd64-fbsd? ( app-arch/p7zip ) )
+ cpio? ( app-arch/cpio )
+ cabextract? ( app-arch/cabextract )
+ hdf5? ( sci-libs/hdf5 )
+ html2text? ( !amd64-fbsd? ( !arm? ( app-text/html2text ) ) )
+ !html2text? (
+ links? ( www-client/links )
+ !links? (
+ lynx? ( www-client/lynx )
+ !lynx? (
+ elinks? ( !amd64-fbsd? ( www-client/elinks ) )
+ !elinks? (
+ w3m? ( !amd64-fbsd? ( !hppa? ( www-client/w3m ) ) )
+ )
+ )
+ )
+ )
+ groff? ( sys-apps/groff )
+ rpm2targz? ( app-arch/rpm2targz )
+ !rpm2targz? (
+ rpm? ( !amd64-fbsd? ( || ( app-arch/rpm app-arch/rpm5 ) ) )
+ )
+ antiword? ( !amd64-fbsd? ( !arm? ( !ia64? ( app-text/antiword ) ) ) )
+ !antiword? (
+ catdoc? ( !amd64-fbsd? ( !alpha? ( !arm? ( !hppa? ( !ia64? ( !ppc64?
+ ( !sparc? ( app-text/catdoc ) ) ) ) ) ) ) )
+ )
+ xlhtml? ( !amd64-fbsd? ( !arm? ( !hppa? ( !ia64? ( !ppc64?
+ ( app-text/xlhtml ) ) ) ) ) )
+ unrtf? ( !amd64-fbsd? ( app-text/unrtf ) )
+ ooffice? ( !amd64-fbsd? ( !alpha? ( !arm? ( !hppa? ( !ia64? ( !ppc64?
+ ( !sparc? ( app-text/o3read ) ) ) ) ) ) ) )
+ djvu? ( app-text/djvu )
+ dvi2tty? ( dev-tex/dvi2tty )
+ pstotext? ( !amd64-fbsd? ( !alpha? ( !arm? ( !ia64? ( !sparc?
+ ( app-text/pstotext ) ) ) ) ) )
+ !pstotext? (
+ ghostscript? ( app-text/ghostscript-gpl )
+ )
+ gpg? ( app-crypt/gnupg )
+ pdf? ( app-text/poppler )
+ id3v2? ( !amd64-fbsd? ( !alpha? ( !arm? ( !ia64? ( !sparc?
+ ( media-sound/id3v2 ) ) ) ) ) )
+ !id3v2? (
+ mp3info2? ( !amd64-fbsd? ( !alpha? ( !hppa? ( !ia64? ( !sparc?
+ ( dev-perl/MP3-Tag ) ) ) ) ) )
+ !mp3info2? (
+ mp3info? ( !amd64-fbsd? ( !alpha? ( !arm? ( !ia64?
+ ( media-sound/mp3info ) ) ) ) )
+ )
+ )
+ image? ( || ( media-gfx/graphicsmagick[imagemagick] media-gfx/imagemagick ) )
+ isoinfo? ( || ( app-cdr/cdrtools app-cdr/dvd+rw-tools app-cdr/cdrkit ) )
+ libplist? ( !alpha? ( !hppa? ( !ia64? ( !sparc? ( app-pda/libplist ) ) ) ) )
+ dpkg? ( !amd64-fbsd? ( app-arch/dpkg ) )
+ hdf5? ( sci-libs/hdf5 )
+ netcdf? ( sci-libs/netcdf )"
+DEPEND="${RDEPEND}"
+
+ModifyStart() {
+ sedline=
+}
+
+Modify() {
+ if [ -z "${sedline:++}" ]
+ then sedline='/^__END__$/,${'
+ else sedline=${sedline}';'
+ fi
+ sedline=${sedline}'s/^\('${1}'[[:space:]][[:space:]]*\)[nNyY]/\1'${2:-Y}'/'
+}
+
+ModifyEnd() {
+ sedline=${sedline}'}'
+ sed -i -e "${sedline}" "${S}/configure"
+}
+
+ModifyY() {
+ local i
+ for i
+ do Modify "${i}"
+ done
+}
+
+ModifyN() {
+ local i
+ for i
+ do Modify "${i}" N
+ done
+}
+
+ModifyX() {
+ if [ ${?} -eq 0 ]
+ then ModifyY "${@}"
+ else ModifyN "${@}"
+ fi
+}
+
+ModifyU() {
+ local i
+ for i
+ do use "${i}"; ModifyX "${i}"
+ done
+}
+
+Modify1() {
+ local i search
+ search=:
+ for i
+ do ${search} && use "${i}" && search=false; ModifyX "${i}"
+ done
+}
+
+src_prepare() {
+ printf 'h5dump\t\tN\nncdump\t\tN\n' >>"${S}/configure"
+ ModifyStart
+ ModifyY 'HILITE'
+ ModifyY 'LESS_ADVANCED_PREPROCESSOR'
+ ModifyY 'nm'
+ ModifyY 'iconv'
+ ModifyY 'bzip2'
+ ModifyY 'xz' 'lzma'
+ ModifyY 'perldoc'
+ ModifyU 'unzip' 'fastjar'
+ Modify1 'unrar' 'rar'
+ ModifyU 'lzip'
+ use p7zip; ModifyX '7za'
+ ModifyU 'cpio' 'cabextract' 'groff'
+ Modify1 'html2text' 'links' 'lynx' 'elinks' 'w3m'
+ use rpm2targz; ModifyX 'rpmunpack'
+ ! use rpm2targz && use rpm; ModifyX 'rpm' 'rpm2cpio'
+ Modify1 'antiword' 'catdoc'
+ use xlhtml; ModifyX 'ppthtml' 'xlhtml'
+ ModifyU 'unrtf'
+ use ooffice; ModifyX 'o3tohtml'
+ use djvu; ModifyX 'djvutxt'
+ ModifyU 'dvi2tty'
+ ModifyU 'pstotext'
+ ! use pstotext && use ghostscript; ModifyX 'ps2ascii'
+ ModifyU 'gpg'
+ use pdf; ModifyX 'pdftohtml' 'pdftotext'
+ Modify1 'id3v2' 'mp3info2' 'mp3info'
+ use image; ModifyX 'identify'
+ ModifyU 'isoinfo'
+ ModifyN 'dpkg'
+ ModifyN 'lsbom'
+ use libplist; ModifyX 'plutil'
+ use hdf5; ModifyX 'h5dump'
+ use netcdf; ModifyX 'ncdump'
+ ModifyEnd
+ printf '%s\n' 'LESS_ADVANCED_PREPROCESSOR=1' >70lesspipe
+ epatch_user
+}
+
+src_configure() {
+ ./configure --fixed --prefix=/usr
+}
+
+src_install() {
+ doenvd 70lesspipe
+ dodir /usr/share/man/man1
+ default
+}
diff --git a/sys-apps/lesspipe/metadata.xml b/sys-apps/lesspipe/metadata.xml
new file mode 100644
index 00000000..15d3670a
--- /dev/null
+++ b/sys-apps/lesspipe/metadata.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <use>
+ <flag name="antiword">Support doc files with app-text/antiword; this overrides catdoc</flag>
+ <flag name="cabextract">Support cabextract files</flag>
+ <flag name="catdoc">Support doc files with app-text/catdoc; unused if antiword is set</flag>
+ <flag name="cpio">Support cpio files</flag>
+ <flag name="djvu">Support djvu files</flag>
+ <flag name="dpkg">Support Debian package files</flag>
+ <flag name="dvi2tty">Support dvi files with dev-tex/dvi2tty</flag>
+ <flag name="elinks">Support html files with www-client/elinks; ignored if html2text, links, or lynx is set; this overrides w3m</flag>
+ <flag name="fastjar">Support jar files with app-arch/fastjar</flag>
+ <flag name="ghostscript">Support ps files with app-text/ghostscript-gpl; ignored if pstotext is set</flag>
+ <flag name="gpg">Support gpg files</flag>
+ <flag name="groff">Support man and nroff files</flag>
+ <flag name="hdf5">Support h5dump from sci-libs/hdf5</flag>
+ <flag name="html2text">Support html files with app-text/html2text; this overrides links, lynx, elinks, w3m</flag>
+ <flag name="id3v2">Support mp3 files with media-sound/id3v2; this overrides mp3info2, mp3info</flag>
+ <flag name="image">Support image/jpg files</flag>
+ <flag name="isoinfo">Support CD/DVD-iso files</flag>
+ <flag name="libplist">Support Apple Property List files</flag>
+ <flag name="links">Support html files with www-client/links; ignored if html2text is set; this overrides lynx, elinks, w3m</flag>
+ <flag name="lynx">Support html files with www-client/lynx; ignored if html2text or links is set; this overrides elinks, w3m</flag>
+ <flag name="lzip">Support lzip files</flag>
+ <flag name="mp3info">Support mp3 files with media-sound/mp3info; unused if id3v2 or mp3info2 is set</flag>
+ <flag name="mp3info2">Support mp3 files with dev-perl/MP3-Tag (mp3info2); ignored if id3v2 is set; this overrides mp3info</flag>
+ <flag name="netcdf">Support ncdump from sci-libs/netcdf</flag>
+ <flag name="ooffice">Support OpenOffice files</flag>
+ <flag name="p7zip">Support p7zip files</flag>
+ <flag name="pdf">Support pdf files</flag>
+ <flag name="pstotext">Support ps files with app-text/pstotext; this overrides ghostscript</flag>
+ <flag name="rar">Support rar files with app-arch/rar; unused if unrar is set</flag>
+ <flag name="rpm">Support rpm files with app-arch/rpm or rpm5; ignored if rpm2targz is set</flag>
+ <flag name="rpm2targz">Support rpm files with app-arch/rpm2targz; this overrides rpm</flag>
+ <flag name="unrar">Support rar files with app-arch/unrar; this overrides rar</flag>
+ <flag name="unrtf">Support rtf files with app-text/unrtf</flag>
+ <flag name="unzip">Support zip files with app-arch/unzip</flag>
+ <flag name="w3m">Support html files with www-client/w3m; ignored if html2text, links, lynx, or elinks is set</flag>
+ <flag name="xlhtml">Support Excel and Powerpoint files with app-arch/xlhtml</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-apps/openrc-wrapper/Manifest b/sys-apps/openrc-wrapper/Manifest
new file mode 100644
index 00000000..2787170d
--- /dev/null
+++ b/sys-apps/openrc-wrapper/Manifest
@@ -0,0 +1 @@
+DIST openrc-wrapper-1.7.tar.gz 2432 SHA256 4bef51a81461772b277ca9df8dd3295043c0a61a976cef39e401cf26ce3b8c15 SHA512 f825e2a44b613c372948c12c83183a95723bb99ceb86e24739eb10f3b24dc3768d542f4410db6cf1f2ad44559c20eba2cb2a70ecd038f5b3e9d8877008b0e488 WHIRLPOOL 37a0685562a2a0f546927c2ec61807e8ef94d01825ae5c6e8a25c7c361e5854765e3b791b00925f1ff11c54d683f1ac649b8b6aced8d2a32fea630e1e6a3d583
diff --git a/sys-apps/openrc-wrapper/metadata.xml b/sys-apps/openrc-wrapper/metadata.xml
new file mode 100644
index 00000000..db6be5a2
--- /dev/null
+++ b/sys-apps/openrc-wrapper/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/openrc-wrapper</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/openrc-wrapper/openrc-wrapper-1.7.ebuild b/sys-apps/openrc-wrapper/openrc-wrapper-1.7.ebuild
new file mode 100644
index 00000000..88be0ecc
--- /dev/null
+++ b/sys-apps/openrc-wrapper/openrc-wrapper-1.7.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils systemd
+
+DESCRIPTION="Use openrc init scripts with systemd or other init systems"
+HOMEPAGE="https://github.com/vaeth/openrc-wrapper"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+DEPEND="!!<sys-fs/squash_dir-3.2"
+# the last dependency is not really needed, but without it the output is ugly,
+# and the costs are really not high: sys-apps/gentoo-functions is tiny
+RDEPEND="${DEPEND}
+|| ( sys-apps/gentoo-functions sys-apps/openrc )"
+IUSE=""
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ dodoc README
+ dobin bin/*
+ systemd_dounit systemd/system/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+}
diff --git a/sys-apps/schedule/Manifest b/sys-apps/schedule/Manifest
new file mode 100644
index 00000000..5d2df89e
--- /dev/null
+++ b/sys-apps/schedule/Manifest
@@ -0,0 +1 @@
+DIST schedule-7.2.0.tar.gz 46509 SHA256 8da9d1769d18553803d9e1eacde024382ea57210004fcc6bf80c48baedb453b2 SHA512 ee081b820caf83e309623fc89612170848b48ed682038850de59db3b1444bbe6a9273ff7675307662fa83cdf374f3dbe80ebda0076227e2abf3cc1ddd2c8bf86 WHIRLPOOL 4af007aed84d00aee3565eab3b36ce30cc2570f6d22f7da62d27f0cf663d09d4ecc58f570d9db6ebd66fa26635c0b3d0bdc4b01e72ebfb5170c87c4cf7beab86
diff --git a/sys-apps/schedule/metadata.xml b/sys-apps/schedule/metadata.xml
new file mode 100644
index 00000000..98f77653
--- /dev/null
+++ b/sys-apps/schedule/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/schedule</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/schedule/schedule-7.2.0.ebuild b/sys-apps/schedule/schedule-7.2.0.ebuild
new file mode 100644
index 00000000..c792ef6b
--- /dev/null
+++ b/sys-apps/schedule/schedule-7.2.0.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils readme.gentoo user systemd
+
+DESCRIPTION="script to schedule jobs in a multiuser multitasking environment"
+HOMEPAGE="https://github.com/vaeth/schedule/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="!<sys-apps/openrc-0.13
+ >=dev-lang/perl-5.12"
+# || ( >=dev-lang/perl-5.10.1 >=virtual/perl-version-0.77 )
+# || ( >=dev-lang/perl-5.1 virtual/perl-File-Path )
+# || ( >=dev-lang/perl-5.9.4 virtual/perl-File-Spec-3.0 )
+# || ( >=dev-lang/perl-5.6.1 >=virtual/perl-Getopt-Long-2.24 )
+# || ( >=dev-lang/perl-5.6.0 >=virtual/perl-IO-1.190.0 )
+# || ( >=dev-lang/perl-5.9.4 virtual/perl-Digest-SHA) # for encryption
+DEPEND=""
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="It is recommended to put a lengthy passphrase into the first line
+of /etc/schedule.password and to change permission so that only users allowed
+to access the system schedule-server can read it.
+
+You might want to adapt /etc/conf.d/schedule to your needs.
+If you use systemd, you might want to override schedule.service locally in
+/etc/systemd/system to adapt it to your needs."
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -e '1s"^#!/usr/bin/env perl$"#!'"${EPREFIX}/usr/bin/perl"'"' \
+ -e 's"^/usr/share/schedule"${EPREFIX}/usr/share/${PN}"' \
+ -e '/^use FindBin;/,/^\}$/d' \
+ -- bin/* || die
+ epatch_user
+}
+
+src_install() {
+ dobin bin/*
+ dodoc README ChangeLog
+ insinto "/usr/share/${PN}"
+ doins -r lib/*
+ doinitd openrc/init.d/*
+ doconfd openrc/conf.d/*
+ systemd_dounit systemd/system/*
+ doenvd env.d/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+ insinto /etc
+ (
+ umask 027
+ : >"${ED}/etc/schedule.password"
+ )
+}
+
+generate_password() (
+ umask 027
+ for i in {1..50}
+ do printf "%s" "${RANDOM}"
+ done >"${EPREFIX}/etc/schedule.password"
+)
+
+pkg_postinst() {
+ optfeature "colored output" '>=dev-lang/perl-5.14' 'virtual/perl-Term-ANSIColor'
+ optfeature "encryption support" 'dev-perl/Crypt-Rijndael'
+ if ! use prefix
+ then enewgroup schedule
+ enewuser schedule -1 -1 -1 schedule
+ fi
+ if ! test -s "${EPREFIX}/etc/schedule.password"
+ then if generate_password
+ then ewarn "You should fill ${EPREFIX}/etc/schedule.password with a random password:"
+ ewarn "the current random value is not necessarily cryptographically strong."
+ chown 'schedule:schedule' -- "${EPREFIX}/etc/schedule.password" || \
+ ewarn "failed to set permissions for ${EPREFIX}/etc/schedule.password"
+ else ewarn "failed to generate ${EPREFIX}/etc/schedule.password"
+ fi
+ fi
+}
diff --git a/sys-apps/starter/Manifest b/sys-apps/starter/Manifest
new file mode 100644
index 00000000..2fbd7d32
--- /dev/null
+++ b/sys-apps/starter/Manifest
@@ -0,0 +1 @@
+DIST starter-2.15.tar.gz 6504 SHA256 ee2b600f691970c6da38d15d279eacce10396a7abf66cc260cb493d49b60d95a SHA512 0ab683698949021fc58647c8adc736324a1f38ec0d6e57d5a3c269f294b04fd73f1058e37ee8bd546a4eff2147d6fcc12e363ea99acaca1e8964ca5fb0bb3ce0 WHIRLPOOL 0899e6b2301f549c8514597b025f8a686f77de538ea2ab520a2a63d39fe18c522ebea995b315e2dd20dbe783f8ab82036392988e7f1303f251abfa91275715e9
diff --git a/sys-apps/starter/metadata.xml b/sys-apps/starter/metadata.xml
new file mode 100644
index 00000000..9140c236
--- /dev/null
+++ b/sys-apps/starter/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/starter</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-apps/starter/starter-2.15.ebuild b/sys-apps/starter/starter-2.15.ebuild
new file mode 100644
index 00000000..eeeae225
--- /dev/null
+++ b/sys-apps/starter/starter-2.15.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="POSIX shell script and function to schedule commands"
+HOMEPAGE="https://github.com/vaeth/starter/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="app-shells/push
+ >=app-shells/runtitle-2.3"
+DEPEND=""
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- bin/* || die
+ epatch_user
+}
+
+src_install() {
+ local i
+ insinto /usr/bin
+ for i in bin/*
+ do if test -h "${i}" || ! test -x "${i}"
+ then doins "${i}"
+ else dobin "${i}"
+ fi
+ done
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+ dodoc README
+}
diff --git a/sys-block/zram-init/Manifest b/sys-block/zram-init/Manifest
new file mode 100644
index 00000000..89e14f58
--- /dev/null
+++ b/sys-block/zram-init/Manifest
@@ -0,0 +1 @@
+DIST zram-init-3.4.tar.gz 5825 SHA256 39e121d209a03a29f98bbb0be47ce666bf6c0ef7185af30f118976fbe68a8788 SHA512 985cbe5dd63c900ce88bf8f8989bc04f982b27104dbc40e9c4cf504310aca335efafba842d801e0b9250e8b6925d063bcd2c555122fc7c7295128687ccd4080f WHIRLPOOL 086426e0f334c500f9dc65273afad1acdbd7696882cd0a9f54f7b27fac347777f8dea0899a2719626648da9dee1c837f6f3ccebd8cf1e1c9dc550624c2eb9416
diff --git a/sys-block/zram-init/metadata.xml b/sys-block/zram-init/metadata.xml
new file mode 100644
index 00000000..0afc3a02
--- /dev/null
+++ b/sys-block/zram-init/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/zram-init</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-block/zram-init/zram-init-3.4.ebuild b/sys-block/zram-init/zram-init-3.4.ebuild
new file mode 100644
index 00000000..f5849676
--- /dev/null
+++ b/sys-block/zram-init/zram-init-3.4.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils readme.gentoo systemd
+
+DESCRIPTION="Scripts to support compressed swap devices or ramdisks with zram"
+HOMEPAGE="https://github.com/vaeth/zram-init/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="!<sys-apps/openrc-0.13"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="To use zram, activate it in your kernel and add it to default runlevel:
+ rc-config add zram default
+If you use systemd enable zram_swap, tmp, and/or var_tmp with systemctl.
+You might need to modify /etc/modprobe.d/zram.conf"
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- sbin/* || die
+ epatch_user
+}
+
+src_install() {
+ dosbin sbin/*
+ doinitd openrc/init.d/*
+ doconfd openrc/conf.d/*
+ systemd_dounit systemd/system/*
+ insinto /etc/modprobe.d
+ doins modprobe.d/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+ readme.gentoo_create_doc
+}
diff --git a/sys-fs/aufs-util/aufs-util-99999999.ebuild b/sys-fs/aufs-util/aufs-util-99999999.ebuild
new file mode 100644
index 00000000..b4264e15
--- /dev/null
+++ b/sys-fs/aufs-util/aufs-util-99999999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+EGIT_REPO_URI="git://aufs.git.sourceforge.net/gitroot/aufs/aufs-util.git"
+EGIT_BRANCH="aufs3.9"
+inherit eutils git-r3 linux-info multilib
+
+DESCRIPTION="Userspace tools for aufs"
+HOMEPAGE="http://aufs.sourceforge.net/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0/3.9"
+# Since this is a live ebuild, we require ACCEPT_KEYWORDS='**'
+#KEYWORDS="~amd64 ~x86"
+KEYWORDS=""
+IUSE=""
+PROPERTIES="live"
+
+RDEPEND=""
+DEPEND="dev-vcs/git[curl]"
+
+src_prepare() {
+ local i l
+ ln -s "${KERNEL_DIR}"/include local_kernel
+ set -- local_kernel/linux/aufs*.h
+ test -e "${1}" || {
+ eerror "It seems you do not have installed aufs into your kernel tree."
+ die "You might need to emerge >=sys-fs/aufs-99999999::mv"
+ }
+ l="s|/usr/lib|$(get_libdir)|"
+ sed -i -e "1iCFLAGS += -I./local_kernel -include linux/compiler.h" -e "${l}" Makefile || \
+ die "Patching Makefile failed"
+ for i in lib*/Makefile
+ do test -e "${i}" || continue
+ sed -i -e "1iCFLAGS += -I../local_kernel" -e "${l}" "${i}" || \
+ die "Patching ${i} failed"
+ done
+ epatch_user
+}
diff --git a/sys-fs/aufs-util/metadata.xml b/sys-fs/aufs-util/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/sys-fs/aufs-util/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-fs/aufs/aufs-99999999.ebuild b/sys-fs/aufs/aufs-99999999.ebuild
new file mode 100644
index 00000000..f986d375
--- /dev/null
+++ b/sys-fs/aufs/aufs-99999999.ebuild
@@ -0,0 +1,200 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+EGIT_REPO_URI="git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git"
+EGIT_BRANCH="aufs3.0"
+inherit eutils git-r3 linux-info
+
+DESCRIPTION="An entirely re-designed and re-implemented Unionfs"
+HOMEPAGE="http://aufs.sourceforge.net/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0/3"
+# Since this is a live ebuild with unstable versions in portage we require
+# that the user unmasks this ebuild with ACCEPT_KEYWORDS='**'
+#KEYWORDS="~amd64 ~x86"
+KEYWORDS=""
+IUSE="kernel-patch all-patches"
+PROPERTIES="live"
+
+RDEPEND="!sys-fs/aufs2
+ !sys-fs/aufs3"
+DEPEND="dev-vcs/git[curl]"
+
+declare -a my_patchlist
+
+fill_my_patchlist() {
+ local i
+ my_patchlist=()
+ for i
+ do case ${i} in
+ *.patch|*.diff)
+ ! test -f "${i}" || my_patchlist+=("${i}");;
+ esac
+ done
+}
+
+apply_my_patch() {
+ local r
+ r=
+ if [ ${#} -gt 1 ]
+ then shift
+ r='-R'
+ fi
+ patch ${r} -p1 --dry-run --force <"${1}" >/dev/null || return
+ einfo "Applying kernel patch ${1}${r:+ reversely}"
+ patch ${r} -p1 --force --no-backup-if-mismatch <"${1}" >/dev/null || {
+ eerror "applying kernel patch ${1}${r:+ reversely} failed."
+ eerror "Since dry run succeeded this is probably a problem with write permissions."
+ die "With USE=-kernel-patch you avoid automatic patching attempts."
+ }
+}
+
+apply_my_patchlist() {
+ local r i
+ r=
+ if [ ${#} -gt 0 ]
+ then shift
+ r='-R'
+ fi
+ set --
+ for i in "${my_patchlist[@]}"
+ do if use all-patches || case "${i}" in
+ aufs*)
+ :;;
+ *)
+ false;;
+ esac
+ then apply_my_patch ${r} "${i}" || set -- "${@}" "${i}"
+ else einfo "Kernel patch ${i} - skipping as all-patches is not set"
+ fi
+ done
+ for i
+ do apply_my_patch ${r} "${i}" || \
+ ewarn "Kernel patch ${i} cannot be${r:+ reverse} applied - skipping."
+ done
+}
+
+pkg_setup() {
+ linux-info_pkg_setup
+
+ # kernel version check
+ if kernel_is lt 2 6 26
+ then
+ eerror "${PN} is being developed and tested on linux-2.6.26 and later."
+ eerror "Make sure you have a proper kernel version!"
+ die "Wrong kernel version"
+ fi
+
+ if [ -n "${AUFSBRANCH}" ]
+ then EGIT_BRANCH="${AUFSBRANCH}"
+ else if kernel_is lt 3 0
+ then [ -n "${KV_PATCH}" ] && EGIT_BRANCH="aufs2.2-${KV_PATCH}"
+ else [ -n "${KV_MINOR}" ] && EGIT_BRANCH="aufs${KV_MAJOR}.${KV_MINOR}"
+ fi
+ case ${EGIT_BRANCH} in
+ aufs3.7)
+ EGIT_BRANCH="aufs3.x-rcN";;
+ esac
+ fi
+ elog
+ elog "Using aufs branch: ${EGIT_BRANCH}"
+ elog "If this guess for the branch is wrong, set AUFSBRANCH."
+ elog "For example, to use the aufs3.0 branch for kernel version 3.0, use:"
+ elog " AUFSBRANCH=aufs3.0 emerge -1 aufs"
+ elog
+ elog "To find out names of testing branches you might want to use"
+ elog "( cd ${EGIT_DIR} && git log --decorate --graph --all --full-history )"
+ if [ -n "${EVCS_OFFLINE}" ]
+ then elog
+ elog "Note that it might be necessary in addition to fetch the newest aufs:"
+ elog "Set EVCS_OFFLINE='' in the environment and be online during emerge."
+ fi
+ elog
+
+ use kernel-patch || return 0
+ (
+ set --
+ cd -- "${KV_DIR}" >/dev/null 2>&1 && \
+ fill_my_patchlist *.patch *.diff && apply_my_patchlist -R
+ )
+}
+
+src_prepare() {
+ local i j w v newest all
+ epatch_user
+ all="2.2.0 2.2.1 2.2.2 2.2.2.r1 2.9.1"
+ newest=${all##* }
+ v=
+ for i in ${GRSECURITYPATCHVER-+}
+ do case ${i} in
+ '+')
+ j=${newest};;
+ '*')
+ j=${all};;
+ *)
+ w=:
+ for j in ${all}
+ do [ "${i}" = "${j}" ] && w=false && continue
+ done
+ if ${w}
+ then warn "GRSECURITYPATCHVER contains bad version ${i}"
+ else j="${i}"
+ fi;;
+ esac
+ v="${v} ${j}"
+ done
+ v=${v# }
+ elog
+ elog "Using GRSECURITYPATCHVER: ${v}"
+ elog "If you want other patches, set GRSECURITYPATCHVER to some or more of:"
+ elog "${all} +"
+ elog "The special value + means the newest version (${newest}) and is default."
+ elog "The special value * means all versions."
+ elog
+ for i in ${v}
+ do j="grsecurity-${i}.patch"
+ cp -p -- "${FILESDIR}/${j}" "aufs-${j}" || die "copying ${j} failed"
+ done
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ :
+}
+
+src_install() {
+ local i k dk
+ i="Documentation/filesystems/aufs/aufs.5"
+ test -e "${i}" && doman "${i}"
+ k="$(readlink -f -- "${KV_DIR}")" && [ -n "${k}" ] || k="${KV_DIR}"
+ dk="${D}/${k}"
+ dodir "${k}/fs/aufs"
+ cp -pPR -- fs/aufs/* "${dk}/fs/aufs"
+ cp -pPR -- include "${dk}"
+ find "${dk}"/include -name Kbuild -type f -exec rm -v -- '{}' ';'
+ fill_my_patchlist *.patch *.diff
+ cp -pPR -- "${my_patchlist[@]}" "${dk}"
+}
+
+pkg_postinst() {
+ [ "${#my_patchlist[@]}" -eq 0 ] && {
+ cd -- "${KV_DIR}" >/dev/null 2>&1 && fill_my_patchlist *.patch *.diff
+ }
+ if use kernel-patch
+ then cd -- "${KV_DIR}" >/dev/null 2>&1 || die "cannot cd to ${KV_DIR}"
+ apply_my_patchlist
+ elog "Your kernel has been patched. Cleanup and recompile it, selecting"
+ else elog "You will have to apply the following patch to your kernel:"
+ elog " cd ${KV_DIR} && cat ${my_patchlist[*]} | patch -p1 --no-backup-if-mismatch"
+ elog "Then cleanup and recompile your kernel, selecting"
+ fi
+ elog " Filesystems/Miscellaneous Filesystems/aufs"
+ elog "in the configuration phase."
+}
diff --git a/sys-fs/aufs/files/grsecurity-2.2.0.patch b/sys-fs/aufs/files/grsecurity-2.2.0.patch
new file mode 100644
index 00000000..5c805ba7
--- /dev/null
+++ b/sys-fs/aufs/files/grsecurity-2.2.0.patch
@@ -0,0 +1,61 @@
+--- linux/include/linux/fs.h
++++ linux/include/linux/fs.h
+@@ -575,41 +575,41 @@
+ unsigned long, unsigned long);
+
+ struct address_space_operations {
+- int (* const writepage)(struct page *page, struct writeback_control *wbc);
+- int (* const readpage)(struct file *, struct page *);
+- void (* const sync_page)(struct page *);
++ int (*writepage)(struct page *page, struct writeback_control *wbc);
++ int (*readpage)(struct file *, struct page *);
++ void (*sync_page)(struct page *);
+
+ /* Write back some dirty pages from this mapping. */
+- int (* const writepages)(struct address_space *, struct writeback_control *);
++ int (*writepages)(struct address_space *, struct writeback_control *);
+
+ /* Set a page dirty. Return true if this dirtied it */
+- int (* const set_page_dirty)(struct page *page);
++ int (*set_page_dirty)(struct page *page);
+
+- int (* const readpages)(struct file *filp, struct address_space *mapping,
++ int (*readpages)(struct file *filp, struct address_space *mapping,
+ struct list_head *pages, unsigned nr_pages);
+
+- int (* const write_begin)(struct file *, struct address_space *mapping,
++ int (*write_begin)(struct file *, struct address_space *mapping,
+ loff_t pos, unsigned len, unsigned flags,
+ struct page **pagep, void **fsdata);
+- int (* const write_end)(struct file *, struct address_space *mapping,
++ int (*write_end)(struct file *, struct address_space *mapping,
+ loff_t pos, unsigned len, unsigned copied,
+ struct page *page, void *fsdata);
+
+ /* Unfortunately this kludge is needed for FIBMAP. Don't use it */
+- sector_t (* const bmap)(struct address_space *, sector_t);
+- void (* const invalidatepage) (struct page *, unsigned long);
+- int (* const releasepage) (struct page *, gfp_t);
+- ssize_t (* const direct_IO)(int, struct kiocb *, const struct iovec *iov,
++ sector_t (*bmap)(struct address_space *, sector_t);
++ void (*invalidatepage) (struct page *, unsigned long);
++ int (*releasepage) (struct page *, gfp_t);
++ ssize_t (*direct_IO)(int, struct kiocb *, const struct iovec *iov,
+ loff_t offset, unsigned long nr_segs);
+- int (* const get_xip_mem)(struct address_space *, pgoff_t, int,
++ int (*get_xip_mem)(struct address_space *, pgoff_t, int,
+ void **, unsigned long *);
+ /* migrate the contents of a page to the specified target */
+- int (* const migratepage) (struct address_space *,
++ int (*migratepage) (struct address_space *,
+ struct page *, struct page *);
+- int (* const launder_page) (struct page *);
+- int (* const is_partially_uptodate) (struct page *, read_descriptor_t *,
++ int (*launder_page) (struct page *);
++ int (*is_partially_uptodate) (struct page *, read_descriptor_t *,
+ unsigned long);
+- int (* const error_remove_page)(struct address_space *, struct page *);
++ int (*error_remove_page)(struct address_space *, struct page *);
+ };
+
+ /*
diff --git a/sys-fs/aufs/files/grsecurity-2.2.1.patch b/sys-fs/aufs/files/grsecurity-2.2.1.patch
new file mode 100644
index 00000000..8396dfd1
--- /dev/null
+++ b/sys-fs/aufs/files/grsecurity-2.2.1.patch
@@ -0,0 +1,63 @@
+--- linux/include/linux/fs.h
++++ linux/include/linux/fs.h
+@@ -583,42 +583,42 @@
+ unsigned long, unsigned long);
+
+ struct address_space_operations {
+- int (* const writepage)(struct page *page, struct writeback_control *wbc);
+- int (* const readpage)(struct file *, struct page *);
+- void (* const sync_page)(struct page *);
++ int (*writepage)(struct page *page, struct writeback_control *wbc);
++ int (*readpage)(struct file *, struct page *);
++ void (*sync_page)(struct page *);
+
+ /* Write back some dirty pages from this mapping. */
+- int (* const writepages)(struct address_space *, struct writeback_control *);
++ int (*writepages)(struct address_space *, struct writeback_control *);
+
+ /* Set a page dirty. Return true if this dirtied it */
+- int (* const set_page_dirty)(struct page *page);
++ int (*set_page_dirty)(struct page *page);
+
+- int (* const readpages)(struct file *filp, struct address_space *mapping,
++ int (*readpages)(struct file *filp, struct address_space *mapping,
+ struct list_head *pages, unsigned nr_pages);
+
+- int (* const write_begin)(struct file *, struct address_space *mapping,
++ int (*write_begin)(struct file *, struct address_space *mapping,
+ loff_t pos, unsigned len, unsigned flags,
+ struct page **pagep, void **fsdata);
+- int (* const write_end)(struct file *, struct address_space *mapping,
++ int (*write_end)(struct file *, struct address_space *mapping,
+ loff_t pos, unsigned len, unsigned copied,
+ struct page *page, void *fsdata);
+
+ /* Unfortunately this kludge is needed for FIBMAP. Don't use it */
+- sector_t (* const bmap)(struct address_space *, sector_t);
+- void (* const invalidatepage) (struct page *, unsigned long);
+- int (* const releasepage) (struct page *, gfp_t);
+- void (* const freepage)(struct page *);
+- ssize_t (* const direct_IO)(int, struct kiocb *, const struct iovec *iov,
++ sector_t (*bmap)(struct address_space *, sector_t);
++ void (*invalidatepage) (struct page *, unsigned long);
++ int (*releasepage) (struct page *, gfp_t);
++ void (*freepage)(struct page *);
++ ssize_t (*direct_IO)(int, struct kiocb *, const struct iovec *iov,
+ loff_t offset, unsigned long nr_segs);
+- int (* const get_xip_mem)(struct address_space *, pgoff_t, int,
++ int (*get_xip_mem)(struct address_space *, pgoff_t, int,
+ void **, unsigned long *);
+ /* migrate the contents of a page to the specified target */
+- int (* const migratepage) (struct address_space *,
++ int (*migratepage) (struct address_space *,
+ struct page *, struct page *);
+- int (* const launder_page) (struct page *);
+- int (* const is_partially_uptodate) (struct page *, read_descriptor_t *,
++ int (*launder_page) (struct page *);
++ int (*is_partially_uptodate) (struct page *, read_descriptor_t *,
+ unsigned long);
+- int (* const error_remove_page)(struct address_space *, struct page *);
++ int (*error_remove_page)(struct address_space *, struct page *);
+ };
+
+ /*
diff --git a/sys-fs/aufs/files/grsecurity-2.2.2.patch b/sys-fs/aufs/files/grsecurity-2.2.2.patch
new file mode 100644
index 00000000..9a38594d
--- /dev/null
+++ b/sys-fs/aufs/files/grsecurity-2.2.2.patch
@@ -0,0 +1,61 @@
+--- linux/include/linux/fs.h
++++ linux/include/linux/fs.h
+@@ -580,41 +580,41 @@
+ unsigned long, unsigned long);
+
+ struct address_space_operations {
+- int (* const writepage)(struct page *page, struct writeback_control *wbc);
+- int (* const readpage)(struct file *, struct page *);
++ int (*writepage)(struct page *page, struct writeback_control *wbc);
++ int (*readpage)(struct file *, struct page *);
+
+ /* Write back some dirty pages from this mapping. */
+- int (* const writepages)(struct address_space *, struct writeback_control *);
++ int (*writepages)(struct address_space *, struct writeback_control *);
+
+ /* Set a page dirty. Return true if this dirtied it */
+- int (* const set_page_dirty)(struct page *page);
++ int (*set_page_dirty)(struct page *page);
+
+- int (* const readpages)(struct file *filp, struct address_space *mapping,
++ int (*readpages)(struct file *filp, struct address_space *mapping,
+ struct list_head *pages, unsigned nr_pages);
+
+- int (* const write_begin)(struct file *, struct address_space *mapping,
++ int (*write_begin)(struct file *, struct address_space *mapping,
+ loff_t pos, unsigned len, unsigned flags,
+ struct page **pagep, void **fsdata);
+- int (* const write_end)(struct file *, struct address_space *mapping,
++ int (*write_end)(struct file *, struct address_space *mapping,
+ loff_t pos, unsigned len, unsigned copied,
+ struct page *page, void *fsdata);
+
+ /* Unfortunately this kludge is needed for FIBMAP. Don't use it */
+- sector_t (* const bmap)(struct address_space *, sector_t);
+- void (* const invalidatepage) (struct page *, unsigned long);
+- int (* const releasepage) (struct page *, gfp_t);
+- void (* const freepage)(struct page *);
+- ssize_t (* const direct_IO)(int, struct kiocb *, const struct iovec *iov,
++ sector_t (*bmap)(struct address_space *, sector_t);
++ void (*invalidatepage) (struct page *, unsigned long);
++ int (*releasepage) (struct page *, gfp_t);
++ void (*freepage)(struct page *);
++ ssize_t (*direct_IO)(int, struct kiocb *, const struct iovec *iov,
+ loff_t offset, unsigned long nr_segs);
+- int (* const get_xip_mem)(struct address_space *, pgoff_t, int,
++ int (*get_xip_mem)(struct address_space *, pgoff_t, int,
+ void **, unsigned long *);
+ /* migrate the contents of a page to the specified target */
+- int (* const migratepage) (struct address_space *,
++ int (*migratepage) (struct address_space *,
+ struct page *, struct page *);
+- int (* const launder_page) (struct page *);
+- int (* const is_partially_uptodate) (struct page *, read_descriptor_t *,
++ int (*launder_page) (struct page *);
++ int (*is_partially_uptodate) (struct page *, read_descriptor_t *,
+ unsigned long);
+- int (* const error_remove_page)(struct address_space *, struct page *);
++ int (*error_remove_page)(struct address_space *, struct page *);
+ };
+
+ extern const struct address_space_operations empty_aops;
diff --git a/sys-fs/aufs/files/grsecurity-2.2.2.r1.patch b/sys-fs/aufs/files/grsecurity-2.2.2.r1.patch
new file mode 100644
index 00000000..743b7bb7
--- /dev/null
+++ b/sys-fs/aufs/files/grsecurity-2.2.2.r1.patch
@@ -0,0 +1,15 @@
+--- linux/include/linux/fs.h
++++ linux/include/linux/fs.h
+@@ -619,7 +619,11 @@
+ int (*is_partially_uptodate) (struct page *, read_descriptor_t *,
+ unsigned long);
+ int (*error_remove_page)(struct address_space *, struct page *);
+-};
++}
++#ifdef CONFIG_GRKERNSEC
++__no_const
++#endif
++;
+
+ extern const struct address_space_operations empty_aops;
+
diff --git a/sys-fs/aufs/files/grsecurity-2.9.1.patch b/sys-fs/aufs/files/grsecurity-2.9.1.patch
new file mode 100644
index 00000000..699419fd
--- /dev/null
+++ b/sys-fs/aufs/files/grsecurity-2.9.1.patch
@@ -0,0 +1,15 @@
+--- linux/include/linux/fs.h
++++ linux/include/linux/fs.h
+@@ -385,7 +385,11 @@
+ int (*swap_activate)(struct swap_info_struct *sis, struct file *file,
+ sector_t *span);
+ void (*swap_deactivate)(struct file *file);
+-};
++}
++#ifdef CONFIG_GRKERNSEC
++__no_const
++#endif
++;
+
+ extern const struct address_space_operations empty_aops;
+
diff --git a/sys-fs/aufs/metadata.xml b/sys-fs/aufs/metadata.xml
new file mode 100644
index 00000000..9632c25e
--- /dev/null
+++ b/sys-fs/aufs/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <use>
+ <flag name="kernel-patch">Apply the aufs kernel patches instead of just copying them</flag>
+ <flag name="all-patches">Apply all patches - also those which do not start with aufs</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-fs/emount/Manifest b/sys-fs/emount/Manifest
new file mode 100644
index 00000000..c5b78d7e
--- /dev/null
+++ b/sys-fs/emount/Manifest
@@ -0,0 +1 @@
+DIST emount-2.8.3.tar.gz 3828 SHA256 8431fddd142c3b646d702a4db7c1ad92e1a831bddc2591221b556c13511b9d6b SHA512 f681e3bba219e180c1451d3a3f291ab3f788e973b5cbe3dff8e2cc360352c436a866640e3080c27d70bd70e756714ec4159da24ca4f21a57b411563dc2547cb3 WHIRLPOOL 54ca6c2ce289bd0e5fc24882994fad9516626bcd015f028bfca25e48378b208285d19c123b6a341e6ebcf1bc020a9f8828925d49d198e6c78b24a2d23dc72cec
diff --git a/sys-fs/emount/emount-2.8.3.ebuild b/sys-fs/emount/emount-2.8.3.ebuild
new file mode 100644
index 00000000..eb56318c
--- /dev/null
+++ b/sys-fs/emount/emount-2.8.3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="mount/unmount (and create/remove) dm-crypt filesystems according to your /etc/fstab"
+HOMEPAGE="https://github.com/vaeth/emount/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=dev-lang/perl-5.12
+ sys-fs/cryptsetup"
+# || ( >=dev-lang/perl-5.6.1 >=virtual/perl-Getopt-Long-2.24 )
+# || ( >=dev-lang/perl-5.4.5 virtual/perl-File-Spec )
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env perl$"#!'"${EPREFIX}/usr/bin/perl"'"' \
+ -- bin/* || die
+ epatch_user
+}
+
+src_install() {
+ local i
+ insinto /usr/bin
+ for i in bin/*
+ do if test -h "${i}" || ! test -x "${i}"
+ then doins "${i}"
+ else dobin "${i}"
+ fi
+ done
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+}
diff --git a/sys-fs/emount/metadata.xml b/sys-fs/emount/metadata.xml
new file mode 100644
index 00000000..a98c40b2
--- /dev/null
+++ b/sys-fs/emount/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/emount</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-fs/squash_dir/Manifest b/sys-fs/squash_dir/Manifest
new file mode 100644
index 00000000..d20b18bb
--- /dev/null
+++ b/sys-fs/squash_dir/Manifest
@@ -0,0 +1 @@
+DIST squash_dir-13.8.tar.gz 31453 SHA256 f123d76ef3d6572ca9e1cb1c239e2fff925cdc8ae65b4047d8b50e351004b5d1 SHA512 0f86f387077a5878612e9847602d1c2e255b79bfcbae5573a6bf413d72ff8b3246b12583ea7050188feb116e55e7704ae9dd2d02df35ce072a2205c1eadfad32 WHIRLPOOL 46bde67d35b7540a28c0a768438a46bec035dbd9c92289e42448de744b054fed4e6bc79a75cea5ab126740a486877896f31b892a661a15bfe8541eb6ed6f9671
diff --git a/sys-fs/squash_dir/metadata.xml b/sys-fs/squash_dir/metadata.xml
new file mode 100644
index 00000000..8bf06804
--- /dev/null
+++ b/sys-fs/squash_dir/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/squash_dir</remote-id>
+ </upstream>
+ <use>
+ <flag name="aufs">Prefer aufs</flag>
+ <flag name="overlayfs">Prefer overlayfs</flag>
+ <flag name="unionfs-fuse">Prefer unionfs-fuse</flag>
+ <flag name="bundled-openrc-wrapper">Install the bundled openrc-wrapper</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-fs/squash_dir/squash_dir-13.8.ebuild b/sys-fs/squash_dir/squash_dir-13.8.ebuild
new file mode 100644
index 00000000..73072d21
--- /dev/null
+++ b/sys-fs/squash_dir/squash_dir-13.8.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+WANT_LIBTOOL=none
+AUTOTOOLS_IN_SOURCE_BUILD=true
+inherit autotools autotools-utils eutils linux-info readme.gentoo systemd
+
+DESCRIPTION="Keep directories compressed with squashfs. Useful for portage tree, texmf-dist"
+HOMEPAGE="http://forums.gentoo.org/viewtopic-t-465367.html"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+#KEYWORDS="~amd64 ~ppc ~x86"
+KEYWORDS=""
+IUSE="aufs overlayfs bundled-openrc-wrapper unionfs-fuse"
+
+BOTHDEPEND="bundled-openrc-wrapper? ( !!sys-apps/openrc-wrapper )"
+RDEPEND="sys-fs/squashfs-tools
+ !bundled-openrc-wrapper? ( sys-apps/openrc-wrapper )
+ ${BOTHDEPEND}
+ >=app-shells/runtitle-2.3
+ !<sys-fs/unionfs-fuse-0.25
+ unionfs-fuse? ( sys-fs/unionfs-fuse )"
+DEPEND=">=sys-devel/autoconf-2.65
+ ${BOTHDEPEND}"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="Please adapt ${EPREFIX}/etc/conf.d/${PN} to your needs.
+It is recommended to put into your zshrc the line:
+alias squash_dir='noglob squash_dir'"
+
+src_prepare() {
+ if use prefix
+ then sed -i \
+ -e "s\"'[^']*/etc/conf[.]d/${PN}'\"'${EPREFIX}/etc/conf.d/${PN}'\"g" \
+ -- "init.d/${PN}" || die
+ sed -i \
+ -e "s\"=/etc/\"=${EPREFIX}/etc/\"" \
+ -e "s\"=/usr/\"=${EPREFIX}/usr/\"" \
+ -- "systemd/${PN}@.service" || die
+ sed -i \
+ -e "s\":/usr/sbin:/sbin'\":${EPREFIX}/usr/sbin:${EPREFIX}/sbin:/usr/sbin:/sbin'\"" \
+ -- "sbin/${PN}" || die
+ sed -i \
+ -e "s\"'/lib/rc/bin:\":'${EPREFIX}/lib/rc/bin:/lib/rc/bin:\"" \
+ -- "sbin/openrc-wrapper" || die
+ else sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- bin/* sbin/* || die
+ fi
+ epatch_user
+ eautoreconf
+}
+
+src_configure() {
+ local order=
+ use unionfs-fuse && order=unionfs-fuse
+ use aufs && order=aufs
+ use overlayfs && order=overlayfs
+ local myeconfargs=(
+ --with-zsh-completion
+ "$(use_enable bundled-openrc-wrapper openrc-wrapper)"
+ "$(systemd_with_unitdir)"
+ ${order:+"--with-first-order=${order}"}
+ )
+ autotools-utils_src_configure
+}
+
+linux_config_missing() {
+ ! linux_config_exists || ! linux_chkconfig_present "${1}"
+}
+
+pkg_postinst() {
+ readme.gentoo_pkg_postinst
+ local fs=overlayfs
+ use unionfs-fuse && fs=unionfs-fuse
+ use aufs && fs=aufs
+ use overlayfs && fs=overlayfs
+ if linux_config_missing 'SQUASHFS'
+ then ewarn "To use ${PN} activate squashfs in your kernel"
+ fi
+ case ${fs} in
+ overlayfs)
+ if linux_config_missing 'OVERLAYFS_FS'
+ then ewarn "To use ${PN} activate overlayfs in your kernel."
+ ewarn "Unless you use a patched kernel, apply e.g. top patches from some head of"
+ ewarn "http://git.kernel.org/?p=linux/kernel/git/mszeredi/vfs.git;a=summary"
+ fi;;
+ aufs)
+ if ! has_version sys-fs/aufs3 && ! has_version sys-fs/aufs2 && linux_config_missing 'AUFS_FS'
+ then ewarn "To use ${PN} activate aufs in your kernel. Use e.g. sys-fs/aufs*"
+ fi;;
+ esac
+ optfeature "improved output" 'sys-fs/squashfs-tools[progress-redirect]'
+ optfeature "status bar support" 'app-shells/runtitle'
+}
diff --git a/sys-fs/squashfs-tools/Manifest b/sys-fs/squashfs-tools/Manifest
new file mode 100644
index 00000000..3b184315
--- /dev/null
+++ b/sys-fs/squashfs-tools/Manifest
@@ -0,0 +1 @@
+DIST squashfs4.3.tar.gz 182550 SHA256 0d605512437b1eb800b4736791559295ee5f60177e102e4d4ccd0ee241a5f3f6 SHA512 854ed7acc99920f24ecf11e0da807e5a2a162eeda55db971aba63a03f0da2c13b20ec0564a906c4b0e415bd8258b273a10208c7abc0704f2ceea773aa6148a79 WHIRLPOOL c819f416b34cc46a232b8bc385017774603f81b4a865e6b97208004c183ebad5de7d0f726be444f8cb4e1d450abed9340dab730aec0762407f034e99b39bdc06
diff --git a/sys-fs/squashfs-tools/files/squashfs-tools-4.3-quiet.patch b/sys-fs/squashfs-tools/files/squashfs-tools-4.3-quiet.patch
new file mode 100644
index 00000000..c4fe57de
--- /dev/null
+++ b/sys-fs/squashfs-tools/files/squashfs-tools-4.3-quiet.patch
@@ -0,0 +1,56 @@
+--- 1/squashfs-tools/mksquashfs.c
++++ 1/squashfs-tools/mksquashfs.c
+@@ -78,6 +78,7 @@
+ #include "process_fragments.h"
+
+ int delete = FALSE;
++int quiet = FALSE;
+ int fd;
+ struct squashfs_super_block sBlk;
+
+@@ -4169,7 +4170,7 @@
+
+ main_thread = pthread_self();
+
+- printf("Parallel mksquashfs: Using %d processor%s\n", processors,
++ quiet || printf("Parallel mksquashfs: Using %d processor%s\n", processors,
+ processors == 1 ? "" : "s");
+
+ /* Restore the signal mask for the main thread */
+@@ -4687,6 +4688,9 @@
+ total_bytes += total_inode_bytes + total_directory_bytes +
+ sizeof(struct squashfs_super_block) + total_xattr_bytes;
+
++ if(quiet)
++ return;
++
+ printf("\n%sSquashfs %d.%d filesystem, %s compressed, data block size"
+ " %d\n", exportable ? "Exportable " : "", SQUASHFS_MAJOR,
+ SQUASHFS_MINOR, comp->name, block_size);
+@@ -5259,6 +5263,9 @@
+ else if(strcmp(argv[i], "-noappend") == 0)
+ delete = TRUE;
+
++ else if(strcmp(argv[i], "-quiet") == 0)
++ quiet = TRUE;
++
+ else if(strcmp(argv[i], "-keep-as-directory") == 0)
+ keep_as_directory = TRUE;
+
+@@ -5351,6 +5358,7 @@
+ "using recovery file <name>\n");
+ ERROR("-no-recovery\t\tdon't generate a recovery "
+ "file\n");
++ ERROR("-quiet\t\t\tno verbose output\n");
+ ERROR("-info\t\t\tprint files written to filesystem\n");
+ ERROR("-no-progress\t\tdon't display the progress "
+ "bar\n");
+@@ -5541,7 +5549,7 @@
+ void *comp_data = compressor_dump_options(comp, block_size,
+ &size);
+
+- printf("Creating %d.%d filesystem on %s, block size %d.\n",
++ quiet || printf("Creating %d.%d filesystem on %s, block size %d.\n",
+ SQUASHFS_MAJOR, SQUASHFS_MINOR, argv[source + 1], block_size);
+
+ /*
diff --git a/sys-fs/squashfs-tools/metadata.xml b/sys-fs/squashfs-tools/metadata.xml
new file mode 100644
index 00000000..1e576aae
--- /dev/null
+++ b/sys-fs/squashfs-tools/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>livecd</herd>
+ <use>
+ <flag name="xz">Enable support for XZ ("LZMA2") compression using <pkg>app-arch/xz-utils</pkg></flag>
+ <flag name="lz4">Enable support for LZ4 compression using <pkg>app-arch/lz4</pkg></flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-fs/squashfs-tools/squashfs-tools-4.3.ebuild b/sys-fs/squashfs-tools/squashfs-tools-4.3.ebuild
new file mode 100644
index 00000000..7703390b
--- /dev/null
+++ b/sys-fs/squashfs-tools/squashfs-tools-4.3.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Tool for creating compressed filesystem type squashfs. Patched to support -quiet"
+HOMEPAGE="http://squashfs.sourceforge.net"
+SRC_URI="mirror://sourceforge/squashfs/squashfs${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~mips ~x86"
+IUSE="+xz lzma lz4 lzo xattr"
+
+RDEPEND="
+ sys-libs/zlib
+ !xz? ( !lzo? ( sys-libs/zlib ) )
+ lz4? ( app-arch/lz4 )
+ lzma? ( app-arch/xz-utils )
+ lzo? ( dev-libs/lzo )
+ xattr? ( sys-apps/attr )
+ xz? ( app-arch/xz-utils )
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/squashfs${PV}/${PN}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-quiet.patch"
+ epatch_user
+}
+
+src_configure() {
+ # set up make command line variables in EMAKE_SQUASHFS_CONF
+ EMAKE_SQUASHFS_CONF=(
+ $(usex lzma LZMA_XZ_SUPPORT=1 LZMA_XS_SUPPORT=0)
+ $(usex lzo LZO_SUPPORT=1 LZO_SUPPORT=0)
+ $(usex lz4 LZ4_SUPPORT=1 LZ4_SUPPORT=0)
+ $(usex xattr XATTR_SUPPORT=1 XATTR_SUPPORT=0)
+ $(usex xz XZ_SUPPORT=1 XZ_SUPPORT=0)
+ )
+ filter-flags -fno-common
+
+ tc-export CC
+}
+
+src_compile() {
+ emake ${EMAKE_SQUASHFS_CONF[@]}
+}
+
+src_install() {
+ dobin mksquashfs unsquashfs
+ dodoc ../README
+}
+
+pkg_postinst() {
+ ewarn "This version of mksquashfs requires a 2.6.29 kernel or better"
+ use xz &&
+ ewarn "XZ support requires a 2.6.38 kernel or better"
+}
diff --git a/sys-fs/squashmount/Manifest b/sys-fs/squashmount/Manifest
new file mode 100644
index 00000000..f946a86a
--- /dev/null
+++ b/sys-fs/squashmount/Manifest
@@ -0,0 +1 @@
+DIST squashmount-12.2.0.tar.gz 60947 SHA256 1c0bd682cecd1dafb44e2191e9c5844e9a731f91a8d65eca014a563feecbff01 SHA512 50b6356f7de8992198b950df1d86333e80fed6493bd683eca51be3beff577406f9914182ff3b5adc8956ed1337a5e2518a171e80075f60e7c1b7d1c05f4c19fc WHIRLPOOL 9afa5f3d02b71c84e7e8d7b56911a2c052f7059289ed0b344087917dac21ba07a0b65860e99fc3f682b6cec2ef1c36e4df3e1395c3b72c803df9d54007d0e348
diff --git a/sys-fs/squashmount/metadata.xml b/sys-fs/squashmount/metadata.xml
new file mode 100644
index 00000000..5c80606b
--- /dev/null
+++ b/sys-fs/squashmount/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/squashmount</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-fs/squashmount/squashmount-12.2.0.ebuild b/sys-fs/squashmount/squashmount-12.2.0.ebuild
new file mode 100644
index 00000000..21864cd5
--- /dev/null
+++ b/sys-fs/squashmount/squashmount-12.2.0.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils readme.gentoo systemd
+
+DESCRIPTION="Keep directories compressed with squashfs. Useful for portage tree, texmf-dist"
+HOMEPAGE="http://forums.gentoo.org/viewtopic-t-465367.html
+https://github.com/vaeth/squashmount/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RDEPEND="!<sys-apps/openrc-0.13
+ >=app-shells/runtitle-2.3
+ >=dev-lang/perl-5.12
+ || ( dev-perl/File-Which sys-apps/which )
+ sys-fs/squashfs-tools
+ !<sys-fs/unionfs-fuse-0.25"
+# || ( >=dev-lang/perl-5.10.1 >=virtual/perl-File-Path-2.6.5 )
+# || ( >=dev-lang/perl-5.4.5 virtual/perl-File-Spec )
+# || ( >=dev-lang/perl-5.10.1 >=virtual/perl-File-Temp-0.19 )
+# || ( >=dev-lang/perl-5.6.1 >=virtual/perl-Getopt-Long-2.24 )
+# || ( >=dev-lang/perl-5.9.3 virtual/perl-IO-Compress )
+DEPEND=""
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="Please adapt /etc/squashmount.pl as well as
+/etc/systemd/system/squashmount.service.d/timeout.conf to your needs.
+
+Configure the mount point 'gentoo' only if you use sync-type = squashdelta.
+
+For improved output use squasfs-tools from the mv overlay.
+
+It is recommended to put into your zshrc the line:
+alias squashmount='noglob squashmount'"
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env perl$"#!'"${EPREFIX}/usr/bin/perl"'"' \
+ -- bin/* || die
+ epatch_user
+}
+
+src_install() {
+ dobin bin/*
+ dodoc README ChangeLog compress.txt etc/squashmount.pl
+ doinitd openrc/init.d/*
+ systemd_dounit systemd/system/*
+ insinto /etc
+ doins -r etc/*
+ insinto /usr/lib/tmpfiles.d
+ doins tmpfiles.d/*
+ insinto /usr/share/zsh/site-functions
+ doins zsh/*
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ optfeature "status bar support" 'app-shells/runtitle'
+ optfeature "improved compatibility and security" 'dev-perl/File-Which'
+ optfeature "colored output" '>=dev-lang/perl-5.14' 'virtual/perl-Term-ANSIColor'
+ case " ${REPLACING_VERSIONS}" in
+ ' '[0-7].*|' '8.[0-6]*|' '8.7.[0-4]*)
+ FORCE_PRINT_ELOG="true";;
+ esac
+ readme.gentoo_pkg_postinst
+}
diff --git a/sys-kernel/kernel/Manifest b/sys-kernel/kernel/Manifest
new file mode 100644
index 00000000..017687a4
--- /dev/null
+++ b/sys-kernel/kernel/Manifest
@@ -0,0 +1 @@
+DIST kernel-1.39.tar.gz 7210 SHA256 e8e97235120ce0b2b9b75f7217a2e4d976e00dde342d46b1edaf82749c47b93f SHA512 27c89c8a751a0523232bcaba71459e4b045f690da69164d6f64acdccb483bc5d36da0f17288dbf7c09e59bb0d67311ad22af6455b15007a042b7712e2bccc7ee WHIRLPOOL 83f1740fef7166e82322c2a4f972e03f64a2ae347d26fa6839c5abb744ecb246a4bb84cab5fe5fdcd78ecf98edaf1f61ce06309c95d82fc59151f3d3d3c5e13b
diff --git a/sys-kernel/kernel/kernel-1.39.ebuild b/sys-kernel/kernel/kernel-1.39.ebuild
new file mode 100644
index 00000000..528ac75e
--- /dev/null
+++ b/sys-kernel/kernel/kernel-1.39.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+RESTRICT="mirror"
+inherit eutils
+
+DESCRIPTION="A POSIX shell script to compile the kernel with user permissions"
+HOMEPAGE="https://github.com/vaeth/kernel/"
+SRC_URI="https://github.com/vaeth/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="app-admin/sudo
+ app-admin/sudox
+ app-shells/push
+ >=app-shells/runtitle-2.3
+ !<dev-util/ccache-3.2"
+DEPEND=""
+
+src_prepare() {
+ use prefix || sed -i \
+ -e '1s"^#!/usr/bin/env sh$"#!'"${EPREFIX}/bin/sh"'"' \
+ -- "${PN}" || die
+ epatch_user
+}
+
+src_install() {
+ dobin "${PN}"
+ insinto /usr/share/zsh/site-functions
+ doins _*
+}
+
+pkg_postinst() {
+ optfeature "faster execution" 'app-portage/eix'
+ optfeature "status bar support" 'app-shells/runtitle'
+}
diff --git a/sys-kernel/kernel/metadata.xml b/sys-kernel/kernel/metadata.xml
new file mode 100644
index 00000000..1443c144
--- /dev/null
+++ b/sys-kernel/kernel/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <bugs-to>mailto:martin@mvath.de</bugs-to>
+ <remote-id type="github">vaeth/kernel</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/www-plugins/classic-theme-restorer/Manifest b/www-plugins/classic-theme-restorer/Manifest
new file mode 100644
index 00000000..47842ca5
--- /dev/null
+++ b/www-plugins/classic-theme-restorer/Manifest
@@ -0,0 +1 @@
+DIST classic_theme_restorer-1.4.0-fx.xpi 621728 SHA256 8c0c84ebe0352c8094003a4c341d1457a41918590e17620cb17cfaa841372870 SHA512 8a3758572f8ed612260856f018e8a34a96a51bfc3a2007c8c3d8e6a2c988f6880782354dcc8d2163295d690d938922143af3e8eba0fd1b400d9f9e5148033d02 WHIRLPOOL e0e93a4aeb1e67a214d9293eac148ce79aca7471233a7a947de15215c64a7811eb600dc2dd981cf8165d73aa78a88af42fe12888b7d07906ebe74ffbc3f99cc8
diff --git a/www-plugins/classic-theme-restorer/classic-theme-restorer-1.4.0.ebuild b/www-plugins/classic-theme-restorer/classic-theme-restorer-1.4.0.ebuild
new file mode 100644
index 00000000..5d803dec
--- /dev/null
+++ b/www-plugins/classic-theme-restorer/classic-theme-restorer-1.4.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+MV_MOZ_MOZILLAS="firefox"
+inherit mv_mozextension
+RESTRICT="mirror"
+
+mPN="${PN//-/_}-${PV}"
+DESCRIPTION="Firefox plugin: restore partially the functionality of non-broken firefox versions"
+HOMEPAGE="https://addons.mozilla.org/de/firefox/addon/classicthemerestorer/"
+SRC_URI="https://addons.cdn.mozilla.net/user-media/addons/472577/${mPN}-fx.xpi"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/www-plugins/classic-theme-restorer/metadata.xml b/www-plugins/classic-theme-restorer/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/classic-theme-restorer/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/duckduckgo/Manifest b/www-plugins/duckduckgo/Manifest
new file mode 100644
index 00000000..0e2cb5ec
--- /dev/null
+++ b/www-plugins/duckduckgo/Manifest
@@ -0,0 +1 @@
+DIST duckduckgo_plus-0.4.6-fx.xpi 139159 SHA256 8f87ac100056396a35f07fbab422d2a09118745d50abb2c6859fb1a2dc9b741f SHA512 254dbb938f52b192d78ae6078239811e3a27dff5dd513c3670a483c4da538d7ea8180e29204604a369652111c56e89eda9682a61f1071ed5b8b701949de2acee WHIRLPOOL 159f86fae9d42afad0fa4d5c8a03acffabb6f0441863d3f10378176e3e24bf208c7867e05fcc312c2e7852d350c32bc39669d46410a0f5186b6ff9d300fe98f3
diff --git a/www-plugins/duckduckgo/duckduckgo-0.4.6-r1.ebuild b/www-plugins/duckduckgo/duckduckgo-0.4.6-r1.ebuild
new file mode 100644
index 00000000..ae803969
--- /dev/null
+++ b/www-plugins/duckduckgo/duckduckgo-0.4.6-r1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+MV_MOZ_MOZILLAS="firefox"
+inherit mv_mozextension
+RESTRICT="mirror"
+
+mPN="${PN}_plus-${PV}"
+DESCRIPTION="Firefox plugin: enable duckduckgo search engine"
+HOMEPAGE="http://addons.mozilla.org/en-US/firefox/addon/duckduckgo-for-firefox/"
+SRC_URI="https://addons.cdn.mozilla.net/user-media/addons/385621/${mPN}-fx.xpi"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/www-plugins/duckduckgo/metadata.xml b/www-plugins/duckduckgo/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/duckduckgo/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/epubreader/Manifest b/www-plugins/epubreader/Manifest
new file mode 100644
index 00000000..820c1895
--- /dev/null
+++ b/www-plugins/epubreader/Manifest
@@ -0,0 +1 @@
+DIST epubreader-1.5.0.6-sm+fx.xpi 251595 SHA256 d4139d19124f5644967d9f68b5b13e1da097ad8e44c58a06e49dfce502ab6b44 SHA512 df8d172808bdbdf80d4b860f6025ae64cc915f1dc9be37a5284c4cc3235b2e1a43424252b1d8084ef39dbdcb10f25e4e0275a3b840cf8edda2d77868decafcd4 WHIRLPOOL f90c2a62579500eadda56d61c0bb58017dd7467fe2a86a7c0f1d2b578a0233d571c7f9a19627842f810bbb9830462369fbd07d8f8638410c7b9cf14d028a4358
diff --git a/www-plugins/epubreader/epubreader-1.5.0.6-r1.ebuild b/www-plugins/epubreader/epubreader-1.5.0.6-r1.ebuild
new file mode 100644
index 00000000..bd6cffa2
--- /dev/null
+++ b/www-plugins/epubreader/epubreader-1.5.0.6-r1.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit mv_mozextension
+RESTRICT="mirror"
+
+DESCRIPTION="Firefox plugin for ebook (.epub) files"
+HOMEPAGE="http://addons.mozilla.org/de/firefox/addon/epubreader/"
+SRC_URI="https://addons.cdn.mozilla.net/user-media/addons/45281/${P}-sm+fx.xpi"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/www-plugins/epubreader/metadata.xml b/www-plugins/epubreader/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/epubreader/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/form-history-control/Manifest b/www-plugins/form-history-control/Manifest
new file mode 100644
index 00000000..16d578a6
--- /dev/null
+++ b/www-plugins/form-history-control/Manifest
@@ -0,0 +1 @@
+DIST form_history_control-1.4.0.4-sm+fx.xpi 500661 SHA256 ae421ade4005e5b12aa7c53cdc9f61cb53f61dfe3dd0e21cb64a1dd3a6c0d9c5 SHA512 ce9efa4d6dc9d3c15cf855191caf8303c72b3ba7c1e68c51c7d5105c15108d80f1316539ab1ce032b9f97d5af3d0bad887a9492f005de95e28342b48e3142284 WHIRLPOOL 7c199e64c688d0b94f9f21af24b55126ef38ec6ed079b8962aa9bf3c84611ba3f120b656fd86b4c46f13dab243bb5ac9caefe555f3feb1f37f1f1727b4cb2b1a
diff --git a/www-plugins/form-history-control/form-history-control-1.4.0.4-r1.ebuild b/www-plugins/form-history-control/form-history-control-1.4.0.4-r1.ebuild
new file mode 100644
index 00000000..bec8881a
--- /dev/null
+++ b/www-plugins/form-history-control/form-history-control-1.4.0.4-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit mv_mozextension
+RESTRICT="mirror"
+
+MY_P="${P/-/_}"
+MY_P="${MY_P/-/_}"
+NAME="${MY_P}-sm+fx.xpi"
+DESCRIPTION="Edit the saved history of forms in mozilla"
+HOMEPAGE="http://www.formhistory.blogspot.com/"
+SRC_URI="http://addons.cdn.mozilla.net/user-media/addons/12021/${NAME}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/www-plugins/form-history-control/metadata.xml b/www-plugins/form-history-control/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/form-history-control/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/locale-switcher/Manifest b/www-plugins/locale-switcher/Manifest
new file mode 100644
index 00000000..a79ed2f1
--- /dev/null
+++ b/www-plugins/locale-switcher/Manifest
@@ -0,0 +1 @@
+DIST locale_switcher-3-fx.xpi 6853 SHA256 b48be1cc5570c646e233a27300988f1dc6e7c978cdee0bab9e5cce4777d14161 SHA512 c4b657b5f9ee5007d7f5a89fdf451a5eb613180d2833c38f21a230d823b84098497dd06c0c1dd8e45b59e437250ffba32946a40c35051527268605993b243786 WHIRLPOOL 011d5016fd82fb73bf889a14c93c412c9b698bdb492c1a330161ab2a8899dd4fc6c4d0b21bfe3c5029cbfe7efa0d34610def4d15838ed72727df25bd9a97a54e
diff --git a/www-plugins/locale-switcher/locale-switcher-3-r1.ebuild b/www-plugins/locale-switcher/locale-switcher-3-r1.ebuild
new file mode 100644
index 00000000..25e85e97
--- /dev/null
+++ b/www-plugins/locale-switcher/locale-switcher-3-r1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit mv_mozextension
+RESTRICT="mirror"
+
+MY_P="${P/-/_}"
+NAME="${MY_P}-fx.xpi"
+DESCRIPTION="Firefox plugin: button to switch GUI locale"
+HOMEPAGE="http://addons.mozilla.org/firefox/addon/locale-switcher/"
+SRC_URI="https://addons.cdn.mozilla.net/user-media/addons/356/${NAME}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/www-plugins/locale-switcher/metadata.xml b/www-plugins/locale-switcher/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/locale-switcher/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/noscript/Manifest b/www-plugins/noscript/Manifest
new file mode 100644
index 00000000..92a78a5c
--- /dev/null
+++ b/www-plugins/noscript/Manifest
@@ -0,0 +1 @@
+DIST noscript-2.6.9.37.xpi 562140 SHA256 36ca0cbffef01ff480d391bd1f6b6d627d64147650523a6e7915a5a0d555dd0f SHA512 6983b9204838cdbefce5c301bb636ab7011618ab1cc3e42c36776ebeb290a24ee16ff21324006f9c504cea2a8f551547cf2ef6711799ecef6319a274319e2635 WHIRLPOOL 579607d5c94d973db22a8b792d3459006742aee7806b8619004dff717ccb3dce4742480dafeda763a3996e65fb8ea3dbf6f789fcceacac3b0debb3ab21da3f6c
diff --git a/www-plugins/noscript/metadata.xml b/www-plugins/noscript/metadata.xml
new file mode 100644
index 00000000..935424a8
--- /dev/null
+++ b/www-plugins/noscript/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+ <longdescription lang="en">
+ Noscript is a plugin for firefox that handles javascript in webpages.
+ Giving you full control over their ability to run.
+ </longdescription>
+</pkgmetadata>
diff --git a/www-plugins/noscript/noscript-2.6.9.37.ebuild b/www-plugins/noscript/noscript-2.6.9.37.ebuild
new file mode 100644
index 00000000..d51ee087
--- /dev/null
+++ b/www-plugins/noscript/noscript-2.6.9.37.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit mv_mozextension
+RESTRICT="mirror"
+
+DESCRIPTION="Mozilla plugin: Restrict active contents like java/javascript/flash"
+HOMEPAGE="http://noscript.net/"
+SRC_URI="https://secure.informaction.com/download/releases/${P}.xpi
+https://addons.cdn.mozilla.net/user-media/addons/722/noscript_security_suite-${PV}-sm+fx+fn.xpi -> ${P}.xpi"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+# NOTES:
+# can also be used for Flock, MidBrowser, eMusic, Toolkit, Songbird, Fennec
diff --git a/www-plugins/requestpolicy/Manifest b/www-plugins/requestpolicy/Manifest
new file mode 100644
index 00000000..5be4c531
--- /dev/null
+++ b/www-plugins/requestpolicy/Manifest
@@ -0,0 +1 @@
+DIST requestpolicy-0.5.28-sm+fx.xpi 165630 SHA256 f23b90aa6795ce6a9343a29d79b93c2fb6fa83b5c7b1e80ce829ee8446962bc9 SHA512 27cdb397eb16ba8ca1ae841020893e11b1f8ac857a950f5528dc914c47c417a3c77c3779f82bcdbc0f45eff02b9b573d8f705826ac4ffe4d1c10c930152c1e37 WHIRLPOOL 387fe8b42c0a4381df500c903ba59404b981a4b15f6d9429f0613c09d5d6c1e61c0e227c2e26b39de9984f9ac28870ca60c488ea929fc966f70186f3d33717fc
diff --git a/www-plugins/requestpolicy/metadata.xml b/www-plugins/requestpolicy/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/requestpolicy/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/requestpolicy/requestpolicy-0.5.28-r1.ebuild b/www-plugins/requestpolicy/requestpolicy-0.5.28-r1.ebuild
new file mode 100644
index 00000000..63d4ca17
--- /dev/null
+++ b/www-plugins/requestpolicy/requestpolicy-0.5.28-r1.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit mv_mozextension
+RESTRICT="mirror"
+
+DESCRIPTION="Mozilla plugin: Increases privacy and security by giving you control over cross-site requests"
+HOMEPAGE="https://www.requestpolicy.com/"
+SRC_URI="https://addons.cdn.mozilla.net/user-media/addons/9727/${P}-sm+fx.xpi"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/www-plugins/shumway/Manifest b/www-plugins/shumway/Manifest
new file mode 100644
index 00000000..de738827
--- /dev/null
+++ b/www-plugins/shumway/Manifest
@@ -0,0 +1 @@
+DIST shumway-0.11.394.xpi 668441 SHA256 0943f4bc4cbd4391c11aa8141fcef02005d16b6a8d4beed559a2db320993d6a7 SHA512 1cb21d4c8fe319204a3764cce034d31f58cc0cac7e53fd8a9ed660787eab59a74626bc41c6d3f94c154f3305f425b384a3f648b9a8d701b82dc440541f436463 WHIRLPOOL e8b077c721fe9aab9a11e930d99834510fb7955a79834d4b100a4ab80ae9179e0a706d690d39e12671bf552113fd7abd39b9e76eed27e395f5c2c563c42ba38c
diff --git a/www-plugins/shumway/metadata.xml b/www-plugins/shumway/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/shumway/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/shumway/shumway-0.11.394.ebuild b/www-plugins/shumway/shumway-0.11.394.ebuild
new file mode 100644
index 00000000..211ca313
--- /dev/null
+++ b/www-plugins/shumway/shumway-0.11.394.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGIT_REPO_URI="git://github.com/mozilla/shumway.git"
+inherit mv_mozextension
+#inherit git-r3
+
+DESCRIPTION="Mozilla plugin: Flashplayer emulation with javascript and html5"
+HOMEPAGE="http://mozilla.github.io/shumway/"
+SRC_URI="http://mozilla.github.io/shumway/extension/firefox/${PN}.xpi -> ${P}.xpi"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/www-plugins/stylish/Manifest b/www-plugins/stylish/Manifest
new file mode 100644
index 00000000..09a7b394
--- /dev/null
+++ b/www-plugins/stylish/Manifest
@@ -0,0 +1 @@
+DIST stylish-2.0.2-fx+an+sm+tb.xpi 220522 SHA256 a75a6ecd0c70b45d869839167af5084d5498b8e6db461890732062d853f10616 SHA512 bc231d429b92a80c2000db10d01327bdd90d20e5115781948875e197dfe04be1ff22b89fb06d7d3777f919a3aea580cdc3753419995cd8d978bce64f13241fe3 WHIRLPOOL eb4c056942f43bf04ca703f7e8bde844215193c8865f85593f3854a0dfa04af67b7d479c1d3b536f7ce49a0cffec62c13798c575b7779ffedf3a94cd585ea269
diff --git a/www-plugins/stylish/metadata.xml b/www-plugins/stylish/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/stylish/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/stylish/stylish-2.0.2-r1.ebuild b/www-plugins/stylish/stylish-2.0.2-r1.ebuild
new file mode 100644
index 00000000..94093c03
--- /dev/null
+++ b/www-plugins/stylish/stylish-2.0.2-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit mv_mozextension readme.gentoo
+RESTRICT="mirror"
+
+DESCRIPTION="Mozilla plugin to modify style of certain web pages (e.g. Gentoo forums)"
+HOMEPAGE="https://addons.mozilla.org/firefox/addon/stylish/"
+SRC_URI="http://addons.cdn.mozilla.net/user-media/addons/2108/${P}-fx+an+sm+tb.xpi"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="You will probably want to setup the \"Darker forum\" style.
+The old version could be found at
+ http://jesgue.homelinux.org/other-files/dark-gentoo-forums.css
+but meanwhile it is easier to surf with javascript activated to
+ http://userstyles.org/users/8172
+Note that you have to temporarily disable noscript for that site."
+
+src_install() {
+ mv_mozextension_src_install
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_pkg_postinst
+}
diff --git a/www-plugins/xclear/Manifest b/www-plugins/xclear/Manifest
new file mode 100644
index 00000000..2d18d296
--- /dev/null
+++ b/www-plugins/xclear/Manifest
@@ -0,0 +1 @@
+DIST xclear-1.8-sm+fx.xpi 8321 SHA256 2abd35ab7bdb4df7d97e70ddcd406d562984a150074b16296304f9a13ae43abd SHA512 3b1c5b84e3709a2cd670a54c2f268acaf188df57c2f17e76d7e712aedb8784145783a5d28f8e40ca355504585915c22e1d3eb73d49ab6e380b7cc49a8c01a1e8 WHIRLPOOL 4781ca1c9f037daeae2780368fc660b7fe38554d2dc8dc650f71972cc976d3844036544a76ac00683755d9babcc6a12efda4b89aa793759ded59f05a6289ba11
diff --git a/www-plugins/xclear/metadata.xml b/www-plugins/xclear/metadata.xml
new file mode 100644
index 00000000..73a6d343
--- /dev/null
+++ b/www-plugins/xclear/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/www-plugins/xclear/xclear-1.8-r2.ebuild b/www-plugins/xclear/xclear-1.8-r2.ebuild
new file mode 100644
index 00000000..4aca66a8
--- /dev/null
+++ b/www-plugins/xclear/xclear-1.8-r2.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit mv_mozextension
+RESTRICT="mirror"
+
+DESCRIPTION="Firefox plugin: button to clear URL"
+HOMEPAGE="http://addons.mozilla.org/firefox/addon/xclear/"
+SRC_URI="https://addons.cdn.mozilla.net/user-media/addons/13078/${P}-sm+fx.xpi"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
new file mode 100644
index 00000000..d26f875f
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/Manifest
@@ -0,0 +1,3 @@
+DIST NVIDIA-FreeBSD-x86-173.14.39.tar.gz 20038266 SHA256 63a922ce4c5b676b4cb1ace98094dace4cc5408f2553e183df7b2127777a238b SHA512 96982fe7e0751c52fbef534193de09d187b99c1984c05e791223eb804719d8b3ba72efd983f227661ded4b71569bdbb914f1f629ab73a8bc9b8172832ccf3ec6 WHIRLPOOL 21f5906f42adf0064c7a7f81ac8e323de488e6d36356ee42c31a15c31ebb64335d5e2cff0ff022d41de480f9e0a57b3b96387f17151c7b59eceba2c61a7a102b
+DIST NVIDIA-Linux-x86-173.14.39-pkg0.run 15134997 SHA256 a09935f37121ed3db8ae3da63a0d8e9d4348a19c859811c9fe44d6ce8e3eab23 SHA512 e24e15ccec725d3cbca502c2b77061776a81ef92917a950adec4ff6bdc34f10903aa654433177ea74be0dade4af81c5380d5710d375a5ea445940d06154bde93 WHIRLPOOL fce3d8e4f6cdf698f5a057514b6fe220bb1011025bdce5bd4cf0e424fb4d306d38251b6726bda03f290ea8137d5a95ed418cf8751722879f9042462abd9181b6
+DIST NVIDIA-Linux-x86_64-173.14.39-pkg2.run 21100833 SHA256 15a953666d5681ba54c97498b578ffd286a1dc96d605f3b02110f3f99813100e SHA512 a65cd496e6ed57f771c3d99f37f616a1242d97844f6faef7a807825ad899c0e536a99fde397020839f0857883b934032f9491024f3047a6b06d3eea1f5d77713 WHIRLPOOL dc5f243b7d1de7e2d1b7f005e018a2940d63335b11a7c83c234b348b7a1839e9131169d2ea928bd8c2f549a4535149b03e16e6c94d59dfa745f7f904ff790a45
diff --git a/x11-drivers/nvidia-drivers/files/173.14.39-grsecurity.patch b/x11-drivers/nvidia-drivers/files/173.14.39-grsecurity.patch
new file mode 100644
index 00000000..7c9e60d3
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/173.14.39-grsecurity.patch
@@ -0,0 +1,47 @@
+--- 1/usr/src/nv/nv-linux.h
++++ 1/usr/src/nv/nv-linux.h
+@@ -668,10 +668,10 @@
+ 0, 0, NULL, NULL); \
+ }
+ #elif (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 5)
+-#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type) \
++#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type, flags) \
+ { \
+ kmem_cache = kmem_cache_create(name, sizeof(type), \
+- 0, 0, NULL); \
++ 0, flags, NULL); \
+ }
+ #else
+ #error "NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT value unrecognized!"
+--- 1/usr/src/nv/nv.c
++++ 1/usr/src/nv/nv.c
+@@ -389,7 +389,11 @@
+
+ /* character driver entry points */
+
++#ifndef __no_const
+ static struct file_operations nv_fops = {
++#else
++static file_operations_no_const nv_fops = {
++#endif
+ .owner = THIS_MODULE,
+ .poll = nv_kern_poll,
+ #if defined(NV_FILE_OPERATIONS_HAS_IOCTL)
+@@ -1377,7 +1381,7 @@
+ NV_SPIN_LOCK_INIT(&km_lock);
+ #endif
+
+- NV_KMEM_CACHE_CREATE(nv_stack_t_cache, "nv_stack_t", nv_stack_t);
++ NV_KMEM_CACHE_CREATE(nv_stack_t_cache, "nv_stack_t", nv_stack_t, SLAB_USERCOPY);
+ if (nv_stack_t_cache == NULL)
+ {
+ nv_printf(NV_DBG_ERRORS, "NVRM: stack cache allocation failed!\n");
+@@ -1499,7 +1503,7 @@
+ }
+ #endif
+
+- NV_KMEM_CACHE_CREATE(nv_pte_t_cache, "nv_pte_t", nv_pte_t);
++ NV_KMEM_CACHE_CREATE(nv_pte_t_cache, "nv_pte_t", nv_pte_t, 0);
+ if (nv_pte_t_cache == NULL)
+ {
+ rc = -ENOMEM;
diff --git a/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.13.patch b/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.13.patch
new file mode 100644
index 00000000..a11b3cb2
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.13.patch
@@ -0,0 +1,12 @@
+--- 1/usr/src/nv/nvacpi.c
++++ 1/usr/src/nv/nvacpi.c
+@@ -259,7 +259,9 @@ static int nv_acpi_remove(struct acpi_device *device, int type)
+
+ if (pNvAcpiObject->notify_handler_installed)
+ {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
+ NV_ACPI_OS_WAIT_EVENTS_COMPLETE();
++#endif
+
+ // remove event notifier
+ status = acpi_remove_notify_handler(device->handle, ACPI_DEVICE_NOTIFY, nv_acpi_event);
diff --git a/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.14.patch b/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.14.patch
new file mode 100644
index 00000000..47bb70bc
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.14.patch
@@ -0,0 +1,12 @@
+--- a/usr/src/nv/nv-linux.h
++++ b/usr/src/nv/nv-linux.h
+@@ -206,8 +206,7 @@ extern int nv_pat_mode;
+ #endif
+
+ #if defined(CONFIG_ACPI)
+-#include <acpi/acpi.h>
+-#include <acpi/acpi_drivers.h>
++#include <linux/acpi.h>
+ #if defined(NV_ACPI_DEVICE_OPS_HAS_MATCH) || defined(ACPI_VIDEO_HID)
+ #define NV_LINUX_ACPI_EVENTS_SUPPORTED 1
+ #endif
diff --git a/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.17.patch b/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.17.patch
new file mode 100644
index 00000000..7b27d646
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/173.14.39-kernel-3.17.patch
@@ -0,0 +1,56 @@
+--- 1/work/usr/src/nv/conftest.sh
++++ 1/work/usr/src/nv/conftest.sh
+@@ -651,7 +651,7 @@
+ # a match() member.
+ #
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi_bus.h>
++ #include <linux/acpi.h>
+ int conftest_acpi_device_ops(void) {
+ return offsetof(struct acpi_device_ops, match);
+ }" > conftest$$.c
+@@ -893,7 +893,7 @@
+ #
+
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi_bus.h>
++ #include <linux/acpi.h>
+ acpi_status acpi_evaluate_integer(acpi_handle h, acpi_string s,
+ struct acpi_object_list *l, unsigned long long *d) {
+ return AE_OK;
+@@ -910,7 +910,7 @@
+ fi
+
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi_bus.h>
++ #include <linux/acpi.h>
+ acpi_status acpi_evaluate_integer(acpi_handle h, acpi_string s,
+ struct acpi_object_list *l, unsigned long *d) {
+ return AE_OK;
+@@ -958,7 +958,7 @@
+ fi
+
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi.h>
++ #include <linux/acpi.h>
+ void conftest_acpi_walk_namespace(void) {
+ acpi_walk_namespace(0, NULL, 0, NULL, NULL, NULL, NULL);
+ }" > conftest$$.c
+@@ -974,7 +974,7 @@
+ fi
+
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi.h>
++ #include <linux/acpi.h>
+ void conftest_acpi_walk_namespace(void) {
+ acpi_walk_namespace(0, NULL, 0, NULL, NULL, NULL);
+ }" > conftest$$.c
+@@ -1043,7 +1043,7 @@
+ echo "#define NV_ACPI_OS_WAIT_EVENTS_COMPLETE_ARGUMENT_COUNT 0" >> conftest.h
+ return
+ else
+- echo "#error acpi_os_wait_events_complete() conftest failed!" >> conftest.h
++ : echo "#error acpi_os_wait_events_complete() conftest failed!" >> conftest.h
+ fi
+ ;;
+
diff --git a/x11-drivers/nvidia-drivers/files/NVIDIA_glx-defines.patch b/x11-drivers/nvidia-drivers/files/NVIDIA_glx-defines.patch
new file mode 100644
index 00000000..da9933f6
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/NVIDIA_glx-defines.patch
@@ -0,0 +1,11 @@
+diff -ur NVIDIA_GLX-1.0-4191/usr/include/GL/glx.h NVIDIA_GLX-1.0-4191.new/usr/include/GL/glx.h
+--- NVIDIA_GLX-1.0-4191/usr/include/GL/glx.h 2002-12-09 21:26:55.000000000 +0100
++++ NVIDIA_GLX-1.0-4191.new/usr/include/GL/glx.h 2003-01-30 18:20:23.000000000 +0100
+@@ -39,6 +39,7 @@
+ typedef XID GLXPixmap;
+ typedef XID GLXDrawable;
+ typedef XID GLXPbuffer;
++typedef XID GLXPbufferSGIX;
+ typedef XID GLXWindow;
+ typedef XID GLXFBConfigID;
+
diff --git a/x11-drivers/nvidia-drivers/files/NVIDIA_glx-glheader.patch b/x11-drivers/nvidia-drivers/files/NVIDIA_glx-glheader.patch
new file mode 100644
index 00000000..e0393e1b
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/NVIDIA_glx-glheader.patch
@@ -0,0 +1,13 @@
+--- usr/include/GL/gl.g.orig 2004-07-17 19:56:59.789410584 +1000
++++ usr/include/GL/gl.h 2004-07-17 19:59:08.844791184 +1000
+@@ -66,6 +66,10 @@
+ typedef double GLclampd;
+ typedef void GLvoid;
+
++/* Patching for some better defines in the global system */
++#ifndef GL_GLEXT_LEGACY
++#include <GL/glext.h>
++#endif
+
+ /*************************************************************/
+
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-169.07 b/x11-drivers/nvidia-drivers/files/nvidia-169.07
new file mode 100644
index 00000000..a96b0cd1
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-169.07
@@ -0,0 +1,14 @@
+# Nvidia drivers support
+alias char-major-195 nvidia
+alias /dev/nvidiactl char-major-195
+
+# To tweak the driver the following options can be used, note that
+# you should be careful, as it could cause instability!! For more
+# options see /usr/share/doc/PACKAGE/README
+#
+# !!! SECURITY WARNING !!!
+# DO NOT MODIFY OR REMOVE THE DEVICE FILE RELATED OPTIONS UNLESS YOU KNOW
+# WHAT YOU ARE DOING.
+# ONLY ADD TRUSTED USERS TO THE VIDEO GROUP, THESE USERS MAY BE ABLE TO CRASH,
+# COMPROMISE, OR IRREPARABLY DAMAGE THE MACHINE.
+options nvidia NVreg_DeviceFileMode=432 NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=VIDEOGID NVreg_ModifyDeviceFiles=1
diff --git a/x11-drivers/nvidia-drivers/metadata.xml b/x11-drivers/nvidia-drivers/metadata.xml
new file mode 100644
index 00000000..d8e29e81
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>jer@gentoo.org</email>
+</maintainer>
+<use>
+ <flag name='kernel3-13'>Install unofficial patches for linux-3.13 and newer</flag>
+ <flag name='kernel3-14'>Install unofficial patches for linux-3.14 and newer</flag>
+ <flag name='kernel3-17'>Install unofficial patches for linux-3.17 and newer</flag>
+ <flag name='pax_kernel'>Patch to compile with hardened-sources/grsecurity</flag>
+ <flag name='tools'>Install additional tools such as nvidia-settings</flag>
+</use>
+</pkgmetadata>
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-173.14.39-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-173.14.39-r1.ebuild
new file mode 100644
index 00000000..c452bbfe
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-173.14.39-r1.ebuild
@@ -0,0 +1,568 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic linux-mod multilib nvidia-driver portability \
+ unpacker user versionator
+
+X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
+AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
+X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
+
+DESCRIPTION="NVIDIA Accelerated Graphics Driver"
+HOMEPAGE="http://www.nvidia.com/"
+SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}-pkg0.run )
+ amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}-pkg2.run )
+ x86-fbsd? ( http://us.download.nvidia.com/freebsd/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
+
+LICENSE="GPL-2 NVIDIA-r1"
+SLOT="0"
+KEYWORDS="-* amd64 x86 ~x86-fbsd"
+IUSE="acpi multilib kernel3-13 kernel3-14 +kernel3-17 kernel_linux pax_kernel tools"
+RESTRICT="bindist mirror strip"
+EMULTILIB_PKG="true"
+
+COMMON="
+ >=app-admin/eselect-opengl-1.0.9
+ kernel_linux? ( >=sys-libs/glibc-2.6.1 )
+"
+DEPEND="
+ ${COMMON}
+ !<dev-util/ccache-3.2
+ kernel_linux? ( virtual/linux-sources )
+"
+RDEPEND="
+ ${COMMON}
+ <x11-base/xorg-server-1.15.99
+ acpi? ( sys-power/acpid )
+ multilib? (
+ || (
+ (
+ >=x11-libs/libX11-1.6.2[abi_x86_32]
+ >=x11-libs/libXext-1.3.2[abi_x86_32]
+ )
+ app-emulation/emul-linux-x86-opengl
+ )
+ )
+ tools? (
+ dev-libs/atk
+ dev-libs/glib
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/pango[X]
+ )
+"
+
+QA_TEXTRELS_x86="usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
+ usr/lib/xorg/modules/drivers/nvidia_drv.so
+ usr/lib/libcuda.so.${PV}
+ usr/lib/libnvidia-cfg.so.${PV}
+ usr/lib/libvdpau_nvidia.so.${PV}
+ usr/lib/libXvMCNVIDIA.so.${PV}"
+
+QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko
+ usr/lib/opengl/nvidia/lib/libGL.so.1
+ usr/lib/opengl/nvidia/lib/libGLcore.so.1
+ usr/lib/libnvidia-cfg.so.1
+ usr/lib/opengl/nvidia/extensions/libglx.so.1
+ usr/lib/xorg/modules/drivers/nvidia_drv.so"
+
+QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib32/libcuda.so.${PV}
+ usr/lib32/libvdpau_nvidia.so.${PV}"
+
+QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
+ usr/lib/xorg/modules/drivers/nvidia_drv.so
+ usr/lib/libXvMCNVIDIA.a:NVXVMC.o"
+
+QA_EXECSTACK_amd64="usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib64/libnvcompiler.so.${PV}
+ usr/lib64/libXvMCNVIDIA.so.${PV}
+ usr/lib64/libXvMCNVIDIA.a:NVXVMC.o
+ usr/lib64/libnvidia-cfg.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
+ usr/lib64/xorg/modules/drivers/nvidia_drv.so
+ opt/bin/nvidia-settings
+ opt/bin/nvidia-smi
+ opt/bin/nvidia-xconfig"
+
+QA_WX_LOAD_x86="usr/lib/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
+ usr/lib/libXvMCNVIDIA.a"
+
+QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}"
+
+QA_SONAME_amd64="usr/lib64/libnvcompiler.so.${PV}"
+
+QA_FLAGS_IGNORED_amd64="usr/lib32/libcuda.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
+ usr/lib32/libvdpau_nvidia.so.${PV}
+ usr/lib64/libXvMCNVIDIA.so.${PV}
+ usr/lib64/libcuda.so.${PV}
+ usr/lib64/libnvidia-cfg.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV}
+ usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
+ usr/lib64/xorg/modules/drivers/nvidia_drv.so
+ usr/lib64/libvdpau_nvidia.so.${PV}
+ opt/bin/nvidia-settings
+ opt/bin/nvidia-smi
+ opt/bin/nvidia-xconfig"
+
+QA_FLAGS_IGNORED_x86="usr/lib/libcuda.so.${PV}
+ usr/lib/libnvidia-cfg.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV}
+ usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
+ usr/lib/xorg/modules/drivers/nvidia_drv.so
+ usr/lib/libXvMCNVIDIA.so.${PV}
+ usr/lib/libvdpau_nvidia.so.${PV}
+ opt/bin/nvidia-settings
+ opt/bin/nvidia-smi
+ opt/bin/nvidia-xconfig"
+
+S="${WORKDIR}/"
+
+mtrr_check() {
+ ebegin "Checking for MTRR support"
+ linux_chkconfig_present MTRR
+ eend $?
+
+ if [[ $? -ne 0 ]] ; then
+ eerror "Please enable MTRR support in your kernel config, found at:"
+ eerror
+ eerror " Processor type and features"
+ eerror " [*] MTRR (Memory Type Range Register) support"
+ eerror
+ eerror "and recompile your kernel ..."
+ die "MTRR support not detected!"
+ fi
+}
+
+lockdep_check() {
+ if linux_chkconfig_present LOCKDEP; then
+ eerror "You've enabled LOCKDEP -- lock tracking -- in the kernel."
+ eerror "Unfortunately, this option exports the symbol 'lockdep_init_map' as GPL-only"
+ eerror "which will prevent ${P} from compiling."
+ eerror "Please make sure the following options have been unset:"
+ eerror " Kernel hacking --->"
+ eerror " [ ] Lock debugging: detect incorrect freeing of live locks"
+ eerror " [ ] Lock debugging: prove locking correctness"
+ eerror " [ ] Lock usage statistics"
+ eerror "in 'menuconfig'"
+ die "LOCKDEP enabled"
+ fi
+}
+
+pkg_setup() {
+ # try to turn off distcc and ccache for people that have a problem with it
+ export DISTCC_DISABLE=1
+ export CCACHE_DISABLE=1
+
+ if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then
+ eerror "This ebuild doesn't currently support changing your default abi."
+ die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
+ fi
+
+ if use kernel_linux; then
+ linux-mod_pkg_setup
+ MODULE_NAMES="nvidia(video:${S}/usr/src/nv)"
+ BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
+ SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)"
+ # linux-mod_src_compile calls set_arch_to_kernel, which
+ # sets the ARCH to x86 but NVIDIA's wrapping Makefile
+ # expects x86_64 or i386 and then converts it to x86
+ # later on in the build process
+ BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
+ mtrr_check
+ lockdep_check
+ fi
+
+ # On BSD userland it wants real make command
+ use userland_BSD && MAKE="$(get_bmake)"
+
+ export _POSIX2_VERSION="199209"
+
+ if use kernel_linux && kernel_is ge 3 13 ; then
+ ewarn "No official support of nvidia or gentoo is available for >=linux-3.13"
+ ewarn "Please do not report any bug to nvidia or gentoo about it."
+ fi
+
+ # Since Nvidia ships 3 different series of drivers, we need to give the user
+ # some kind of guidance as to what version they should install. This tries
+ # to point the user in the right direction but can't be perfect. check
+ # nvidia-driver.eclass
+ nvidia-driver-check-warning
+
+ # set variables to where files are in the package structure
+ if use kernel_FreeBSD; then
+ use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
+ NV_DOC="${S}/doc"
+ NV_EXEC="${S}/obj"
+ NV_LIB="${S}/obj"
+ NV_SRC="${S}/src"
+ NV_MAN="${S}/x11/man"
+ NV_X11="${S}/obj"
+ NV_X11_DRV="${NV_X11}"
+ NV_X11_EXT="${NV_X11}"
+ NV_SOVER=1
+ elif use kernel_linux; then
+ NV_DOC="${S}/usr/share/doc"
+ NV_EXEC="${S}/usr/bin"
+ NV_LIB="${S}/usr/lib"
+ NV_SRC="${S}/usr/src/nv"
+ NV_MAN="${S}/usr/share/man/man1"
+ NV_X11="${S}/usr/X11R6/lib"
+ NV_X11_DRV="${NV_X11}/modules/drivers"
+ NV_X11_EXT="${NV_X11}/modules/extensions"
+ NV_SOVER=${PV}
+ else
+ die "Could not determine proper NVIDIA package"
+ fi
+}
+
+src_unpack() {
+ if use kernel_linux && kernel_is lt 2 6 7; then
+ echo
+ ewarn "Your kernel version is ${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
+ ewarn "This is not officially supported for ${P}. It is likely you"
+ ewarn "will not be able to compile or use the kernel module."
+ ewarn "It is recommended that you upgrade your kernel to a version >= 2.6.7"
+ echo
+ ewarn "DO NOT file bug reports for kernel versions less than 2.6.7 as they will be ignored."
+ fi
+
+ if ! use x86-fbsd; then
+ mkdir "${S}"
+ cd "${S}"
+ unpack_makeself
+ else
+ unpack ${A}
+ fi
+}
+
+src_prepare() {
+ # Please add a brief description for every added patch
+ use x86-fbsd && cd doc
+
+ # Use the correct defines to make gtkglext build work
+ epatch "${FILESDIR}"/NVIDIA_glx-defines.patch
+ # Use some more sensible gl headers and make way for new glext.h
+ epatch "${FILESDIR}"/NVIDIA_glx-glheader.patch
+
+ if use kernel_linux; then
+ # Quiet down warnings the user does not need to see
+ sed -i \
+ -e 's:-Wpointer-arith::g' \
+ -e 's:-Wsign-compare::g' \
+ "${NV_SRC}"/Makefile.kbuild
+
+ # If greater than 2.6.5 use M= instead of SUBDIR=
+ convert_to_m "${NV_SRC}"/Makefile.kbuild
+ fi
+
+ if use pax_kernel ; then
+ einfo "Enabling unofficial patches for hardened-sources/grsecurity"
+ epatch "${FILESDIR}/${PV}-grsecurity.patch"
+ fi
+
+ if use kernel3-17 ; then
+ einfo "Enabling unofficial patches for linux-3.17 and newer"
+ elif use kernel3-14 ; then
+ einfo "Enabling unofficial patches for linux-3.14 and newer"
+ elif use kernel3-13 ; then
+ einfo "Enabling unofficial patches for linux-3.13 and newer"
+ fi
+ if use kernel3-17 || use kernel3-14 || use kernel3-13 ; then
+ epatch "${FILESDIR}/${PV}-kernel-3.13.patch"
+ if use kernel3-17 || use kernel3-14 ; then
+ epatch "${FILESDIR}/${PV}-kernel-3.14.patch"
+ if use kernel3-17 ; then
+ epatch "${FILESDIR}/${PV}-kernel-3.17.patch"
+ fi
+ fi
+ fi
+
+ epatch_user
+}
+
+src_compile() {
+ # This is already the default on Linux, as there's no toplevel Makefile, but
+ # on FreeBSD there's one and triggers the kernel module build, as we install
+ # it by itself, pass this.
+
+ cd "${NV_SRC}"
+ if use x86-fbsd; then
+ MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
+ LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)"
+ elif use kernel_linux; then
+ linux-mod_src_compile
+ fi
+}
+
+src_install() {
+ if use kernel_linux; then
+ linux-mod_src_install
+
+ # Add the aliases
+ # This file is tweaked with the appropriate video group in
+ # pkg_preinst, see bug #491414
+ insinto /etc/modprobe.d
+ newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
+ elif use kernel_FreeBSD; then
+ insinto /boot/modules
+ doins "${WORKDIR}/${NV_PACKAGE}/src/nvidia.kld"
+
+ exeinto /boot/modules
+ doexe "${WORKDIR}/${NV_PACKAGE}/src/nvidia.ko"
+ fi
+
+ # NVIDIA kernel <-> userspace driver config lib
+ dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \
+ die "failed to install libnvidia-cfg"
+ dosym libnvidia-cfg.so.${NV_SOVER} \
+ /usr/$(get_libdir)/libnvidia-cfg.so.1 || \
+ die "failed to create libnvidia-cfg.so.1 symlink"
+ dosym libnvidia-cfg.so.1 \
+ /usr/$(get_libdir)/libnvidia-cfg.so || \
+ die "failed to create libnvidia-cfg.so symlink"
+
+ # Xorg DDX driver
+ insinto /usr/$(get_libdir)/xorg/modules/drivers
+ doins ${NV_X11_DRV}/nvidia_drv.so
+
+ # Xorg GLX driver
+ insinto /usr/$(get_libdir)/opengl/nvidia/extensions
+ doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \
+ die "failed to install libglx.so"
+ dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \
+ /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \
+ die "failed to create libglx.so symlink"
+
+ # XvMC driver
+ dolib.a ${NV_X11}/libXvMCNVIDIA.a || \
+ die "failed to install libXvMCNVIDIA.so"
+ dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \
+ die "failed to install libXvMCNVIDIA.so"
+ dosym libXvMCNVIDIA.so.${NV_SOVER} \
+ /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \
+ die "failed to create libXvMCNVIDIA.so.1 symlink"
+ dosym libXvMCNVIDIA.so.1 \
+ /usr/$(get_libdir)/libXvMCNVIDIA.so || \
+ die "failed to create libXvMCNVIDIA.so symlink"
+ dosym libXvMCNVIDIA.so.${NV_SOVER} \
+ /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \
+ die "failed to create libXvMCNVIDIA_dynamic.so.1 symlink"
+
+ # CUDA headers (driver to come)
+ if use kernel_linux && [[ -d ${S}/usr/include/cuda ]]; then
+ dodir /usr/include/cuda
+ insinto /usr/include/cuda
+ doins usr/include/cuda/*.h
+ fi
+
+ # OpenCL headers (driver to come)
+ if [[ -d ${S}/usr/include/CL ]]; then
+ dodir /usr/include/CL
+ insinto /usr/include/CL
+ doins usr/include/CL/*.h
+ fi
+
+ # Documentation
+ dodoc ${NV_DOC}/XF86Config.sample
+ dohtml ${NV_DOC}/html/*
+ if use x86-fbsd; then
+ dodoc "${NV_DOC}/README"
+ doman "${NV_MAN}/nvidia-xconfig.1"
+ doman "${NV_MAN}/nvidia-settings.1"
+ else
+ # Docs
+ newdoc "${NV_DOC}/README.txt" README
+ dodoc "${NV_DOC}/NVIDIA_Changelog"
+ doman "${NV_MAN}/nvidia-xconfig.1.gz"
+ doman "${NV_MAN}/nvidia-settings.1.gz"
+ fi
+
+ # Helper Apps
+ exeinto /opt/bin/
+ doexe ${NV_EXEC}/nvidia-xconfig
+ doexe ${NV_EXEC}/nvidia-bug-report.sh
+ if use tools; then
+ doexe usr/bin/nvidia-settings
+ fi
+ if use kernel_linux; then
+ doexe ${NV_EXEC}/nvidia-smi
+ fi
+
+ # Desktop entry for nvidia-settings
+ if use tools && use kernel_linux; then
+ sed -e 's:__UTILS_PATH__:/opt/bin:' \
+ -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' \
+ -e '/^Categories/s|Application;||g' \
+ -i "${S}"/usr/share/applications//nvidia-settings.desktop
+ newmenu "${S}"/usr/share/applications/nvidia-settings.desktop \
+ nvidia-settings-opt.desktop
+ fi
+
+ if has_multilib_profile ; then
+ local OABI=${ABI}
+ for ABI in $(get_install_abis) ; do
+ src_install-libs
+ done
+ ABI=${OABI}
+ unset OABI
+ else
+ src_install-libs
+ fi
+
+ find "${ED}" -name "*.a" -exec rm -f "{}" + || die ".a file removal failed"
+
+ is_final_abi || die "failed to iterate through all ABIs"
+
+ readme.gentoo_create_doc
+}
+
+# Install nvidia library:
+# the first parameter is the place where to install it
+# the second parameter is the base name of the library
+# the third parameter is the provided soversion
+donvidia() {
+ dodir $1
+ exeinto $1
+
+ libname=$(basename $2)
+
+ doexe $2.$3
+ dosym ${libname}.$3 $1/${libname}
+ [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1
+}
+
+src_install-libs() {
+ local inslibdir=$(get_libdir)
+ local NV_ROOT="/usr/${inslibdir}/opengl/nvidia"
+ local libdir= sover=
+
+ if use kernel_linux; then
+ if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then
+ libdir=usr/lib32
+ else
+ libdir=usr/lib
+ fi
+ sover=${PV}
+ else
+ libdir=obj
+ # on FreeBSD it has just .1 suffix
+ sover=1
+ fi
+
+ # The GLX libraries
+ donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover}
+ donvidia ${NV_ROOT}/lib ${libdir}/libGLcore.so ${sover}
+ if use x86-fbsd; then
+ donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover}
+ else
+ donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover}
+ fi
+
+ #cuda
+ if [[ -f ${libdir}/libcuda.so.${sover} ]]; then
+ dolib.so ${libdir}/libcuda.so.${sover}
+ [[ "${sover}" != "1" ]] && dosym libcuda.so.${sover} /usr/${inslibdir}/libcuda.so.1
+ dosym libcuda.so.1 /usr/${inslibdir}/libcuda.so
+ fi
+
+ #vdpau
+ if [[ -f ${libdir}/libvdpau_nvidia.so.${sover} ]]; then
+ dolib.so ${libdir}/libvdpau_nvidia.so.${sover}
+ dosym libvdpau_nvidia.so.${sover} /usr/${inslibdir}/libvdpau_nvidia.so
+ fi
+
+ # OpenCL
+ # NOTE: This isn't currently available in the publicly released drivers.
+ if [[ -f ${libdir}/libOpenCL.so.1.0.0 ]]; then
+
+ dolib.so ${libdir}/libnvcompiler.so.${sover}
+ [[ "${sover}" != "1" ]] && dosym libnvcompiler.so.${sover} /usr/${inslibdir}/libnvcompiler.so.1
+ dosym libnvcompiler.so.1 /usr/${inslibdir}/libnvcompiler.so
+
+ dolib.so ${libdir}/libOpenCL.so.1.0.0
+ dosym libOpenCL.so.1.0.0 /usr/${inslibdir}/libOpenCL.so.1
+ dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so
+ fi
+}
+
+pkg_preinst() {
+ if use kernel_linux; then
+ linux-mod_pkg_preinst
+
+ local videogroup="$(egetent group video | cut -d ':' -f 3)"
+ if [ -z "${videogroup}" ]; then
+ eerror "Failed to determine the video group gid"
+ die "Failed to determine the video group gid"
+ else
+ sed -i \
+ -e "s:PACKAGE:${PF}:g" \
+ -e "s:VIDEOGID:${videogroup}:" \
+ "${D}"/etc/modprobe.d/nvidia.conf || die
+ fi
+ fi
+
+ # Clean the dynamic libGL stuff's home to ensure
+ # we dont have stale libs floating around
+ if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then
+ rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
+ fi
+ # Make sure we nuke the old nvidia-glx's env.d file
+ if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then
+ rm -f "${ROOT}"/etc/env.d/09nvidia
+ fi
+}
+
+pkg_postinst() {
+ use kernel_linux && linux-mod_pkg_postinst
+
+ # Switch to the nvidia implementation
+ "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
+
+ readme.gentoo_print_elog
+
+ if ! use tools; then
+ elog "USE=tools controls whether the nvidia-settings application"
+ elog "is installed. If you would like to use it, enable that"
+ elog "flag and re-emerge this ebuild. Optionally you can install"
+ elog "media-video/nvidia-settings"
+ fi
+}
+
+pkg_prerm() {
+ "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
+
+pkg_postrm() {
+ use kernel_linux && linux-mod_pkg_postrm
+ "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
diff --git a/x11-themes/fvwm-crystal/Manifest b/x11-themes/fvwm-crystal/Manifest
new file mode 100644
index 00000000..c5554730
--- /dev/null
+++ b/x11-themes/fvwm-crystal/Manifest
@@ -0,0 +1 @@
+DIST fvwm-crystal-3.3.2.tar.gz 4702096 SHA256 f0e5cd7b0a4920438229cf58a5854cc018d18fce982b42f250e624b15a1deb49 SHA512 0532aefd78c20ecdd51f01a734ae73d0c359e3afeab9838029613d4c44405a6c7b3d61b9581c4de0b7977ccaad7ea6353cf3e35b07c2940493560c7099581da7 WHIRLPOOL 9295e9d9c32f8961d522f378d176d3061a9461033cf9c2363034dac835b97f91757daacdaa83e1e601d064c34a68d0c70a280d79e86a4b167df347deeddc2973
diff --git a/x11-themes/fvwm-crystal/fvwm-crystal-3.3.2-r1.ebuild b/x11-themes/fvwm-crystal/fvwm-crystal-3.3.2-r1.ebuild
new file mode 100644
index 00000000..47d582a7
--- /dev/null
+++ b/x11-themes/fvwm-crystal/fvwm-crystal-3.3.2-r1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+RESTRICT=mirror
+
+PYTHON_COMPAT=( python2_7 )
+inherit eutils readme.gentoo python-r1
+
+DESCRIPTION="Configurable and full featured FVWM theme, with lots of transparency and freedesktop compatible menu"
+HOMEPAGE="http://fvwm-crystal.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND="${PYTHON_DEPS}
+ x11-misc/xdg-user-dirs
+ >=x11-wm/fvwm-2.6.5[png]
+ || ( media-gfx/imagemagick media-gfx/graphicsmagick[imagemagick] )
+ || ( >=x11-misc/stalonetray-0.6.2-r2 x11-misc/trayer )
+ || ( x11-misc/hsetroot media-gfx/feh )
+ sys-apps/sed
+ sys-devel/bc
+ virtual/awk
+ x11-apps/xwd"
+
+DISABLE_AUTOFORMATTING="true"
+DOC_CONTENTS="After installation, execute the following commands:
+\ \$ cp -r "${EROOT}"usr/share/doc/"${PF}"/addons/Xresources ~/.Xresources
+\ \$ cp -r "${EROOT}"usr/share/doc/"${PF}"/addons/Xsession ~/.xinitrc
+
+Many applications can extend functionality of fvwm-crystal.
+They are listed in "${EROOT}"usr/share/doc/"${PF}"/INSTALL.*
+
+Some icons fixes were committed recently.
+To achieve the same fixes on your private icon files,
+please read "${EROOT}"usr/share/doc/"${PF}"/INSTALL.*
+This will fix the libpng warnings at stderr.
+
+The color themes was updated to Fvwm InfoStore.
+To know how to update your custom color themes, please run
+ "${EROOT}"usr/share/"${PN}"/addons/convert_colorsets"
+
+src_prepare() {
+ epatch_user
+}
+
+src_install() {
+ emake DESTDIR="${ED}" \
+ docdir="${EPREFIX%/}/usr/share/doc/${PF}" \
+ prefix="${EPREFIX%/}/usr" \
+ install
+ # GNU License is globally in the portage tree
+ rm -vf "${ED}/usr/share/doc/${PF}"/LICENSE
+
+ python_replicate_script \
+ "${ED}/usr/bin/${PN}".{apps,wallpaper} \
+ "${ED}/usr/share/${PN}"/fvwm/scripts/FvwmMPD/*.py
+ readme.gentoo_create_doc
+}
diff --git a/x11-themes/fvwm-crystal/metadata.xml b/x11-themes/fvwm-crystal/metadata.xml
new file mode 100644
index 00000000..5f357c6b
--- /dev/null
+++ b/x11-themes/fvwm-crystal/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>proxy-maintainers</herd>
+<maintainer>
+ <email>dominique.michel@vtxnet.ch</email>
+ <name>Dominique Michel</name>
+</maintainer>
+<longdescription>
+FVWM-Crystal is a set of configuration files for FVWM window manager,
+with additional programs and scripts. Some of it's features are:
+ * quick launching of a terminal with just one click on a desktop
+ * a specially configured terminal window, similar to a console from FPP games
+ * builtin control over XMMS player and over aumix mixer from the keyboard and
+ buttons on the screen
+ * very good ability to control the desktop from the keyboard, including window
+ switching, moving, shading/unshading, maximizing, resizing, moving between
+ desktop pages
+ * transparent window titlebars, menus and panels on the desktop
+</longdescription>
+</pkgmetadata>