diff --git a/buildpkg b/buildpkg index 3cd8ba4..f90acdc 100755 --- a/buildpkg +++ b/buildpkg @@ -4,52 +4,80 @@ export LC_ALL=C . /usr/share/scratchpkg/functions || exit 1 +source_check() { + + url_stat=0 + + for sources in ${source[@]}; do + if [ $(echo $sources | grep -E "(ftp|http|https)://") ]; then + if [ $(echo $sources | grep -E "::(ftp|http|https)://") ]; then + uri=$(echo "$sources" | awk -F '::' '{print $2}') + else + uri="$sources" + fi + fi + echo -ne "Checking $uri ... " + wget --spider -q "$uri" + if [ $? = 0 ]; then + echo -e ${GREEN}OK${CRESET} + else + url_stat=$? + echo -e ${RED}FAILED${CRESET} + fi + done + + return ${url_stat} + +} + updatemdsum() { - if [ ! -z $source ]; then - for um in $(seq 0 $((${#source[@]} - 1))); do - if [ $(echo ${source[$um]} | grep -E "(ftp|http|https)://") ]; then - if [ $(echo ${source[$um]} | grep -E "::(ftp|http|https)://") ]; then - sourcename="$SOURCE_DIR/$(echo ${source[$um]} | awk -F '::' '{print $1}')" - else - sourcename="$SOURCE_DIR/$(echo ${source[$um]} | rev | cut -d / -f 1 | rev)" - fi - else - sourcename="${source[$um]}" - fi - needupdatechecksum="$needupdatechecksum $sourcename" - done - - for file in ${needupdatechecksum[@]}; do - if [ ! -f $file ]; then - missingsource+=($file) - fi - done - - if [ "${#missingsource[@]}" -gt 0 ]; then - msg "Missing source:" - for ms in ${missingsource[@]}; do - msg2 "$ms" - done - exitscript1 - fi - - md5sum $needupdatechecksum | awk '{ print $1 }' > .md5sum - [ -f .md5sum ] && msg "md5sum updated." - else - echo "" > .md5sum + if [ -z $source ]; then + msgwarn "source=() is empty, no need md5sum." + return 0 fi + + for um in $(seq 0 $((${#source[@]} - 1))); do + if [ $(echo ${source[$um]} | grep -E "(ftp|http|https)://") ]; then + if [ $(echo ${source[$um]} | grep -E "::(ftp|http|https)://") ]; then + sourcename="$SOURCE_DIR/$(echo ${source[$um]} | awk -F '::' '{print $1}')" + else + sourcename="$SOURCE_DIR/$(echo ${source[$um]} | rev | cut -d / -f 1 | rev)" + fi + else + sourcename="${source[$um]}" + fi + needupdatechecksum="$needupdatechecksum $sourcename" + done + + for file in ${needupdatechecksum[@]}; do + if [ ! -f $file ]; then + missingsource+=($file) + fi + done + + if [ "${#missingsource[@]}" -gt 0 ]; then + msg "Missing source:" + for ms in ${missingsource[@]}; do + msg2 "$ms" + done + return 1 + fi + + echo -e "md5sum=($(md5sum $needupdatechecksum | awk '{ print $1 }'))" + } checkmdsum() { - for i in $(cat .md5sum); do - mdsums+=($i) - done + if [ -z $md5sum ]; then + msgwarn "md5sum is empty, please provide it." + return 0 + fi - if [ "${#source[@]}" != "${#mdsums[@]}" ]; then + if [ "${#source[@]}" != "${#md5sum[@]}" ]; then msgerr "Total source and md5sums different." - exitscript1 + return 1 fi for s in $(seq 0 $((${#source[@]} - 1))); do @@ -63,7 +91,7 @@ checkmdsum() { sourcename="${source[$s]}" fi sum=$(md5sum "$sourcename" | awk '{ print $1 }') - if [ "$sum" != "${mdsums[$s]}" ] && [ "SKIP" != "${mdsums[$s]}" ]; then + if [ "$sum" != "${md5sum[$s]}" ] && [ "SKIP" != "${md5sum[$s]}" ]; then errormdsum+=($sourcename) fi done @@ -73,7 +101,7 @@ checkmdsum() { for mismatch in ${errormdsum[@]}; do msg2 "$mismatch" done - exitscript1 + return 1 fi } @@ -107,14 +135,14 @@ downloadsource(){ fi fi if [ -f $SOURCE_DIR/$tarballname ]; then - msg "Source file ${color_green}$tarballname${color_reset} found." + msg "Source file ${GREEN}$tarballname${CRESET} found." else checktool wget if [ -f $SOURCE_DIR/$tarballname.partial ]; then - msg "Resuming ${color_green}$1${color_reset}." + msg "Resuming ${GREEN}$1${CRESET}." $WGETRESUME $tarballurl && mv $SOURCE_DIR/$tarballname.partial $SOURCE_DIR/$tarballname || exitscript1 else - msg "Downloading ${color_green}$1${color_reset}." + msg "Downloading ${GREEN}$1${CRESET}." $WGETCMD $tarballurl && mv $SOURCE_DIR/$tarballname.partial $SOURCE_DIR/$tarballname || exitscript1 fi fi @@ -143,7 +171,7 @@ preparesource() { for i in ${noextract[@]}; do if [ "$i" = "$tarballname" ]; then NO_EXTRACT=yes - msg "Preparing ${color_green}$tarballname${color_reset}..." && cp $SOURCE_DIR/$tarballname $SRC || ERROR_PREPARE_SOURCE+=($tarballname) + msg "Preparing ${GREEN}$tarballname${CRESET}..." && cp $SOURCE_DIR/$tarballname $SRC || ERROR_PREPARE_SOURCE+=($tarballname) break fi done @@ -157,17 +185,17 @@ preparesource() { MODE="Preparing" ;; esac - msg2 "$MODE ${color_green}$tarballname${color_reset}..." + msg2 "$MODE ${GREEN}$tarballname${CRESET}..." $COMMAND if [ $? != 0 ]; then - msgerr "$MODE ${color_red}$tarballname${color_reset} failed." + msgerr "$MODE ${RED}$tarballname${CRESET} failed." clearworkdir exitscript1 fi fi else - msg2 "Preparing ${color_green}$sources${color_reset}..." && cp $sources $SRC || ERROR_PREPARE_SOURCE+=($sources) + msg2 "Preparing ${GREEN}$sources${CRESET}..." && cp $sources $SRC || ERROR_PREPARE_SOURCE+=($sources) fi done fi @@ -195,18 +223,18 @@ loadspkgbuild() { buildpackage() { - msg "Start build ${color_green}$name-$version-$release${color_reset}." + msg "Start build ${GREEN}$name-$version-$release${CRESET}." pushd $SRC (exec &> >(tee -i $LOG_DIR/$name.log); echo "$name-$version"; echo $(date); set -e -x; build) if [ $? != 0 ]; then - msgerr "Build ${color_red}$PKGNAME${color_reset} failed." + msgerr "Build ${RED}$PKGNAME${CRESET} failed." clearworkdir exitscript1 else - msg "Successfully build ${color_green}$name-$version-$release${color_reset}." + msg "Successfully build ${GREEN}$name-$version-$release${CRESET}." fi popd @@ -262,7 +290,7 @@ packaging() { [ -n "$makedepends" ] && for md in ${makedepends[@]}; do echo "makedepends = $md" >> .pkginfo; done [ -n "$noextract" ] && echo "noextract = $noextract" >> .pkginfo - msg "Packaging ${color_green}$name-$version-$release${color_reset}..." + msg "Packaging ${GREEN}$name-$version-$release${CRESET}..." for file in .pkginstall .pkgreadme; do if [ -f $file ]; then @@ -272,7 +300,7 @@ packaging() { tar -c -J -p -f $PACKAGE_DIR/$PKGNAME * .pkginfo "${addtotar[@]}" if [ $? != 0 ]; then - msgerr "Packaging ${color_red}$PKGNAME${color_reset} failed." + msgerr "Packaging ${RED}$PKGNAME${CRESET} failed." if [ -f $PACKAGE_DIR/$PKGNAME ]; then rm $PACKAGE_DIR/$PKGNAME fi @@ -280,12 +308,12 @@ packaging() { else pkgsize="$(ls -lh $PACKAGE_DIR/$PKGNAME | awk '{print $5}')" $EXTPROG -t -v -f $PACKAGE_DIR/$PKGNAME - msg "Successfully create package ${color_green}$PKGNAME${color_reset}. (${pkgsize})" + msg "Successfully create package ${GREEN}$PKGNAME${CRESET}. (${pkgsize})" fi case $PREINSTALL_STATUS in - OK) msg "preinstall : ${color_green}OK${color_reset}" ;; - KO) msg "preinstall : ${color_red}FAIL${color_reset}" ;; + OK) msg "preinstall : ${GREEN}OK${CRESET}" ;; + KO) msg "preinstall : ${RED}FAIL${CRESET}" ;; esac popd @@ -300,11 +328,7 @@ buildpkg() { getsource if [ ! "$IGNORE_MDSUM" ]; then - if [ -f .md5sum ]; then - checkmdsum - else - updatemdsum - fi + checkmdsum || exitscript1 fi preparesource @@ -368,7 +392,7 @@ checkdeps() { msg2 "$msd" done for msmkd in ${MSMKDEP[@]}; do - msg2 "$msmkd ${color_cyan}(make)${color_reset}" + msg2 "$msmkd ${CYAN}(make)${CRESET}" done exitscript1 fi @@ -464,7 +488,7 @@ clearworkdir() { interrupted() { #echo "" - #msg "${color_yellow}Interrupted!${color_reset}" + #msg "${YELLOW}Interrupted!${CRESET}" clearworkdir exitscript1 } @@ -492,11 +516,12 @@ Options: -fr, --force-rebuild rebuild package -im, --ignore-mdsum skip md5sum checking -um, --update-mdsum update md5sum - -cm, --check-mdsum check md5sum for source file + -cm, --check-mdsum calculate and print md5sum for source file -do, --download-only download only source file -eo, --extract-only extract only source file -kw, --keep-work keep working directory -rd, --redownload re-download source file + -cs, --check-source check dead url for sources -sd, --source-dir override directory path for sources -pd, --package-dir override directory path for compiled package -h, --help show this help message @@ -536,6 +561,7 @@ parse_options() { -eo | --extract-only) EXTRACT_ONLY=yes ;; -kw | --keep-work) KEEP_WORK=yes ;; -rd | --redownload) REDOWNLOAD_SOURCE=yes ;; + -cs | --check-source) SOURCE_CHECK=yes ;; -h | --help) SHOWHELP=yes ;; -sd | --source-dir) testinput "$2" && SOURCE_DIR="$2" || exit 1; shift ;; -pd | --package-dir) testinput "$2" && PACKAGE_DIR="$2" || exit 1; shift ;; @@ -561,18 +587,25 @@ main() { exit 0 fi - #check_directory + # source spkgbuild + loadspkgbuild + + # show help page + if [ "$SOURCE_CHECK" ]; then + source_check || exit $? + exit 0 + fi + + # check required directory checkdirexist "$WORK_DIR" "$SOURCE_DIR" "$PACKAGE_DIR" "$LOG_DIR" checkdirwrite "$WORK_DIR" "$SOURCE_DIR" "$PACKAGE_DIR" "$LOG_DIR" - checkdirread "$WORK_DIR" "$SOURCE_DIR" "$PACKAGE_DIR" "$LOG_DIR" - - loadspkgbuild + checkdirread "$WORK_DIR" "$SOURCE_DIR" "$PACKAGE_DIR" "$LOG_DIR" if [ "$INSTALL_PKG" ] || [ "$UPGRADE_PKG" ] || [ "$REINSTALL_PKG" ]; then NO_ORPHAN_CHECK=yes fi - ### CHECK SPKGBUILD ### + # check the required field in spkgbuild if [ -z "$name" ]; then msgerr "'name' is empty!" exit 1 @@ -592,37 +625,36 @@ main() { PKGNAME="$name-$version-$release.spkg.txz" - ### UPDATE CHECKSUM ### + # calculate & print md5sum if [ "$UPDATE_MDSUM" ]; then - getsource updatemdsum exit 0 fi - ### CHECK FOR LOCK FILE ### + # check for lock file if [ -f /tmp/spkg.$name.lock ]; then msgerr "Cant build same package simultaneously." - msgerr "remove ${color_yellow}/tmp/spkg.$name.lock${color_reset} if no build process for ${color_yellow}$name.${color_reset}" + msgerr "remove ${YELLOW}/tmp/spkg.$name.lock${CRESET} if no build process for ${YELLOW}$name.${CRESET}" exit 1 fi - ### DOWNLOAD ONLY ### + # download source only if [ "$DOWNLOAD_ONLY" ]; then getsource exit 0 fi - ### EXTRACT ONLY ### + # extract source only if [ "$EXTRACT_ONLY" ]; then getsource preparesource exit 0 fi - ### BUILD ### + # build package if [ -f $PACKAGE_DIR/$PKGNAME ] && [ ! "$FORCE_REBUILD" ]; then # if package txz exist and not force rebuild if [ ! "$INSTALL_PKG" ] && [ ! "$REINSTALL_PKG" ] && [ ! "$UPGRADE_PKG" ]; then - msg "${color_green}$PKGNAME${color_reset} is up-to-date." + msg "${GREEN}$PKGNAME${CRESET} is up-to-date." exitscript0 fi else @@ -640,7 +672,7 @@ main() { fi fi - ### INSTALL PACKAGE ### + # install package if [ "$INSTALL_PKG" ] || [ "$REINSTALL_PKG" ] || [ "$UPGRADE_PKG" ]; then installpkg $PACKAGE_DIR/$PKGNAME ${OPTS[@]} || exitscript1 fi diff --git a/functions/color b/functions/color index c242f94..a1bff49 100644 --- a/functions/color +++ b/functions/color @@ -1,38 +1,38 @@ #!/bin/bash ### SET COLOUR CODE ### -color_red='\e[0;31m' #Red -color_green='\e[0;32m' #Green -color_yellow='\e[0;33m' #Yellow -color_blue='\e[0;34m' #Blue -color_purple='\e[0;35m' #Purple -color_cyan='\e[0;36m' #Cyan -color_gray='\e[0;37m' #Gray -color_bred='\e[1;31m' #Bold red -color_bgreen='\e[1;32m' #Bold green -color_byellow='\e[1;33m' #Bold yellow -color_bblue='\e[1;34m' #Bold blue -color_bpurple='\e[1;35m' #Bold purple -color_bcyan='\e[1;36m' #Bold cyan -color_bgray='\e[1;37m' #Bold gray -color_reset='\e[0m' #Reset color +RED='\e[0;31m' #Red +GREEN='\e[0;32m' #Green +YELLOW='\e[0;33m' #Yellow +BLUE='\e[0;34m' #Blue +PURPLE='\e[0;35m' #Purple +CYAN='\e[0;36m' #Cyan +GRAY='\e[0;37m' #Gray +BRED='\e[1;31m' #Bold red +BGREEN='\e[1;32m' #Bold green +BYELLOW='\e[1;33m' #Bold yellow +BBLUE='\e[1;34m' #Bold blue +BPURPLE='\e[1;35m' #Bold purple +BCYAN='\e[1;36m' #Bold cyan +BGRAY='\e[1;37m' #Bold gray +CRESET='\e[0m' #Reset color nocolor() { - color_red='' - color_green='' - color_yellow='' - color_blue='' - color_purple='' - color_cyan='' - color_gray='' - color_bred='' - color_bgreen='' - color_byellow='' - color_bblue='' - color_bpurple='' - color_bcyan='' - color_bgray='' - color_reset='' + RED='' + GREEN='' + YELLOW='' + BLUE='' + PURPLE='' + CYAN='' + GRAY='' + BRED='' + BGREEN='' + BYELLOW='' + BBLUE='' + BPURPLE='' + BCYAN='' + BGRAY='' + CRESET='' } diff --git a/functions/functions b/functions/functions index 100e199..fa1f8b7 100644 --- a/functions/functions +++ b/functions/functions @@ -6,7 +6,7 @@ source "$FUNCTIONS/options" source "$FUNCTIONS/color" source "$FUNCTIONS/message" -### SET SOME VALUE ### +# defaults value CONF_FILE="/etc/scratchpkg.conf" BUILD_SCRIPT="spkgbuild" @@ -32,15 +32,18 @@ else exit 1 fi -### SET BSDTAR FOR EXTRACT PROGRAM IF LIBARCHIVE IS INSTALLED ### -if [ "$(type -pa bsdtar)" ]; then - EXTPROG=bsdtar +# check for extract tool +if [ "$(type -p bsdtar)" ]; then + EXTPROG=$(type -p bsdtar) +elif [ "$(type -p tar)" ]; then + EXTPROG=$(type -p tar) else - EXTPROG=tar + msgerr "libarchive or tar is needed. Aborted" + exit 1 fi -### FUNCTIONS LOAD BY SCRATCHPKG ### +# functions load by scratchpkg pushd() { command pushd "$@" >/dev/null } @@ -83,13 +86,14 @@ needroot() { checktool() { - if ! type -pa $1 &>/dev/null; then + if ! type -p $1 &>/dev/null; then msgerr "$1 not exist in your system!" exit 1 fi } +# function to print all installed packages allinstalled() { ls ${INDEX_DIR}/*/.pkginfo | rev | cut -d '/' -f2 | rev 2>/dev/null @@ -98,13 +102,13 @@ allinstalled() { getpkginfo() { - description=$(cat $BUILD_SCRIPT | grep ^'# description' | sed 's/\://' | cut -d ' ' -f 3-) - backup=$(cat $BUILD_SCRIPT | grep ^'# backup' | sed 's/\://' | cut -d ' ' -f 3-) - conflict=$(cat $BUILD_SCRIPT | grep ^'# conflict' | sed 's/\://' | cut -d ' ' -f 3-) - depends=$(cat $BUILD_SCRIPT | grep ^'# depends' | sed 's/\://' | cut -d ' ' -f 3-) - makedepends=$(cat $BUILD_SCRIPT | grep ^'# makedepends' | sed 's/\://' | cut -d ' ' -f 3-) - noextract=$(cat $BUILD_SCRIPT | grep ^'# noextract' | sed 's/\://' | cut -d ' ' -f 3-) - options=$(cat $BUILD_SCRIPT | grep ^'# options' | sed 's/\://' | cut -d ' ' -f 3-) + description=$(grep "^# description[[:blank:]]*:" $BUILD_SCRIPT | sed 's/^# description[[:blank:]]*:[[:blank:]]*//') + backup=$(grep "^# backup[[:blank:]]*:" $BUILD_SCRIPT | sed 's/^# backup[[:blank:]]*:[[:blank:]]*//') + conflict=$(grep "^# conflict[[:blank:]]*:" $BUILD_SCRIPT | sed 's/^# conflict[[:blank:]]*:[[:blank:]]*//') + depends=$(grep "^# depends[[:blank:]]*:" $BUILD_SCRIPT | sed 's/^# depends[[:blank:]]*:[[:blank:]]*//') + makedepends=$(grep "^# makedepends[[:blank:]]*:" $BUILD_SCRIPT | sed 's/^# makedepends[[:blank:]]*:[[:blank:]]*//') + noextract=$(grep "^# noextract[[:blank:]]*:" $BUILD_SCRIPT | sed 's/^# noextract[[:blank:]]*:[[:blank:]]*//') + options=$(grep "^# options[[:blank:]]*:" $BUILD_SCRIPT | sed 's/^# options[[:blank:]]*:[[:blank:]]*//') . $BUILD_SCRIPT @@ -150,7 +154,6 @@ installed_pkg_info() { getinfopkg() { - #echo $(tar xf $2 .pkginfo -O | grep ^$1 | cut -d " " -f3) cat /tmp/spkg.$2.pkginfo | grep ^$1 | cut -d " " -f3 } @@ -170,7 +173,7 @@ vercomp() { createtemplate() { if [ -d $1 ]; then - msg "Error directory ${color_red}$1${color_reset} already exist" + msg "Error directory ${RED}$1${CRESET} already exist" exit 1 else mkdir $1 @@ -186,6 +189,7 @@ version= release=1 options=() source=() +md5sum=() build() { cd \$name-\$version @@ -193,7 +197,7 @@ build() { make make DESTDIR=\$PKG install }" > $1/$BUILD_SCRIPT - msg "Template port have created for ${color_green}$1${color_reset}." + msg "Template port have created for ${GREEN}$1${CRESET}." fi } @@ -202,7 +206,7 @@ checkdirexist() { for dir in "$@"; do if [ ! -d $dir ]; then - msgwarn "Directory ${color_yellow}$dir${color_reset} not exist." + msgwarn "Directory ${YELLOW}$dir${CRESET} not exist." DIR_ERROR=yes fi done @@ -215,7 +219,7 @@ checkdirwrite() { for dir in "$@"; do if [ ! -w $dir ]; then - msgwarn "Directory ${color_yellow}$dir${color_reset} not writable." + msgwarn "Directory ${YELLOW}$dir${CRESET} not writable." DIR_ERROR=yes fi done @@ -228,7 +232,7 @@ checkdirread() { for dir in "$@"; do if [ ! -x $dir ] || [ ! -r $1 ]; then - msgwarn "Directory ${color_yellow}$dir${color_reset} not readable." + msgwarn "Directory ${YELLOW}$dir${CRESET} not readable." DIR_ERROR=yes fi done diff --git a/functions/message b/functions/message index b1ce9d3..249ac42 100644 --- a/functions/message +++ b/functions/message @@ -1,23 +1,23 @@ #!/bin/bash msg() { - echo -e "${color_green}==>${color_reset} $1" + echo -e "${GREEN}==>${CRESET} $1" } msginfo() { - echo -e "${color_cyan}==> INFO:${color_reset} $1" + echo -e "${CYAN}==> INFO:${CRESET} $1" } msgerr() { - echo -e "${color_red}==> ERROR:${color_reset} $1" + echo -e "${RED}==> ERROR:${CRESET} $1" } msgwarn() { - echo -e "${color_yellow}==> WARNING:${color_reset} $1" + echo -e "${YELLOW}==> WARNING:${CRESET} $1" } msg2() { - echo -e "${color_blue} ->${color_reset} $1" + echo -e "${BLUE} ->${CRESET} $1" } msg3() { diff --git a/installpkg b/installpkg index b4077d5..c74685c 100755 --- a/installpkg +++ b/installpkg @@ -21,7 +21,7 @@ installpkg() { checkdeps fi - msg "Installing ${color_green}$name-$version-$release${color_reset}..." + msg "Installing ${GREEN}$name-$version-$release${CRESET}..." # noextract file into system for noextr in ${NO_EXTRACT[@]}; do @@ -65,21 +65,15 @@ installpkg() { fi #installing package into system - if [[ $(tar -tf "$PKGNAME") ]]; then - msg2 "Extracting package..." - if [ "$VERBOSE_INSTALL" ]; then - tar --keep-directory-symlink --no-overwrite-dir -p -x -v -f $PKGNAME -C $ROOT_DIR --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]} - else - tar --keep-directory-symlink --no-overwrite-dir -p -x -f $PKGNAME -C $ROOT_DIR --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]} - fi + msg2 "Extracting package..." + if [ "$VERBOSE_INSTALL" ]; then + tar --keep-directory-symlink --no-overwrite-dir -p -x -v -f $PKGNAME -C $ROOT_DIR --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]} else - msgerr "Package is corrupted. Aborted!" - spkglock - exit 1 + tar --keep-directory-symlink --no-overwrite-dir -p -x -f $PKGNAME -C $ROOT_DIR --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]} fi if [ $? != 0 ]; then - msgerr "Failed install ${color_red}$name-$version-$release${color_reset}." + msgerr "Failed install ${RED}$name-$version-$release${CRESET}." while IFS=' ' read -r line; do pushd $ROOT_DIR rm_silent "$line" || rmdir_silent --ignore-fail-on-non-empty "$line" @@ -106,29 +100,29 @@ installpkg() { restoreconf case $PREINSTALL_STATUS in - OK) msg "preinstall : ${color_green}OK${color_reset}" ;; - KO) msg "preinstall : ${color_red}FAIL${color_reset}" ;; + OK) msg "preinstall : ${GREEN}OK${CRESET}" ;; + KO) msg "preinstall : ${RED}FAIL${CRESET}" ;; esac case $PREUPGRADE_STATUS in - OK) msg "preupgrade : ${color_green}OK${color_reset}" ;; - KO) msg "preupgrade : ${color_red}FAIL${color_reset}" ;; + OK) msg "preupgrade : ${GREEN}OK${CRESET}" ;; + KO) msg "preupgrade : ${RED}FAIL${CRESET}" ;; esac case $POSTINSTALL_STATUS in - OK) msg "postinstall : ${color_green}OK${color_reset}" ;; - KO) msg "postinstall : ${color_red}FAIL${color_reset}" ;; + OK) msg "postinstall : ${GREEN}OK${CRESET}" ;; + KO) msg "postinstall : ${RED}FAIL${CRESET}" ;; esac case $POSTUPGRADE_STATUS in - OK) msg "postupgrade : ${color_green}OK${color_reset}" ;; - KO) msg "postupgrade : ${color_red}FAIL${color_reset}" ;; + OK) msg "postupgrade : ${GREEN}OK${CRESET}" ;; + KO) msg "postupgrade : ${RED}FAIL${CRESET}" ;; esac runhooks if [ -f $INDEX_DIR/$name/.pkgreadme ]; then - msg "This package has ${color_green}readme${color_reset}" + msg "This package has ${GREEN}readme${CRESET}" fi # remove lock file @@ -176,7 +170,7 @@ registerpkg() { tar -t -f $PKGNAME --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]} > $INDEX_DIR/$name/.files tar -x -f $PKGNAME -C $INDEX_DIR/$name .pkginstall .pkgreadme >/dev/null 2>&1 - msg "Successfully install ${color_green}$name-$version-$release${color_reset}." + msg "Successfully install ${GREEN}$name-$version-$release${CRESET}." } @@ -206,7 +200,7 @@ checkpkgconflict() { for pkg in ${conflict[@]}; do if [ -d $INDEX_DIR/$pkg ]; then - msg "Conflict package!: ${color_yellow}$pkg${color_reset}" + msg "Conflict package!: ${YELLOW}$pkg${CRESET}" PKG_CONFLICT=yes fi done @@ -259,38 +253,12 @@ upcheckconflict() { } -# get information from compressed package -#getname() { - - #name=$(tar xf $PKGNAME .pkginfo -O | grep ^name | cut -d " " -f3) - #version=$(tar xf $PKGNAME .pkginfo -O | grep ^version | cut -d " " -f3) - #release=$(tar xf $PKGNAME .pkginfo -O | grep ^release | cut -d " " -f3) - #depends=$(tar xf $PKGNAME .pkginfo -O | grep ^depends | cut -d " " -f3-) - #makedepends=$(tar xf $PKGNAME .pkginfo -O | grep ^makedepends | cut -d " " -f3-) - #conflict=$(tar xf $PKGNAME .pkginfo -O | grep ^conflict | cut -d " " -f3-) - - #packagename=$name-$version-$release - -#} - -# get information from package index -#getoldname() { - - #iname=$(cat $INDEX_DIR/$name/.pkginfo | grep ^name | cut -d " " -f3) - #iversion=$(cat $INDEX_DIR/$name/.pkginfo | grep ^version | cut -d " " -f3) - #irelease=$(cat $INDEX_DIR/$name/.pkginfo | grep ^release | cut -d " " -f3) - #backup=$(cat $INDEX_DIR/$name/.pkginfo | grep ^backup | cut -d " " -f3-) - - #ipackagename=$iname-$iversion-$irelease - -#} - backupconf() { pushd $ROOT_DIR for bkp in ${backup[@]}; do if [ -e $bkp ]; then - msg2 "Backup ${color_purple}$bkp${color_reset}" + msg2 "Backup ${PURPLE}$bkp${CRESET}" rm -f $bkp.spkgtmp cp $bkp $bkp.spkgtmp FILEBACKUP+=($bkp) @@ -317,7 +285,7 @@ restoreconf() { checkoutdate() { if [ "$version-$release" = "$iversion-$irelease" ]; then - msg "Package ${color_green}$name${color_reset} is up-to-date." + msg "Package ${GREEN}$name${CRESET} is up-to-date." exit 0 fi @@ -493,13 +461,13 @@ main() { ### CHECK EXISTANT OF PACKAGE FILE ### if [ ! -f $PKGNAME ]; then - msgerr "Package ${color_red}$1${color_reset} not exist!" + msgerr "Package ${RED}$1${CRESET} not exist!" exit 1 fi ### INTEGRITY OF PACKAGE ### if ! tar -tf $PKGNAME &>/dev/null; then - msgerr "Package ${color_red}$1${color_reset} is corrupted!" + msgerr "Package ${RED}$1${CRESET} is corrupted!" exit 1 fi @@ -514,7 +482,7 @@ main() { ### CHECK FOR LOCK FILE ### if [ -f /tmp/spkg.lock ]; then msgerr "Cant install/remove package simultaneously." - msgerr "remove ${color_yellow}/tmp/spkg.lock${color_reset} if no install/remove package process running." + msgerr "remove ${YELLOW}/tmp/spkg.lock${CRESET} if no install/remove package process running." exit 1 fi @@ -539,14 +507,14 @@ main() { iname=$(installed_pkg_info name $name) iversion=$(installed_pkg_info version $name) irelease=$(installed_pkg_info release $name) - msg "Package ${color_green}$iname-$iversion-$irelease${color_reset} already installed." + msg "Package ${GREEN}$iname-$iversion-$irelease${CRESET} already installed." exit 0 fi ### IF UPGRADE OR REINSTALL PACKAGE ### if [ "$UPGRADE_PKG" ] || [ "$REINSTALL_PKG" ]; then if [ ! -d $INDEX_DIR/$name ]; then - msg "Package ${color_red}$name${color_reset} is not installed." + msg "Package ${RED}$name${CRESET} is not installed." exit 1 fi iname=$(installed_pkg_info name $name) @@ -559,10 +527,10 @@ main() { exit 0 fi checkoutdate - msg "Upgrading package: ${color_yellow}$iname-$iversion-$irelease${color_reset} -> ${color_green}$name-$version-$release${color_reset}" + msg "Upgrading package: ${YELLOW}$iname-$iversion-$irelease${CRESET} -> ${GREEN}$name-$version-$release${CRESET}" # REINSTALL PACKAGE elif [ "$REINSTALL_PKG" ]; then - msg "Reinstall package ${color_green}$name${color_reset}." + msg "Reinstall package ${GREEN}$name${CRESET}." fi fi diff --git a/removepkg b/removepkg index 3bd5149..71b66f9 100755 --- a/removepkg +++ b/removepkg @@ -15,7 +15,7 @@ spkglock() { removepkg() { - msg "Removing ${color_green}$ipackagename${color_reset}..." + msg "Removing ${GREEN}$ipackagename${CRESET}..." ### CHECK DEPENDENCY ### if [ ! "$IGNORE_DEP" ]; then @@ -70,21 +70,21 @@ removepkg() { rm -R $INDEX_DIR/$1 if [ -d $INDEX_DIR/$1 ]; then - msgerr "Error occured while removing ${color_red}$ipackagename${color_reset}." + msgerr "Error occured while removing ${RED}$ipackagename${CRESET}." spkglock exit 1 else - msg "Successfully remove ${color_green}$ipackagename${color_reset}." + msg "Successfully remove ${GREEN}$ipackagename${CRESET}." fi case $PREREMOVE_STATUS in - OK) msg "preremove : ${color_green}OK${color_reset}" ;; - KO) msg "preremove : ${color_red}FAIL${color_reset}" ;; + OK) msg "preremove : ${GREEN}OK${CRESET}" ;; + KO) msg "preremove : ${RED}FAIL${CRESET}" ;; esac case $POSTREMOVE_STATUS in - OK) msg "postremove : ${color_green}OK${color_reset}" ;; - KO) msg "postremove : ${color_red}FAIL${color_reset}" ;; + OK) msg "postremove : ${GREEN}OK${CRESET}" ;; + KO) msg "postremove : ${RED}FAIL${CRESET}" ;; esac runremovehooks @@ -140,7 +140,7 @@ checkdeps() { done if [ "${#ERRDEP[@]}" -gt 0 ]; then - msgwarn "Package ${color_yellow}$iname-$iversion-$irelease${color_reset} is needed for:" + msgwarn "Package ${YELLOW}$iname-$iversion-$irelease${CRESET} is needed for:" for pkg in ${ERRDEP[@]}; do msg2 "$pkg" done @@ -296,13 +296,13 @@ main() { ### CHECK FOR LOCK FILE ### if [ -f /tmp/spkg.lock ]; then msgerr "Cant install/remove package simultaneously." - msgerr "remove ${color_yellow}/tmp/spkg.lock${color_reset} if no install/remove package process running." + msgerr "remove ${YELLOW}/tmp/spkg.lock${CRESET} if no install/remove package process running." exit 1 fi for pkg in ${RMNAME[@]}; do if [ ! -d $INDEX_DIR/$pkg ]; then - msg "Package ${color_red}$pkg${color_reset} not installed." + msg "Package ${RED}$pkg${CRESET} not installed." else getoldname $pkg ### GET NAME, VERSION, RELEASE FROM INSTALLED PACKAGE DATABASE ### removepkg $pkg ### REMOVE PACKAGE ### diff --git a/scratch b/scratch index 769786b..3f6c856 100755 --- a/scratch +++ b/scratch @@ -11,42 +11,42 @@ showinfo() { echo -e " | SCRATCHPKG CONFIG |" echo -e " --+-------------------+--" echo - echo -e "${color_purple}CFLAGS${color_reset} $CFLAGS" - echo -e "${color_purple}CXXFLAGS${color_reset} $CXXFLAGS" - echo -e "${color_purple}MAKEFLAGS${color_reset} $MAKEFLAGS" + echo -e "${PURPLE}CFLAGS${CRESET} $CFLAGS" + echo -e "${PURPLE}CXXFLAGS${CRESET} $CXXFLAGS" + echo -e "${PURPLE}MAKEFLAGS${CRESET} $MAKEFLAGS" echo - echo -e "${color_purple}PORT_REPO${color_reset}" + echo -e "${PURPLE}PORT_REPO${CRESET}" for repo in ${PORT_REPO[@]}; do echo $repo done echo - echo -e "${color_purple}ROOT_DIR${color_reset} $ROOT_DIR" - echo -e "${color_purple}INDEX_DIR${color_reset} $INDEX_DIR" + echo -e "${PURPLE}ROOT_DIR${CRESET} $ROOT_DIR" + echo -e "${PURPLE}INDEX_DIR${CRESET} $INDEX_DIR" echo - echo -e "${color_purple}PACKAGE_DIR${color_reset} $PACKAGE_DIR" - echo -e "${color_purple}SOURCE_DIR${color_reset} $SOURCE_DIR" - echo -e "${color_purple}WORK_DIR${color_reset} $WORK_DIR" - echo -e "${color_purple}LOG_DIR${color_reset} $LOG_DIR" - echo -e "${color_purple}HOOK_DIR${color_reset} $HOOK_DIR" + echo -e "${PURPLE}PACKAGE_DIR${CRESET} $PACKAGE_DIR" + echo -e "${PURPLE}SOURCE_DIR${CRESET} $SOURCE_DIR" + echo -e "${PURPLE}WORK_DIR${CRESET} $WORK_DIR" + echo -e "${PURPLE}LOG_DIR${CRESET} $LOG_DIR" + echo -e "${PURPLE}HOOK_DIR${CRESET} $HOOK_DIR" echo - echo -e "${color_purple}NO_EXTRACT${color_reset} $NO_EXTRACT" + echo -e "${PURPLE}NO_EXTRACT${CRESET} $NO_EXTRACT" echo - echo -e "${color_purple}OPTIONS${color_reset}" + echo -e "${PURPLE}OPTIONS${CRESET}" for opt in ${OPTIONS[@]}; do echo $opt done echo - echo -e "${color_purple}PURGE_FILES${color_reset}" + echo -e "${PURPLE}PURGE_FILES${CRESET}" for pg in ${PURGE_FILES[@]}; do echo $pg done echo - echo -e "${color_purple}DOC_DIRS${color_reset}" + echo -e "${PURPLE}DOC_DIRS${CRESET}" for dc in ${DOC_DIRS[@]}; do echo $dc done echo - echo -e "${color_purple}MAN_DIRS${color_reset}" + echo -e "${PURPLE}MAN_DIRS${CRESET}" for md in ${MAN_DIRS[@]}; do echo $md done @@ -60,7 +60,7 @@ listinstalled() { iname=$(installed_pkg_info name $pkg) iversion=$(installed_pkg_info version $pkg) irelease=$(installed_pkg_info release $pkg) - echo -e "$iname ${color_green}$iversion${color_reset}-${color_blue}$irelease${color_reset}" + echo -e "$iname ${GREEN}$iversion${CRESET}-${BLUE}$irelease${CRESET}" done } @@ -88,7 +88,7 @@ listorphan() { iname=$(installed_pkg_info name $all) iversion=$(installed_pkg_info version $all) irelease=$(installed_pkg_info release $all) - echo -e "$iname ${color_green}$iversion${color_reset}-${color_blue}$irelease${color_reset}" + echo -e "$iname ${GREEN}$iversion${CRESET}-${BLUE}$irelease${CRESET}" fi done @@ -99,9 +99,9 @@ searchpkg() { for port in ${PORT_REPO[@]}; do if [ -d $port ]; then pushd $port - OUTPUT=$(grep -R "# description" | grep -i "$1" | grep "$BUILD_SCRIPT" | cut -d '/' -f1) + OUTPUT=$(grep -R description | grep "$BUILD_SCRIPT:# description[[:blank:]]*:" | sed "s/$BUILD_SCRIPT:# description[[:blank:]]*://" | grep -i "$1" | cut -d '/' -f1) popd - if [ "$OUTPUT" ]; then + if [ -n "$OUTPUT" ]; then found=yes for out in ${OUTPUT[@]}; do if [ -f $port/$out/$BUILD_SCRIPT ]; then @@ -110,16 +110,16 @@ searchpkg() { popd if [ ! -z "$name" ] && [ ! -z "$version" ] && [ ! -z "$release" ]; then portname=$(basename $port) - search_result="${color_blue}($portname)${color_reset} ${color_purple}$name${color_reset} ${color_cyan}$version-$release${color_reset}" + search_result="${BLUE}($portname)${CRESET} ${PURPLE}$name${CRESET} ${CYAN}$version-$release${CRESET}" if [ -d $INDEX_DIR/$name ]; then iversion=$(installed_pkg_info version $name) irelease=$(installed_pkg_info release $name) [ -f $INDEX_DIR/$name/.lock ] && ITSLOCK="[locked]" if [ "$version-$release" = "$iversion-$irelease" ]; then - msg3 "$search_result ${color_green}[installed]${color_reset} ${color_blue}$ITSLOCK${color_reset}" + msg3 "$search_result ${GREEN}[installed]${CRESET} ${BLUE}$ITSLOCK${CRESET}" msg4 "$description" else - msg3 "$search_result ${color_yellow}[installed $iversion-$irelease]${color_reset} ${color_blue}$ITSLOCK${color_reset}" + msg3 "$search_result ${YELLOW}[installed $iversion-$irelease]${CRESET} ${BLUE}$ITSLOCK${CRESET}" msg4 "$description" fi else @@ -133,7 +133,7 @@ searchpkg() { fi fi done - if [ "$found" != "yes" ]; then + if [ ! "$found" ]; then msg "No matching package found." fi } @@ -142,7 +142,7 @@ checkowner() { for pkg in $(allinstalled); do for output in $(cat $INDEX_DIR/$pkg/.files | grep $1); do - echo -e "${color_cyan}$pkg${color_reset} => ${color_purple}$output${color_reset}" + echo -e "${CYAN}$pkg${CRESET} => ${PURPLE}$output${CRESET}" done done @@ -151,7 +151,7 @@ checkowner() { showtree() { if [ ! -f $INDEX_DIR/$1/.pkginfo ]; then - msg "Package ${color_red}$1${color_reset} not installed." + msg "Package ${RED}$1${CRESET} not installed." else while IFS=' ' read -r line; do echo "$line" @@ -166,14 +166,14 @@ checkintegrity() { for pkg in $(allinstalled); do while IFS=' ' read -r line; do if [ ! -e "$line" ]; then - msg "${color_blue}$pkg${color_reset} is missing: ${color_purple}/$line${color_reset}" + msg "${BLUE}$pkg${CRESET} is missing: ${PURPLE}/$line${CRESET}" MISSING_FILE=yes fi done < <(cat $INDEX_DIR/$pkg/.files) done popd - [ "$UID" != "0" ] && msg "${color_yellow}(check integrity is recommended run as root or using sudo)${color_reset}" + [ "$UID" != "0" ] && msg "${YELLOW}(check integrity is recommended run as root or using sudo)${CRESET}" [ ! "$MISSING_FILE" ] && msg "Your system file is consistent with package tree." } @@ -181,12 +181,12 @@ checkintegrity() { showpackageinfo() { if [ ! -f $1 ]; then - msg "${color_red}$1${color_reset} not exist." + msg "${RED}$1${CRESET} not exist." exit 1 else if [ $(tar -tf "$1" | grep -x ".pkginfo") ]; then getpkginfofrompkg $1 - echo -e "${color_green}info:${color_reset}" + echo -e "${GREEN}info:${CRESET}" [ "$name" ] && echo "name = $name" [ "$version" ] && echo "version = $version" [ "$release" ] && echo "release = $release" @@ -197,18 +197,18 @@ showpackageinfo() { [ "$makedepends" ] && for md in ${makedepends[@]}; do echo "makedepends = $md"; done echo "" if [ $(tar -tf "$1" | grep -x ".pkgreadme") ]; then - echo -e "${color_green}readme:${color_reset}" + echo -e "${GREEN}readme:${CRESET}" tar -xf $1 .pkgreadme -O echo "" echo "" fi if [ $(tar -tf "$1" | grep -x ".pkginstall") ]; then - echo -e "${color_green}pkginstall files:${color_reset}" + echo -e "${GREEN}pkginstall files:${CRESET}" tar -xf $1 .pkginstall -O echo "" fi else - msg "${color_yellow}$1${color_reset} is not package created by scratchpkg." + msg "${YELLOW}$1${CRESET} is not package created by scratchpkg." exit 1 fi fi @@ -222,27 +222,27 @@ showdepends() { getpkginfo popd else - msgerr "Port ${color_red}$1${color_reset} not exist." + msgerr "Port ${RED}$1${CRESET} not exist." exit 1 fi for dep in ${depends[@]}; do if [ -d $INDEX_DIR/$dep ]; then - msg2 "$dep ${color_green}[installed]${color_reset}" + msg2 "$dep ${GREEN}[installed]${CRESET}" elif getportpath $dep >/dev/null; then msg2 "$dep" else - msg2 "$dep ${color_red}[port not exist]${color_reset}" + msg2 "$dep ${RED}[port not exist]${CRESET}" fi done for mdep in ${makedepends[@]}; do if [ -d $INDEX_DIR/$mdep ]; then - msg2 "$mdep ${color_cyan}(make)${color_reset} ${color_green}[installed]${color_reset}" + msg2 "$mdep ${CYAN}(make)${CRESET} ${GREEN}[installed]${CRESET}" elif getportpath $mdep >/dev/null; then - msg2 "$mdep ${color_cyan}(make)${color_reset}" + msg2 "$mdep ${CYAN}(make)${CRESET}" else - msg "$mdep ${color_cyan}(make)${color_reset} ${color_red}[port not exist]${color_reset}" + msg "$mdep ${CYAN}(make)${CRESET} ${RED}[port not exist]${CRESET}" fi done } @@ -255,8 +255,8 @@ checkupdate() { iversion=$(installed_pkg_info version $pkg) irelease=$(installed_pkg_info release $pkg) [ -f "$INDEX_DIR/$pkg/.lock" ] && ITSLOCK="[locked]" - outdatemsg="$name ${color_red}$iversion-$irelease${color_reset} => ${color_green}$version-$release${color_reset} ${color_blue}$ITSLOCK${color_reset}" - newerinstmsg="$name ${color_red}$iversion-$irelease${color_reset} => ${color_green}$version-$release${color_reset} ${color_yellow}[newer installed]${color_reset} ${color_blue}$ITSLOCK${color_reset}" + outdatemsg="$name ${RED}$iversion-$irelease${CRESET} => ${GREEN}$version-$release${CRESET} ${BLUE}$ITSLOCK${CRESET}" + newerinstmsg="$name ${RED}$iversion-$irelease${CRESET} => ${GREEN}$version-$release${CRESET} ${YELLOW}[newer installed]${CRESET} ${BLUE}$ITSLOCK${CRESET}" if [ "$version" != "$iversion" ]; then vercomp $version $iversion if [ $? = 2 ]; then @@ -286,7 +286,7 @@ checkupdate() { showdependent() { if [ ! -d $INDEX_DIR/$1 ]; then - msg "Package ${color_red}$1${color_reset} not installed." + msg "Package ${RED}$1${CRESET} not installed." exit 1 else for all_installed in $(ls $INDEX_DIR); do @@ -301,7 +301,7 @@ showdependent() { for mdep in ${makedepend[@]}; do if [ $mdep = $1 ]; then DP=yes - msg2 "$all_installed ${color_cyan}(make)${color_reset}" + msg2 "$all_installed ${CYAN}(make)${CRESET}" fi done done @@ -321,7 +321,7 @@ showglobaldependent() { if [ $dep = $1 ]; then GDP=yes if [ -d $INDEX_DIR/$all ]; then - msg2 "$all ${color_green}[installed]${color_reset}" + msg2 "$all ${GREEN}[installed]${CRESET}" else msg2 "$all" fi @@ -332,9 +332,9 @@ showglobaldependent() { if [ $mdep = $1 ]; then GDP=yes if [ -d $INDEX_DIR/$all ]; then - msg2 "$all ${color_cyan}(make)${color_reset} ${color_green}[installed]${color_reset}" + msg2 "$all ${CYAN}(make)${CRESET} ${GREEN}[installed]${CRESET}" else - msg2 "$all ${color_cyan}(make)${color_reset}" + msg2 "$all ${CYAN}(make)${CRESET}" fi fi done @@ -447,11 +447,11 @@ pkgcache() { ALL_SOURCES_SIZE=0M fi - msg "${color_cyan}Package cache ($ALL_PACKAGES_SIZE):${color_reset}" + msg "${CYAN}Package cache ($ALL_PACKAGES_SIZE):${CRESET}" [ ${#ALL_PACKAGES[@]} -gt 0 ] && (echo ${ALL_PACKAGES[@]} | tr ' ' '\n') || echo "(none)" echo "" - msg "${color_cyan}Source cache ($ALL_SOURCES_SIZE):${color_reset}" + msg "${CYAN}Source cache ($ALL_SOURCES_SIZE):${CRESET}" [ ${#ALL_SOURCES[@]} -gt 0 ] && (echo ${ALL_SOURCES[@]} | tr ' ' '\n') || echo "(none)" } @@ -518,15 +518,15 @@ listports() { for ports in $(ls $repo/*/$BUILD_SCRIPT | rev | cut -d '/' -f2 | rev 2>/dev/null); do . "$repo/$ports/$BUILD_SCRIPT" if [ -f "$PACKAGE_DIR/$name-$version-$release.spkg.txz" ]; then - echo -e "$name ${color_green}$version${color_reset}-${color_blue}$release${color_reset} ${color_purple}[*]${color_reset}" + echo -e "$name ${GREEN}$version${CRESET}-${BLUE}$release${CRESET} ${PURPLE}[*]${CRESET}" else - echo -e "$name ${color_green}$version${color_reset}-${color_blue}$release${color_reset}" + echo -e "$name ${GREEN}$version${CRESET}-${BLUE}$release${CRESET}" fi done fi done - [ "$REPO_EXIST" ] || msgerr "Repository ${color_red}$1${color_reset} not exist." + [ "$REPO_EXIST" ] || msgerr "Repository ${RED}$1${CRESET} not exist." } @@ -611,10 +611,10 @@ missingdep() { done fi if [ ${#msd[@]} -gt 0 ]; then - echo -e "${color_green}$pkg${color_reset} missing ${color_red}${msd[@]}${color_reset}" + echo -e "${GREEN}$pkg${CRESET} missing ${RED}${msd[@]}${CRESET}" fi if [ ${#msmd[@]} -gt 0 ]; then - echo -e "${color_green}$pkg${color_reset} missing ${color_red}${msmd[@]}${color_reset} ${color_blue}(make)${color_reset}" + echo -e "${GREEN}$pkg${CRESET} missing ${RED}${msmd[@]}${CRESET} ${BLUE}(make)${CRESET}" fi done @@ -644,7 +644,7 @@ missingport() { for dep in $depends; do if ! getportpath $dep >/dev/null; then ms+=($dep) - #echo -e "${color_green}$portname${color_reset} requires ${color_red}$dep${color_reset}" + #echo -e "${GREEN}$portname${CRESET} requires ${RED}$dep${CRESET}" fi done fi @@ -652,15 +652,15 @@ missingport() { for mdep in $makedepends; do if ! getportpath $mdep >/dev/null; then mms+=($mdep) - #echo -e "${color_green}$portname${color_reset} requires ${color_red}$mdep${color_reset} ${color_blue}(make)${color_reset}" + #echo -e "${GREEN}$portname${CRESET} requires ${RED}$mdep${CRESET} ${BLUE}(make)${CRESET}" fi done fi if [ ${#ms[@]} -gt 0 ]; then - echo -e "${color_green}$portname${color_reset} requires ${color_red}${ms[@]}${color_reset}" + echo -e "${GREEN}$portname${CRESET} requires ${RED}${ms[@]}${CRESET}" fi if [ ${#mms[@]} -gt 0 ]; then - echo -e "${color_green}$portname${color_reset} requires ${color_red}${mms[@]}${color_reset} ${color_blue}(make)${color_reset}" + echo -e "${GREEN}$portname${CRESET} requires ${RED}${mms[@]}${CRESET} ${BLUE}(make)${CRESET}" fi done done @@ -684,7 +684,6 @@ Options: -pd, --package-dir override directory path for compiled package -v, --verbose verbose process -im, --ignore-mdsum skip md5sum check for sources - -um, --update-mdsum update md5sum file for port -do, --download-only download sources only -eo, --extract-only extract sources only -kw, --keep-work keep working directory @@ -752,7 +751,6 @@ parse_options() { -fr | --force-rebuild) OPTS+=($1) ;; -v | --verbose) OPTS+=($1) ;; -im | --ignore-mdsum) OPTS+=($1) ;; - -um | --update-mdsum) OPTS+=($1) ;; -do | --download-only) OPTS+=($1) ;; -eo | --extract-only) OPTS+=($1) ;; -kw | --keep-work) OPTS+=($1) ;; diff --git a/spkgbuild.proto b/spkgbuild.proto index d353b0e..7b8aecc 100644 --- a/spkgbuild.proto +++ b/spkgbuild.proto @@ -10,6 +10,7 @@ version= release=1 options=() source=() +md5sum=() build() { cd $name-$version