generalize, a lot
[webi-installers/.git] / caddy / install.sh
diff --git a/caddy/install.sh b/caddy/install.sh
new file mode 100644 (file)
index 0000000..0148194
--- /dev/null
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+# This file only defines custom functions which may be unique to installing Caddy.
+# For the generic functions (version comparison, downloading, symlinking) which
+# are used by almost all installers, see `template.bash`:
+#   - https://github.com/webinstall/packages/branches/master/webi/template.bash
+
+set -e
+set -u
+
+pkg_cmd_name="caddy"
+WEBI_SINGLE=true
+
+pkg_get_current_version() {
+    # 'caddy version' has output in this format:
+    #       v2.1.0 h1:pQSaIJGFluFvu8KDGDODV8u4/QRED/OPyIR+MWYYse8=
+    # This trims it down to just the version number:
+    #       2.0.0
+    echo "$(caddy version 2>/dev/null | head -n 1 | cut -d' ' -f1 | sed 's:^v::')"
+}
+
+pkg_install() {
+    # $HOME/.local/xbin
+    mkdir -p "$pkg_src_bin"
+
+    # mv ./caddy* "$HOME/.local/xbin/caddy-v2.0.0"
+    mv ./"$pkg_cmd_name"* "$pkg_src_cmd"
+
+    # chmod a+x "$HOME/.local/xbin/caddy-v2.0.0"
+    chmod a+x "$pkg_src_cmd"
+}
+
+pkg_link() {
+    # rm -f "$HOME/.local/bin/caddy"
+    rm -f "$pkg_dst_cmd"
+
+    # ln -s "$HOME/.local/xbin/caddy-v2.0.0" "$HOME/.local/bin/caddy"
+    ln -s "$pkg_src_cmd" "$pkg_dst_cmd"
+}