commit:     c0d7f1955c2d84b73f044d672921759f400ce166
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Sun Feb 23 02:04:18 2020 +0000
Commit:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
CommitDate: Sun Feb 23 02:04:18 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=c0d7f195

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 <AT> gmail.com>

 app-portage/showbuild/files/showbuild-0.9.1     | 41 +++++++++++++++++++++++++
 app-portage/showbuild/metadata.xml              | 15 +++++++++
 app-portage/showbuild/showbuild-0.9.1-r1.ebuild | 27 ++++++++++++++++
 3 files changed, 83 insertions(+)

diff --git a/app-portage/showbuild/files/showbuild-0.9.1 
b/app-portage/showbuild/files/showbuild-0.9.1
new file mode 100644
index 0000000..2026dfc
--- /dev/null
+++ b/app-portage/showbuild/files/showbuild-0.9.1
@@ -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

diff --git a/app-portage/showbuild/metadata.xml 
b/app-portage/showbuild/metadata.xml
new file mode 100644
index 0000000..d9c0c63
--- /dev/null
+++ b/app-portage/showbuild/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 type="person">
+               <email>[email protected]</email>
+               <name>Alessandro Barbieri</name>
+       </maintainer>
+       <upstream>
+               <maintainer>
+                       <email>[email protected]</email>
+                       <name>Christoph Junghans</name>
+               </maintainer>
+               <remote-id type="github">junghans/cj-overlay</remote-id>
+       </upstream>
+</pkgmetadata>

diff --git a/app-portage/showbuild/showbuild-0.9.1-r1.ebuild 
b/app-portage/showbuild/showbuild-0.9.1-r1.ebuild
new file mode 100644
index 0000000..d3e8c45
--- /dev/null
+++ b/app-portage/showbuild/showbuild-0.9.1-r1.ebuild
@@ -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}"
+}

Reply via email to