This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-01-06
Channels
- # aleph (13)
- # announcements (1)
- # babashka (89)
- # beginners (23)
- # calva (14)
- # circleci (7)
- # clj-kondo (39)
- # clj-on-windows (1)
- # cljdoc (5)
- # cljsrn (29)
- # clojure (98)
- # clojure-art (3)
- # clojure-conj (5)
- # clojure-europe (14)
- # clojure-nl (1)
- # clojure-norway (9)
- # clojurescript (18)
- # clr (39)
- # code-art (3)
- # community-development (3)
- # cursive (3)
- # emacs (11)
- # events (1)
- # fulcro (12)
- # graalvm-mobile (16)
- # graphql (3)
- # gratitude (1)
- # honeysql (19)
- # java (7)
- # joyride (23)
- # lsp (22)
- # malli (2)
- # missionary (25)
- # off-topic (15)
- # polylith (15)
- # rdf (5)
- # reagent (9)
- # reitit (3)
- # scittle (3)
- # shadow-cljs (37)
- # slack-help (2)
- # sql (10)
Awesome with the book @nonrecursive! The one thing that has stopped me from using babashka more is figuring out how to install it on CI (e.g. Github Actions) - I'm sure there's an easy way to do it but I haven't seen it in official documentation...
Look no further than setup-clojure and use bb: latest https://github.com/DeLaGuardo/setup-clojure
I think a quick reference in the docs would go a long way for others too (if you endorse the above-linked setup-clojure) 🙂
I'd second the install script based method too, keeps my stuff ci agnostic 😄 and pretty quick too
yep, but more often than not im not using actions, reasons like bigger machines etc 😅
@U04V15CAJ sure, the install script is the least common denominator. Interestingly, when I google "github action babashka" I see: • https://github.com/marketplace/actions/babashka-clojure • https://github.com/marketplace/actions/setup-babashka-a-clojure-babushka-for-the-grey-areas-of-bash • https://github.com/babashka/babashka/actions So I was more thinking a section in the readme just mentioning github actions (even if it is already just repeating the install script, if you don't want to mention specific github actions).
Another bbin-installable cool tool: console history report https://github.com/ThaddeusJiang/chr
bbin install
chr
Is anyone here using babaska on asdf? I have doubts if it install the arm binary on m1. Can anyone verify this?
$ file $(which bb)
/Users/borkdude/dev/babashka/bb: Mach-O 64-bit executable arm64
jonathandavenport@Jonathans-MacBook-Air ~ % asdf install babashka latest
* Downloading babashka release 1.0.169...
/Users/jonathandavenport/.asdf/plugins/babashka/bin/../lib/utils.bash: line 52: arch: unbound variable
rm: /Users/jonathandavenport/.asdf/installs/babashka/1.0.169/babashka-1.0.169.: No such file or directory
asdf-babashka: Expected /Users/jonathandavenport/.asdf/installs/babashka/1.0.169/bin/bb to be executable.
asdf-babashka: An error ocurred while installing babashka 1.0.169.
jonathandavenport@Jonathans-MacBook-Air ~ %
Just tried this on my M1
also hadn't heard of asdf before so thanks 🙂
% file $(asdf which bb)
/Users/user/.asdf/installs/babashka/1.0.165/bin/bb: Mach-O 64-bit executable arm64
Compare
% file $(which bb)
/Users/user/.asdf/shims/bb: Bourne-Again shell script text executable, ASCII text
asdf installs bash shims for all its binaries
Does this work for you asdf install nodejs latest
?
yes nodejs installs
@U04V15CAJ I've seen problems in our team, maybe, with machines getting binaries for the wrong platform after updating to a new version of osx
@U04GSQQ6TAR looks like this is tracked here https://github.com/fredZen/asdf-babashka/issues/3
case "$(uname -m)" in
aarch64) arch=aarch64 ;;
x86*) arch=amd64 ;;
esac
when I run uname -m
I get arm64
I have no idea, however, why this is working for me
I'm on macOS 12.6.1
I'm on 11.2.2
that might be the relevant difference
can you try which uname
?
I get /usr/bin/uname
yep I get the same result
fwiw I also get arm64
This is why I was suspicious that it wouldn't work on asdf, since I saw they weren't doing this
if that author is unresponsive, we could fork the repo
FWIW I've asked around in my team and most people seem to be properly getting the arm64 binary
i use asdf for managing some things where i actually need different versions, but for bb i pretty much treat it like im always running edge
from my perspective: I just want packages that people use to install bb to work and not be neglected
i was just curious about bb via asdf in particular given asdf, for me anyway, is a way to manage multiple versions of various things, and for bb i imagine most people treat it like “latest, please”
We install bb via asdf because we do the same for Java, clojure, node, python, ruby etc
Is it possible to report this babashka asdf plugin as inactive and maybe propose a more maintained one?
We've already forked at least one plugin, it's fairly straightforward
wait a minute
looks like we (Pitch) actually forked asdf-babashka to make it work on m1
to be used like this
asdf plugin add babashka
that explains why we have no problems with it
what makes you say that fredZen's plugin is included in asdf by default?
I assumed so because of this: https://github.com/asdf-vm/asdf-plugins/blob/master/plugins/babashka
ah, gotcha
if you give us a minute, we can fork it properly tomorrow in the pitch github org
then it's easier to keep it updated than on a private repo
so much progress, it's amazing
Hi all I’m on a windows machine with limited rights, 4gb of ram trying to troubleshoot an issue that involves jumping back and forth between SQL management studio and postman. I’d rather be in a repl. i have bb and notepad++ and it is almost ok but running the entire script each run is less than ideal. Tried calva but it was too much for this machine. Does anyone have or know of babashka script that will give me a simple clerk like notebook environment to try?
Perhaps the clerk + bb pull request? https://github.com/nextjournal/clerk/pull/232 cc @U5H74UNSF
@U06GMV0B0 This is a really light solution that works with bb too: https://www.loop-code-recur.io/live-clojure-cookbooks/
Live clojure cookbook Looks interesting but i’m still missing out on the interactivity.
Are you looking for a low memory interactive process? VSCode is too heavy with the bb nREPL? Emacs?

What you could also do is start the nREPL server on your low resource machine and then connect to it from a stronger machine