]> njoseph.me Git - babashka-scripts.git/blobdiff - update-babashka.clj
Remove .clj suffix for scripts
[babashka-scripts.git] / update-babashka.clj
diff --git a/update-babashka.clj b/update-babashka.clj
deleted file mode 100755 (executable)
index c122fb4..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-#! /usr/bin/env bb
-
-(require '[cheshire.core :as json]
-         '[org.httpkit.client :as http]
-         '[babashka.fs :as fs]
-         '[clojure.java.io :as io]
-         '[lib :refer [download-binary expand-home run-cmd]])
-
-(defn babashka-latest-version
-  []
-  (-> @(http/get "https://api.github.com/repos/babashka/babashka/tags")
-      :body
-      (json/parse-string true)
-      first
-      :name
-      (subs 1)))
-
-(defn get-download-url
-  [version architecture]
-  (str "https://github.com/babashka/babashka/releases/download/v"
-       version
-       "/babashka-"
-       version
-       "-"
-       architecture
-       ".tar.gz"))
-
-(defn check-latest
-  [version]
-  (when (= (System/getProperty "babashka.version") version)
-    (println "Already using the latest version.")
-    (System/exit 0)))
-
-(defn download-latest
-  [version architecture output]
-  (let [url (get-download-url version architecture)]
-    (download-binary url output)))
-
-(defn update-babashka
-  []
-  (let [architecture "linux-amd64"  ;; TODO support other architectures
-        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 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))