summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps')
-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
21 files changed, 980 insertions, 0 deletions
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
+}