Blog: 2024-08-27
Got some interest in downloading planck clojurescript repl, as a more approachable runtime for a command line lisp editor that's not emacs. Anyways... elisp isn't that bad as a language really. But I got stuck on installing planck from source, I guess cause I don't have a `jar` command.
Here's what I tried to do to make it not have all these weird errors
planck $ git diff diff --git a/script/get-closure-library b/script/get-closure-library index aeedb61..b745168 100755 --- a/script/get-closure-library +++ b/script/get-closure-library @@ -14,7 +14,7 @@ if [ ! -f $output ]; then mkdir -p planck-cljs/lib/closure cd planck-cljs/lib/closure curl --retry 3 -LO -s https://repo1.maven.org/maven2/org/clojure/google-closure-library/$GCL_RELEASE/google-closure-library-$GCL_RELEASE.jar || { echo "Download failed."; exit 1; } - jar xf google-closure-library-$GCL_RELEASE.jar + jar xf google-closure-library-$GCL_RELEASE.jar || exit 1 rm google-closure-library-$GCL_RELEASE.jar cd .. mkdir -p third_party/closure planck $
The weird errors in question looked like
planck $ ./script/build Creating an optimized build, using build cache to speed up build. Specifying --fast skips optimizations and takes less than two minutes. Fetching Google Closure Compiler... Fetching Google Closure Library... script/get-closure-library: line 17: jar: command not found script/get-closure-library: line 23: jar: command not found script/get-closure-library: line 37: cd: planck-cljs/lib/closure/goog: No such file or directory script/get-closure-library: line 64: cd: planck-cljs/lib/third_party/closure/goog: No such file or directory find: ‘./var/spool/cron/crontabs’: Permission denied find: ‘./var/spool/cups’: Permission denied find: ‘./var/spool/rsyslog’: Permission denied find: ‘./var/spool/postfix/bounce’: Permission denied
Ok it wasn't erroring out when I was missing the `jar` command. I'm missing the jar command cause I did a weird java install to /opt with a single symlink for `java`. Better to add that whole java directory to my PATH:
# ~/.profile ... export JAVA_HOME=/opt/java/jdk-20+36 export PATH="$JAVA_HOME/bin:$PATH"
Here's my whole .profile, since I don't track this in version control anyways...
# source "$HOME/.cargo/env" export EDITOR='vim' export BROWSER='firefox' export PAGER='less' export SUDO_EDITOR=/usr/bin/vi export DENO_INSTALL="/home/razzi/.deno" export PATH="$DENO_INSTALL/bin:$PATH" export PATH="$HOME/.cargo/bin:$PATH" # Make firefox use wayland rather than xwayland to see if it improves scrolling. export MOZ_ENABLE_WAYLAND=1 export RIPGREP_CONFIG_PATH=$HOME/.rgrc export JAVA_HOME=/opt/java/jdk-20+36 export PATH="$JAVA_HOME/bin:$PATH" # Disable venvs in prompt for poetry export VIRTUAL_ENV_DISABLE_PROMPT=1 export LC_ALL=C.UTF-8 # Disable vim x integration export SESSION_MANAGER='' export GEM_HOME="$HOME/.ruby"
A bit messy and I kept all the stuff above it, commented out
---
Also realized that script/build wasn't being searched by rg. The cause was my global gitignore!
planck $ rg --debug GCC_R script/ ... DEBUG|ignore::walk|/usr/share/cargo/registry/ignore-0.4.18/src/walk.rs:1741: ignoring script/build: Ignore(IgnoreMatch(Gitignore(Glob { from: Some("/home/razzi/.gitignore_global"), original: "build", actual: "**/build", is_whitelist: false, is_only_dir: false })))
Also realized my `git untracked-files` doesn't work :/
planck $ git untracked-files <no output>
Back into the coding mix, bugs abound!
---
Alright it was confusion on my part - I thought "untracked files" but really what I was looking for was ignored files. Which are a sort of untracked file, but for that I use `git ignored`.