status-mobile/nix/deps/clojure
Jakub Sokołowski 1f7fd17ff1
rename status-react to status-mobile
This way the name of the repo makes at least some sense and
matches the `status-desktop` repo naming.

Also updated `status-jenkins-lib` since it also contained
references to `status-react` repo and job names.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-07-17 14:46:16 +02:00
..
README.md rename status-react to status-mobile 2022-07-17 14:46:16 +02:00
default.nix rename status-react to status-mobile 2022-07-17 14:46:16 +02:00
deps.json Switcher and Bottom Tabs Animations and UI Performance Improvements 2022-06-28 23:51:24 +05:30
deps.list Switcher and Bottom Tabs Animations and UI Performance Improvements 2022-06-28 23:51:24 +05:30
generate.sh nix: add missing cljfmt dependencies to nix/deps/clojure 2021-03-01 16:42:38 +01:00

README.md

Description

This folder contains the scripts and Nix derivations necessary to generate Clojure dependencies for this project.

Usage

Running generate.sh in a shell that has available shadow-cljs and clojure should update the deps.list and deps.json files.

Details

By using the following command:

shadow-cljs classpath --force-spawn

We both download the necessary JARs and POMs into ~/.m2 folder, but also get the classpath printed into standard output.

We then use the classpath in combination with contents of ~/.m2 folder to generate the following files:

  • deps.list - List of JARs relative to the ~/.m2 cache folder.
  • deps.json - Full list of JARs and POMs including their SHAs.

The deps.list file is just intermediate and for debugging purposes. The deps.json is loaded by the derivation in default.nix and used to produce a derivation that contains all the necessary dependencies:

 > grep cljfmt nix/deps/clojure/deps.list
cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar

 > nix-build --no-out-link -A pkgs.deps.clojure
/nix/store/d7p8r9vhq6z2jmxwakxpcb262wgkc86s-status-mobile-clojure-deps

 > DEPS=$(nix-build --no-out-link -A pkgs.deps.clojure)                              

 > find $DEPS -iname 'cljfmt-0.6.7.*'
/nix/store/d7p...86s-status-mobile-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.pom.sha1
/nix/store/d7p...86s-status-mobile-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.pom
/nix/store/d7p...86s-status-mobile-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar.sha1
/nix/store/d7p...86s-status-mobile-clojure-deps/cljfmt/cljfmt/0.6.7/cljfmt-0.6.7.jar