X-Git-Url: https://njoseph.me/gitweb/babashka-scripts.git/blobdiff_plain/96c053119ea711659f9d7bef1e2ff502399a2809..10c4979d3156b71a4e718e49966f555b15d73a1d:/update-babashka.clj diff --git a/update-babashka.clj b/update-babashka.clj index afcaff1..c122fb4 100755 --- a/update-babashka.clj +++ b/update-babashka.clj @@ -4,7 +4,7 @@ '[org.httpkit.client :as http] '[babashka.fs :as fs] '[clojure.java.io :as io] - '[lib :refer [download-binary expand-home extract-file-from-zip]]) + '[lib :refer [download-binary expand-home run-cmd]]) (defn babashka-latest-version [] @@ -23,7 +23,7 @@ version "-" architecture - ".zip")) + ".tar.gz")) (defn check-latest [version] @@ -39,16 +39,16 @@ (defn update-babashka [] (let [architecture "linux-amd64" ;; TODO support other architectures - zip-file "babashka.zip" - destination (expand-home "~/bin/bb") + tarball "babashka.tar.gz" + destination (expand-home "~/bin") version (babashka-latest-version)] (println (str "Latest version is " version)) (check-latest version) (println "Updating...") - (download-latest version architecture zip-file) - (extract-file-from-zip zip-file "bb" destination) - (fs/set-posix-file-permissions destination "rwxr-xr-x") - (io/delete-file zip-file) + (download-latest version architecture tarball) + (run-cmd ["tar" "-xzf" tarball "--directory" destination]) + (fs/set-posix-file-permissions (str destination "/bb") "rwxr-xr-x") + (io/delete-file tarball) (println "Done!"))) (when (= *file* (System/getProperty "babashka.file")) (update-babashka))