diff --git a/releng/releng_build_isojigdo b/releng/releng_build_isojigdo index c4d7f8f3..d15b94e0 100755 --- a/releng/releng_build_isojigdo +++ b/releng/releng_build_isojigdo @@ -5,12 +5,12 @@ set -e START_DIR_DONT_CHANGE=`pwd` SELF=$(basename "$0") # required config items -XOR="" -DIR="" -IMG="" +RELENG_XORRISO="" +RELENG_DIR="" +RELENG_IMG="" # optional config items -ISOLINUX_BIN="" -BOOT_CAT="" +RELENG_ISOLINUX_BIN="" +RELENG_BOOT_CAT="" CONFFILE=$HOME/.libburnia-releng/releng_build_isojigdo.conf KEEP=0 GEN_DATA_DIR=releng_generated_data/${SELF} @@ -58,12 +58,12 @@ if [ "${1}" == "-rc" ]; then if [ "${2}" == "-keep" ]; then KEEP=1; fi # command line args elif [ "${3}" ]; then - XOR="${1}" - DIR="${2}" - IMG="${3}" + RELENG_XORRISO="${1}" + RELENG_DIR="${2}" + RELENG_IMG="${3}" if [ "${4}" ]; then - ISOLINUX_BIN="${4}" - if [ "${5}" ]; then BOOT_CAT="${5}"; fi + RELENG_ISOLINUX_BIN="${4}" + if [ "${5}" ]; then RELENG_BOOT_CAT="${5}"; fi if [ "${4}" == "-keep" -o "${5}" == "-keep" -o "${6}" == "-keep" ]; then KEEP=1; fi fi # the rest @@ -80,25 +80,25 @@ else mkdir "${GEN_DATA_DIR}" fi -if [ "${XOR}" == "" -o "${DIR}" == "" -o "${IMG}" == "" ]; then +if [ "${RELENG_XORRISO}" == "" -o "${RELENG_DIR}" == "" -o "${RELENG_IMG}" == "" ]; then echo -e "\n${SELF}: xorriso_cmd IN_dir and OUT_image are required\n" exit 40 fi -if [ ! -x "${XOR}" ]; then - printf "${SELF}: Not found or not an executable: $XOR\n" +if [ ! -x "${RELENG_XORRISO}" ]; then + printf "${SELF}: Not found or not an executable: $RELENG_XORRISO\n" exit 50 fi # all must be set at this point printf "${SELF}: Config items:" -printf "\n\txorriso_cmd=${XOR}\n\tIN_dir=${DIR}\n\tOUT_image=${IMG}.iso" -printf "\n\tIN_isolinux=${ISOLINUX_BIN}\n\tOUT_bootcat=${BOOT_CAT}\n" -RES="${IMG}.iso ${IMG}.new ${IMG}.md5 ${IMG}.jigdo ${IMG}.template" +printf "\n\txorriso_cmd=${RELENG_XORRISO}\n\tIN_dir=${RELENG_DIR}\n\tOUT_image=${RELENG_IMG}.iso" +printf "\n\tIN_isolinux=${RELENG_ISOLINUX_BIN}\n\tOUT_bootcat=${RELENG_BOOT_CAT}\n" +RES="${RELENG_IMG}.iso ${RELENG_IMG}.new ${RELENG_IMG}.md5 ${RELENG_IMG}.jigdo ${RELENG_IMG}.template" # xorriso version details, incl. underlying libraries -"${XOR}" -version -if ! "${XOR}" -version | grep libjte >/dev/null 2>&1; then +"${RELENG_XORRISO}" -version +if ! "${RELENG_XORRISO}" -version | grep libjte >/dev/null 2>&1; then printf "\n${SELF}: JTE not supported with this xorriso build. Install jigit and rebuild." printf "\n${SELF}: See http://www.einval.com/~steve/software/JTE/\n" exit 51 @@ -116,7 +116,7 @@ fi # create MD5 list in base64 format if which jigdo-gen-md5-list >/dev/null 2>&1; then printf "${SELF}: Creating MD5 list in hex format..." - jigdo-gen-md5-list ${DIR} > ${GEN_DATA_DIR}/${IMG}.md5 + jigdo-gen-md5-list ${RELENG_DIR} > ${GEN_DATA_DIR}/${RELENG_IMG}.md5 printf "Done.\n" else printf "\n${SELF}: Not found: jigdo-gen-md5-list. Install jigit." @@ -125,10 +125,10 @@ else fi # build the command - general section -CMD="${XOR} \ +CMD="${RELENG_XORRISO} \ -as mkisofs \ -quiet \ - -o ${GEN_DATA_DIR}/${IMG}.iso \ + -o ${GEN_DATA_DIR}/${RELENG_IMG}.iso \ -R \ -V ISOJIGDO \ -partition_offset 16 \ @@ -136,10 +136,10 @@ CMD="${XOR} \ " # boot section TODO -#if [ "${ISOLINUX_BIN}" -a "${BOOT_CAT}" ]; then +#if [ "${RELENG_ISOLINUX_BIN}" -a "${RELENG_BOOT_CAT}" ]; then #CMD+=\ -# -b ${ISOLINUX_BIN} \ # NOTE: boot/isolinux/isolinux.bin -# -c ${BOOT_CAT} \ # NOTE: boot/boot.cat +# -b ${RELENG_ISOLINUX_BIN} \ # NOTE: boot/isolinux/isolinux.bin +# -c ${RELENG_BOOT_CAT} \ # NOTE: boot/boot.cat # -no-emul-boot -boot-load-size 4 -boot-info-table \ # -isohybrid-mbr somembr.sysarea \ # TODO: figure out where to grab one # -partition_offset 16 \ @@ -151,14 +151,14 @@ CMD+="\ -jigdo-template-compress gzip \ -checksum_algorithm_iso md5,sha1,sha256,sha512 \ -checksum_algorithm_template md5,sha1,sha256,sha512 \ - -jigdo-jigdo ${GEN_DATA_DIR}/${IMG}.jigdo \ - -jigdo-template ${GEN_DATA_DIR}/${IMG}.template \ - -jigdo-map Debian=${DIR} \ - -md5-list ${GEN_DATA_DIR}/${IMG}.md5 \ + -jigdo-jigdo ${GEN_DATA_DIR}/${RELENG_IMG}.jigdo \ + -jigdo-template ${GEN_DATA_DIR}/${RELENG_IMG}.template \ + -jigdo-map Debian=${RELENG_DIR} \ + -md5-list ${GEN_DATA_DIR}/${RELENG_IMG}.md5 \ -jigdo-min-file-size 1024 \ " -CMD+="${DIR}" +CMD+="${RELENG_DIR}" # run it echo -e "${SELF}: Creating ISO and jigdo representations:\n$CMD\n" @@ -168,10 +168,10 @@ ${CMD} if which jigit-mkimage >/dev/null 2>&1; then printf "${SELF}: Creating new ISO from jigdo files..." jigit-mkimage \ - -t ${GEN_DATA_DIR}/${IMG}.template \ - -j ${GEN_DATA_DIR}/${IMG}.jigdo \ - -m Debian=${DIR} \ - -o ${GEN_DATA_DIR}/${IMG}.new + -t ${GEN_DATA_DIR}/${RELENG_IMG}.template \ + -j ${GEN_DATA_DIR}/${RELENG_IMG}.jigdo \ + -m Debian=${RELENG_DIR} \ + -o ${GEN_DATA_DIR}/${RELENG_IMG}.new printf "Done.\n" else printf "\n${SELF}: Not found: jigit-mkimage. Install jigit." @@ -180,11 +180,11 @@ else fi # trap the exit code of diff and let the Universe explode -diff ${GEN_DATA_DIR}/${IMG}.iso ${GEN_DATA_DIR}/${IMG}.new +diff ${GEN_DATA_DIR}/${RELENG_IMG}.iso ${GEN_DATA_DIR}/${RELENG_IMG}.new DIFF_RET="$?" case ${DIFF_RET} in 0) - echo -e "${SELF}: diff ${GEN_DATA_DIR}/${IMG}.iso ${GEN_DATA_DIR}/${IMG}.new matched.\n" + echo -e "${SELF}: diff ${GEN_DATA_DIR}/${RELENG_IMG}.iso ${GEN_DATA_DIR}/${RELENG_IMG}.new matched.\n" ;; *) echo -e "${SELF}: FAIL: diff returned code: $DIFF_RET\n" @@ -204,9 +204,9 @@ fi # last hints printf "\n${SELF}: HINT: manual checks remained to be done:\n" -printf " * ${IMG}.img boots from USB stick and/or optical media.\n" +printf " * ${RELENG_IMG}.img boots from USB stick and/or optical media.\n" printf " * appended FAT partition is mountable.\n" -printf " * xorriso -indev ${IMG}.iso -pvd_info\n" -printf " * fdisk -lu ${IMG}.iso\n" +printf " * xorriso -indev ${RELENG_IMG}.iso -pvd_info\n" +printf " * fdisk -lu ${RELENG_IMG}.iso\n" exit 0 diff --git a/releng/releng_build_isojigdo.conf.template b/releng/releng_build_isojigdo.conf.template index 781d992c..5f22fc69 100644 --- a/releng/releng_build_isojigdo.conf.template +++ b/releng/releng_build_isojigdo.conf.template @@ -3,16 +3,16 @@ # *** Then a run of 'releng_build_isojigdo -rc' will pick it up # xorriso executable to be tested -XOR=/path/to/xorriso +RELENG_XORRISO=/path/to/xorriso # Should contain an ISOLINUX setup and some payload files -DIR=/path/to/input_dir +RELENG_DIR=/path/to/input_dir # Gets created resp. overwritten by this test -IMG=/path/to/out_image +RELENG_IMG=/path/to/out_image # It is part of the ISOLINUX setup in $DIR -ISOLINUX_BIN=/path/to/input_dir/isolinux.bin +RELENG_ISOLINUX_BIN=/path/to/input_dir/isolinux.bin # Will be created in the ISO image. Should not exist in $DIR -BOOT_CAT=/path/to/boot.cat +RELENG_BOOT_CAT=/path/to/boot.cat