diff options
author | Ismael Luceno | 2016-09-08 00:11:32 -0300 |
---|---|---|
committer | Ismael Luceno | 2016-09-08 00:11:32 -0300 |
commit | 8fac51fda3b566617b6a0c31ad9579c7ab38c32b (patch) | |
tree | 82d8d835da69903aadc529497f29931283fba145 | |
parent | e38a64bb03a854657636fff3a57cdd430c17690c (diff) |
libdetails: Improve parsing of SPELL_SRC_FILE
Get rid of the SPELL_SANITIZED_FILE_NAME variable, and parse Github-style
URLs correctly.
-rwxr-xr-x | usr/bin/quill | 8 | ||||
-rw-r--r-- | var/lib/quill/modules/libdetails | 15 |
2 files changed, 10 insertions, 13 deletions
diff --git a/usr/bin/quill b/usr/bin/quill index 7bf5f26..b026d07 100755 --- a/usr/bin/quill +++ b/usr/bin/quill @@ -426,16 +426,10 @@ else # no updates, we'll be making a spell # redo it for QUILL_FETCH_MODE, perhaps it didn't fetch a valid source url # first time for other modes - parse_spell_source_file_info - while [[ -z $SPELL_SANITIZED_FILE_NAME ]]; do - if [[ -n $SPELL_SRC_FILE ]]; then - SPELL_SANITIZED_FILE_NAME=$SPELL_SRC_FILE - break - fi + while ! parse_spell_source_file_info; do error_msg "Source file couldn't be found. Check that the url is valid and downloadable!\n" unset SPELL_SRC_URL query_spell_source_url - parse_spell_source_file_info done show_spell_source_file_info echo diff --git a/var/lib/quill/modules/libdetails b/var/lib/quill/modules/libdetails index dd6ff13..3d483dc 100644 --- a/var/lib/quill/modules/libdetails +++ b/var/lib/quill/modules/libdetails @@ -124,21 +124,24 @@ fi ## @Synopsis Assign to SPELL_SRC_FILE the filename and to VERSION the ## @Synopsis version number parsed from source url. ## -## @Globals SPELL_SRC_FILE SPELL_SANITIZED_FILE_NAME SPELL_VERSION +## @Globals SPELL_SRC_FILE SPELL_VERSION #--- function parse_spell_source_file_info(){ - SPELL_SRC_FILE=$(expr "$SPELL_SRC_URL" : '.*/\(.*\)') - SPELL_SANITIZED_FILE_NAME=$(expr "$SPELL_SRC_FILE" : '\(.*\)[-|_][0-9]') - SPELL_VERSION=$(expr "$SPELL_SRC_FILE" : "${SPELL_SANITIZED_FILE_NAME}[-|_]\(.*\)\.[t|z|r]") + SPELL_SRC_FILE="${SPELL_SRC_URL##*/}" + if expr "$SPELL_SRC_FILE" : 'v[0-9]\.' >/dev/null; then + SPELL_VERSION=$(expr "$SPELL_SRC_FILE" : 'v\(.*\)\.[rtz]') + else + SPELL_VERSION=$(expr "$SPELL_SRC_FILE" : ".*[-_]\([0-9].*\)\.[rtz]") + fi + [[ -n $SPELL_SRC_FILE ]] } #--- ## @Synopsis Print on screen info gathered from source url. ## -## @Globals SPELL_SANITIZED_FILE_NAME SPELL_VERSION SPELL_SRC_URL +## @Globals SPELL_VERSION SPELL_SRC_URL #--- function show_spell_source_file_info(){ - message "Sanitized filename: ${SPELL_SANITIZED_FILE_NAME}" message "Version: ${SPELL_VERSION}" message "URL: ${SPELL_SRC_URL}" } |