From aa28e4fdd715963d5509ea1a947584e89b05ad9a Mon Sep 17 00:00:00 2001 From: Igor Pecovnik Date: Thu, 7 Oct 2021 18:23:07 +0200 Subject: [PATCH] Init --- .gitignore | 1 + HASH | 1 + README.md | 21 + VERSION | 1 + betarepository.sh | 87 ++++ cacherebuild.sh | 420 ++++++++++++++++++ configs/config-all-new-RC-images.conf | 16 + configs/config-all-new-beta-bsp.conf | 22 + configs/config-all-new-beta-images.conf | 16 + configs/config-all-new-beta-kernels.conf | 18 + configs/config-all-new-stable-bsp.conf | 22 + configs/config-all-new-stable-images.conf | 17 + configs/config-all-new-stable-kernels.conf | 15 + configs/config-all-new-stable-u-boot.conf | 17 + configs/config-default.conf | 24 + configs/config-docker.conf | 143 ++++++ configs/config-example.conf | 24 + configs/config-single.conf | 20 + configs/lib.config | 6 + hash-beta/foe | 0 hash-beta/linux-image-current-imx6.githash | 2 + .../linux-image-current-jetson-nano.githash | 2 + hash-beta/linux-image-current-meson64.githash | 2 + hash-beta/linux-image-current-mvebu.githash | 2 + hash-beta/linux-image-current-mvebu64.githash | 2 + .../linux-image-current-odroidxu4.githash | 2 + hash-beta/linux-image-current-rk322x.githash | 2 + .../linux-image-current-rockchip.githash | 2 + .../linux-image-current-rockchip64.githash | 2 + hash-beta/linux-image-current-sunxi.githash | 2 + hash-beta/linux-image-current-sunxi64.githash | 2 + hash-beta/linux-image-current-virtual.githash | 2 + hash-beta/linux-image-edge-imx6.githash | 2 + .../linux-image-edge-jetson-nano.githash | 2 + hash-beta/linux-image-edge-meson64.githash | 2 + hash-beta/linux-image-edge-mvebu.githash | 2 + hash-beta/linux-image-edge-mvebu64.githash | 2 + hash-beta/linux-image-edge-odroidxu4.githash | 2 + hash-beta/linux-image-edge-rk322x.githash | 2 + hash-beta/linux-image-edge-rockchip.githash | 2 + hash-beta/linux-image-edge-rockchip64.githash | 2 + hash-beta/linux-image-edge-sunxi.githash | 2 + hash-beta/linux-image-edge-sunxi64.githash | 2 + .../linux-image-legacy-jetson-nano.githash | 2 + hash-beta/linux-image-legacy-meson64.githash | 2 + hash-beta/linux-image-legacy-mt7623.githash | 2 + hash-beta/linux-image-legacy-mvebu64.githash | 2 + .../linux-image-legacy-odroidxu4.githash | 2 + hash-beta/linux-image-legacy-rk322x.githash | 2 + hash-beta/linux-image-legacy-rk3399.githash | 2 + hash-beta/linux-image-legacy-rockchip.githash | 2 + .../linux-image-legacy-rockchip64.githash | 2 + hash-beta/linux-image-legacy-sun50iw9.githash | 2 + hash/foe | 0 hash/linux-image-current-imx6.githash | 2 + hash/linux-image-current-jetson-nano.githash | 2 + hash/linux-image-current-meson64.githash | 2 + hash/linux-image-current-mvebu.githash | 2 + hash/linux-image-current-mvebu64.githash | 2 + hash/linux-image-current-odroidxu4.githash | 2 + hash/linux-image-current-rk322x.githash | 2 + hash/linux-image-current-rockchip.githash | 2 + hash/linux-image-current-rockchip64.githash | 2 + hash/linux-image-current-sunxi.githash | 2 + hash/linux-image-current-sunxi64.githash | 2 + hash/linux-image-current-virtual.githash | 2 + hash/linux-image-edge-imx6.githash | 2 + hash/linux-image-edge-jetson-nano.githash | 2 + hash/linux-image-edge-meson64.githash | 2 + hash/linux-image-edge-mvebu.githash | 2 + hash/linux-image-edge-mvebu64.githash | 2 + hash/linux-image-edge-odroidxu4.githash | 2 + hash/linux-image-edge-rk322x.githash | 2 + hash/linux-image-edge-rockchip.githash | 2 + hash/linux-image-edge-rockchip64.githash | 2 + hash/linux-image-edge-sunxi.githash | 2 + hash/linux-image-edge-sunxi64.githash | 2 + hash/linux-image-legacy-jetson-nano.githash | 2 + hash/linux-image-legacy-meson64.githash | 2 + hash/linux-image-legacy-mt7623.githash | 2 + hash/linux-image-legacy-mvebu64.githash | 2 + hash/linux-image-legacy-odroidxu4.githash | 2 + hash/linux-image-legacy-rk322x.githash | 2 + hash/linux-image-legacy-rk3399.githash | 2 + hash/linux-image-legacy-rockchip.githash | 2 + hash/linux-image-legacy-rockchip64.githash | 2 + hash/linux-image-legacy-sun50iw9.githash | 2 + selected-images.sh | 39 ++ ubootrebuild.sh | 17 + 89 files changed, 1079 insertions(+) create mode 100644 .gitignore create mode 100644 HASH create mode 100644 README.md create mode 100644 VERSION create mode 100755 betarepository.sh create mode 100755 cacherebuild.sh create mode 100644 configs/config-all-new-RC-images.conf create mode 100644 configs/config-all-new-beta-bsp.conf create mode 100644 configs/config-all-new-beta-images.conf create mode 100644 configs/config-all-new-beta-kernels.conf create mode 100644 configs/config-all-new-stable-bsp.conf create mode 100644 configs/config-all-new-stable-images.conf create mode 100644 configs/config-all-new-stable-kernels.conf create mode 100644 configs/config-all-new-stable-u-boot.conf create mode 100644 configs/config-default.conf create mode 100644 configs/config-docker.conf create mode 100644 configs/config-example.conf create mode 100644 configs/config-single.conf create mode 100644 configs/lib.config create mode 100644 hash-beta/foe create mode 100644 hash-beta/linux-image-current-imx6.githash create mode 100644 hash-beta/linux-image-current-jetson-nano.githash create mode 100644 hash-beta/linux-image-current-meson64.githash create mode 100644 hash-beta/linux-image-current-mvebu.githash create mode 100644 hash-beta/linux-image-current-mvebu64.githash create mode 100644 hash-beta/linux-image-current-odroidxu4.githash create mode 100644 hash-beta/linux-image-current-rk322x.githash create mode 100644 hash-beta/linux-image-current-rockchip.githash create mode 100644 hash-beta/linux-image-current-rockchip64.githash create mode 100644 hash-beta/linux-image-current-sunxi.githash create mode 100644 hash-beta/linux-image-current-sunxi64.githash create mode 100644 hash-beta/linux-image-current-virtual.githash create mode 100644 hash-beta/linux-image-edge-imx6.githash create mode 100644 hash-beta/linux-image-edge-jetson-nano.githash create mode 100644 hash-beta/linux-image-edge-meson64.githash create mode 100644 hash-beta/linux-image-edge-mvebu.githash create mode 100644 hash-beta/linux-image-edge-mvebu64.githash create mode 100644 hash-beta/linux-image-edge-odroidxu4.githash create mode 100644 hash-beta/linux-image-edge-rk322x.githash create mode 100644 hash-beta/linux-image-edge-rockchip.githash create mode 100644 hash-beta/linux-image-edge-rockchip64.githash create mode 100644 hash-beta/linux-image-edge-sunxi.githash create mode 100644 hash-beta/linux-image-edge-sunxi64.githash create mode 100644 hash-beta/linux-image-legacy-jetson-nano.githash create mode 100644 hash-beta/linux-image-legacy-meson64.githash create mode 100644 hash-beta/linux-image-legacy-mt7623.githash create mode 100644 hash-beta/linux-image-legacy-mvebu64.githash create mode 100644 hash-beta/linux-image-legacy-odroidxu4.githash create mode 100644 hash-beta/linux-image-legacy-rk322x.githash create mode 100644 hash-beta/linux-image-legacy-rk3399.githash create mode 100644 hash-beta/linux-image-legacy-rockchip.githash create mode 100644 hash-beta/linux-image-legacy-rockchip64.githash create mode 100644 hash-beta/linux-image-legacy-sun50iw9.githash create mode 100644 hash/foe create mode 100644 hash/linux-image-current-imx6.githash create mode 100644 hash/linux-image-current-jetson-nano.githash create mode 100644 hash/linux-image-current-meson64.githash create mode 100644 hash/linux-image-current-mvebu.githash create mode 100644 hash/linux-image-current-mvebu64.githash create mode 100644 hash/linux-image-current-odroidxu4.githash create mode 100644 hash/linux-image-current-rk322x.githash create mode 100644 hash/linux-image-current-rockchip.githash create mode 100644 hash/linux-image-current-rockchip64.githash create mode 100644 hash/linux-image-current-sunxi.githash create mode 100644 hash/linux-image-current-sunxi64.githash create mode 100644 hash/linux-image-current-virtual.githash create mode 100644 hash/linux-image-edge-imx6.githash create mode 100644 hash/linux-image-edge-jetson-nano.githash create mode 100644 hash/linux-image-edge-meson64.githash create mode 100644 hash/linux-image-edge-mvebu.githash create mode 100644 hash/linux-image-edge-mvebu64.githash create mode 100644 hash/linux-image-edge-odroidxu4.githash create mode 100644 hash/linux-image-edge-rk322x.githash create mode 100644 hash/linux-image-edge-rockchip.githash create mode 100644 hash/linux-image-edge-rockchip64.githash create mode 100644 hash/linux-image-edge-sunxi.githash create mode 100644 hash/linux-image-edge-sunxi64.githash create mode 100644 hash/linux-image-legacy-jetson-nano.githash create mode 100644 hash/linux-image-legacy-meson64.githash create mode 100644 hash/linux-image-legacy-mt7623.githash create mode 100644 hash/linux-image-legacy-mvebu64.githash create mode 100644 hash/linux-image-legacy-odroidxu4.githash create mode 100644 hash/linux-image-legacy-rk322x.githash create mode 100644 hash/linux-image-legacy-rk3399.githash create mode 100644 hash/linux-image-legacy-rockchip.githash create mode 100644 hash/linux-image-legacy-rockchip64.githash create mode 100644 hash/linux-image-legacy-sun50iw9.githash create mode 100755 selected-images.sh create mode 100755 ubootrebuild.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..4ba60981 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/*.conf diff --git a/HASH b/HASH new file mode 100644 index 00000000..3ff08164 --- /dev/null +++ b/HASH @@ -0,0 +1 @@ +593104add4263d54f2de7b1095ad561db0d42938 diff --git a/README.md b/README.md new file mode 100644 index 00000000..626a7b7c --- /dev/null +++ b/README.md @@ -0,0 +1,21 @@ + - cacherebuild.sh is a script which can run at PUSH + once per day. It regenerates cache: + - all cache 4 days before end of the month (for next month) which is enough that cache is sync across our network + - changed cache where packages were changed + - gpg signing should be done elsewhere + - ubootrebuild.sh builds all u-boots. + - Can be ran manually - before starting testing new release. + - can run on public server + - betarepository.sh builds all kernels if changed + - only builds changed kernels + - always build BSP + - bump nighly version + - update repository + - selected-images.sh builds image for or more boards + + +# VERSION + +- bug fix releases for selected images +- new stable images added after major release +- BSP will be recreated for all and pushed to stable repository +- build artefacts for selected builds will also be pushed to stable repository diff --git a/VERSION b/VERSION new file mode 100644 index 00000000..a6b6c7aa --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +21.08.3 diff --git a/betarepository.sh b/betarepository.sh new file mode 100755 index 00000000..3296ed6f --- /dev/null +++ b/betarepository.sh @@ -0,0 +1,87 @@ +#!/bin/bash + +#BLTPATH="/build/" +PULL_FROM="master" + +# load config file to override default values +[[ -f betarepository.conf ]] && source betarepository.conf + +# delete lock file after 6 hours +sudo find /run -name nightly-repo -type f -mmin +1440 -delete + +# exit if kernel update is running +[[ -f /var/run/nightly-repo ]] && echo "Previous job didn't finished." && exit 0 +[[ -f ${BLTPATH}output/debs-beta/.waiting ]] && echo "Repository update in progress. Job will restart automatically!" && exit 0 + +# remove lock file on exit +trap '{ sudo rm -f -- "/var/run/nightly-repo"; }' EXIT +sudo sh -c 'echo $$ > /var/run/nightly-repo' + +# remove user configs +sudo rm ${BLTPATH}userpatches/targets.conf 2>/dev/null + +cd ${BLTPATH} + +# refresh +sudo git pull +sudo git clean -f + +# pull changes from master and push to nightly +CURRENT=`sudo git branch | grep "*" | awk '{print $2}'` + +# exit if not on nightly +[[ "$CURRENT" != "nightly" ]] && exit 1 + +# pull from desktop +sudo git checkout -f $PULL_FROM +sudo git reset --hard origin/$PULL_FROM +sudo git fetch +sudo git merge origin/$PULL_FROM +sudo git checkout ${CURRENT} +sudo git merge $PULL_FROM ${CURRENT} --no-ff --no-edit + +# exit if push to nightly is not possible +[[ $(sudo git branch | grep "*" | awk '{print $2}') != nightly ]] && exit 1 +echo "1" +[[ $? -eq 0 ]] && sudo git push || exit 1 + +# Build kernels if there is any change to patches, config or upstream +# +# Add patches with label: "beta" or "need testings" +# +#for h in $(sudo gh pr list --label "8.beta" --label "7.needs testing" -R "https://github.com/armbian/build" | cut -f1 | xargs); do +# KOMANDA="sudo wget -qO - https://github.com/armbian/build/pull/$h.patch | sudo git apply --whitespace=nowarn" +# eval $KOMANDA +#done + +./compile.sh all-new-beta-kernels + +if [[ $? -ne 0 ]]; then + # report error + exit 1 +elif [[ "$(cat .tmp/n 2> /dev/null)" -eq 0 ]]; then + sudo rm -f /var/run/nightly-repo + exit 0 +fi + +# exit if not changes +if [[ -n $(cat output/debug/output.log| grep Error) ]]; then + echo "Error" + # report for error + exit 1 +fi + +# create BSP +./compile.sh all-new-beta-bsp +[[ $? -ne 0 ]] && exit 1 + +sleep 1m +touch output/debs-beta/.waiting +echo "Updating repository" +while : +do + sleep 15m + echo "." + [[ ! -f output/debs-beta/.waiting ]] && break +done +./compile.sh all-new-beta-kernels BUMP_VERSION="yes" diff --git a/cacherebuild.sh b/cacherebuild.sh new file mode 100755 index 00000000..3a80783b --- /dev/null +++ b/cacherebuild.sh @@ -0,0 +1,420 @@ +#!/bin/bash + +BLTPATH="$(pwd)/" # path of the build script +FORCE=yes # yes | force = remove cache and create new one +FORCED_MONTH_OFFSET=0 # cache is valid one month. This allows creation in advance +MAKEFORALLAPPS="no" # yes = make all app combinations. It might be too much. If not set, hardcoded values are choosen +PARALLEL_BUILDS="" # choose how many you want to run in parallel. Leave empty for auto +USE_SCREEN="no" # run commands in screen +FORCE_RELEASE="hirsute bullseye" # we only build supported releases caches. her you can add unsupported ones which you wish to experiment +FORCE_DESKTOP="cinnamon" # we only build supported desktop caches. here you can add unsupported ones which you wish to build anyway +PURGEDAYS="4" # delete files that are older then n days and are not used anymore + + + + +# +# Fancy status display +# +display_alert() +{ + + local tmp="" + [[ -n $2 ]] && tmp="[\e[0;33m $2 \x1B[0m]" + + case $3 in + + err) + echo -e "[\e[0;31m error \x1B[0m] $1 $tmp" + ;; + + wrn) + echo -e "[\e[0;35m warn \x1B[0m] $1 $tmp" + ;; + + ext) + echo -e "[\e[0;32m o.k. \x1B[0m] \e[1;32m$1\x1B[0m $tmp" + ;; + + info) + echo -e "[\e[0;32m o.k. \x1B[0m] $1 $tmp" + ;; + + *) + echo -e "[\e[0;32m .... \x1B[0m] $1 $tmp" + ;; + + esac + +} + + + + +# +# Cycle main build commands +# +function boards +{ + + # we only need to select one 32 and one 64bit board + local TARGETS=(lepotato bananapi) + for h in "${TARGETS[@]}" + do + + PARAMETER="" + + [[ $PARALLEL_BUILDS -gt 1 && $USE_SCREEN == yes ]] && PARAMETER="screen -dmSL ${h}$1 " + + PARAMETER+="${BLTPATH}compile.sh BOARD=\"$h\" BRANCH=\"current\" RELEASE=\"$1\"" + if [[ $2 == cli* ]]; then + + PARAMETER+=" BUILD_MINIMAL=\"$4\" BUILD_DESKTOP=\"no\" DESKTOP_ENVIRONMENT=\"\"" + + else + + PARAMETER+=" BUILD_MINIMAL=\"no\" BUILD_DESKTOP=\"yes\" DESKTOP_ENVIRONMENT=\"$2\"" + + fi + + PARAMETER+=" DESKTOP_ENVIRONMENT_CONFIG_NAME=\"$4\" DESKTOP_APPGROUPS_SELECTED=\"$5\" ROOT_FS_CREATE_ONLY=\"${FORCE}\" KERNEL_ONLY=\"no\" " + PARAMETER+=" KERNEL_CONFIGURE=\"no\" OFFLINE_WORK=\"yes\" FORCED_MONTH_OFFSET=\"${FORCED_MONTH_OFFSET}\" IGNORE_UPDATES=\"yes\" SYNC_CLOCK=\"no\" " + PARAMETER+=" REPOSITORY_INSTALL=\"u-boot,kernel,bsp,armbian-config,armbian-firmware\" EXPERT=\"yes\" USE_TORRENT=\"no\" APT_PROXY_ADDR=\"10.0.10.10:3142\"" + + [[ $USE_SCREEN != yes ]] && PARAMETER+=" &" + + r=$(( r + 1 )) + vari=$2 + + # support for older way. will be deprecated once merged + [[ ! -d config/desktop && $2 == cli_1 ]] && vari=cli + [[ ! -d config/desktop && $2 == cli_2 ]] && vari=minimal + [[ ! -d config/desktop && $2 == xfce ]] && vari=xfce-desktop + + CURRENT_TIME=$(date +%s) + + [[ $h == "lepotato" ]] && build_architec="arm64" || build_architec="armhf" + + if [[ ${DISPLAY_STAT} == yes ]]; then + echo "Rebuilding cache: $(( CURRENT_TIME - START_TIME ))" + echo "[ ${r}. $1_${build_architec}_$2" "$3" "$4" "$5 ]" + echo "" + fi + + echo "$PARAMETER" >> ../build-rootfs/filelist.txt + + # store pids + PIDS=$PIDS" "$(echo $!) + + while : + do + sleep 0.5 + CURRENT_TIME=$(date +%s) + CONCURENT=$(df | grep /.tmp | wc -l) + FREE_MEM=$(free | grep Mem | awk '{print $4/$2 * 100}' | awk '{print int($1+0.5)}') + + if [[ ${CONCURENT} -le ${PARALLEL_BUILDS} ]]; then + break + fi + + done + + done + +} + + + + +# +# Cycle or scan for releases we use +# +function releases +{ + + local releases=($(grep -rw config/distributions/*/ -e 'supported' | cut -d"/" -f3)) + [[ -n $FORCE_RELEASE ]] && local releases+=($FORCE_RELEASE) + + for i in ${releases[@]} + do + variants "$i" + done + +} + + + + +# +# Cycle build variants, cli, cli, minimal +# +function variants +{ + + local variants=(cli_1 cli_2) + local variants+=($(find -L config/desktop/$1/environments/ -name support -exec grep -l 'supported' {} \; | cut -d"/" -f5)) + [[ -n $FORCE_DESKTOP ]] && local variants+=($FORCE_DESKTOP) + + for j in ${variants[@]} + do + + build_desktop="yes" + build_minimal="no" + [[ $j == cli_1 ]] && build_desktop="no" && build_minimal="no" + [[ $j == cli_2 ]] && build_desktop="no" && build_minimal="yes" + + configs "$1" "$j" "$build_desktop" "$build_minimal" + + done + +} + + + + +# +# Cycle build configs - full / minimal / medium +# +function configs +{ + + if [[ -d config/desktop && $build_desktop != no ]]; then + + local configs=($(find -L config/desktop/$1/environments/$2/config* -name packages 2>/dev/null | cut -d"/" -f6 | uniq)) + + else + + local configs="$4" + + fi + + for k in ${configs[@]} + do + + appgroup "$1" "$2" "$3" "$k" + + done + +} + + + + +# +# Cycle appgroup and make all combinations +# +function appgroup +{ + + # optionally set limi from head. Default = all + local limit=16 + + if [[ -d config/desktop && $3 == "yes" && $MAKEFORALLAPPS == "yes" ]]; then + + string=$(find -L config/desktop/$1/appgroups/ -mindepth 1 -maxdepth 1 -type d 2> /dev/null | sort | cut -d"/" -f5 | head -${limit} | tr '\n' ' ' ) + string=$(printf '%s\n' "$string" | tr -s '[:blank:]' ' ') + wordCount=$(printf '%s\n' "$string" | wc -w) + start=1 + boards "$1" "$2" "$3" "$4" "" + while [ $start -le $wordCount ]; do + + end=$start + while [ $end -le $wordCount ]; do + + boards "$1" "$2" "$3" "$4" "$(printf '%s\n' "$string" | cut -d ' ' -f "$start-$end")" + end=$(( end + 1 )) + + done + start=$(( start + 1 )) + + done + + elif [[ -d config/desktop && $3 == "yes" ]]; then + + boards "$1" "$2" "$3" "$4" "" + boards "$1" "$2" "$3" "$4" "browsers" + boards "$1" "$2" "$3" "$4" "browsers chat desktop_tools editors email internet languages multimedia office programming remote_desktop" + + if [[ -d "config/desktop/$1/appgroups/3dsupport" ]]; then + boards "$1" "$2" "$3" "$4" "3dsupport browsers" + boards "$1" "$2" "$3" "$4" "3dsupport browsers chat desktop_tools editors email internet languages multimedia office programming remote_desktop" + fi + + else + + boards "$1" "$2" "$3" "$4" "" + + fi + +} + + + + +# +# Main function +# + +# load config file to override default values +[[ -f cacherebuild.conf ]] && source cacherebuild.conf + +# hardcoded variables and calculations +DAYSBEFORE=4 +START_TIME=$(date +%s) +MONTH=$(date -d "$M" '+%m' | sed 's/\<0//g') +DAYINMONTH=$(date -d "$D" '+%d' | sed 's/\<0//g') +REBUILDDAY=$(date -d "${MONTH}/1 + 1 month - ${DAYSBEFORE} day" "+%d") +MEM_INFO=$(($(LC_ALL=C free -w 2>/dev/null | grep "^Mem" | awk '{print $2}' || LC_ALL=C free | grep "^Mem"| awk '{print $2}')/1024)) +r=0 + + + +# jump to build script folder +cd ${BLTPATH} + +display_alert "Starting rootfs cache rebuilt" "$(date)" "info" +display_alert "Currently present cache files" "$(ls -l ${BLTPATH}cache/rootfs/*.lz4 2> /dev/null | wc -l)" "info" + +git pull -q 2> /dev/null + +if [[ $? -ne 0 ]]; then + + display_alert "Updating build script" "git pull" "err" + exit 1 + +else + + display_alert "Updating build script" "git pull" "info" + +fi + + +display_alert "System memory" "$(($MEM_INFO/1024))Gb" "info" + + +if [[ -z ${PARALLEL_BUILDS} ]]; then + + PARALLEL_BUILDS=$(awk '{printf("%d",$1/12000)}' <<<${MEM_INFO}) + display_alert "Calculated parallel builds" "$PARALLEL_BUILDS" "info" + +else + + display_alert "Selected parallel builds" "$PARALLEL_BUILDS" "info" + +fi + + +if [[ "${FORCE}" == "force" ]]; then + + display_alert "Cache will be removed and rebuild" "${FORCE}" "info" + +else + + display_alert "Cache will be updated" "${FORCE}" "info" + +fi + +# when we should start building for next month +if [[ $DAYINMONTH -gt $REBUILDDAY ]]; then + + display_alert "${DAYSBEFORE} days before next month" "building for next month FORCED_MONTH_OFFSET=1" "info" + FORCED_MONTH_OFFSET=1 + +fi + +if [[ $DAYINMONTH -lt 7 ]]; then + + display_alert "First seven (7) days we clean files of previous month" "cleaning files older then 14 days" "info" + find ${BLTPATH}cache/rootfs/ -type f -mtime +14 -exec sudo rm -f {} \; + +fi + +if [[ $UPLOAD != "yes" ]]; then + + display_alert "Uploading to servers" "no" "info" + +else + + display_alert "Uploading to servers" "yes" "info" + +fi + +# don't start if previous run is still running +while : +do + + sleep 3 + CURRENT_TIME=$(date +%s) + display_alert "Waiting for cleanup" "yes" "info" + + if [[ $(df | grep /.tmp | wc -l) -lt 1 ]]; then + + break + + fi + +done + +# removing previous cache if forced +[[ "${FORCE}" == "force" ]] && sudo rm -f ${BLTPATH}cache/rootfs/* + +# removing previous tmp build directories +sudo rm -rf ${BLTPATH}.tmp +sudo rm ${BLTPATH}cache/rootfs/*.current 2>/dev/null + +sleep 3 + +# run main rebuild function +releases + +# +# wait until all build PIDS are done +# +while true +do +i=0 + for pids in $PIDS + do + if ps -p $pids > /dev/null; then + i=$((i+1)) + fi + done + + [[ $i -eq 0 ]] && break + +done + +exit + +# +# clean all build that are not labelled as .current and are older then 4 days +# +if [[ ${FORCED_MONTH_OFFSET} -eq 0 ]]; then + + display_alert "Clean all build that are not labelled as current." "cleanup" "info" + + # create a diff between marked as current and others + BRISI=($(diff <(find ${BLTPATH}cache/rootfs -name "*.lz4.current" | sed "s/.current//" | sort) <(find ${BLTPATH}cache/rootfs -name "*.lz4" | sort) | grep ">" | sed "s/> //")) + for brisi in "${BRISI[@]}"; do + if [[ $(find "$brisi" -mtime +${PURGEDAYS} -print) ]]; then + display_alert "File is older then ${PURGEDAYS} days. Deleting." "$(basename $brisi)" "info" + sudo rm $brisi + else + display_alert "File is not older then ${PURGEDAYS} days" "$(basename $brisi)" "info" + fi + done + + # remove .current mark + sudo rm ${BLTPATH}cache/rootfs/*.current +fi + +# calculate execution time +CURRENT_TIME=$(date +%s) +display_alert "Rebuilding cache time" "$(( CURRENT_TIME - START_TIME )) seconds" "info" +display_alert "Currently present cache files" "$(ls -l ${BLTPATH}cache/rootfs/*.lz4 | wc -l)" "info" + +# files are collected by 3rd party script if this file exists +sudo touch ${BLTPATH}cache/rootfs/.waiting + +# removing previous tmp build directories +sudo rm -rf ${BLTPATH}.tmp diff --git a/configs/config-all-new-RC-images.conf b/configs/config-all-new-RC-images.conf new file mode 100644 index 00000000..f2e87191 --- /dev/null +++ b/configs/config-all-new-RC-images.conf @@ -0,0 +1,16 @@ +RC="yes" +KERNEL_ONLY="no" +KERNEL_CONFIGURE="no" +CLEAN_LEVEL="make,oldcache" +DEST_LANG="en_US.UTF-8" +KERNEL_KEEP_CONFIG="no" +EXTERNAL_NEW="prebuilt" +BUILD_ALL="yes" +LIB_TAG="${INPUT_RC_LIB_TAG}" +USE_TORRENT="yes" +BUILD_KSRC="no" +IGNORE_UPDATES="yes" +REPOSITORY_INSTALL="u-boot,kernel,armbian-config,armbian-firmware" +IGNORE_HASH="yes" +MULTITHREAD="4" +EXPERT="yes" diff --git a/configs/config-all-new-beta-bsp.conf b/configs/config-all-new-beta-bsp.conf new file mode 100644 index 00000000..3cec506a --- /dev/null +++ b/configs/config-all-new-beta-bsp.conf @@ -0,0 +1,22 @@ +BETA="yes" +KERNEL_ONLY="no" +KERNEL_CONFIGURE="no" +CLEAN_LEVEL="make,oldcache" +DEST_LANG="en_US.UTF-8" +KERNEL_KEEP_CONFIG="no" +EXTERNAL_NEW="prebuilt" +BUILD_ALL="yes" +LIB_TAG="nightly" +USE_TORRENT="yes" +BUILD_KSRC="no" +IGNORE_UPDATES="yes" +IGNORE_HASH="yes" +MULTITHREAD="16" +#BUMP_VERSION="yes" +ALLTARGETS="yes" +OFFLINE_WORK="yes" +BSP_BUILD="yes" +SYNC_CLOCK="no" +REPOSITORY_INSTALL="u-boot,kernel,armbian-zsh,armbian-config,armbian-firmware" +MAKE_ALL_BETA="yes" +EXPERT="yes" diff --git a/configs/config-all-new-beta-images.conf b/configs/config-all-new-beta-images.conf new file mode 100644 index 00000000..4382f2e8 --- /dev/null +++ b/configs/config-all-new-beta-images.conf @@ -0,0 +1,16 @@ +BETA="yes" +KERNEL_ONLY="no" +KERNEL_CONFIGURE="no" +CLEAN_LEVEL="make,oldcache" +DEST_LANG="en_US.UTF-8" +KERNEL_KEEP_CONFIG="no" +EXTERNAL_NEW="prebuilt" +BUILD_ALL="yes" +LIB_TAG="nightly" +USE_TORRENT="yes" +BUILD_KSRC="no" +IGNORE_UPDATES="yes" +REPOSITORY_INSTALL="u-boot,kernel,armbian-config,armbian-firmware" +IGNORE_HASH="yes" +MULTITHREAD="4" +EXPERT="yes" diff --git a/configs/config-all-new-beta-kernels.conf b/configs/config-all-new-beta-kernels.conf new file mode 100644 index 00000000..e07b39b4 --- /dev/null +++ b/configs/config-all-new-beta-kernels.conf @@ -0,0 +1,18 @@ +BETA="yes" +MAKE_ALL_BETA="yes" +KERNEL_ONLY="yes" +KERNEL_CONFIGURE="no" +CLEAN_LEVEL="make,oldcache" +DEST_LANG="en_US.UTF-8" +KERNEL_KEEP_CONFIG="no" +EXTERNAL_NEW="prebuilt" +BUILD_ALL="yes" +LIB_TAG="nightly" +USE_TORRENT="yes" +REPOSITORY_INSTALL="u-boot" +BUILD_KSRC="yes" +PRIVATE_CCACHE="yes" +#BUMP_VERSION="yes" +#MULTITHREAD="100" +#USE_OVERLAYFS="yes" +EXPERT="yes" diff --git a/configs/config-all-new-stable-bsp.conf b/configs/config-all-new-stable-bsp.conf new file mode 100644 index 00000000..dd6b63f5 --- /dev/null +++ b/configs/config-all-new-stable-bsp.conf @@ -0,0 +1,22 @@ +BETA="no" +KERNEL_ONLY="no" +KERNEL_CONFIGURE="no" +CLEAN_LEVEL="make,oldcache" +DEST_LANG="en_US.UTF-8" +KERNEL_KEEP_CONFIG="no" +EXTERNAL_NEW="prebuilt" +BUILD_ALL="yes" +LIB_TAG="nightly" +USE_TORRENT="yes" +BUILD_KSRC="no" +IGNORE_UPDATES="yes" +IGNORE_HASH="yes" +MULTITHREAD="16" +#BUMP_VERSION="yes" +ALLTARGETS="yes" +OFFLINE_WORK="yes" +BSP_BUILD="yes" +SYNC_CLOCK="no" +REPOSITORY_INSTALL="u-boot,kernel,armbian-config,armbian-firmware" +MAKE_ALL_BETA="yes" +EXPERT="yes" diff --git a/configs/config-all-new-stable-images.conf b/configs/config-all-new-stable-images.conf new file mode 100644 index 00000000..f8a509d5 --- /dev/null +++ b/configs/config-all-new-stable-images.conf @@ -0,0 +1,17 @@ +BETA="no" +KERNEL_ONLY="no" +KERNEL_CONFIGURE="no" +CLEAN_LEVEL="make,oldcache" +DEST_LANG="en_US.UTF-8" +KERNEL_KEEP_CONFIG="no" +EXTERNAL_NEW="prebuilt" +BUILD_ALL="yes" +#LIB_TAG="v20.11" +USE_TORRENT="yes" +BUILD_KSRC="no" +IGNORE_UPDATES="yes" +#REPOSITORY_INSTALL="u-boot,kernel,armbian-config,armbian-firmware" +REPOSITORY_INSTALL="u-boot" +IGNORE_HASH="yes" +MULTITHREAD="30" +EXPERT="yes" diff --git a/configs/config-all-new-stable-kernels.conf b/configs/config-all-new-stable-kernels.conf new file mode 100644 index 00000000..9d29b031 --- /dev/null +++ b/configs/config-all-new-stable-kernels.conf @@ -0,0 +1,15 @@ +BETA="no" +MAKE_ALL_BETA="yes" +KERNEL_ONLY="yes" +KERNEL_CONFIGURE="no" +CLEAN_LEVEL="make,oldcache" +DEST_LANG="en_US.UTF-8" +KERNEL_KEEP_CONFIG="no" +EXTERNAL_NEW="prebuilt" +BUILD_ALL="yes" +LIB_TAG="master" +USE_TORRENT="yes" +REPOSITORY_INSTALL="u-boot" +BUILD_KSRC="yes" +PRIVATE_CCACHE="yes" +EXPERT="yes" diff --git a/configs/config-all-new-stable-u-boot.conf b/configs/config-all-new-stable-u-boot.conf new file mode 100644 index 00000000..69532332 --- /dev/null +++ b/configs/config-all-new-stable-u-boot.conf @@ -0,0 +1,17 @@ +BETA="no" +MAKE_ALL_BETA="yes" +KERNEL_ONLY="yes" +KERNEL_CONFIGURE="no" +CLEAN_LEVEL="make,oldcache" +DEST_LANG="en_US.UTF-8" +KERNEL_KEEP_CONFIG="no" +EXTERNAL_NEW="prebuilt" +BUILD_ALL="yes" +LIB_TAG="master" +USE_TORRENT="yes" +BUILD_KSRC="yes" +PRIVATE_CCACHE="yes" +REPOSITORY_INSTALL="kernel,armbian-config,armbian-firmware" +IGNORE_HASH="yes" +BSP_BUILD="yes" +SYNC_CLOCK="no" diff --git a/configs/config-default.conf b/configs/config-default.conf new file mode 100644 index 00000000..3736bd0f --- /dev/null +++ b/configs/config-default.conf @@ -0,0 +1,24 @@ +# Read build script documentation https://docs.armbian.com/Developer-Guide_Build-Options/ +# for detailed explanation of these options and for additional options not listed here + +KERNEL_ONLY="" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt +KERNEL_CONFIGURE="" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt +CLEAN_LEVEL="make,debs,oldcache" # comma-separated list of clean targets: "make" = make clean for selected kernel and u-boot, + # "debs" = delete packages in "./output/debs" for current branch and family, + # "alldebs" = delete all packages in "./output/debs", "images" = delete "./output/images", + # "cache" = delete "./output/cache", "sources" = delete "./sources" + # "oldcache" = remove old cached rootfs except for the newest 8 files + +REPOSITORY_INSTALL="" # comma-separated list of core modules which will be installed from repository + # "u-boot", "kernel", "bsp", "armbian-config", "armbian-firmware" + # leave empty to build from sources or use local cache + +DEST_LANG="en_US.UTF-8" # sl_SI.UTF-8, en_US.UTF-8 + +# advanced +EXTERNAL_NEW="prebuilt" # compile and install or install prebuilt additional packages +INSTALL_HEADERS="" # install kernel headers package +LIB_TAG="nightly" # change to "branchname" to use any branch currently available. +USE_TORRENT="yes" # use torrent network for faster toolchain and cache download +DOWNLOAD_MIRROR="" # set to "china" to use mirrors.tuna.tsinghua.edu.cn +CARD_DEVICE="" # device name /dev/sdx of your SD card to burn directly to the card when done diff --git a/configs/config-docker.conf b/configs/config-docker.conf new file mode 100644 index 00000000..945b6de7 --- /dev/null +++ b/configs/config-docker.conf @@ -0,0 +1,143 @@ +# DO NOT EDIT THIS FILE +# +# This is a Docker launcher file. To set up the configuration, use command line arguments to compile.sh +# or use pass a config file as a parameter ./compile docker [example] BUILD_KERNEL="yes" ... + +[[ ! -c /dev/loop-control ]] && display_alert "/dev/loop-control does not exist, image building may not work" "" "wrn" + +# second argument can be a build parameter or a config file +# create user accessible directories and set their owner group and permissions +# if they are created from Docker they will be owned by root and require root permissions to change/delete +mkdir -p $SRC/{output,userpatches} +grep -q '^docker:' /etc/group && chgrp --quiet docker $SRC/{output,userpatches} +chmod --quiet g+w,g+s $SRC/{output,userpatches} +VERSION=$(cat $SRC/VERSION) +if grep -q $VERSION <(grep armbian <(docker images)); then + display_alert "Using existed a armbian Docker container" +else + # build a new container based on provided Dockerfile + display_alert "Docker container not found or out of date" + display_alert "Building a Docker container" + if ! docker build -t armbian:$VERSION . ; then + STATUS=$? + # Adding a newline, so the alert won't be shown in the same line as the error + echo + display_alert "Docker container build exited with code: " "$STATUS" "err" + exit 1 + fi +fi + +DOCKER_FLAGS=() + +# Running this container in privileged mode is a simple way to solve loop device access issues +# Required for USB FEL or when writing image directly to the block device, when CARD_DEVICE is defined +#DOCKER_FLAGS+=(--privileged) + +# add only required capabilities instead (though MKNOD should be already present) +# CAP_SYS_PTRACE is required for systemd-detect-virt in some cases +DOCKER_FLAGS+=(--cap-add=SYS_ADMIN --cap-add=MKNOD --cap-add=SYS_PTRACE) + +# mounting things inside the container on Ubuntu won't work without this +# https://github.com/moby/moby/issues/16429#issuecomment-217126586 +DOCKER_FLAGS+=(--security-opt=apparmor:unconfined) + +# remove resulting container after exit to minimize clutter +# bad side effect - named volumes are considered not attached to anything and are removed on "docker volume prune" +#DOCKER_FLAGS+=(--rm) + +# pass through loop devices +for d in /dev/loop*; do + DOCKER_FLAGS+=(--device=$d) +done + +# accessing dynamically created devices won't work by default +# and --device doesn't accept devices that don't exist at the time "docker run" is executed +# https://github.com/moby/moby/issues/27886 +# --device-cgroup-rule requires new Docker version + +# Test for --device-cgroup-rule support. If supported, appends it +# Otherwise, let it go and let user know that only kernel and u-boot for you +if docker run --help | grep device-cgroup-rule > /dev/null 2>&1; then + # allow loop devices (not required) + DOCKER_FLAGS+=(--device-cgroup-rule='b 7:* rmw') + # allow loop device partitions + DOCKER_FLAGS+=(--device-cgroup-rule='b 259:* rmw') + + # this is an ugly hack, but it is required to get /dev/loopXpY minor number + # for mknod inside the container, and container itself still uses private /dev internally + DOCKER_FLAGS+=(-v /dev:/tmp/dev:ro) +else + display_alert "Your Docker version does not support device-cgroup-rule" "" "wrn" + display_alert "and will be able to create only Kernel and u-boot packages (KERNEL_ONLY=yes)" "" "wrn" +fi + +# Expose ports for NFS server inside docker container, required for USB FEL +#DOCKER_FLAGS+=(-p 0.0.0.0:2049:2049 -p 0.0.0.0:2049:2049/udp -p 0.0.0.0:111:111 -p 0.0.0.0:111:111/udp -p 0.0.0.0:32765:32765 -p 0.0.0.0:32765:32765/udp -p 0.0.0.0:32767:32767 -p 0.0.0.0:32767:32767/udp) +# Export usb device for FEL, required for USB FEL +#DOCKER_FLAGS+=(-v /dev/bus/usb:/dev/bus/usb:ro) + +# map source to Docker Working dir. +DOCKER_FLAGS+=(-v=$SRC/:/root/armbian/) + +# mount 2 named volumes - for cacheable data and compiler cache +DOCKER_FLAGS+=(-v=armbian-cache:/root/armbian/cache -v=armbian-ccache:/root/.ccache) + +DOCKER_FLAGS+=(-e COLUMNS="`tput cols`" -e LINES="`tput lines`") + +# pass other command line arguments like KERNEL_ONLY=yes, KERNEL_CONFIGURE=yes, etc. +# pass "docker-guest" as an additional config name that will be sourced in the container if exists +if [[ $SHELL_ONLY == yes ]]; then + display_alert "Running the container in shell mode" "" "info" + cat <<\EOF +Welcome to the docker shell of Armbian. + +To build the whole thing using default profile, run: + ./compile.sh + +To build the U-Boot only, run: + # Optional: prepare the environment first if you had not run `./compile.sh` + ./compile.sh 'prepare_host && compile_sunxi_tools && install_rkbin_tools' + + # build the U-Boot only + ./compile.sh compile_uboot + +If you prefer to use profile, for example, `userpatches/config-my.conf`, try: + ./compile.sh my 'prepare_host && compile_sunxi_tools && install_rkbin_tools' + ./compile.sh my compile_uboot + +EOF + docker run "${DOCKER_FLAGS[@]}" -it --rm --entrypoint /usr/bin/env armbian:$VERSION "$@" /bin/bash +else + display_alert "Running the container" "" "info" + docker run "${DOCKER_FLAGS[@]}" -it --rm armbian:$VERSION "$@" +fi + +# Docker error treatment +STATUS=$? +# Adding a newline, so the message won't be shown in the same line as the error +echo +case $STATUS in + 0) + # No errors from either Docker or build script + echo + ;; + 125) + display_alert "Docker command failed, check syntax or version support. Error code: " "$STATUS" "err" + ;; + 126) + display_alert "Failure when running containerd command. Error code: " "$STATUS" "err" + ;; + 127) + display_alert "containerd command not found. Error code: " "$STATUS" "err" + ;; + 137) + display_alert "Container exit from docker stop. Error code: " "$STATUS" "info" + ;; + *) + # Build script exited with error, but the error message should have been already printed + echo + ;; +esac + +# don't need to proceed further on the host +exit 0 diff --git a/configs/config-example.conf b/configs/config-example.conf new file mode 100644 index 00000000..3736bd0f --- /dev/null +++ b/configs/config-example.conf @@ -0,0 +1,24 @@ +# Read build script documentation https://docs.armbian.com/Developer-Guide_Build-Options/ +# for detailed explanation of these options and for additional options not listed here + +KERNEL_ONLY="" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt +KERNEL_CONFIGURE="" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt +CLEAN_LEVEL="make,debs,oldcache" # comma-separated list of clean targets: "make" = make clean for selected kernel and u-boot, + # "debs" = delete packages in "./output/debs" for current branch and family, + # "alldebs" = delete all packages in "./output/debs", "images" = delete "./output/images", + # "cache" = delete "./output/cache", "sources" = delete "./sources" + # "oldcache" = remove old cached rootfs except for the newest 8 files + +REPOSITORY_INSTALL="" # comma-separated list of core modules which will be installed from repository + # "u-boot", "kernel", "bsp", "armbian-config", "armbian-firmware" + # leave empty to build from sources or use local cache + +DEST_LANG="en_US.UTF-8" # sl_SI.UTF-8, en_US.UTF-8 + +# advanced +EXTERNAL_NEW="prebuilt" # compile and install or install prebuilt additional packages +INSTALL_HEADERS="" # install kernel headers package +LIB_TAG="nightly" # change to "branchname" to use any branch currently available. +USE_TORRENT="yes" # use torrent network for faster toolchain and cache download +DOWNLOAD_MIRROR="" # set to "china" to use mirrors.tuna.tsinghua.edu.cn +CARD_DEVICE="" # device name /dev/sdx of your SD card to burn directly to the card when done diff --git a/configs/config-single.conf b/configs/config-single.conf new file mode 100644 index 00000000..37dc99ff --- /dev/null +++ b/configs/config-single.conf @@ -0,0 +1,20 @@ +KERNEL_ONLY="no" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt +KERNEL_CONFIGURE="no" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt +CLEAN_LEVEL="make,oldcache" # comma-separated list of clean targets: "make" = make clean for selected kernel and u-boot, + # "debs" = delete packages in "./output/debs" for current branch and family, + # "alldebs" = delete all packages in "./output/debs", "images" = delete "./output/images", + # "cache" = delete "./output/cache", "sources" = delete "./sources" + # "oldcache" = remove old cached rootfs except for the newest 6 files + +DEST_LANG="en_US.UTF-8" # sl_SI.UTF-8, en_US.UTF-8 + +# advanced +KERNEL_KEEP_CONFIG="no" # do not overwrite kernel config before compilation +EXTERNAL_NEW="prebuilt" # compile and install or install prebuilt additional packages +BUILD_KSRC="no" +EXPERT="yes" +SYNC_CLOCK="no" +COMPRESS_OUTPUTIMAGE="no" +LIB_TAG="nightly" +#USE_MAINLINE_GOOGLE_MIRROR="yes" +USE_OVERLAYFS="yes" diff --git a/configs/lib.config b/configs/lib.config new file mode 100644 index 00000000..eef0406f --- /dev/null +++ b/configs/lib.config @@ -0,0 +1,6 @@ +[[ $(curl -s http://ifconfig.me) == "93.103.15.56" ]] && APT_PROXY_ADDR="10.0.10.10:3142" +FORCE_USE_RAMDISK="yes" +COMPRESS_OUTPUTIMAGE="sha,gpg,xz" +PRIVATE_CCACHE="yes" +FAST_CREATE_IMAGE="yes" +NO_HOST_RELEASE_CHECK="yes" diff --git a/hash-beta/foe b/hash-beta/foe new file mode 100644 index 00000000..e69de29b diff --git a/hash-beta/linux-image-current-imx6.githash b/hash-beta/linux-image-current-imx6.githash new file mode 100644 index 00000000..6345d728 --- /dev/null +++ b/hash-beta/linux-image-current-imx6.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +34678aa4823887a2361f4e120005d4979682a8f5 diff --git a/hash-beta/linux-image-current-jetson-nano.githash b/hash-beta/linux-image-current-jetson-nano.githash new file mode 100644 index 00000000..5a25f924 --- /dev/null +++ b/hash-beta/linux-image-current-jetson-nano.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +9fefe06cb5739247ba8bbd8d5ada4aed957731eb diff --git a/hash-beta/linux-image-current-meson64.githash b/hash-beta/linux-image-current-meson64.githash new file mode 100644 index 00000000..64a25176 --- /dev/null +++ b/hash-beta/linux-image-current-meson64.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +55ab3b14f788525d7f8d45063a201bd9a9133884 diff --git a/hash-beta/linux-image-current-mvebu.githash b/hash-beta/linux-image-current-mvebu.githash new file mode 100644 index 00000000..8043d705 --- /dev/null +++ b/hash-beta/linux-image-current-mvebu.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +f627b286bd8616d24598f7d19c1adb3bb5f22a8f diff --git a/hash-beta/linux-image-current-mvebu64.githash b/hash-beta/linux-image-current-mvebu64.githash new file mode 100644 index 00000000..caac4c49 --- /dev/null +++ b/hash-beta/linux-image-current-mvebu64.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +136be002be97fa91cd5226f14c7dd7dadafde001 diff --git a/hash-beta/linux-image-current-odroidxu4.githash b/hash-beta/linux-image-current-odroidxu4.githash new file mode 100644 index 00000000..4b760d7c --- /dev/null +++ b/hash-beta/linux-image-current-odroidxu4.githash @@ -0,0 +1,2 @@ +870950ba56df5f279d98fa3543a7366dfad3c7e4 +9e19f3526e7b3d041146564edf0f1923d25e7687 diff --git a/hash-beta/linux-image-current-rk322x.githash b/hash-beta/linux-image-current-rk322x.githash new file mode 100644 index 00000000..262913e4 --- /dev/null +++ b/hash-beta/linux-image-current-rk322x.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +edc8547c13ea94880f386b209db85426d96220f1 diff --git a/hash-beta/linux-image-current-rockchip.githash b/hash-beta/linux-image-current-rockchip.githash new file mode 100644 index 00000000..5cb7d224 --- /dev/null +++ b/hash-beta/linux-image-current-rockchip.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +551eb7deee7331b2e185ccb436b7424455d35130 diff --git a/hash-beta/linux-image-current-rockchip64.githash b/hash-beta/linux-image-current-rockchip64.githash new file mode 100644 index 00000000..cb9f1e0c --- /dev/null +++ b/hash-beta/linux-image-current-rockchip64.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +fb57addc03b4edf7923828cb80003a9d735b351f diff --git a/hash-beta/linux-image-current-sunxi.githash b/hash-beta/linux-image-current-sunxi.githash new file mode 100644 index 00000000..2b316398 --- /dev/null +++ b/hash-beta/linux-image-current-sunxi.githash @@ -0,0 +1,2 @@ +5aa571dfc47b2fa92615ea5774475fa3650e8eb3 +ad755e62436ae00169f94be96f63019abceb4ffe diff --git a/hash-beta/linux-image-current-sunxi64.githash b/hash-beta/linux-image-current-sunxi64.githash new file mode 100644 index 00000000..19630096 --- /dev/null +++ b/hash-beta/linux-image-current-sunxi64.githash @@ -0,0 +1,2 @@ +5aa571dfc47b2fa92615ea5774475fa3650e8eb3 +95fea7e3d286f1c7a7c6f2585630e2fd4f5d80ba diff --git a/hash-beta/linux-image-current-virtual.githash b/hash-beta/linux-image-current-virtual.githash new file mode 100644 index 00000000..8ae75692 --- /dev/null +++ b/hash-beta/linux-image-current-virtual.githash @@ -0,0 +1,2 @@ +5cd40b137cba45a5a3d0b9a8554f779a3e0e93b4 +69014ce89d20cf8861dbba0568203ae99bad5c23 diff --git a/hash-beta/linux-image-edge-imx6.githash b/hash-beta/linux-image-edge-imx6.githash new file mode 100644 index 00000000..c3a01ae0 --- /dev/null +++ b/hash-beta/linux-image-edge-imx6.githash @@ -0,0 +1,2 @@ +b133f076639b918bb6ad157f6308b0f595058959 +6bf087e46f5d63abf07c63d2c0ad63c261de4726 diff --git a/hash-beta/linux-image-edge-jetson-nano.githash b/hash-beta/linux-image-edge-jetson-nano.githash new file mode 100644 index 00000000..d1c05738 --- /dev/null +++ b/hash-beta/linux-image-edge-jetson-nano.githash @@ -0,0 +1,2 @@ +b133f076639b918bb6ad157f6308b0f595058959 +7b82ede583207a4419609c73cfe51067e74e291f diff --git a/hash-beta/linux-image-edge-meson64.githash b/hash-beta/linux-image-edge-meson64.githash new file mode 100644 index 00000000..8aebf027 --- /dev/null +++ b/hash-beta/linux-image-edge-meson64.githash @@ -0,0 +1,2 @@ +b133f076639b918bb6ad157f6308b0f595058959 +7d37df3ce1d30a85588d3ad6e46c9cd21357ecd2 diff --git a/hash-beta/linux-image-edge-mvebu.githash b/hash-beta/linux-image-edge-mvebu.githash new file mode 100644 index 00000000..155650ff --- /dev/null +++ b/hash-beta/linux-image-edge-mvebu.githash @@ -0,0 +1,2 @@ +f7eb8f60cadbedd31a2f39d8866b991b67434f2c +79257a3a3e5fbd36792aeab0b7d91064afb2d643 diff --git a/hash-beta/linux-image-edge-mvebu64.githash b/hash-beta/linux-image-edge-mvebu64.githash new file mode 100644 index 00000000..ee360b9a --- /dev/null +++ b/hash-beta/linux-image-edge-mvebu64.githash @@ -0,0 +1,2 @@ +b133f076639b918bb6ad157f6308b0f595058959 +d88f244b6569a9aaf2c880fad95702ff9e8a0ae0 diff --git a/hash-beta/linux-image-edge-odroidxu4.githash b/hash-beta/linux-image-edge-odroidxu4.githash new file mode 100644 index 00000000..66cb09d0 --- /dev/null +++ b/hash-beta/linux-image-edge-odroidxu4.githash @@ -0,0 +1,2 @@ +b133f076639b918bb6ad157f6308b0f595058959 +fa6c7f0ab4dadf246cc63129c4e4713aa64c6f7f diff --git a/hash-beta/linux-image-edge-rk322x.githash b/hash-beta/linux-image-edge-rk322x.githash new file mode 100644 index 00000000..e942445e --- /dev/null +++ b/hash-beta/linux-image-edge-rk322x.githash @@ -0,0 +1,2 @@ +b133f076639b918bb6ad157f6308b0f595058959 +4c5f462f49de7921414710f741c3f151dfa07823 diff --git a/hash-beta/linux-image-edge-rockchip.githash b/hash-beta/linux-image-edge-rockchip.githash new file mode 100644 index 00000000..d0e2eb70 --- /dev/null +++ b/hash-beta/linux-image-edge-rockchip.githash @@ -0,0 +1,2 @@ +b133f076639b918bb6ad157f6308b0f595058959 +a2e910b0843dbc251b1aef8df5c73c9ec166bca5 diff --git a/hash-beta/linux-image-edge-rockchip64.githash b/hash-beta/linux-image-edge-rockchip64.githash new file mode 100644 index 00000000..93c24431 --- /dev/null +++ b/hash-beta/linux-image-edge-rockchip64.githash @@ -0,0 +1,2 @@ +b133f076639b918bb6ad157f6308b0f595058959 +0b80b1500880273778118886a0ddea63afe7f949 diff --git a/hash-beta/linux-image-edge-sunxi.githash b/hash-beta/linux-image-edge-sunxi.githash new file mode 100644 index 00000000..20768666 --- /dev/null +++ b/hash-beta/linux-image-edge-sunxi.githash @@ -0,0 +1,2 @@ +2f7435b7d0a1d3401f27542ffbd6abc02fbcff84 +eb64fe90363941e5e585f1a3c004baa07df2767e diff --git a/hash-beta/linux-image-edge-sunxi64.githash b/hash-beta/linux-image-edge-sunxi64.githash new file mode 100644 index 00000000..8e9abe4a --- /dev/null +++ b/hash-beta/linux-image-edge-sunxi64.githash @@ -0,0 +1,2 @@ +2f7435b7d0a1d3401f27542ffbd6abc02fbcff84 +4f936a1b6dded8f6f27b0370a3a4be193a74e858 diff --git a/hash-beta/linux-image-legacy-jetson-nano.githash b/hash-beta/linux-image-legacy-jetson-nano.githash new file mode 100644 index 00000000..0b9180bf --- /dev/null +++ b/hash-beta/linux-image-legacy-jetson-nano.githash @@ -0,0 +1,2 @@ +720d8ac959915e196c7bc7bbe5cc3123a0c29100 +2e26c0dfbc7823d271471cbe827ed88c2e3eb7b2 diff --git a/hash-beta/linux-image-legacy-meson64.githash b/hash-beta/linux-image-legacy-meson64.githash new file mode 100644 index 00000000..56a5a877 --- /dev/null +++ b/hash-beta/linux-image-legacy-meson64.githash @@ -0,0 +1,2 @@ +24e57ad8b9310d03d70abc1e4929441916d4d9e9 +d9e7176cd7fa1e0cc6500f7ffd2a2010fbcb06c4 diff --git a/hash-beta/linux-image-legacy-mt7623.githash b/hash-beta/linux-image-legacy-mt7623.githash new file mode 100644 index 00000000..2353c547 --- /dev/null +++ b/hash-beta/linux-image-legacy-mt7623.githash @@ -0,0 +1,2 @@ +6db10b4d5efdc38ff06dfdde28dc5477f754b0bd +7467d68db8c69e673e59dfa70c975ea4f007b1c5 diff --git a/hash-beta/linux-image-legacy-mvebu64.githash b/hash-beta/linux-image-legacy-mvebu64.githash new file mode 100644 index 00000000..b525722b --- /dev/null +++ b/hash-beta/linux-image-legacy-mvebu64.githash @@ -0,0 +1,2 @@ +1357b78ad32c3dfc4933f8613ae3755e7b314eb6 +c930532d127ac6ac1e24caab85096caef01383c5 diff --git a/hash-beta/linux-image-legacy-odroidxu4.githash b/hash-beta/linux-image-legacy-odroidxu4.githash new file mode 100644 index 00000000..919a1783 --- /dev/null +++ b/hash-beta/linux-image-legacy-odroidxu4.githash @@ -0,0 +1,2 @@ +864c4519b77763274b61a035b33bc92f71084b59 +c4a468bb9a100b8cf874c7dbdea394cb030cb7e8 diff --git a/hash-beta/linux-image-legacy-rk322x.githash b/hash-beta/linux-image-legacy-rk322x.githash new file mode 100644 index 00000000..80b00a56 --- /dev/null +++ b/hash-beta/linux-image-legacy-rk322x.githash @@ -0,0 +1,2 @@ +f8f48a215ea35524cb20c70d72dd87a54b1eb3b9 +a9d14ac159fbf9ce25af9f925a70ac32339d8c23 diff --git a/hash-beta/linux-image-legacy-rk3399.githash b/hash-beta/linux-image-legacy-rk3399.githash new file mode 100644 index 00000000..546ee165 --- /dev/null +++ b/hash-beta/linux-image-legacy-rk3399.githash @@ -0,0 +1,2 @@ +595acbae9d1e03e39d0ebbb22226b061f5682be7 +926484fe7255af5ed4b2ca6f10f99ad4ce7c7227 diff --git a/hash-beta/linux-image-legacy-rockchip.githash b/hash-beta/linux-image-legacy-rockchip.githash new file mode 100644 index 00000000..5b389d40 --- /dev/null +++ b/hash-beta/linux-image-legacy-rockchip.githash @@ -0,0 +1,2 @@ +6db303024ac32b2dd2d9d0884243ff560ab8a5a8 +43d2788c76de03fbc7a7d0239a383493952f9a58 diff --git a/hash-beta/linux-image-legacy-rockchip64.githash b/hash-beta/linux-image-legacy-rockchip64.githash new file mode 100644 index 00000000..41179c6e --- /dev/null +++ b/hash-beta/linux-image-legacy-rockchip64.githash @@ -0,0 +1,2 @@ +fd44923862132546b4f797fbe0317205afc98b84 +5987deca2f35253216cfbe1f1b4c06456651b627 diff --git a/hash-beta/linux-image-legacy-sun50iw9.githash b/hash-beta/linux-image-legacy-sun50iw9.githash new file mode 100644 index 00000000..de649ea7 --- /dev/null +++ b/hash-beta/linux-image-legacy-sun50iw9.githash @@ -0,0 +1,2 @@ +2111f0b3db703051d5584da3781da33a2ea7fa4c +a9ef2e08e50f19bea551df679786d5e1c944032d diff --git a/hash/foe b/hash/foe new file mode 100644 index 00000000..e69de29b diff --git a/hash/linux-image-current-imx6.githash b/hash/linux-image-current-imx6.githash new file mode 100644 index 00000000..20b7dbab --- /dev/null +++ b/hash/linux-image-current-imx6.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +34678aa4823887a2361f4e120005d4979682a8f5 diff --git a/hash/linux-image-current-jetson-nano.githash b/hash/linux-image-current-jetson-nano.githash new file mode 100644 index 00000000..e72f7417 --- /dev/null +++ b/hash/linux-image-current-jetson-nano.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +8a224fb0b23c3ff963a37c1aa9f35d34c78b63f4 diff --git a/hash/linux-image-current-meson64.githash b/hash/linux-image-current-meson64.githash new file mode 100644 index 00000000..67fbe3e1 --- /dev/null +++ b/hash/linux-image-current-meson64.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +56a81d14e0ff83b8fbca39cd18a1eed416c08c02 diff --git a/hash/linux-image-current-mvebu.githash b/hash/linux-image-current-mvebu.githash new file mode 100644 index 00000000..fa7e1651 --- /dev/null +++ b/hash/linux-image-current-mvebu.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +f627b286bd8616d24598f7d19c1adb3bb5f22a8f diff --git a/hash/linux-image-current-mvebu64.githash b/hash/linux-image-current-mvebu64.githash new file mode 100644 index 00000000..ab7f9195 --- /dev/null +++ b/hash/linux-image-current-mvebu64.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +136be002be97fa91cd5226f14c7dd7dadafde001 diff --git a/hash/linux-image-current-odroidxu4.githash b/hash/linux-image-current-odroidxu4.githash new file mode 100644 index 00000000..b88cecf0 --- /dev/null +++ b/hash/linux-image-current-odroidxu4.githash @@ -0,0 +1,2 @@ +e8a4720478f59c0e0a8bada3e3d201d2f069dbfd +35071d66eb676c359355f046af1aa2e1f6348227 diff --git a/hash/linux-image-current-rk322x.githash b/hash/linux-image-current-rk322x.githash new file mode 100644 index 00000000..48d4f69c --- /dev/null +++ b/hash/linux-image-current-rk322x.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +edc8547c13ea94880f386b209db85426d96220f1 diff --git a/hash/linux-image-current-rockchip.githash b/hash/linux-image-current-rockchip.githash new file mode 100644 index 00000000..a81893ad --- /dev/null +++ b/hash/linux-image-current-rockchip.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +db99b9e057cff6f8c5f814a1a05571f7009953e3 diff --git a/hash/linux-image-current-rockchip64.githash b/hash/linux-image-current-rockchip64.githash new file mode 100644 index 00000000..9807c327 --- /dev/null +++ b/hash/linux-image-current-rockchip64.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +fb57addc03b4edf7923828cb80003a9d735b351f diff --git a/hash/linux-image-current-sunxi.githash b/hash/linux-image-current-sunxi.githash new file mode 100644 index 00000000..2b316398 --- /dev/null +++ b/hash/linux-image-current-sunxi.githash @@ -0,0 +1,2 @@ +5aa571dfc47b2fa92615ea5774475fa3650e8eb3 +ad755e62436ae00169f94be96f63019abceb4ffe diff --git a/hash/linux-image-current-sunxi64.githash b/hash/linux-image-current-sunxi64.githash new file mode 100644 index 00000000..19630096 --- /dev/null +++ b/hash/linux-image-current-sunxi64.githash @@ -0,0 +1,2 @@ +5aa571dfc47b2fa92615ea5774475fa3650e8eb3 +95fea7e3d286f1c7a7c6f2585630e2fd4f5d80ba diff --git a/hash/linux-image-current-virtual.githash b/hash/linux-image-current-virtual.githash new file mode 100644 index 00000000..53e29e0c --- /dev/null +++ b/hash/linux-image-current-virtual.githash @@ -0,0 +1,2 @@ +f93026b28e2afe5060a493b0bbcee19d12961b7e +7538ac0e46ce6cdc7318087462022e6936fdd4b1 diff --git a/hash/linux-image-edge-imx6.githash b/hash/linux-image-edge-imx6.githash new file mode 100644 index 00000000..bac3dfee --- /dev/null +++ b/hash/linux-image-edge-imx6.githash @@ -0,0 +1,2 @@ +70248e7b378b96f208d5544ee25b808a8ef2ddc2 +6bf087e46f5d63abf07c63d2c0ad63c261de4726 diff --git a/hash/linux-image-edge-jetson-nano.githash b/hash/linux-image-edge-jetson-nano.githash new file mode 100644 index 00000000..9a68aac0 --- /dev/null +++ b/hash/linux-image-edge-jetson-nano.githash @@ -0,0 +1,2 @@ +70248e7b378b96f208d5544ee25b808a8ef2ddc2 +7b82ede583207a4419609c73cfe51067e74e291f diff --git a/hash/linux-image-edge-meson64.githash b/hash/linux-image-edge-meson64.githash new file mode 100644 index 00000000..7a4b8c83 --- /dev/null +++ b/hash/linux-image-edge-meson64.githash @@ -0,0 +1,2 @@ +70248e7b378b96f208d5544ee25b808a8ef2ddc2 +7d37df3ce1d30a85588d3ad6e46c9cd21357ecd2 diff --git a/hash/linux-image-edge-mvebu.githash b/hash/linux-image-edge-mvebu.githash new file mode 100644 index 00000000..155650ff --- /dev/null +++ b/hash/linux-image-edge-mvebu.githash @@ -0,0 +1,2 @@ +f7eb8f60cadbedd31a2f39d8866b991b67434f2c +79257a3a3e5fbd36792aeab0b7d91064afb2d643 diff --git a/hash/linux-image-edge-mvebu64.githash b/hash/linux-image-edge-mvebu64.githash new file mode 100644 index 00000000..ab753dab --- /dev/null +++ b/hash/linux-image-edge-mvebu64.githash @@ -0,0 +1,2 @@ +70248e7b378b96f208d5544ee25b808a8ef2ddc2 +d88f244b6569a9aaf2c880fad95702ff9e8a0ae0 diff --git a/hash/linux-image-edge-odroidxu4.githash b/hash/linux-image-edge-odroidxu4.githash new file mode 100644 index 00000000..01ab9fd7 --- /dev/null +++ b/hash/linux-image-edge-odroidxu4.githash @@ -0,0 +1,2 @@ +70248e7b378b96f208d5544ee25b808a8ef2ddc2 +fa6c7f0ab4dadf246cc63129c4e4713aa64c6f7f diff --git a/hash/linux-image-edge-rk322x.githash b/hash/linux-image-edge-rk322x.githash new file mode 100644 index 00000000..8af6cdf7 --- /dev/null +++ b/hash/linux-image-edge-rk322x.githash @@ -0,0 +1,2 @@ +70248e7b378b96f208d5544ee25b808a8ef2ddc2 +4c5f462f49de7921414710f741c3f151dfa07823 diff --git a/hash/linux-image-edge-rockchip.githash b/hash/linux-image-edge-rockchip.githash new file mode 100644 index 00000000..4ac32e9f --- /dev/null +++ b/hash/linux-image-edge-rockchip.githash @@ -0,0 +1,2 @@ +70248e7b378b96f208d5544ee25b808a8ef2ddc2 +a2e910b0843dbc251b1aef8df5c73c9ec166bca5 diff --git a/hash/linux-image-edge-rockchip64.githash b/hash/linux-image-edge-rockchip64.githash new file mode 100644 index 00000000..062d43da --- /dev/null +++ b/hash/linux-image-edge-rockchip64.githash @@ -0,0 +1,2 @@ +70248e7b378b96f208d5544ee25b808a8ef2ddc2 +0b80b1500880273778118886a0ddea63afe7f949 diff --git a/hash/linux-image-edge-sunxi.githash b/hash/linux-image-edge-sunxi.githash new file mode 100644 index 00000000..20768666 --- /dev/null +++ b/hash/linux-image-edge-sunxi.githash @@ -0,0 +1,2 @@ +2f7435b7d0a1d3401f27542ffbd6abc02fbcff84 +eb64fe90363941e5e585f1a3c004baa07df2767e diff --git a/hash/linux-image-edge-sunxi64.githash b/hash/linux-image-edge-sunxi64.githash new file mode 100644 index 00000000..8e9abe4a --- /dev/null +++ b/hash/linux-image-edge-sunxi64.githash @@ -0,0 +1,2 @@ +2f7435b7d0a1d3401f27542ffbd6abc02fbcff84 +4f936a1b6dded8f6f27b0370a3a4be193a74e858 diff --git a/hash/linux-image-legacy-jetson-nano.githash b/hash/linux-image-legacy-jetson-nano.githash new file mode 100644 index 00000000..0b9180bf --- /dev/null +++ b/hash/linux-image-legacy-jetson-nano.githash @@ -0,0 +1,2 @@ +720d8ac959915e196c7bc7bbe5cc3123a0c29100 +2e26c0dfbc7823d271471cbe827ed88c2e3eb7b2 diff --git a/hash/linux-image-legacy-meson64.githash b/hash/linux-image-legacy-meson64.githash new file mode 100644 index 00000000..56a5a877 --- /dev/null +++ b/hash/linux-image-legacy-meson64.githash @@ -0,0 +1,2 @@ +24e57ad8b9310d03d70abc1e4929441916d4d9e9 +d9e7176cd7fa1e0cc6500f7ffd2a2010fbcb06c4 diff --git a/hash/linux-image-legacy-mt7623.githash b/hash/linux-image-legacy-mt7623.githash new file mode 100644 index 00000000..57a2d0c0 --- /dev/null +++ b/hash/linux-image-legacy-mt7623.githash @@ -0,0 +1,2 @@ +c2276d585654e8d573366c29c565043ec36adf63 +7467d68db8c69e673e59dfa70c975ea4f007b1c5 diff --git a/hash/linux-image-legacy-mvebu64.githash b/hash/linux-image-legacy-mvebu64.githash new file mode 100644 index 00000000..b525722b --- /dev/null +++ b/hash/linux-image-legacy-mvebu64.githash @@ -0,0 +1,2 @@ +1357b78ad32c3dfc4933f8613ae3755e7b314eb6 +c930532d127ac6ac1e24caab85096caef01383c5 diff --git a/hash/linux-image-legacy-odroidxu4.githash b/hash/linux-image-legacy-odroidxu4.githash new file mode 100644 index 00000000..919a1783 --- /dev/null +++ b/hash/linux-image-legacy-odroidxu4.githash @@ -0,0 +1,2 @@ +864c4519b77763274b61a035b33bc92f71084b59 +c4a468bb9a100b8cf874c7dbdea394cb030cb7e8 diff --git a/hash/linux-image-legacy-rk322x.githash b/hash/linux-image-legacy-rk322x.githash new file mode 100644 index 00000000..80b00a56 --- /dev/null +++ b/hash/linux-image-legacy-rk322x.githash @@ -0,0 +1,2 @@ +f8f48a215ea35524cb20c70d72dd87a54b1eb3b9 +a9d14ac159fbf9ce25af9f925a70ac32339d8c23 diff --git a/hash/linux-image-legacy-rk3399.githash b/hash/linux-image-legacy-rk3399.githash new file mode 100644 index 00000000..546ee165 --- /dev/null +++ b/hash/linux-image-legacy-rk3399.githash @@ -0,0 +1,2 @@ +595acbae9d1e03e39d0ebbb22226b061f5682be7 +926484fe7255af5ed4b2ca6f10f99ad4ce7c7227 diff --git a/hash/linux-image-legacy-rockchip.githash b/hash/linux-image-legacy-rockchip.githash new file mode 100644 index 00000000..5b389d40 --- /dev/null +++ b/hash/linux-image-legacy-rockchip.githash @@ -0,0 +1,2 @@ +6db303024ac32b2dd2d9d0884243ff560ab8a5a8 +43d2788c76de03fbc7a7d0239a383493952f9a58 diff --git a/hash/linux-image-legacy-rockchip64.githash b/hash/linux-image-legacy-rockchip64.githash new file mode 100644 index 00000000..41179c6e --- /dev/null +++ b/hash/linux-image-legacy-rockchip64.githash @@ -0,0 +1,2 @@ +fd44923862132546b4f797fbe0317205afc98b84 +5987deca2f35253216cfbe1f1b4c06456651b627 diff --git a/hash/linux-image-legacy-sun50iw9.githash b/hash/linux-image-legacy-sun50iw9.githash new file mode 100644 index 00000000..de649ea7 --- /dev/null +++ b/hash/linux-image-legacy-sun50iw9.githash @@ -0,0 +1,2 @@ +2111f0b3db703051d5584da3781da33a2ea7fa4c +a9ef2e08e50f19bea551df679786d5e1c944032d diff --git a/selected-images.sh b/selected-images.sh new file mode 100755 index 00000000..5112e23f --- /dev/null +++ b/selected-images.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +[[ -f selected-images.conf ]] && source selected-images.conf + +cd ${BLTPATH} +git pull +BETA="no" +#REPOSITORY_INSTALL="u-boot,kernel,armbian-config,armbian-zsh,armbian-firmware" +REBUILD_IMAGES="pinebook-pro" +#,pinebook-pro,station-p1,station-m1" + +#if [[ ${BETA} == "no" ]]; then +# git checkout master -f +# rm -f userpatches/targets.conf +#fi + +#rm userpatches/targets.conf + +#[[ -n ${VERZ} ]] && echo $VERZ >${BLTPATH}VERSION + +#${BLTPATH}compile.sh single IGNORE_HASH="yes" REPOSITORY_INSTALL="${REPOSITORY_INSTALL}" REBUILD_IMAGES="${REBUILD_IMAGES}" KERNEL_ONLY="yes" BETA="$BETA" BUILD_ALL="yes" BSP_BUILD="yes" MAKE_ALL_BETA="yes" +${BLTPATH}compile.sh single ARMBIAN_MIRROR="https://imola.armbian.com/dl/" MULTITHREAD="20" IGNORE_HASH="yes" REPOSITORY_INSTALL="${REPOSITORY_INSTALL}" IGNORE_UPDATES="yes" REBUILD_IMAGES="${REBUILD_IMAGES}" KERNEL_ONLY="no" BETA="$BETA" BUILD_ALL="yes" MAKE_ALL_BETA="yes" USE_OVERLAYFS="yes" + +exit + +sleep 3m +while : + do + if [[ $(ps -uax | grep -E "compile|rsync" | wc -l) -lt 2 ]]; then + break + fi + sleep 60 +done + +# uploadaj +rsync -vr ${BLTPATH}output/images/. igorp@nas:/tank/armbian/dl.armbian.com + +# recreate index +ssh igorp@utils "run-one /ext/scripts/recreate.sh" diff --git a/ubootrebuild.sh b/ubootrebuild.sh new file mode 100755 index 00000000..14f58e89 --- /dev/null +++ b/ubootrebuild.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +while [ -f /var/run/nightly-repo ] +do + sleep 30m + echo "Waiting ..." +done + + +# remove lock file on exit +trap '{ sudo rm -f -- "/var/run/nightly-repo"; }' EXIT +sudo sh -c 'echo $$ > /var/run/nightly-repo' + +BLTPATH="/build/" +BETA="yes" +REPOSITORY_INSTALL="kernel,bsp,armbian-config,armbian-firmware" +${BLTPATH}compile.sh EXPERT="yes" IGNORE_HASH="yes" REPOSITORY_INSTALL="${REPOSITORY_INSTALL}" KERNEL_ONLY="yes" BETA="$BETA" BUILD_ALL="yes" BSP_BUILD="yes" MAKE_ALL_BETA="yes" BOOTONLY="yes"