lumo 1.9.0 -> 1.10.1 plus darwin support
This commit is contained in:
parent
43a775649c
commit
ef712ff2f5
9 changed files with 1465 additions and 1376 deletions
|
@ -1,18 +1,30 @@
|
|||
{ stdenv, lib, fetchurl, clojure,
|
||||
nodejs, jre, unzip, nodePackages,
|
||||
python, openssl, pkgs }:
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchurl
|
||||
, clojure
|
||||
, gnutar
|
||||
, nodejs
|
||||
, jre
|
||||
, unzip
|
||||
, nodePackages
|
||||
, xcbuild
|
||||
, python
|
||||
, openssl
|
||||
, pkgs
|
||||
, fetchgit
|
||||
, darwin
|
||||
}:
|
||||
let
|
||||
version = "1.10.1";
|
||||
nodeVersion = "11.13.0";
|
||||
nodeSources = fetchurl {
|
||||
url = "https://nodejs.org/dist/v${nodeVersion}/node-v${nodeVersion}.tar.gz";
|
||||
sha256 = "1cjzjbshxnysxkvbf41p3m8298cnhs9kfvdczgvvvlp6w16x4aac";
|
||||
};
|
||||
lumo-internal-classpath = "LUMO__INTERNAL__CLASSPATH";
|
||||
|
||||
let # packageJSON=./package.json;
|
||||
version = "1.9.0";
|
||||
nodeVersion = "10.9.0";
|
||||
nodeSources = fetchurl {
|
||||
url="https://nodejs.org/dist/v${nodeVersion}/node-v${nodeVersion}.tar.gz";
|
||||
sha256="0wgawq3wzw07pir73bxz13dggcc1fj0538y7y69n3cc0a2kiplqy";
|
||||
};
|
||||
lumo-internal-classpath = "LUMO__INTERNAL__CLASSPATH";
|
||||
|
||||
# as found in cljs/snapshot/lumo/repl.cljs
|
||||
requireDeps = '' \
|
||||
# as found in cljs/snapshot/lumo/repl.cljs
|
||||
requireDeps = '' \
|
||||
cljs.analyzer \
|
||||
cljs.compiler \
|
||||
cljs.env \
|
||||
|
@ -50,104 +62,125 @@ let # packageJSON=./package.json;
|
|||
lumo.js-deps \
|
||||
lumo.common '';
|
||||
|
||||
compileClojurescript = (simple: ''
|
||||
(require '[cljs.build.api :as cljs])
|
||||
(cljs/build \"src/cljs/snapshot\"
|
||||
{:optimizations ${if simple then ":simple" else ":none"}
|
||||
:main 'lumo.core
|
||||
:cache-analysis true
|
||||
:source-map false
|
||||
:dump-core false
|
||||
:static-fns true
|
||||
:optimize-constants false
|
||||
:npm-deps false
|
||||
:verbose true
|
||||
:closure-defines {'cljs.core/*target* \"nodejs\"
|
||||
'lumo.core/*lumo-version* \"${version}\"}
|
||||
:compiler-stats true
|
||||
:process-shim false
|
||||
:fn-invoke-direct true
|
||||
:parallel-build false
|
||||
:browser-repl false
|
||||
:target :nodejs
|
||||
:hashbang false
|
||||
;; :libs [ \"src/cljs/bundled\" \"src/js\" ]
|
||||
:output-dir ${if simple
|
||||
then ''\"cljstmp\"''
|
||||
else ''\"target\"''}
|
||||
:output-to ${if simple
|
||||
then ''\"cljstmp/main.js\"''
|
||||
else ''\"target/deleteme.js\"'' }})
|
||||
'');
|
||||
compileClojurescript = (simple: ''
|
||||
(require '[cljs.build.api :as cljs])
|
||||
(cljs/build \"src/cljs/snapshot\"
|
||||
{:optimizations ${if simple then ":simple" else ":none"}
|
||||
:main 'lumo.core
|
||||
:cache-analysis true
|
||||
:source-map false
|
||||
:dump-core false
|
||||
:static-fns true
|
||||
:optimize-constants false
|
||||
:npm-deps false
|
||||
:verbose true
|
||||
:closure-defines {'cljs.core/*target* \"nodejs\"
|
||||
'lumo.core/*lumo-version* \"${version}\"}
|
||||
:compiler-stats true
|
||||
:process-shim false
|
||||
:fn-invoke-direct true
|
||||
:parallel-build false
|
||||
:browser-repl false
|
||||
:target :nodejs
|
||||
:hashbang false
|
||||
;; :libs [ \"src/cljs/bundled\" \"src/js\" ]
|
||||
:output-dir ${if simple
|
||||
then ''\"cljstmp\"''
|
||||
else ''\"target\"''}
|
||||
:output-to ${if simple
|
||||
then ''\"cljstmp/main.js\"''
|
||||
else ''\"target/deleteme.js\"'' }})
|
||||
''
|
||||
);
|
||||
|
||||
|
||||
cacheToJsons = ''
|
||||
(import [java.io ByteArrayOutputStream FileInputStream])
|
||||
(require '[cognitect.transit :as transit]
|
||||
'[clojure.edn :as edn]
|
||||
'[clojure.string :as str])
|
||||
cacheToJsons = ''
|
||||
(import [java.io ByteArrayOutputStream FileInputStream])
|
||||
(require '[cognitect.transit :as transit]
|
||||
'[clojure.edn :as edn]
|
||||
'[clojure.string :as str])
|
||||
|
||||
(defn write-transit-json [cache]
|
||||
(let [out (ByteArrayOutputStream. 1000000)
|
||||
writer (transit/writer out :json)]
|
||||
(transit/write writer cache)
|
||||
(.toString out)))
|
||||
(defn write-transit-json [cache]
|
||||
(let [out (ByteArrayOutputStream. 1000000)
|
||||
writer (transit/writer out :json)]
|
||||
(transit/write writer cache)
|
||||
(.toString out)))
|
||||
|
||||
(defn process-caches []
|
||||
(let [cache-aot-path \"target/cljs/core.cljs.cache.aot.edn\"
|
||||
cache-aot-edn (edn/read-string (slurp cache-aot-path))
|
||||
cache-macros-path \"target/cljs/core\$macros.cljc.cache.json\"
|
||||
cache-macros-stream (FileInputStream. cache-macros-path)
|
||||
cache-macros-edn (transit/read (transit/reader cache-macros-stream :json))
|
||||
caches [[cache-aot-path cache-aot-edn]
|
||||
[cache-macros-path cache-macros-edn]]]
|
||||
(doseq [[path cache-edn] caches]
|
||||
(doseq [key (keys cache-edn)]
|
||||
(let [out-path (str/replace path #\"(\.json|\.edn)\$\"
|
||||
(str \".\" (munge key) \".json\"))
|
||||
tr-json (write-transit-json (key cache-edn))]
|
||||
(spit out-path tr-json))))))
|
||||
(defn process-caches []
|
||||
(let [cache-aot-path \"target/cljs/core.cljs.cache.aot.edn\"
|
||||
cache-aot-edn (edn/read-string (slurp cache-aot-path))
|
||||
cache-macros-path \"target/cljs/core\$macros.cljc.cache.json\"
|
||||
cache-macros-stream (FileInputStream. cache-macros-path)
|
||||
cache-macros-edn (transit/read (transit/reader cache-macros-stream :json))
|
||||
caches [[cache-aot-path cache-aot-edn]
|
||||
[cache-macros-path cache-macros-edn]]]
|
||||
(doseq [[path cache-edn] caches]
|
||||
(doseq [key (keys cache-edn)]
|
||||
(let [out-path (str/replace path #\"(\.json|\.edn)\$\"
|
||||
(str \".\" (munge key) \".json\"))
|
||||
tr-json (write-transit-json (key cache-edn))]
|
||||
(spit out-path tr-json))))))
|
||||
|
||||
(process-caches)
|
||||
'';
|
||||
(process-caches)
|
||||
'';
|
||||
|
||||
trimMainJsEnd = ''
|
||||
(let [string (slurp \"target/main.js\")]
|
||||
(spit \"target/main.js\"
|
||||
(subs string 0 (.indexOf string \"cljs.nodejs={};\"))))
|
||||
'';
|
||||
trimMainJsEnd = ''
|
||||
(let [string (slurp \"target/main.js\")]
|
||||
(spit \"target/main.js\"
|
||||
(subs string 0 (.indexOf string \"cljs.nodejs={};\"))))
|
||||
'';
|
||||
|
||||
|
||||
cljdeps = import ./deps.nix { inherit pkgs; };
|
||||
classp = cljdeps.makeClasspaths {
|
||||
extraClasspaths=["src/js" "src/cljs/bundled" "src/cljs/snapshot"];
|
||||
};
|
||||
|
||||
|
||||
getJarPath = jarName: (lib.findFirst (p: p.name == jarName) null cljdeps.packages).path.jar;
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
inherit version;
|
||||
pname = "lumo";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/anmonteiro/lumo/archive/${version}.tar.gz";
|
||||
sha256 = "1mr3zjslznhv7y3mzvg1pmmvzn10d6di26izz4x8p4nfnshacwgw";
|
||||
cljdeps = import ./deps.nix { inherit pkgs; };
|
||||
classp = cljdeps.makeClasspaths {
|
||||
extraClasspaths = [ "src/js" "src/cljs/bundled" "src/cljs/snapshot" ];
|
||||
};
|
||||
|
||||
|
||||
buildInputs = [ nodejs clojure jre unzip python openssl
|
||||
nodePackages."lumo-build-deps-../interpreters/clojurescript/lumo" ];
|
||||
getJarPath = jarName: (lib.findFirst (p: p.name == jarName) null cljdeps.packages).path.jar;
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit version;
|
||||
pname = "lumo";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/anmonteiro/lumo.git";
|
||||
rev = "${version}";
|
||||
sha256 = "12agi6bacqic2wq6q3l28283badzamspajmajzqm7fbdl2aq1a4p";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
nodejs
|
||||
clojure
|
||||
jre
|
||||
unzip
|
||||
python
|
||||
openssl
|
||||
gnutar
|
||||
nodePackages."lumo-build-deps-../interpreters/clojurescript/lumo"
|
||||
]
|
||||
++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
|
||||
ApplicationServices
|
||||
xcbuild
|
||||
]
|
||||
);
|
||||
|
||||
patches = [ ./no_mangle.patch ./mkdir_promise.patch ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace $NIX_BUILD_TOP/lumo/vendor/nexe/exe.js \
|
||||
--replace 'glob.sync(dir + "/*")' 'glob.sync(dir + "/../*")'
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
# Copy over lumo-build-deps environment
|
||||
# Copy over lumo-build-deps environment
|
||||
rm yarn.lock
|
||||
cp -rf ${nodePackages."lumo-build-deps-../interpreters/clojurescript/lumo"}/lib/node_modules/lumo-build-deps/* ./
|
||||
|
||||
# configure clojure-cli
|
||||
mkdir ./.cpcache
|
||||
export CLJ_CONFIG=`pwd`
|
||||
export CLJ_CACHE=`pwd`/.cpcache
|
||||
export CLJ_CACHE=`pwd`/.cpcache
|
||||
|
||||
# require more namespaces for cljs-bundle
|
||||
sed -i "s!ns lumo.core! \
|
||||
|
@ -155,7 +188,7 @@ in stdenv.mkDerivation {
|
|||
(:require ${requireDeps}) \
|
||||
(:require-macros [clojure.template :as temp] \
|
||||
[cljs.test :as test])!g" \
|
||||
./src/cljs/snapshot/lumo/core.cljs
|
||||
./src/cljs/snapshot/lumo/core.cljs
|
||||
|
||||
# Step 1: compile clojurescript with :none and :simple
|
||||
${clojure}/bin/clojure -Scp ${classp} -e "${compileClojurescript true}"
|
||||
|
@ -204,10 +237,13 @@ in stdenv.mkDerivation {
|
|||
# Step 3: generate munged cache jsons
|
||||
${clojure}/bin/clojure -Scp ${classp} -e "${cacheToJsons}"
|
||||
rm ./target/cljs/core\$macros\.cljc\.cache\.json
|
||||
|
||||
|
||||
|
||||
# Step 4: Bunde javascript
|
||||
echo 1111
|
||||
cat scripts/bundle.js
|
||||
NODE_ENV=production node scripts/bundle.js
|
||||
echo 2222
|
||||
node scripts/bundleForeign.js
|
||||
|
||||
# Step 5: Backup resources
|
||||
|
@ -215,21 +251,20 @@ in stdenv.mkDerivation {
|
|||
|
||||
# Step 6: Package executeable 1st time
|
||||
# fetch node sources and copy to palce that nexe will find
|
||||
mkdir -p tmp/${nodeVersion}
|
||||
cp ${nodeSources} tmp/${nodeVersion}/node-${nodeVersion}.tar.gz
|
||||
tar -C ./tmp/${nodeVersion} -xf ${nodeSources}
|
||||
mv ./tmp/${nodeVersion}/node-v${nodeVersion}/* ./tmp/${nodeVersion}/
|
||||
mkdir -p tmp/node/${nodeVersion}
|
||||
cp ${nodeSources} tmp/node/${nodeVersion}/node-${nodeVersion}.tar.gz
|
||||
tar -C ./tmp/node/${nodeVersion} -xf ${nodeSources} --warning=no-unknown-keyword
|
||||
mv ./tmp/node/${nodeVersion}/node-v${nodeVersion}/* ./tmp/node/${nodeVersion}/
|
||||
rm -rf ${lumo-internal-classpath}
|
||||
mv target ${lumo-internal-classpath}
|
||||
cp -rf target ${lumo-internal-classpath}
|
||||
node scripts/package.js ${nodeVersion}
|
||||
rm -rf ${lumo-internal-classpath}
|
||||
rm -rf target
|
||||
mv ${lumo-internal-classpath} target
|
||||
|
||||
# Step 7: AOT Macros
|
||||
sh scripts/aot-bundle-macros.sh
|
||||
|
||||
# Step 8: Package executeable 2nd time
|
||||
rm -rf ${lumo-internal-classpath}
|
||||
mv target ${lumo-internal-classpath}
|
||||
node scripts/package.js ${nodeVersion}
|
||||
'';
|
||||
|
||||
|
@ -250,7 +285,6 @@ in stdenv.mkDerivation {
|
|||
homepage = https://github.com/anmonteiro/lumo;
|
||||
license = stdenv.lib.licenses.epl10;
|
||||
maintainers = [ stdenv.lib.maintainers.hlolli ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
{:deps
|
||||
{org.clojure/clojure {:mvn/version "1.10.0-beta5"}
|
||||
org.clojure/clojurescript {:mvn/version "1.10.439"}
|
||||
org.clojure/test.check {:mvn/version "0.10.0-alpha3"}
|
||||
{org.clojure/clojure {:mvn/version "1.10.1"}
|
||||
org.clojure/clojurescript {:mvn/version "1.10.520"}
|
||||
org.clojure/test.check {:mvn/version "0.10.0-alpha4"}
|
||||
org.clojure/tools.reader {:mvn/version "1.3.2"
|
||||
:exclusions [org.clojure/clojure org.clojure/clojurescript]}
|
||||
com.cognitect/transit-cljs {:mvn/version "0.8.256"
|
||||
:exclusions [org.clojure/clojure org.clojure/clojurescript]}
|
||||
malabarba/lazy-map {:mvn/version "1.3"
|
||||
:exclusions [org.clojure/clojure org.clojure/clojurescript]}
|
||||
fipp {:mvn/version "0.6.14"
|
||||
fipp {:mvn/version "0.6.17"
|
||||
:exclusions [org.clojure/clojure org.clojure/clojurescript]}}}
|
||||
|
|
|
@ -1,241 +1,240 @@
|
|||
# generated by clj2nix-1.0.3
|
||||
# generated by clj2nix-1.0.4
|
||||
{ pkgs }:
|
||||
|
||||
let repos = [
|
||||
"https://repo.clojars.org/"
|
||||
"https://repo1.maven.org/"
|
||||
"http://central.maven.org/maven2/"
|
||||
"http://oss.sonatype.org/content/repositories/releases/"
|
||||
"http://oss.sonatype.org/content/repositories/public/"
|
||||
"http://repo.typesafe.com/typesafe/releases/"
|
||||
];
|
||||
let repos = [
|
||||
"https://repo.clojars.org/"
|
||||
"https://repo1.maven.org/"
|
||||
"http://oss.sonatype.org/content/repositories/releases/"
|
||||
"http://oss.sonatype.org/content/repositories/public/"
|
||||
"http://repo.typesafe.com/typesafe/releases/"
|
||||
];
|
||||
|
||||
in rec {
|
||||
makePaths = {extraClasspaths ? []}: (builtins.map (dep: if builtins.hasAttr "jar" dep.path then dep.path.jar else dep.path) packages) ++ extraClasspaths;
|
||||
makeClasspaths = {extraClasspaths ? []}: builtins.concatStringsSep ":" (makePaths {inherit extraClasspaths;});
|
||||
in rec {
|
||||
makePaths = {extraClasspaths ? []}: (builtins.map (dep: if builtins.hasAttr "jar" dep.path then dep.path.jar else dep.path) packages) ++ extraClasspaths;
|
||||
makeClasspaths = {extraClasspaths ? []}: builtins.concatStringsSep ":" (makePaths {inherit extraClasspaths;});
|
||||
|
||||
packages = [
|
||||
{
|
||||
name = "com.cognitect/transit-java";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "transit-java";
|
||||
groupId = "com.cognitect";
|
||||
sha512 = "80365a4f244e052b6c4fdfd2fd3b91288835599cb4dd88e0e0dae19883dcda39afee83966810ed81beff342111c3a45a66f5601c443f3ad49904908c43631708";
|
||||
version = "0.8.332";
|
||||
};
|
||||
}
|
||||
packages = [
|
||||
{
|
||||
name = "com.cognitect/transit-java";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "transit-java";
|
||||
groupId = "com.cognitect";
|
||||
sha512 = "80365a4f244e052b6c4fdfd2fd3b91288835599cb4dd88e0e0dae19883dcda39afee83966810ed81beff342111c3a45a66f5601c443f3ad49904908c43631708";
|
||||
version = "0.8.332";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.clojure/data.json";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "data.json";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "ce526bef01bedd31b772954d921a61832ae60af06121f29080853f7932326438b33d183240a9cffbe57e00dc3744700220753948da26b8973ee21c30e84227a6";
|
||||
version = "0.2.6";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.clojure/data.json";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "data.json";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "ce526bef01bedd31b772954d921a61832ae60af06121f29080853f7932326438b33d183240a9cffbe57e00dc3744700220753948da26b8973ee21c30e84227a6";
|
||||
version = "0.2.6";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.clojure/clojure";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "clojure";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "f7a6b207b1bcbb6523d32ecfdd3c8c25d4d0b0a59c78baf06cdc69ba3c21c5e96b5dac8e9efcb331efd94e10bccbb9b54fca62a4312309db65a1f9d89d9da3f4";
|
||||
version = "1.10.0-beta5";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.clojure/clojure";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "clojure";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "f28178179483531862afae13e246386f8fda081afa523d3c4ea3a083ab607d23575d38ecb9ec0ee7f4d65cbe39a119f680e6de4669bc9cf593aa92be0c61562b";
|
||||
version = "1.10.1";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "commons-codec/commons-codec";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "commons-codec";
|
||||
groupId = "commons-codec";
|
||||
sha512 = "8edecc0faf38e8620460909d8191837f34e2bb2ce853677c486c5e79bb79e88d043c3aed69c11f1365c4884827052ee4e1c18ca56e38d1a5bc0ce15c57daeee3";
|
||||
version = "1.10";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "commons-codec/commons-codec";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "commons-codec";
|
||||
groupId = "commons-codec";
|
||||
sha512 = "8edecc0faf38e8620460909d8191837f34e2bb2ce853677c486c5e79bb79e88d043c3aed69c11f1365c4884827052ee4e1c18ca56e38d1a5bc0ce15c57daeee3";
|
||||
version = "1.10";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "com.google.errorprone/error_prone_annotations";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "error_prone_annotations";
|
||||
groupId = "com.google.errorprone";
|
||||
sha512 = "bd2135cc9eb2c652658a2814ec9c565fa3e071d4cff590cbe17b853885c78c9f84c1b7b24ba736f4f30ed8cec60a6af983827fcbed61ff142f27ac808e97fc6b";
|
||||
version = "2.1.3";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "com.google.errorprone/error_prone_annotations";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "error_prone_annotations";
|
||||
groupId = "com.google.errorprone";
|
||||
sha512 = "bd2135cc9eb2c652658a2814ec9c565fa3e071d4cff590cbe17b853885c78c9f84c1b7b24ba736f4f30ed8cec60a6af983827fcbed61ff142f27ac808e97fc6b";
|
||||
version = "2.1.3";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.clojure/core.specs.alpha";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "core.specs.alpha";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "348c0ea0911bc0dcb08655e61b97ba040649b4b46c32a62aa84d0c29c245a8af5c16d44a4fa5455d6ab076f4bb5bbbe1ad3064a7befe583f13aeb9e32a169bf4";
|
||||
version = "0.2.44";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.clojure/core.specs.alpha";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "core.specs.alpha";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "348c0ea0911bc0dcb08655e61b97ba040649b4b46c32a62aa84d0c29c245a8af5c16d44a4fa5455d6ab076f4bb5bbbe1ad3064a7befe583f13aeb9e32a169bf4";
|
||||
version = "0.2.44";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.clojure/spec.alpha";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "spec.alpha";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "18c97fb2b74c0bc2ff4f6dc722a3edec539f882ee85d0addf22bbf7e6fe02605d63f40c2b8a2905868ccd6f96cfc36a65f5fb70ddac31c6ec93da228a456edbd";
|
||||
version = "0.2.176";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.clojure/spec.alpha";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "spec.alpha";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "18c97fb2b74c0bc2ff4f6dc722a3edec539f882ee85d0addf22bbf7e6fe02605d63f40c2b8a2905868ccd6f96cfc36a65f5fb70ddac31c6ec93da228a456edbd";
|
||||
version = "0.2.176";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.codehaus.mojo/animal-sniffer-annotations";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "animal-sniffer-annotations";
|
||||
groupId = "org.codehaus.mojo";
|
||||
sha512 = "9e5e3ea9e06e0ac9463869fd0e08ed38f7042784995a7b50c9bfd7f692a53f0e1430b9e1367dc772d0d4eafe5fd2beabbcc60da5008bd792f9e7ec8436c0f136";
|
||||
version = "1.14";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.codehaus.mojo/animal-sniffer-annotations";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "animal-sniffer-annotations";
|
||||
groupId = "org.codehaus.mojo";
|
||||
sha512 = "9e5e3ea9e06e0ac9463869fd0e08ed38f7042784995a7b50c9bfd7f692a53f0e1430b9e1367dc772d0d4eafe5fd2beabbcc60da5008bd792f9e7ec8436c0f136";
|
||||
version = "1.14";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "com.googlecode.json-simple/json-simple";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "json-simple";
|
||||
groupId = "com.googlecode.json-simple";
|
||||
sha512 = "f8798bfbcc8ab8001baf90ce47ec2264234dc1da2d4aa97fdcdc0990472a6b5a5a32f828e776140777d598a99d8a0c0f51c6d0767ae1a829690ab9200ae35742";
|
||||
version = "1.1.1";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "com.googlecode.json-simple/json-simple";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "json-simple";
|
||||
groupId = "com.googlecode.json-simple";
|
||||
sha512 = "f8798bfbcc8ab8001baf90ce47ec2264234dc1da2d4aa97fdcdc0990472a6b5a5a32f828e776140777d598a99d8a0c0f51c6d0767ae1a829690ab9200ae35742";
|
||||
version = "1.1.1";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "com.cognitect/transit-cljs";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "transit-cljs";
|
||||
groupId = "com.cognitect";
|
||||
sha512 = "318b98ddd63629f37b334bb90e625bc31ab6abcf0b1fa80d8e097551658f2d9219b5ee35869a31f2976d7d385da83bea0c07b0d097babcae241ecbd0fe8a7ecd";
|
||||
version = "0.8.256";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "com.cognitect/transit-cljs";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "transit-cljs";
|
||||
groupId = "com.cognitect";
|
||||
sha512 = "318b98ddd63629f37b334bb90e625bc31ab6abcf0b1fa80d8e097551658f2d9219b5ee35869a31f2976d7d385da83bea0c07b0d097babcae241ecbd0fe8a7ecd";
|
||||
version = "0.8.256";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.clojure/google-closure-library";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "google-closure-library";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "75631182ef12f21723fe3eba1003d8cf9b8348a51512961e4e1b87bc24d8f3abb14a70c856f08cdaa5588a2d7c2b1b0c03aeaa3c4c5f2ed745a85f59ceeab83a";
|
||||
version = "0.0-20170809-b9c14c6b";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.clojure/google-closure-library";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "google-closure-library";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "75631182ef12f21723fe3eba1003d8cf9b8348a51512961e4e1b87bc24d8f3abb14a70c856f08cdaa5588a2d7c2b1b0c03aeaa3c4c5f2ed745a85f59ceeab83a";
|
||||
version = "0.0-20170809-b9c14c6b";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "fipp";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "fipp";
|
||||
groupId = "fipp";
|
||||
sha512 = "155b5bb7045ac7c3a75c638e65464ca1fc90e5b4692328fc2da73b26792178fdbce5ab01ba0397e1986b6162b06b8904712d2c366f32ea43ea5fa2b454a526a5";
|
||||
version = "0.6.14";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "fipp";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "fipp";
|
||||
groupId = "fipp";
|
||||
sha512 = "d844ab63d28cb5e31657cc38e574bbc7072a78419c997f25445ac6ea4a719904a4f4844b37e3f664a8d2e49bd38ff1006a9e8c6e63fb4e2f0a2322d6c2638275";
|
||||
version = "0.6.17";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.clojure/clojurescript";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "clojurescript";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "4aec5abdd48aaf95f7a729e11d225a99d02caa3a4ddff3e9e4f8db80dea83ab70a4440691cb372562c8c16e73c2850b22806a2851df3849c852fddd49b57fc58";
|
||||
version = "1.10.439";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.clojure/clojurescript";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "clojurescript";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "b241959d6bd2ab659920965d301508226e26b3edcee469e4cd516cd4ed014b1a6b132c17ee7d96a8e66fe27fd01a74813ac8b85958d260f9fdbbeb4348d57ff1";
|
||||
version = "1.10.520";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "com.google.jsinterop/jsinterop-annotations";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "jsinterop-annotations";
|
||||
groupId = "com.google.jsinterop";
|
||||
sha512 = "b6fd98a9167d031f6bff571567d4658fda62c132dc74d47ca85e02c9bb3ce8812b1012c67f4c81501ab0cbd9ccd9cda5dcf32d306e04368ace7a173cecae975d";
|
||||
version = "1.0.0";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "com.google.jsinterop/jsinterop-annotations";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "jsinterop-annotations";
|
||||
groupId = "com.google.jsinterop";
|
||||
sha512 = "b6fd98a9167d031f6bff571567d4658fda62c132dc74d47ca85e02c9bb3ce8812b1012c67f4c81501ab0cbd9ccd9cda5dcf32d306e04368ace7a173cecae975d";
|
||||
version = "1.0.0";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "com.fasterxml.jackson.core/jackson-core";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "jackson-core";
|
||||
groupId = "com.fasterxml.jackson.core";
|
||||
sha512 = "a1bd6c264b9ab07aad3d0f26b65757e35ff47904ab895bb7f997e3e1fd063129c177ad6f69876907b04ff8a43c6b1770a26f53a811633a29e66a5dce57194f64";
|
||||
version = "2.8.7";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "com.fasterxml.jackson.core/jackson-core";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "jackson-core";
|
||||
groupId = "com.fasterxml.jackson.core";
|
||||
sha512 = "a1bd6c264b9ab07aad3d0f26b65757e35ff47904ab895bb7f997e3e1fd063129c177ad6f69876907b04ff8a43c6b1770a26f53a811633a29e66a5dce57194f64";
|
||||
version = "2.8.7";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "malabarba/lazy-map";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "lazy-map";
|
||||
groupId = "malabarba";
|
||||
sha512 = "ce56d6f03ac344579e15f062cdd4c477c0323da716d4d4106c4edb746959699e0b294b25aacf8ecf1579a6bdd5556a60f4bcb1648d22832984c069a0431c840f";
|
||||
version = "1.3";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "malabarba/lazy-map";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "lazy-map";
|
||||
groupId = "malabarba";
|
||||
sha512 = "ce56d6f03ac344579e15f062cdd4c477c0323da716d4d4106c4edb746959699e0b294b25aacf8ecf1579a6bdd5556a60f4bcb1648d22832984c069a0431c840f";
|
||||
version = "1.3";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "com.cognitect/transit-js";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "transit-js";
|
||||
groupId = "com.cognitect";
|
||||
sha512 = "6ca0978e633e41b45ff5a76df79099ba7c4900a8ca9f6acd2a903e4ab10a1ec0c83d4127009df9dac1337debaba01f7ff1d5cced1c2159c05ef94845f73f0623";
|
||||
version = "0.8.846";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "com.cognitect/transit-js";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "transit-js";
|
||||
groupId = "com.cognitect";
|
||||
sha512 = "6ca0978e633e41b45ff5a76df79099ba7c4900a8ca9f6acd2a903e4ab10a1ec0c83d4127009df9dac1337debaba01f7ff1d5cced1c2159c05ef94845f73f0623";
|
||||
version = "0.8.846";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.mozilla/rhino";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "rhino";
|
||||
groupId = "org.mozilla";
|
||||
sha512 = "466e7a76303ea191802b5e7adb3dff64c1d6283a25ce87447296b693b87b166f4cdd191ef7dc130a5739bfa0e4a81b08550f607c84eec167406d9be2225562dc";
|
||||
version = "1.7R5";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.mozilla/rhino";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "rhino";
|
||||
groupId = "org.mozilla";
|
||||
sha512 = "466e7a76303ea191802b5e7adb3dff64c1d6283a25ce87447296b693b87b166f4cdd191ef7dc130a5739bfa0e4a81b08550f607c84eec167406d9be2225562dc";
|
||||
version = "1.7R5";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "org.clojure/google-closure-library-third-party";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "google-closure-library-third-party";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "57fa84fbbca3eb9e612d2842e4476b74f64d13dd076ffca6c9d9e15c4ca8a2f2c56cc19307bcad0ab5b4f9cb0c3e7900ccc845bd570ebc92e2633885ab621f35";
|
||||
version = "0.0-20170809-b9c14c6b";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "org.clojure/google-closure-library-third-party";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "google-closure-library-third-party";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "57fa84fbbca3eb9e612d2842e4476b74f64d13dd076ffca6c9d9e15c4ca8a2f2c56cc19307bcad0ab5b4f9cb0c3e7900ccc845bd570ebc92e2633885ab621f35";
|
||||
version = "0.0-20170809-b9c14c6b";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
name = "com.google.javascript/closure-compiler-externs";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "closure-compiler-externs";
|
||||
groupId = "com.google.javascript";
|
||||
sha512 = "1a47c8559144095c0b23a8e40acd7185625cea5a4c103eb75fbacd32d5809d087bfb60aaf57066329649c6017ec5f993756024e767a5b8f84926371ba6183a82";
|
||||
version = "v20180805";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "com.google.javascript/closure-compiler-externs";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
artifactId = "closure-compiler-externs";
|
||||
groupId = "com.google.javascript";
|
||||
sha512 = "1a47c8559144095c0b23a8e40acd7185625cea5a4c103eb75fbacd32d5809d087bfb60aaf57066329649c6017ec5f993756024e767a5b8f84926371ba6183a82";
|
||||
version = "v20180805";
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
{
|
||||
name = "org.javassist/javassist";
|
||||
path = pkgs.fetchMavenArtifact {
|
||||
inherit repos;
|
||||
|
@ -307,8 +306,8 @@
|
|||
inherit repos;
|
||||
artifactId = "core.rrb-vector";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "5f737bf3ca3acf567b2b5c14b5761c8c38e94e1f6168f8cba9f46d2ae41334ae3d68d2c00663827a6214094d96b9767f6803f66ab44b0012c6f2e3c2997b1796";
|
||||
version = "0.0.13";
|
||||
sha512 = "4e410c4a90a869e98d5d69a8a6dd6427e9d77b70e1a2b54cf24baf23389f22e7a208375783c2fdc5c1a5acfb8511a5c5ed57ad1a946d5bffd203f453d90a6155";
|
||||
version = "0.0.14";
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -351,8 +350,8 @@
|
|||
inherit repos;
|
||||
artifactId = "test.check";
|
||||
groupId = "org.clojure";
|
||||
sha512 = "bf57571a9d31d50cf15b38134f4d7c34d03eb458bc62b30c7a1dbf233e300c67f1fda6673dbd1584a0497cf8875f972e6697e7f13d0c3e70e4254697b1b75cc6";
|
||||
version = "0.10.0-alpha3";
|
||||
sha512 = "60fa3bd38c32cf193c573f1bd47c6abd7e7a5bb2fc7f7f9f97aa9dcd54d5e2eab9e351f5f83b01bb96b32811a9f2f5ab384c6b7b7ebbb6c86d1ad4f2789351bf";
|
||||
version = "0.10.0-alpha4";
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
diff --git a/vendor/nexe/exe.js b/vendor/nexe/exe.js
|
||||
index 21e78bb..ecbfca4 100644
|
||||
--- a/vendor/nexe/exe.js
|
||||
+++ b/vendor/nexe/exe.js
|
||||
@@ -254,9 +254,7 @@ return initModule._compile(${JSON.stringify(source)}, process.execPath);
|
||||
*/
|
||||
|
||||
function makeOutputDirectory(next) {
|
||||
- mkdirp(path.dirname(options.output), function() {
|
||||
- next();
|
||||
- });
|
||||
+ mkdirp(path.dirname(options.output)).then(() => next());
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -1107,4 +1105,3 @@ exports.package = function(path, options) {
|
||||
|
||||
return obj;
|
||||
}
|
||||
-
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/scripts/bundle.js b/scripts/bundle.js
|
||||
index 16425a4..0d510fc 100644
|
||||
--- a/scripts/bundle.js
|
||||
+++ b/scripts/bundle.js
|
||||
@@ -73,6 +73,8 @@ const plugins = [
|
||||
if (!isDevBuild) {
|
||||
plugins.push(
|
||||
babelMinify({
|
||||
+ evaluate: false,
|
||||
+ mangle: false,
|
||||
comments: false,
|
||||
removeConsole: true,
|
||||
removeDebugger: true,
|
|
@ -1,40 +1,49 @@
|
|||
{
|
||||
"name": "lumo-build-deps",
|
||||
"version": "1.9.0",
|
||||
"version": "1.10.1",
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.1.5",
|
||||
"@babel/plugin-external-helpers": "7.0.0",
|
||||
"@babel/plugin-external-helpers": "7.8.3",
|
||||
"@babel/plugin-proposal-class-properties": "^7.1.0",
|
||||
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
|
||||
"@babel/plugin-transform-runtime": "^7.1.0",
|
||||
"@babel/preset-env": "^7.1.5",
|
||||
"@babel/preset-stage-2": "7.0.0",
|
||||
"@babel/preset-stage-2": "7.8.3",
|
||||
"@babel/runtime": "^7.1.5",
|
||||
"async": "^3.1.1",
|
||||
"async-retry": "^1.2.3",
|
||||
"babel-core": "^7.0.0-bridge.0",
|
||||
"babel-eslint": "10.0.1",
|
||||
"babel-jest": "^23.6.0",
|
||||
"babel-eslint": "10.0.3",
|
||||
"babel-jest": "^25.1.0",
|
||||
"babel-loader": "^8.0.4",
|
||||
"babel-plugin-transform-flow-strip-types": "6.22.0",
|
||||
"chalk": "^2.4.1",
|
||||
"cross-env": "5.2.0",
|
||||
"browserify": "^16.2.3",
|
||||
"chalk": "^3.0.0",
|
||||
"colors": "^1.3.3",
|
||||
"cross-env": "7.0.0",
|
||||
"death": "^1.1.0",
|
||||
"flow-bin": "0.85.0",
|
||||
"flow-bin": "0.118.0",
|
||||
"google-closure-compiler-js": "20170910.0.1",
|
||||
"glob": "^7.1.3",
|
||||
"gunzip-maybe": "^1.4.1",
|
||||
"insert-module-globals": "^7.2.0",
|
||||
"jszip": "github:anmonteiro/jszip#patch-1",
|
||||
"nexe": "3.0.0-beta.7",
|
||||
"mkdirp": "^1.0.3",
|
||||
"ncp": "^2.0.0",
|
||||
"node-fetch": "^2.2.1",
|
||||
"paredit.js": "0.3.4",
|
||||
"paredit.js": "0.3.6",
|
||||
"posix-getopt": "github:anmonteiro/node-getopt#master",
|
||||
"prettier": "1.15.1",
|
||||
"prettier": "1.19.1",
|
||||
"progress": "^2.0.0",
|
||||
"read-pkg": "^4.0.1",
|
||||
"rollup": "0.67.0",
|
||||
"rollup-plugin-babel": "4.0.3",
|
||||
"rollup-plugin-babel-minify": "6.1.1",
|
||||
"rollup-plugin-commonjs": "9.2.0",
|
||||
"rollup-plugin-node-resolve": "3.4.0",
|
||||
"rollup-plugin-replace": "2.1.0",
|
||||
"read-pkg": "^5.2.0",
|
||||
"request": "^2.88.0",
|
||||
"rollup": "^1.9.0",
|
||||
"rollup-plugin-babel": "^4.3.2",
|
||||
"rollup-plugin-babel-minify": "^9.1.1",
|
||||
"rollup-plugin-commonjs": "^10.0.0",
|
||||
"rollup-plugin-node-resolve": "^5.0.0",
|
||||
"rollup-plugin-replace": "^2.1.1",
|
||||
"tar-stream": "^2.0.1",
|
||||
"webpack": "^4.25.1",
|
||||
"webpack-cli": "^3.2.3",
|
||||
"which-promise": "^1.0.0"
|
||||
|
|
|
@ -363,7 +363,7 @@ let
|
|||
|
||||
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild
|
||||
|
||||
if [ "''${dontNpmInstall-}" != "1" ]
|
||||
if [ "$dontNpmInstall" != "1" ]
|
||||
then
|
||||
# NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
|
||||
rm -f npm-shrinkwrap.json
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -9130,7 +9130,7 @@ in
|
|||
kanif = callPackage ../applications/networking/cluster/kanif { };
|
||||
|
||||
lumo = callPackage ../development/interpreters/clojurescript/lumo {
|
||||
nodejs = nodejs-10_x;
|
||||
nodejs = nodejs-13_x;
|
||||
};
|
||||
|
||||
lxappearance = callPackage ../desktops/lxde/core/lxappearance {
|
||||
|
|
Loading…
Reference in a new issue