From ee457a2d14773c71bd3ee456b6b5bc8f6ac459bb Mon Sep 17 00:00:00 2001 From: David Hettler Date: Fri, 18 Oct 2019 07:48:18 +0200 Subject: [PATCH] Render appdata template instead of hard-coding; add section --- appimage-build.sh | 3 ++ render-appdata-template.sh | 37 +++++++++++++++++++ ...mator.appdata.xml => appdata.template.xml} | 15 ++++++++ 3 files changed, 55 insertions(+) create mode 100755 render-appdata-template.sh rename resources/{appimage/org.cryptomator.Cryptomator.appdata.xml => appdata.template.xml} (84%) diff --git a/appimage-build.sh b/appimage-build.sh index 0f33cd8..ca55773 100755 --- a/appimage-build.sh +++ b/appimage-build.sh @@ -5,6 +5,9 @@ BUILD_VERSION=${1:-SNAPSHOT} if [ ! -d ./Cryptomator ]; then echo "./Cryptomator does not exist."; exit 1; fi if [ ! -x $(readlink -e ./tools/appimagekit/squashfs-root/AppRun) ]; then echo "./tools/appimagekit/squashfs-root/AppRun not executable."; exit 1; fi +# render appdata.xml +./render-appdata-template.sh resources/appdata.template.xml $BUILD_VERSION > resources/appimage/org.cryptomator.Cryptomator.appdata.xml + # prepare AppDir mv Cryptomator Cryptomator.AppDir mkdir -p Cryptomator.AppDir/usr/share/icons/hicolor/512x512/apps/ diff --git a/render-appdata-template.sh b/render-appdata-template.sh new file mode 100755 index 0000000..1127fae --- /dev/null +++ b/render-appdata-template.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +template_file=$1 +release_version=$2 + +if [[ $# -ne 2 ]] ; then + echo """ +Usage: + ./render-appdata-template.sh TEMPLATE_FILE RELEASE_VERSION +Example: + ./render-appdata-template.sh resources/appdata.template.xml 1.0.0 + ./render-appdata-template.sh resources/appdata.template.xml SNAPSHOT + """ + exit +fi + +if [[ "$release_version" != "SNAPSHOT" ]] ; then + # non-SNAPSHOT release: render section + version_suffix=`echo $release_version | sed -nr "s/[0-9]+\.[0-9]+\.[0-9]+(-.*)/\1/p"` + [ -z "$version_suffix" ] && release_type="stable" || release_type="development" + release_date=`date --iso-8601` + + cat "$template_file" | + sed -e ':a' -e 'N' -e '$!ba' -e 's/{{{releases\(.*\)}}}/\1/g' \ + -e "s/{{release_version}}/$release_version/g" \ + -e "s/{{release_date}}/$release_date/g" \ + -e "s/{{release_type}}/$release_type/g" +else + # SNAPSHOT release: omit section + cat "$template_file" | + sed -e':a' -e 'N' -e '$!ba' -e 's/{{{releases\(.*\)}}}//g' +fi + + + + + diff --git a/resources/appimage/org.cryptomator.Cryptomator.appdata.xml b/resources/appdata.template.xml similarity index 84% rename from resources/appimage/org.cryptomator.Cryptomator.appdata.xml rename to resources/appdata.template.xml index 5e1e313..8ad514f 100644 --- a/resources/appimage/org.cryptomator.Cryptomator.appdata.xml +++ b/resources/appdata.template.xml @@ -70,4 +70,19 @@ cryptomator org.cryptomator.Cryptomator.desktop + {{{releases + + + https://github.com/cryptomator/cryptomator/releases/tag/{{release_version}} + + + https://github.com/cryptomator/cryptomator/releases/download/{{release_version}}/cryptomator-{{release_version}}-x86_64.AppImage + + + https://github.com/cryptomator/cryptomator/archive/{{release_version}}.tar.gz + + + + + }}}