diff options
| author | davidovski <david@davidovski.xyz> | 2021-10-05 16:35:17 +0100 | 
|---|---|---|
| committer | davidovski <david@davidovski.xyz> | 2021-10-05 16:35:17 +0100 | 
| commit | cdea2f67ae42d4220e19a555259b69a960925283 (patch) | |
| tree | b1cc697e6e0203b3ce02e15b8baa4f73f84e34c8 /psibuild | |
| parent | 16e799786f34721e646e14a2b7e7ab3816137f1a (diff) | |
renamed
Diffstat (limited to 'psibuild')
| -rwxr-xr-x | psibuild | 144 | 
1 files changed, 0 insertions, 144 deletions
diff --git a/psibuild b/psibuild deleted file mode 100755 index 3b26fed..0000000 --- a/psibuild +++ /dev/null @@ -1,144 +0,0 @@ -#!/bin/bash - -PSI_ROOT=$(pwd) - -ERROR="\033[0;31m" -INFO="\033[0;34m" -PASS="\033[0;32m" -NEUTRAL="\033[0;33m" -RESET="\033[0m" - -MAKEFLAGS="-j11" -alias make="make $MAKEFLAGS" - -usage () { - cat << EOF -usage: $0 PSIBUILD  -EOF -} - -psibuild () { -    BUILD_FILE=${@: -1} - -    cd $PSI_ROOT - -    [[ $# = 0 ]] && usage && exit 1 -    [ ! -f "$BUILD_FILE" ] && echo "$BUILD_FILE not found" && exit 1 - -    clean () { -        # clean up -        rm -rf $PKG_BUILD_DIR -        rmdir $PSI_ROOT/tmp > /dev/null 2>&1 -    } - -    build () { -        printf "\tpassing missing build stage..." -    } -    package () { -        echo "Passing missing package stage" -    } - -    source $BUILD_FILE - -    PKG_NAME=$(basename $BUILD_FILE .psibuild) - -    LOGFILE=$PSI_ROOT/logs/$PKG_NAME.log -    PKGS_OUTPUT=$PSI_ROOT/ppkgs -    PKG_FILE=$PKGS_OUTPUT/$PKG_NAME.ppkg - -    PKG_BUILD_DIR=$PSI_ROOT/tmp/$PKG_NAME -    PKG_DEST=$PKG_PSI_ROOT/tmp/$PKG_NAME.package - -    # make sure build dir is clean before starting -    rm -rf $PKG_BUILD_DIR - -    # make the directories -    mkdir -p $PKG_BUILD_DIR -    mkdir -p $PKG_DEST -    mkdir -p $PKGS_OUTPUT -    mkdir -p $PSI_ROOT/logs - -    date > $LOGFILE -    echo "Build log for $PKG_NAME from $BUILD_FILE\n" >> $LOGFILE -    printf "\033[0;36m====> $PKG_NAME.ppkg\n" | tee -a $LOGFILE - -    cd $PKG_BUILD_DIR - -    # fetch, build then package the package -    ############ - -    # try get the commit hash for the package -    VER_HASH=$(git ls-remote $SOURCE HEAD | awk '{ print $1 }') - -    # If we already have this package, don't waste our time -    if [ -f "$PKG_FILE.info" ] && [ -f "$PKG_FILE" ]; then -        EXISTING_HASH=$(grep -a "VER_HASH" $PKG_FILE.info | sed "s/VER_HASH=//") - -        echo "Comparing $EXISTING_HASH to $VER_HASH" >> $LOGFILE - -        printf "$INFO\tvalidating commit hash..."; -        if [ "$EXISTING_HASH" == "$VER_HASH" ]; then -            printf "$NEUTRAL package exists\n" -            return 0; -        else  -            printf "$NEUTRAL package outdated\n" -        fi -    fi - -    printf "$INFO\tfetching package..."; -    git clone $SOURCE . >> $LOGFILE 2>&1 && printf "$PASS fetched $(du -sh $PKG_BUILD_DIR | awk '{ print $1 }') source\n" || printf "$ERROR error! See log\n" - -    printf "$INFO\tbuilding package..."; -    build >> $LOGFILE 2>&1 && printf "$PASS built\n" || printf "$ERROR error! See log\n"; -     - -    printf "\033[0;34m\tpackaging package...\033[0m"; -    package >> $LOGFILE 2>&1 && printf "$PASS packaged\n" || printf "$ERROR error! See log\n" -     - -    # go back to root, make things easier -    cd $PSI_ROOT - -    printf "$INFO\tarchiving package..."; -    tar -C $PKG_DEST -czf $PKG_FILE ./ >> $LOGFILE 2>&1 && printf "$PASS archived to $(du -sh $PKG_FILE | awk '{ print $1 }')\n" || printf "$ERROR error! See log\n" - - -    # create info file -    printf "$INFO\tcreating ppkg.info..."; -    PKG_INFO=$PKGS_OUTPUT/$PKG_NAME.ppkg.info - -    echo "" > $PKG_INFO -    echo "NAME=$PKG_NAME" >> $PKG_INFO -    echo "PKG_FILE=$PKG_NAME.ppkg" >> $PKG_INFO -    echo "CHECKSUM=$(md5sum $PKG_FILE | awk '{ print $1 }')" >> $PKG_INFO -    echo "VER_HASH=$VER_HASH" >> $PKG_INFO -    echo "SOURCE=$SOURCE" >> $PKG_INFO -    echo "DATE=$(date)" >> $PKG_INFO -    echo "DEPS=(${DEPS[*]})" >> $PKG_INFO - -    printf "$INFOsigning..."; -    # sign the package -    PRIV_KEY=$PSI_ROOT/keychain/psi.pem -    PUB_KEY=$PSI_ROOT/keychain/psi.pub - -    if [ -f "$PRIV_KEY" ]; then -        echo "SIGNATURE=" >> $PKG_INFO -        openssl dgst -sign $PRIV_KEY $PKG_FILE >> $PKG_INFO -    else -        echo "SIGNATURE=">> $PKG_INFO -        echo "unsigned">> $PKG_INFO -        >&2 printf "$ERROR WARNING! No private key: unsigned packages!\n" -    fi -    printf "$PASS signed\n"; - -    printf "$PASS successfully built $PKG_NAME to $(basename $PKG_FILE)$RESET\n\n" - -    clean -} - - -FILES=$@ - -for BUILD_FILE in $FILES; do -    psibuild $BUILD_FILE -done  | 
