summaryrefslogtreecommitdiff
path: root/parabolaiso/mkmetadata
diff options
context:
space:
mode:
Diffstat (limited to 'parabolaiso/mkmetadata')
-rwxr-xr-xparabolaiso/mkmetadata35
1 files changed, 16 insertions, 19 deletions
diff --git a/parabolaiso/mkmetadata b/parabolaiso/mkmetadata
index 263f63b..01ab721 100755
--- a/parabolaiso/mkmetadata
+++ b/parabolaiso/mkmetadata
@@ -2,10 +2,10 @@
readonly OUT_DIR=$1
readonly IMG_NAME=$2
-readonly PKGLIST="$(readlink -f $3 2> /dev/null)"
+readonly PKGLIST="$( readlink -f $3 2> /dev/null)"
readonly THIS_DIR="$(readlink -f "$(dirname $0)")"
-# if an optional .torrent file is desired, see ./TORRENT_METADATA.sample
+# if a .torrent file is desired, see ./TORRENT_METADATA.sample
[[ -f "$THIS_DIR/TORRENT_METADATA" ]] && source "$THIS_DIR/TORRENT_METADATA"
which mktorrent &> /dev/null && readonly HAS_MKTORRENT=1 || readonly HAS_MKTORRENT=0
@@ -13,39 +13,36 @@ which rhash &> /dev/null && readonly HAS_RHASH=1 || readonly HAS_RHASH=0
[[ -n "${TORRENT_ANNOUNCE_URL}" ]] && readonly SHOULD_MKTORRENT=${HAS_MKTORRENT} || \
readonly SHOULD_MKTORRENT=0
-[[ -n "${ISOS_URL}" ]] && readonly PUBLIC_URL="${ISOS_URL}/$(basename ${OUT_DIR})"
-[[ -n "${ISOS_URL}" ]] && readonly SIG_URL="${PUBLIC_URL}/${IMG_NAME}.sig"
-[[ -n "${ISOS_URL}" ]] && readonly PUBLISH_MSG="The directory: '${OUT_DIR}' should be copied to the repo server entirely, preserving the directory name; such that it is accessible via the URL:\n\t${PUBLIC_URL}/\nThe GPG signature of the ISO should be added to that directory; such that it is accessible at the URL:\n\t${SIG_URL}"
+[[ -n "${ISOS_URL}" ]] && readonly IMG_URL="${ISOS_URL}/$(basename ${OUT_DIR})/${IMG_NAME}"
+[[ -n "${ISOS_URL}" ]] && readonly PUBLISH_MSG="The directory: '${OUT_DIR}' should be copied to the repo server entirely, preserving the directory name; such that it is accessible via the URL:\n\t${IMG_URL}/\nThe GPG signature of the ISO should be added to that directory; such that it is accessible at the URL:\n\t${IMG_URL}.sig"
readonly ISO_HOST_PATH=$(echo "$(basename ${OUT_DIR})/${IMG_NAME}" | sed 's|\s|%20|')
readonly WEBSEEDS_CSV=$(echo ${TORRENT_WEBSEED_URLS} | sed -E "s|([^ ]+)|\1${ISO_HOST_PATH}|g" | tr ' ' ',')
+readonly RELEASE_DEV_CMD='s|[^-]*-\(.*\)-\(.*\)-\(.*\)-\(.*\)-\(.*\)\.iso|\L\1 \u\2/\U\3 \4 \L\5|'
readonly PKGLIST_SUCCESS_MSG="\t=> copied $(basename ${PKGLIST} 2> /dev/null)"
-readonly SHA512SUMS_SUCCESS_MSG="\t=> SHA512SUMS appended"
-readonly WHIIRLPOOLSUMS_SUCCESS_MSG="\t=> WHIRLPOOLSUMS appended"
-readonly MAGNET_SUCCESS_MSG="\t=> ${IMG_NAME}.magnet saved"
-readonly TORRENT_SUCCESS_MSG="\t=> ${IMG_NAME}.torrent saved"
-readonly RHASH_NOT_FOUND_MSG="[mkmetadata]: 'rhash' is not installed - metadata files will not be created"
+readonly SHA512SUMS_SUCCESS_MSG="\t=> SHA512SUMS $( [[ -f "${OUT_DIR}/SHA512SUMS" ]] && echo 'appended' || echo 'generated' )"
+readonly MAGNET_SUCCESS_MSG="\t=> ${IMG_NAME}.magnet generated"
+readonly TORRENT_SUCCESS_MSG="\t=> ${IMG_NAME}.torrent generated"
+readonly RHASH_NOT_FOUND_MSG="[mkmetadata]: 'rhash' is not installed - metadata files will not be generated"
readonly MAKE_METADATA_MSG="[mkmetadata]: preparing metadata"
MakeMetadata()
{
# copy package lists and generate checksums and optional torrent file
- (( ${SHOULD_MKTORRENT} )) && MakeTorrent && echo -e ${TORRENT_SUCCESS_MSG}
- [[ -f "${PKGLIST}" ]] && cp ${PKGLIST} . && echo -e ${PKGLIST_SUCCESS_MSG}
- rhash --sha512 "${IMG_NAME}" >> SHA512SUMS && echo -e ${SHA512SUMS_SUCCESS_MSG}
- rhash --whirlpool "${IMG_NAME}" >> WHIRLPOOLSUMS && echo -e ${WHIIRLPOOLSUMS_SUCCESS_MSG}
- rhash --magnet "${IMG_NAME}" > "${IMG_NAME}.magnet" && echo -e ${MAGNET_SUCCESS_MSG}
+ (( ${SHOULD_MKTORRENT} )) && MakeTorrent && echo -e ${TORRENT_SUCCESS_MSG}
+ [[ -f "${PKGLIST}" ]] && cp ${PKGLIST} . && echo -e ${PKGLIST_SUCCESS_MSG}
+ rhash --sha512 "${IMG_NAME}" >> SHA512SUMS && echo -e ${SHA512SUMS_SUCCESS_MSG}
+ rhash --magnet "${IMG_NAME}" > "${IMG_NAME}.magnet" && echo -e ${MAGNET_SUCCESS_MSG}
- sort SHA512SUMS --key=2 --output=SHA512SUMS
- sort WHIRLPOOLSUMS --key=2 --output=WHIRLPOOLSUMS
+ sort SHA512SUMS --key=2 --output=SHA512SUMS
}
MakeTorrent()
{
- local release=$( sed 's|[^-]*-\(.*\)-\(.*\)-\(.*\)-\(.*\)-\(.*\)\.iso|\u\1/\U\2 \L\3 \u\4 \5|' <<<${IMG_NAME})
- local sig="$( [[ -n "${ISOS_URL}" ]] && echo "GPG signature: '${SIG_URL}")"
+ local release=$( sed "${RELEASE_DEV_CMD}" <<<${IMG_NAME})
+ local sig="$( [[ -n "${ISOS_URL}" ]] && echo "GPG signature: '${IMG_URL}.sig")"
local comment="$(sed 's|_RELEASE_|'"${release}"'|' <<<${TORRENT_COMMENT})\n${sig}"
# generate torrent file