App-BS

 view release on metacpan or  search on metacpan

Build.PL  view on Meta::CPAN

use Devel::CheckBin;

check_bin('pacman');
check_bin('pacinfo');
check_bin('pactree');
check_bin('pacsift');
check_bin('arch-rebuild-order');
check_bin('expac');
check_bin('makechrootpkg');
check_bin('makepkg');
check_bin('gpg');

my %args = (
    license              => 'perl_5',
    dynamic_config       => 0,

    configure_requires => {
        'Module::Build' => '0.4005',
    },

    requires => {

minil.toml  view on Meta::CPAN

#c_source = [ 'src' ]
requires_external_bin = [
    "pacman",
    "pacinfo",
    "pactree",
    "pacsift",
    "arch-rebuild-order",
    "expac",
    "makechrootpkg",
    "makepkg",
    "gpg",
]

[XSUtil]
requires_c99_compiler = 1
generate_ppport_h = 1
generate_xshelper_h = 1
cc_warnings = 1

script/bs-sign  view on Meta::CPAN

shopt -s nullglob

[[ ${BS_DEBUG:-0} -ne 0 ]] && set -x;

#export scriptdir="${0//\/$(basename "$0")}"
. "$scriptdir/bs-common.sh"

export repodb="${BS_REPO:-$AURDIT_REPO}/universe.db.tar.zst"
export repodb_base="$(basename $repodb)"
export repodir="${repodb//$repodb_base/}"
export gpgpubid="${BS_GPG_PUBID:-${BS_GPGFPR:-${GPGKEYID}}}"
export pkgdest="${BS_PKGDEST:-$PKGDEST}"

signpkgs() {
  _sign_rel_flow "$@"
}

_sign_rel_flow() {
  files=("$@")
  echo "Signing ${files[*]}..."

script/bs-sign  view on Meta::CPAN


  if [[ -f "$f.sig" ]]; then
    echo "[â—Ž] Signature file already exists for '$f'."
    if [[ "$BS_CLOBBER" -ne 1 ]]; then
      echo "Skipping..."
    else
      rm -r "$f.sig"
      signpkg "$f"
    fi
  else
    gpg -u "$gpgpubid" -sb "$f"
    gpgerr=$?
    [[ $gpgerr -eq 0 ]] \
       && echo "[●] Signed '$f' with '$gpgpubid'"
  fi

  return $gpgerr
}

copy2repo() {
  f="$1"
  status=0

  if [[ -f "$repodir/$(basename $f)" ]] && [[ "$BS_CLOBBER" -ne 1 ]]; then
    printf "[â—Ž] Package with identical filename '%s' already exists " \
      "$(basename "$f")"
    printf "in repo '%s'. Skipping...\n" "$repodb"

script/bs-sign  view on Meta::CPAN

      && echo "[●] Copied '$f' to repo '$repodir'..."
  fi

  return $status
}

repoadd() {
  f="$1"

  repo-add -$([[ $BS_CLOBBER -ne 1 ]] && printf "%s" "n")psv --include-sigs \
   -k"${gpgpubid}" "${repodb}" "${repodir}/$(basename "$f")"

  repoaddexit=$?
  if [[ $repoaddexit -eq 0 ]]; then
    echo "[●] \`repo-add -nps... '$repodb' '$f'\` exited successfully!"
  else
    >&2 echo "[✖︎] \`repo-add -nps... '$repodb' '$f'\` failed with '$repoaddexit'!"
  fi

  return $repoaddexit
}

script/buildpkg.sh  view on Meta::CPAN


  sudo cp -vaf "$target/"{makepkg.conf,pacman.conf} "$CHROOT/root/etc/"
  sudo cp -vaf "$target/"{makepkg.conf,pacman.conf} "$CHROOT/nameless/etc/"

  startts="$(epoch)"
  localbuilt=()

  cd "$BS_ROOT/pkgbuild/$pkg" || return $?

  say "Adding keys included in $pkg PKGBUILD repo..."
  gpg --verbose --import keys/pgp/*.asc
  
  say "Building $pkg in CHROOT at $CHROOT..."
  makechrootpkg -Cunc -- -CLAfisc

  echo "Updating $pkg .SRCINFO..."
  makepkg --printsrcinfo > ".SRCINFO"
 
  endts=$(epoch)
  
  localbuilt=$("$(makepkg --packagelist)")

script/makepkgs.sh  view on Meta::CPAN

#   git rebase --continue
#
#   return $?)
#}

run_makepkg() {
  local pkg="$1"

  (cd "$BS_ROOT/pkgbuild/$pkgbase" || continue

    gpg --import keys/pgp/*
    makepkg --allsource
    makepkg -LAfis

    [[ $? -ne 0 ]] && failures+=("$pkgbase")

    echo "$(makepkg --packagelist)" \
      >> "makepkgs_success_$(date +%s).txt"

    cd "$BS_ROOT/pkgbuild")
}



( run in 1.308 second using v1.01-cache-2.11-cpan-df04353d9ac )