myhome/.local/bin/Checking-repo

99 lines
2.1 KiB
Plaintext
Raw Normal View History

#!/usr/bin/env bash
####################################################
#
# SRC_PREPARE
#
# Marcin Woźniak
# y0rune@aol.com
#
# Last edit: 16-09-2020
#
###################################################
function scanning(){
EUSCAN=$(euscan --nocolor --quiet "$1")
if [ -n "$EUSCAN" ]; then
echo "=============== NOW: $(find ./* -mindepth 2 -maxdepth 2 -name ''"$1"'*.ebuild' | sort | tail -1) =================
$(echo -e "$EUSCAN" | tail -1)"
fi
}
function folder(){
cd "$1"; git pull || exit
PACKAGES=()
for FILE in */*
do
PACKAGE=$(echo "$FILE" | grep -Eo '[A-z0-9_-]+$')
PACKAGES+=("$PACKAGE")
done
for i in "${PACKAGES[@]}"
do
scanning "$i" &
done
for j in $(jobs -p)
do
wait "$j"
done
echo -n ">>> Done scanning $1"
}
function nofolder(){
if [ -z "${1}" ]; then
echo "No overlay names given"
echo "Please give at least one overlay name as a commandline argument"
echo "Exiting"
exit 1
fi
for overlay in "${@}"
do
for ebuild in $(EIX_LIMIT=0 eix --only-names --in-overlay "${overlay}")
do
euscan --nocolor --quiet "${ebuild}" &
done
for j in $(jobs -p)
do
wait "$j"
done
echo -n ">>> Done scanning ${overlay}"
done
}
function help(){
echo "You can use:"
echo "* -r or --repo <HERE-REPO-NAME>"
echo "* -f or --folder <FOLDER-NAME>"
echo
echo "Example of usage"
echo "./logeuscan -r src_prepare-overlay"
echo "./logeuscan -f ~/git/src_prepare-overlay"
}
function main(){
[ "$(whereis eix | wc -w)" -le "1" ] && { echo "The eix is NOT installed"; exit; }
[ "$(whereis euscan | wc -w)" -le "1" ] && { echo "The euscan is NOT installed"; exit; }
case $1 in
-h|--help)
help
;;
-r|--repo)
nofolder "$2" | tee -a "euscan-$(date -I).log"
;;
-f|--folder)
folder "$2" | tee -a "euscan-$(date -I).log"
;;
*)
echo "No found variable"; echo; help
esac
}
main "$@"