app-portage/showbuild: new package

from the cj-overlay

Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
Alessandro Barbieri
2020-02-23 03:04:18 +01:00
parent 47842e84a1
commit c0d7f1955c
3 changed files with 83 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
#!/bin/bash
log="$(portageq envvar PORTAGE_TMPDIR)/portage/*/*/temp/build.log"
cmd="${SB:-tail -f}"
c=0
die() { echo -e "$*" >&2; exit 1; }
if [[ $1 = -h || $1 = --help ]]; then
echo "Script to follow log of running portage builds"
echo
echo "Usage: ${0##*/} # see running builds"
echo " ${0##*/} N # follow build #N"
echo " ${0##*/} --fetch # follow emerge-fetch.log"
echo " ${0##*/} --help # show this help"
echo
echo "Use environment variable SB to override the default cmd ($cmd)"
elif [[ $1 = -f || $1 = --fetch ]]; then
log="$(portageq envvar EMERGE_LOG_DIR)"
log="${log:=$(portageq envvar EPREFIX)/var/log}/emerge-fetch.log"
[[ -f $log ]] || die "Could open '$log'"
exec $cmd $log
elif [[ $(echo $log) = "$log" ]]; then
echo "No running build found (try '${0##*/} --help')"
elif [[ ! $1 ]]; then
echo "Running builds - use '${0##*/} NUMBER' to select"
for i in $log; do
[[ $i =~ ^${log%%\**}([^/]*)/([^/]*)${log##*\*}$ ]] || continue
echo -e "$((++c))\t${BASH_REMATCH[2]}\t(${BASH_REMATCH[1]})"
done
else
[[ -z ${1//[0-9]} && $1 -gt 0 ]] || die "Argument should be a number greater 0"
for i in $log; do
[[ $i =~ ^${log%%\**}([^/]*)/([^/]*)${log##*\*}$ ]] || continue
[[ $((++c)) -eq $((10#$1)) ]] || continue
[[ -f ${i} ]] || die "Build number $1 was gone in the meanwhile"
echo -ne "\033]0;Viewing: ${BASH_REMATCH[2]}\t(${BASH_REMATCH[1]})\007"
exec $cmd $i
done
die "Build number $1 not found (there are only $((c--)) build(s) running)"
fi

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>lssndrbarbieri@gmail.com</email>
<name>Alessandro Barbieri</name>
</maintainer>
<upstream>
<maintainer>
<email>ottxor@gentoo.org</email>
<name>Christoph Junghans</name>
</maintainer>
<remote-id type="github">junghans/cj-overlay</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,27 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
DESCRIPTION="Script to follow log of running portage builds"
HOMEPAGE="https://github.com/junghans/cj-overlay"
SRC_URI=""
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~x86 ~x86-linux ~x64-macos ~x86-macos"
IUSE=""
DEPEND=""
RDEPEND="
sys-apps/coreutils
sys-apps/portage
app-shells/bash
"
S="${FILESDIR}"
src_install () {
newbin "${P}" "${PN}"
}