]> git.wh0rd.org - home.git/blobdiff - .profile.d/gentoo.sh
cros-board: update
[home.git] / .profile.d / gentoo.sh
index edfa08aee02c64d58473ffa2df2224ad50516889..8aac8e8528d73cbd3d631f00e66cfa14f1593833 100644 (file)
-alias ebuild-sync='rsync -av ./ /usr/portage/${PWD#/usr/local/src/gentoo-x86/} --exclude ChangeLog --exclude CVS --exclude metadata.xml --delete'
-alias ebuild-emerge='sudo emerge -1av $(echo ${PWD} | awk -F/ "{printf \"%s/%s\", \$(NF-1), \$(NF)}")'
+alias ebuild-sync='rsync -av ./ /usr/portage/${PWD#/usr/local/src/gentoo/repo/gentoo/} --exclude ChangeLog --exclude metadata.xml --delete'
 alias ekeyword='ekeyword -v -q'
+alias repoman='repoman -q -q'
+alias rf='/usr/local/src/gentoo/portage/repoman/bin/repoman.git -q full'
 
-cvs_gentoo_url() {
-_cvs_gentoo_url() {
-       if [[ -n $2 ]] ; then
-               echo "Usage: cvs_gentoo_url <file>[:rev1[:rev2]]"
-               return 1
-       fi
-
-       # spec has the form file:rev1[:rev2]
-       # rev2 defaults to rev1-1
-       export IFS=:
-       set -- $1
-       unset IFS
-
-       local file=$1
-       if [[ ! -e ${file} ]] ; then
-               echo "file '${file}' does not exist"
-               return 1
-       fi
-       local dir="."
-       [[ ${file} == */* ]] && dir=${file%/*}
-       file=${file##*/}
-
-       local rev2=$2
-       if [[ -z ${rev2} ]] ; then
-               rev2=$(
-                       cd ${dir}
-                       export IFS=/
-                       set -- $(grep /${file}/ CVS/Entries)
-                       unset IFS
-                       echo $3
-               )
-               if [[ ${rev2} == "0" ]] ; then
-                       # new file
-                       rev2="1.1"
-               else
-                       # existing file, bump rev automatically
-                       rev2="1.$((${rev2#1.}+1))"
-               fi
-       fi
-       local rev2r=${rev2#1.}
-       local rev1=${3:-1.$((rev2r - 1))}
-
-       local cvsroot=$(<${dir}/CVS/Repository)
-       if [[ ${cvsroot} == gentoo-x86* ]] ; then
-               cvsroot=${cvsroot#gentoo-x86}
-               cvsroot=${cvsroot#/}
-       fi
-
-       local urirev
-       [[ ${rev2} == "1.1" || ${rev1} == "${rev2}" ]] \
-               && urirev="?rev=${rev2}" \
-               || urirev="?r1=${rev1}&r2=${rev2}"
-       echo "http://sources.gentoo.org/${cvsroot}/${file}${urirev}"
-}
-       local f
-       for f in "$@" ; do
-               _cvs_gentoo_url "${f}"
-       done
-       unset _cvs_gentoo_url
-}
-git_gentoo_url() {
-       local repo=$(git config remote.origin.url | sed 's:.*git[.a-z]*.gentoo.org/::')
-       git log -n3 ${1:-HEAD} | \
-               sed "s,^commit ,http://gitweb.gentoo.org/${repo}/commit/?id=,"
-}
-svn_gentoo_url() {
-       if [[ -z $* ]] ; then
-               svn info | \
-               awk '{
-                       if ($1 == "URL:") {
-                               URL = "http://sources.gentoo.org/" gensub(/.*svnroot\/([^/]*).*/,"\\1","");
-                       } else if ($1 == "Revision:") {
-                               rev = $2
-                               URL = URL "?rev=" (rev + 1) "&view=rev"
-                       }
-               }
-               END { print URL }'
-               return 0
-       fi
-
-       local f
-       for f in "$@" ; do
-               svn info "${f}" | \
-               awk '{
-                       if ($1 == "URL:") {
-                               sub(/.*svnroot/,"")
-                               URL = "http://sources.gentoo.org" $1 "?"
-                       } else if ($1 == "Revision:") {
-                               rev = $2
-                               URL = URL "r1=" rev "&r2=" (rev + 1)
-                       }
-               }
-               END { print URL }'
-       done
+ebuild-emerge() {
+       sudo -E emerge -1av "$@" \
+               $(echo "${PWD}" | awk -F/ "{printf \"%s/%s\", \$(NF-1), \$(NF)}")
 }
 
 _echangelog() {
@@ -105,7 +15,7 @@ _echangelog() {
        echangelog "$@" || return 1
 }
 er() {
-       repoman commit --echangelog=y "${@:1:$#-1}" -m "${@:$#}" || return 1
+       repoman commit "${@:1:$#-1}" -m "${@:$#}" || return 1
 }
 ec() {
        (
@@ -139,13 +49,17 @@ arch_emails() {
                        keys=$(sed -n '/^[[:space:]]*KEYWORD/{s:.*=::;s:"::g;p}' ${e})
                        for a in ${keys} ; do
                                [[ ${a} != ~* ]] && continue
-                               ret="${ret} ${a}"
+                               case ${a} in
+                               *-*) continue ;;
+                               ~arm64|~m68k|~mips|~s390|~sh) continue ;;
+                               ~*) ret="${ret} ${a}" ;;
+                               esac
                        done
                done
        else
                ret="$*"
        fi
-       printf '%s@gentoo.org ' ${ret//\~}
+       printf '%s@gentoo.org,' ${ret//\~}
        echo
 }
 stable_arch_emails() {
@@ -197,16 +111,16 @@ submit_bug_stable() {
                -d "${msg}" \
                -a "${maintainer}" \
                --cc="${cc// /,}" \
-               -k STABLEREQ \
                --product='Gentoo Linux' \
                --component=Ebuilds \
                --priority=Normal \
                --severity=enhancement
+#              -k STABLEREQ 
 }
 
 eskeys() {
        local k cat
-       if [[ ! -e ChangeLog ]] ; then
+       if [[ ! -e Manifest ]] ; then
                # running in a category rather than package
                cat="/"
        fi
@@ -216,10 +130,22 @@ eskeys() {
        done
 }
 _erit() {
-       local msg=$1 ; shift
-       [[ $1 == [[:digit:]]* ]] && msg="$msg #$1" && shift
-       echo repoman commit -m "$(echo $@ | sed 's: :/:g') $msg"
-       repoman commit -m "$(echo $@ | sed 's: :/:g') $msg"
+       if [[ $# -eq 1 ]] ; then
+               echo "Args: <ver> <arches>"
+               return 1
+       fi
+
+       local cat=$(basename "$(dirname "${PWD}")")
+       local pkg=$(basename "${PWD}")
+       local mode=$1 ; shift
+       local ver=$1 ; shift
+       local arches=$(printf '%s/' $(printf '%s\n' "$@" | sort -u))
+       arches=${arches%/}
+       local msg="${cat}/${pkg}: mark ${ver} ${arches} ${mode}"
+
+       local cmd=( git commit -m "${msg}" . )
+       echo "${cmd[@]}"
+       "${cmd[@]}"
 }
 erstable() { _erit stable "$@" ; }
 erlove() { _erit love "$@" ; }