feat: o sona e lipu Config kepeken ilo Java Properties
Some checks failed
build / build (push) Failing after 1m15s

This commit is contained in:
2026-03-22 16:43:49 -06:00
parent fad31603a2
commit d87c27ef56
7 changed files with 27 additions and 8 deletions

View File

@@ -7,6 +7,7 @@
, fake-git
, our-tex ? callPackage ./our-tex.nix {}
, makeWrapper
, writeText
}:
let
@@ -23,11 +24,23 @@ let
plex = ibm-plex-web.override {
families = [ "math" "serif" "sans" "sans-kr" ];
};
bin-path = lib.makeBinPath [
doerg-parser
our-tex
doerg-temml-worker
];
doerg-config = writeText "doerg-config.edn" ''
tee $out <<EOF
#:net.deertopia.doerg
{:ibm-plex-web "${ibm-plex-web}"
:latex "${lib.getExe' our-tex "xelatex"}"
:dvisvgm "${lib.getExe' our-tex "xelatex"}"
:doerg-temml-worker "${lib.getExe doerg-temml-worker}"
:doerg-parser "${lib.getExe doerg-parser}"}
EOF
'';
in mkCljBin' {
name = "net.deertopia/doerg";
version = "0.1.0";
@@ -50,12 +63,9 @@ in mkCljBin' {
plex
our-tex
];
java-opts = [ "-Dnet.deertopia.doerg.config=${doerg-config}" ];
doCheck = true;
checkPhase = ''
clojure -M:test
'';
postInstall = ''
wrapProgram $out/bin/doerg \
--prefix PATH : ${bin-path}
'';
}

View File

@@ -10,4 +10,5 @@ buildNpmPackage {
npmDeps = importNpmLock { npmRoot = ./.; };
npmConfigHook = importNpmLock.npmConfigHook;
dontNpmBuild = true;
meta.mainProgram = "doerg-parser";
}

View File

@@ -18,4 +18,5 @@ buildNpmPackage {
npmDeps = importNpmLock { npmRoot = ./.; };
npmConfigHook = importNpmLock.npmConfigHook;
dontNpmBuild = true;
meta.mainProgram = "doerg-temml-worker";
}

View File

@@ -59,7 +59,9 @@
(def default
(let [r (-> "net/deertopia/doerg/config.edn"
io/resource (read-config (System/getenv "DOERG_CONFIG")))]
io/resource
(read-config (System/getProperty "net.deertopia.doerg.config")
(System/getenv "DOERG_CONFIG")))]
(if (s/invalid? r)
(throw (IllegalArgumentException.
"default config is bad!"))

View File

@@ -9,7 +9,9 @@ mkCljBin {
projectSrc = ./.;
lockfile = ../deps-lock.json;
main-ns = "net.deertopia.publisher.main";
buildInputs = [];
buildInputs = [
doerg
];
nativeBuildInputs = [
babashka
];

View File

@@ -20,7 +20,9 @@
(loop [os (seq overrides)
loc zloc]
(if-some [[[k v] & xs] os]
(recur xs (z/assoc loc k v))
(do (printf "override dep %s with %s\n"
(pr-str k) (pr-str v))
(recur xs (z/assoc loc k v)))
loc)))
(defn args->overrides [args]

View File

@@ -19,6 +19,7 @@
(def default
(-> "net/deertopia/publisher/config.edn"
io/resource
(read-config (System/getenv "DOERG_PUBLISHER_CONFIG"))))
(read-config (System/getProperty "net.deertopia.publisher.config")
(System/getenv "DOERG_PUBLISHER_CONFIG"))))
(def ^:dynamic *cfg* default)