]> njoseph.me Git - babashka-scripts.git/blobdiff - update-babashka.clj
Add utils and shell aliases
[babashka-scripts.git] / update-babashka.clj
index b14d0b9b69ab281b49d33d2b1d115267f16a93c7..afcaff1e819d49dad5e199c21dfc32a5ab1ab799 100755 (executable)
@@ -1,9 +1,10 @@
 #! /usr/bin/env bb
 
-(require '[clojure.java.shell :refer [sh]]
-         '[cheshire.core :as json]
+(require '[cheshire.core :as json]
          '[org.httpkit.client :as http]
-         '[babashka.fs :as fs])
+         '[babashka.fs :as fs]
+         '[clojure.java.io :as io]
+         '[lib :refer [download-binary expand-home extract-file-from-zip]])
 
 (defn babashka-latest-version
   []
@@ -35,9 +36,9 @@
   (let [url (get-download-url version architecture)]
     (download-binary url output)))
 
-(when (= *file* (System/getProperty "babashka.file"))
-  (let [architecture "linux-amd64"  ;; TODO support multiple
-                                           ;; architectures
+(defn update-babashka
+  []
+  (let [architecture "linux-amd64"  ;; TODO support other architectures
         zip-file "babashka.zip"
         destination (expand-home "~/bin/bb")
         version (babashka-latest-version)]
@@ -49,3 +50,5 @@
     (fs/set-posix-file-permissions destination "rwxr-xr-x")
     (io/delete-file zip-file)
     (println "Done!")))
+
+(when (= *file* (System/getProperty "babashka.file")) (update-babashka))