Skip to content

Commit c802c5a

Browse files
committed
fix: improved codeflare launcher to support pure CLI operation
1 parent 9e8890b commit c802c5a

File tree

8 files changed

+183
-139
lines changed

8 files changed

+183
-139
lines changed

bin/codeflare

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
#export ELECTRON_RUN_AS_NODE=true
66

77
export NODE_NO_WARNINGS=1
8-
export NODE_OPTIONS="--no-warnings"
8+
# export NODE_OPTIONS="--no-warnings"
99

1010
# use a special window sizing and positioning
1111
export KUI_POPUP_WINDOW_RESIZE=true
@@ -126,4 +126,25 @@ fi
126126

127127
export CODEFLARE_HEADLESS_ZIP=$HEADLESS/../headless.zip
128128

129-
exec "$NODE" "$HEADLESS"/codeflare.min.js -- $args
129+
# check if the user wants us to run the headless version (currently
130+
# indicated by the -c option)
131+
while getopts "c" opt
132+
do
133+
case $opt in
134+
(c) do_cli=1; shift; continue;;
135+
esac
136+
done
137+
138+
if [ -n "$do_cli" ]; then
139+
# launch headless version; here, we use madwizard directly, but
140+
# using electron as the nodejs binary (this is what
141+
# ELECTRON_RUN_AS_NODE does for us)
142+
export ELECTRON_RUN_AS_NODE=true
143+
exec "$NODE" \
144+
--experimental-specifier-resolution=node --no-warnings --experimental-import-meta-resolve \
145+
"$HEADLESS"/../../node_modules/madwizard/bin/madwizard.js \
146+
$*
147+
fi
148+
149+
# otherwise, we launch the UI version
150+
exec "$NODE" "$HEADLESS"/codeflare.min.js -- $args 3>&1 1>&2 2>&3 3>&- | grep -v WebSwapCGLLayer

mw-node-modules.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
@gar|@npmcli|@tootallnate|@types|agent-base|agentkeepalive|aggregate-error|ansi-colors|ansi-escapes|ansi-regex|ansi-styles|any-promise|argparse|bail|balanced-match|base64-js|bl|brace-expansion|buffer|cacache|chalk|character-entities|character-entities-html4|character-entities-legacy|character-reference-invalid|chownr|clean-stack|cli-cursor|cli-highlight|cli-spinners|cliui|clone|color-convert|color-name|comma-separated-tokens|concat-map|debug|decode-named-character-reference|defaults|depd|dequal|diff|emoji-regex|encoding|enquirer|env-paths|err-code|escalade|escape-string-regexp|esprima|expand-home-dir|extend|fault|figures|format|front-matter|fs-minipass|fs.realpath|get-caller-file|glob|has-flag|hast-to-hyperscript|hast-util-embedded|hast-util-from-parse5|hast-util-has-property|hast-util-is-element|hast-util-parse-selector|hast-util-raw|hast-util-to-mdast|hast-util-to-parse5|hast-util-to-string|hast-util-to-text|hast-util-whitespace|hastscript|highlight.js|html-void-elements|http-cache-semantics|http-proxy-agent|https-proxy-agent|humanize-ms|iconv-lite|ieee754|imurmurhash|indent-string|infer-owner|inflight|inherits|inline-style-parser|ip|is-alphabetical|is-alphanumerical|is-buffer|is-decimal|is-fullwidth-code-point|is-hexadecimal|is-interactive|is-lambda|is-plain-obj|is-unicode-supported|isexe|js-yaml|kleur|log-symbols|longest-streak|lru-cache|madwizard|make-fetch-happen|mdast-util-definitions|mdast-util-directive|mdast-util-from-markdown|mdast-util-frontmatter|mdast-util-phrasing|mdast-util-to-hast|mdast-util-to-markdown|mdast-util-to-string|mdurl|micromark|micromark-core-commonmark|micromark-extension-directive|micromark-extension-frontmatter|micromark-factory-destination|micromark-factory-label|micromark-factory-space|micromark-factory-title|micromark-factory-whitespace|micromark-util-character|micromark-util-chunked|micromark-util-classify-character|micromark-util-combine-extensions|micromark-util-decode-numeric-character-reference|micromark-util-decode-string|micromark-util-encode|micromark-util-html-tag-name|micromark-util-normalize-identifier|micromark-util-resolve-all|micromark-util-sanitize-uri|micromark-util-subtokenize|micromark-util-symbol|micromark-util-types|mimic-fn|minimatch|minipass|minipass-collect|minipass-fetch|minipass-flush|minipass-pipeline|minipass-sized|minizlib|mkdirp|mri|ms|mz|negotiator|object-assign|once|onetime|ora|p-map|parse-entities|parse5|parse5-htmlparser2-tree-adapter|path-is-absolute|promise-inflight|promise-retry|property-information|readable-stream|rehype-minify-whitespace|remark-directive|remark-frontmatter|remark-parse|remark-rehype|require-directory|restore-cursor|retry|rimraf|sade|safe-buffer|safer-buffer|semver|signal-exit|smart-buffer|socks|socks-proxy-agent|space-separated-tokens|sprintf-js|ssri|string-width|string_decoder|stringify-entities|strip-ansi|style-to-object|supports-color|supports-hyperlinks|tar|terminal-link|thenify|thenify-all|tmp|to-vfile|trim-trailing-lines|trough|type-fest|unified|unique-filename|unique-slug|unist-builder|unist-util-find-after|unist-util-generated|unist-util-is|unist-util-position|unist-util-stringify-position|unist-util-visit|unist-util-visit-parents|util-deprecate|uuid|uvu|vfile|vfile-location|vfile-message|wcwidth|web-namespaces|which|wrap-ansi|wrappy|y18n|yallist|yargs|yargs-parser|zwitch

0 commit comments

Comments
 (0)