buninu-linux 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (621) hide show
  1. package/LICENSE +21 -0
  2. package/LICENSES/Bun-LICENSE.md +84 -0
  3. package/LICENSES/GCC-Runtime-Library-Exception-3.1.txt +73 -0
  4. package/LICENSES/GPL-2.0.txt +338 -0
  5. package/LICENSES/GPL-3.0.txt +674 -0
  6. package/LICENSES/LGPL-2.1.txt +501 -0
  7. package/LICENSES/Linux-syscall-note.txt +25 -0
  8. package/LICENSES/musl-COPYRIGHT.txt +193 -0
  9. package/NOTICE.md +184 -0
  10. package/README.md +537 -0
  11. package/build-image.sh +44 -0
  12. package/build-uki.sh +75 -0
  13. package/fetch-alpine.sh +80 -0
  14. package/fetch-bun.sh +41 -0
  15. package/fetch-plus-build.sh +11 -0
  16. package/hello/build-hello.sh +14 -0
  17. package/hello/hello.c +50 -0
  18. package/index.js +235 -0
  19. package/initramfs/bin/sh +3 -0
  20. package/initramfs/buninu/.bashrc +11 -0
  21. package/initramfs/buninu/ARCHITECTURE.md +452 -0
  22. package/initramfs/buninu/CHANGELOG.md +580 -0
  23. package/initramfs/buninu/LICENSE +21 -0
  24. package/initramfs/buninu/README.md +1161 -0
  25. package/initramfs/buninu/apps/bun/make-bunBin.sh +99 -0
  26. package/initramfs/buninu/apps/bunmsh/CHANGELOG.md +493 -0
  27. package/initramfs/buninu/apps/bunmsh/LICENSE +21 -0
  28. package/initramfs/buninu/apps/bunmsh/LICENSE-MICRO +58 -0
  29. package/initramfs/buninu/apps/bunmsh/LICENSE-MKSH +295 -0
  30. package/initramfs/buninu/apps/bunmsh/PORTING.md +192 -0
  31. package/initramfs/buninu/apps/bunmsh/README.md +1042 -0
  32. package/initramfs/buninu/apps/bunmsh/bunmsh +7 -0
  33. package/initramfs/buninu/apps/bunmsh/bunshell.md +61 -0
  34. package/initramfs/buninu/apps/bunmsh/help/README.md +2237 -0
  35. package/initramfs/buninu/apps/bunmsh/help/alias.md +22 -0
  36. package/initramfs/buninu/apps/bunmsh/help/basename.md +38 -0
  37. package/initramfs/buninu/apps/bunmsh/help/builtin.md +25 -0
  38. package/initramfs/buninu/apps/bunmsh/help/bun.md +27 -0
  39. package/initramfs/buninu/apps/bunmsh/help/bunmsh.md +47 -0
  40. package/initramfs/buninu/apps/bunmsh/help/cat.md +31 -0
  41. package/initramfs/buninu/apps/bunmsh/help/catfancy.md +35 -0
  42. package/initramfs/buninu/apps/bunmsh/help/cd.md +22 -0
  43. package/initramfs/buninu/apps/bunmsh/help/chmod.md +27 -0
  44. package/initramfs/buninu/apps/bunmsh/help/clear.md +21 -0
  45. package/initramfs/buninu/apps/bunmsh/help/colon.md +22 -0
  46. package/initramfs/buninu/apps/bunmsh/help/command.md +27 -0
  47. package/initramfs/buninu/apps/bunmsh/help/cp.md +28 -0
  48. package/initramfs/buninu/apps/bunmsh/help/curl.md +181 -0
  49. package/initramfs/buninu/apps/bunmsh/help/cut.md +25 -0
  50. package/initramfs/buninu/apps/bunmsh/help/date.md +25 -0
  51. package/initramfs/buninu/apps/bunmsh/help/dirname.md +25 -0
  52. package/initramfs/buninu/apps/bunmsh/help/echo.md +25 -0
  53. package/initramfs/buninu/apps/bunmsh/help/env.md +27 -0
  54. package/initramfs/buninu/apps/bunmsh/help/eval.md +22 -0
  55. package/initramfs/buninu/apps/bunmsh/help/exec.md +22 -0
  56. package/initramfs/buninu/apps/bunmsh/help/exit.md +21 -0
  57. package/initramfs/buninu/apps/bunmsh/help/export.md +22 -0
  58. package/initramfs/buninu/apps/bunmsh/help/false.md +22 -0
  59. package/initramfs/buninu/apps/bunmsh/help/find.md +33 -0
  60. package/initramfs/buninu/apps/bunmsh/help/getopts.md +28 -0
  61. package/initramfs/buninu/apps/bunmsh/help/grep.md +34 -0
  62. package/initramfs/buninu/apps/bunmsh/help/head.md +27 -0
  63. package/initramfs/buninu/apps/bunmsh/help/kill.md +43 -0
  64. package/initramfs/buninu/apps/bunmsh/help/ln.md +28 -0
  65. package/initramfs/buninu/apps/bunmsh/help/ls.md +37 -0
  66. package/initramfs/buninu/apps/bunmsh/help/lsbun.md +29 -0
  67. package/initramfs/buninu/apps/bunmsh/help/lsfancy.md +37 -0
  68. package/initramfs/buninu/apps/bunmsh/help/md5sum.md +21 -0
  69. package/initramfs/buninu/apps/bunmsh/help/mkdir.md +27 -0
  70. package/initramfs/buninu/apps/bunmsh/help/mktemp.md +26 -0
  71. package/initramfs/buninu/apps/bunmsh/help/mv.md +26 -0
  72. package/initramfs/buninu/apps/bunmsh/help/print.md +30 -0
  73. package/initramfs/buninu/apps/bunmsh/help/printf.md +25 -0
  74. package/initramfs/buninu/apps/bunmsh/help/pspa.md +38 -0
  75. package/initramfs/buninu/apps/bunmsh/help/pspac.md +57 -0
  76. package/initramfs/buninu/apps/bunmsh/help/pwd.md +21 -0
  77. package/initramfs/buninu/apps/bunmsh/help/read.md +27 -0
  78. package/initramfs/buninu/apps/bunmsh/help/readonly.md +27 -0
  79. package/initramfs/buninu/apps/bunmsh/help/realpath.md +21 -0
  80. package/initramfs/buninu/apps/bunmsh/help/rm.md +33 -0
  81. package/initramfs/buninu/apps/bunmsh/help/rmdir.md +27 -0
  82. package/initramfs/buninu/apps/bunmsh/help/sed.md +29 -0
  83. package/initramfs/buninu/apps/bunmsh/help/seq.md +29 -0
  84. package/initramfs/buninu/apps/bunmsh/help/serve.md +50 -0
  85. package/initramfs/buninu/apps/bunmsh/help/set.md +26 -0
  86. package/initramfs/buninu/apps/bunmsh/help/sha256sum.md +21 -0
  87. package/initramfs/buninu/apps/bunmsh/help/shift.md +23 -0
  88. package/initramfs/buninu/apps/bunmsh/help/sleep.md +25 -0
  89. package/initramfs/buninu/apps/bunmsh/help/sort.md +29 -0
  90. package/initramfs/buninu/apps/bunmsh/help/source.md +23 -0
  91. package/initramfs/buninu/apps/bunmsh/help/tab.md +30 -0
  92. package/initramfs/buninu/apps/bunmsh/help/tac.md +29 -0
  93. package/initramfs/buninu/apps/bunmsh/help/tail.md +27 -0
  94. package/initramfs/buninu/apps/bunmsh/help/tee.md +25 -0
  95. package/initramfs/buninu/apps/bunmsh/help/test.md +30 -0
  96. package/initramfs/buninu/apps/bunmsh/help/time.md +29 -0
  97. package/initramfs/buninu/apps/bunmsh/help/touch.md +26 -0
  98. package/initramfs/buninu/apps/bunmsh/help/tr.md +26 -0
  99. package/initramfs/buninu/apps/bunmsh/help/true.md +22 -0
  100. package/initramfs/buninu/apps/bunmsh/help/type.md +21 -0
  101. package/initramfs/buninu/apps/bunmsh/help/umask.md +22 -0
  102. package/initramfs/buninu/apps/bunmsh/help/unalias.md +28 -0
  103. package/initramfs/buninu/apps/bunmsh/help/uname.md +31 -0
  104. package/initramfs/buninu/apps/bunmsh/help/unset.md +28 -0
  105. package/initramfs/buninu/apps/bunmsh/help/wc.md +27 -0
  106. package/initramfs/buninu/apps/bunmsh/help/whence.md +26 -0
  107. package/initramfs/buninu/apps/bunmsh/help/which.md +41 -0
  108. package/initramfs/buninu/apps/bunmsh/help/yes.md +23 -0
  109. package/initramfs/buninu/apps/bunmsh/index.js +7 -0
  110. package/initramfs/buninu/apps/bunmsh/package.json +30 -0
  111. package/initramfs/buninu/apps/bunmsh/serve.js +468 -0
  112. package/initramfs/buninu/apps/bunmsh/single-exe/README.md +402 -0
  113. package/initramfs/buninu/apps/bunmsh/single-exe/assetsHelper.js +371 -0
  114. package/initramfs/buninu/apps/bunmsh/single-exe/assetsLoader.mjs +85 -0
  115. package/initramfs/buninu/apps/bunmsh/single-exe/assetsPacker.js +218 -0
  116. package/initramfs/buninu/apps/bunmsh/single-exe/compiled.js +527 -0
  117. package/initramfs/buninu/apps/bunmsh/single-exe/entry.mjs +17 -0
  118. package/initramfs/buninu/apps/bunmsh/src/cat-fancy.js +117 -0
  119. package/initramfs/buninu/apps/bunmsh/src/cat-operands.js +31 -0
  120. package/initramfs/buninu/apps/bunmsh/src/completion.js +363 -0
  121. package/initramfs/buninu/apps/bunmsh/src/curl.js +1191 -0
  122. package/initramfs/buninu/apps/bunmsh/src/environment.js +61 -0
  123. package/initramfs/buninu/apps/bunmsh/src/fancy-ls.js +186 -0
  124. package/initramfs/buninu/apps/bunmsh/src/find.js +119 -0
  125. package/initramfs/buninu/apps/bunmsh/src/history.js +198 -0
  126. package/initramfs/buninu/apps/bunmsh/src/main.js +850 -0
  127. package/initramfs/buninu/apps/bunmsh/src/mouse.js +103 -0
  128. package/initramfs/buninu/apps/bunmsh/src/shell.js +3932 -0
  129. package/initramfs/buninu/apps/bunmsh/test/catfancy.test.js +102 -0
  130. package/initramfs/buninu/apps/bunmsh/test/curl.test.js +335 -0
  131. package/initramfs/buninu/apps/bunmsh/test/reference-source.sh +1 -0
  132. package/initramfs/buninu/apps/bunmsh/test/reference.test.js +817 -0
  133. package/initramfs/buninu/apps/bunmsh/test/serve/README.md +3 -0
  134. package/initramfs/buninu/apps/bunmsh/test/serve/bad.json +1 -0
  135. package/initramfs/buninu/apps/bunmsh/test/serve/data.json +1 -0
  136. package/initramfs/buninu/apps/bunmsh/test/serve/data.json5 +1 -0
  137. package/initramfs/buninu/apps/bunmsh/test/serve/data.jsonc +2 -0
  138. package/initramfs/buninu/apps/bunmsh/test/serve/data.jsonl +2 -0
  139. package/initramfs/buninu/apps/bunmsh/test/serve/data.ndjson +1 -0
  140. package/initramfs/buninu/apps/bunmsh/test/serve/data.toml +3 -0
  141. package/initramfs/buninu/apps/bunmsh/test/serve/data.ts +15 -0
  142. package/initramfs/buninu/apps/bunmsh/test/serve/data.xml +1 -0
  143. package/initramfs/buninu/apps/bunmsh/test/serve/data.yaml +3 -0
  144. package/initramfs/buninu/apps/bunmsh/test/serve/data.yml +1 -0
  145. package/initramfs/buninu/apps/bunmsh/test/serve.test.js +241 -0
  146. package/initramfs/buninu/apps/bunmsh/test/shell.test.js +2092 -0
  147. package/initramfs/buninu/apps/bunmsh/test/shell1.test.js +1087 -0
  148. package/initramfs/buninu/apps/bunmsh/test/shell2.test.js +457 -0
  149. package/initramfs/buninu/apps/bunmsh/test/shell3.test.js +741 -0
  150. package/initramfs/buninu/apps/bunmsh/test/t.sh +12 -0
  151. package/initramfs/buninu/apps/bunx/bunx.js +172 -0
  152. package/initramfs/buninu/apps/cmdlist +48 -0
  153. package/initramfs/buninu/apps/jsgotty/LICENSE +23 -0
  154. package/initramfs/buninu/apps/jsgotty/LICENSES/Apache-2.0-zmodem.js.txt +201 -0
  155. package/initramfs/buninu/apps/jsgotty/NOTICE +21 -0
  156. package/initramfs/buninu/apps/jsgotty/README.en.md +294 -0
  157. package/initramfs/buninu/apps/jsgotty/README.md +296 -0
  158. package/initramfs/buninu/apps/jsgotty/client.mjs +700 -0
  159. package/initramfs/buninu/apps/jsgotty/env.sh +2 -0
  160. package/initramfs/buninu/apps/jsgotty/gotty.js +3334 -0
  161. package/initramfs/buninu/apps/jsgotty/node_modules/.package-lock.json +35 -0
  162. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/LICENSE.md +9 -0
  163. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/README.md +319 -0
  164. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/common.gypi +20 -0
  165. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/except.gypi +25 -0
  166. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/index.js +12 -0
  167. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/napi-inl.deprecated.h +186 -0
  168. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/napi-inl.h +6607 -0
  169. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/napi.h +3201 -0
  170. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/node_addon_api.gyp +32 -0
  171. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/node_api.gyp +9 -0
  172. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/noexcept.gypi +26 -0
  173. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/nothing.c +0 -0
  174. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/package-support.json +21 -0
  175. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/package.json +480 -0
  176. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/tools/README.md +73 -0
  177. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/tools/check-napi.js +99 -0
  178. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/tools/clang-format.js +71 -0
  179. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/tools/conversion.js +301 -0
  180. package/initramfs/buninu/apps/jsgotty/node_modules/node-addon-api/tools/eslint-format.js +79 -0
  181. package/initramfs/buninu/apps/jsgotty/node_modules/ws/LICENSE +20 -0
  182. package/initramfs/buninu/apps/jsgotty/node_modules/ws/README.md +548 -0
  183. package/initramfs/buninu/apps/jsgotty/node_modules/ws/browser.js +8 -0
  184. package/initramfs/buninu/apps/jsgotty/node_modules/ws/index.js +22 -0
  185. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/buffer-util.js +131 -0
  186. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/constants.js +19 -0
  187. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/event-target.js +292 -0
  188. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/extension.js +203 -0
  189. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/limiter.js +55 -0
  190. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/permessage-deflate.js +528 -0
  191. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/receiver.js +760 -0
  192. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/sender.js +607 -0
  193. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/stream.js +161 -0
  194. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/subprotocol.js +62 -0
  195. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/validation.js +152 -0
  196. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/websocket-server.js +562 -0
  197. package/initramfs/buninu/apps/jsgotty/node_modules/ws/lib/websocket.js +1407 -0
  198. package/initramfs/buninu/apps/jsgotty/node_modules/ws/package.json +70 -0
  199. package/initramfs/buninu/apps/jsgotty/node_modules/ws/wrapper.mjs +21 -0
  200. package/initramfs/buninu/apps/jsgotty/package-lock.json +46 -0
  201. package/initramfs/buninu/apps/jsgotty/package.json +19 -0
  202. package/initramfs/buninu/apps/jsgotty/patches/windowsPtyAgent.js +326 -0
  203. package/initramfs/buninu/apps/jsgotty/patches/windowsTerminal.js +204 -0
  204. package/initramfs/buninu/apps/jsgotty/rz.js +199 -0
  205. package/initramfs/buninu/apps/jsgotty/single-exe/README.md +384 -0
  206. package/initramfs/buninu/apps/jsgotty/single-exe/assetsHelper.js +371 -0
  207. package/initramfs/buninu/apps/jsgotty/single-exe/assetsLoader.mjs +85 -0
  208. package/initramfs/buninu/apps/jsgotty/single-exe/assetsPacker.js +218 -0
  209. package/initramfs/buninu/apps/jsgotty/single-exe/compiled.js +498 -0
  210. package/initramfs/buninu/apps/jsgotty/single-exe/entry.mjs +23 -0
  211. package/initramfs/buninu/apps/jsgotty/single-exe/packAssets.sh +7 -0
  212. package/initramfs/buninu/apps/jsgotty/static/css/index.css +13 -0
  213. package/initramfs/buninu/apps/jsgotty/static/css/kitty.css +61 -0
  214. package/initramfs/buninu/apps/jsgotty/static/css/xterm.css +218 -0
  215. package/initramfs/buninu/apps/jsgotty/static/css/xterm_customize.css +35 -0
  216. package/initramfs/buninu/apps/jsgotty/static/favicon.ico +0 -0
  217. package/initramfs/buninu/apps/jsgotty/static/help.md +125 -0
  218. package/initramfs/buninu/apps/jsgotty/static/icon.svg +66 -0
  219. package/initramfs/buninu/apps/jsgotty/static/icon_192.png +0 -0
  220. package/initramfs/buninu/apps/jsgotty/static/index.html +164 -0
  221. package/initramfs/buninu/apps/jsgotty/static/js/gotty.js +31537 -0
  222. package/initramfs/buninu/apps/jsgotty/static/js/gotty.js.LICENSE.txt +7 -0
  223. package/initramfs/buninu/apps/jsgotty/static/js/gotty.js.map +1 -0
  224. package/initramfs/buninu/apps/jsgotty/static/js/gotty.licenses.txt +650 -0
  225. package/initramfs/buninu/apps/jsgotty/static/js/kitty.js +1101 -0
  226. package/initramfs/buninu/apps/jsgotty/static/js/windows_bridge.js +194 -0
  227. package/initramfs/buninu/apps/jsgotty/static/js/xterm-addon-unicode11.js +2 -0
  228. package/initramfs/buninu/apps/jsgotty/static/js/zmodem.js +1 -0
  229. package/initramfs/buninu/apps/jsgotty/static/manifest.json +15 -0
  230. package/initramfs/buninu/apps/jsgotty/sz.js +273 -0
  231. package/initramfs/buninu/apps/jsgotty/tests/kitty-order.test.js +58 -0
  232. package/initramfs/buninu/apps/jsgotty/tests/websocket-origin.test.js +54 -0
  233. package/initramfs/buninu/apps/jsgotty/viu.mjs +422 -0
  234. package/initramfs/buninu/apps/jsgotty/wgotty +62 -0
  235. package/initramfs/buninu/apps/jsgotty/windows-bridge-node.js +60 -0
  236. package/initramfs/buninu/apps/jsgotty/zmodem-node.js +262 -0
  237. package/initramfs/buninu/apps/jsmdcui/CHANGELOG.md +1118 -0
  238. package/initramfs/buninu/apps/jsmdcui/LICENSE +22 -0
  239. package/initramfs/buninu/apps/jsmdcui/README.md +1283 -0
  240. package/initramfs/buninu/apps/jsmdcui/cdp-maze.js +141 -0
  241. package/initramfs/buninu/apps/jsmdcui/clean.sh +9 -0
  242. package/initramfs/buninu/apps/jsmdcui/demos/basic.jpg +0 -0
  243. package/initramfs/buninu/apps/jsmdcui/demos/chinese.md +32 -0
  244. package/initramfs/buninu/apps/jsmdcui/demos/event.md +170 -0
  245. package/initramfs/buninu/apps/jsmdcui/demos/good.jpg +0 -0
  246. package/initramfs/buninu/apps/jsmdcui/demos/image-processor.md +366 -0
  247. package/initramfs/buninu/apps/jsmdcui/demos/image-processor.zh-TW.md +366 -0
  248. package/initramfs/buninu/apps/jsmdcui/demos/img-change.md +73 -0
  249. package/initramfs/buninu/apps/jsmdcui/demos/imgtool-zh.md +298 -0
  250. package/initramfs/buninu/apps/jsmdcui/demos/imgtool.md +298 -0
  251. package/initramfs/buninu/apps/jsmdcui/demos/maze.md +149 -0
  252. package/initramfs/buninu/apps/jsmdcui/demos/reactive.md +40 -0
  253. package/initramfs/buninu/apps/jsmdcui/demos/reader.md +513 -0
  254. package/initramfs/buninu/apps/jsmdcui/demos/select.md +63 -0
  255. package/initramfs/buninu/apps/jsmdcui/demos/todo-zh.md +190 -0
  256. package/initramfs/buninu/apps/jsmdcui/demos/todo.md +191 -0
  257. package/initramfs/buninu/apps/jsmdcui/edit +9 -0
  258. package/initramfs/buninu/apps/jsmdcui/jsmdcui.sh +16 -0
  259. package/initramfs/buninu/apps/jsmdcui/llm-maze.txt +94 -0
  260. package/initramfs/buninu/apps/jsmdcui/package.json +29 -0
  261. package/initramfs/buninu/apps/jsmdcui/project_structure.txt +35 -0
  262. package/initramfs/buninu/apps/jsmdcui/runmd.mjs +1140 -0
  263. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/atom-dark.micro +33 -0
  264. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/bubblegum.micro +31 -0
  265. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/cmc-16.micro +47 -0
  266. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/cmc-tc.micro +43 -0
  267. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/darcula.micro +34 -0
  268. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/default.micro +1 -0
  269. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/dracula-tc.micro +49 -0
  270. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/dukedark-tc.micro +38 -0
  271. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/dukelight-tc.micro +38 -0
  272. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/dukeubuntu-tc.micro +38 -0
  273. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/geany.micro +29 -0
  274. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/gotham.micro +29 -0
  275. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/gruvbox-tc.micro +29 -0
  276. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/gruvbox.micro +26 -0
  277. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/material-tc.micro +36 -0
  278. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/monokai-dark.micro +28 -0
  279. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/monokai.micro +34 -0
  280. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/one-dark.micro +39 -0
  281. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/railscast.micro +37 -0
  282. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/simple.micro +33 -0
  283. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/solarized-tc.micro +31 -0
  284. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/solarized.micro +30 -0
  285. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/sunny-day.micro +29 -0
  286. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/twilight.micro +40 -0
  287. package/initramfs/buninu/apps/jsmdcui/runtime/colorschemes/zenburn.micro +30 -0
  288. package/initramfs/buninu/apps/jsmdcui/runtime/help/actions.md +161 -0
  289. package/initramfs/buninu/apps/jsmdcui/runtime/help/cdp.md +130 -0
  290. package/initramfs/buninu/apps/jsmdcui/runtime/help/colors.md +421 -0
  291. package/initramfs/buninu/apps/jsmdcui/runtime/help/commands.md +161 -0
  292. package/initramfs/buninu/apps/jsmdcui/runtime/help/copypaste.md +149 -0
  293. package/initramfs/buninu/apps/jsmdcui/runtime/help/defaultkeys.md +148 -0
  294. package/initramfs/buninu/apps/jsmdcui/runtime/help/help.md +1283 -0
  295. package/initramfs/buninu/apps/jsmdcui/runtime/help/keybindings.md +355 -0
  296. package/initramfs/buninu/apps/jsmdcui/runtime/help/linter.md +90 -0
  297. package/initramfs/buninu/apps/jsmdcui/runtime/help/options.md +709 -0
  298. package/initramfs/buninu/apps/jsmdcui/runtime/help/plugins.md +544 -0
  299. package/initramfs/buninu/apps/jsmdcui/runtime/help/tutorial.md +112 -0
  300. package/initramfs/buninu/apps/jsmdcui/runtime/jsplugins/cdp/cdp-server.js +1263 -0
  301. package/initramfs/buninu/apps/jsmdcui/runtime/jsplugins/cdp/cdp.js +203 -0
  302. package/initramfs/buninu/apps/jsmdcui/runtime/jsplugins/chapter/chapter.js +111 -0
  303. package/initramfs/buninu/apps/jsmdcui/runtime/jsplugins/diff/diff.js +46 -0
  304. package/initramfs/buninu/apps/jsmdcui/runtime/jsplugins/example/example.js +117 -0
  305. package/initramfs/buninu/apps/jsmdcui/runtime/jsplugins/linter/linter.js +281 -0
  306. package/initramfs/buninu/apps/jsmdcui/runtime/plugins/autoclose/autoclose.lua +75 -0
  307. package/initramfs/buninu/apps/jsmdcui/runtime/plugins/ftoptions/ftoptions.lua +17 -0
  308. package/initramfs/buninu/apps/jsmdcui/runtime/plugins/literate/README.md +5 -0
  309. package/initramfs/buninu/apps/jsmdcui/runtime/plugins/literate/literate.lua +55 -0
  310. package/initramfs/buninu/apps/jsmdcui/runtime/plugins/status/help/status.md +21 -0
  311. package/initramfs/buninu/apps/jsmdcui/runtime/plugins/status/status.lua +62 -0
  312. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/LICENSE +22 -0
  313. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/PowerShell.yaml +128 -0
  314. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/README.md +63 -0
  315. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/ada.yaml +43 -0
  316. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/apacheconf.yaml +59 -0
  317. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/arduino.yaml +101 -0
  318. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/asciidoc.yaml +51 -0
  319. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/asm.yaml +123 -0
  320. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/ats.yaml +99 -0
  321. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/awk.yaml +44 -0
  322. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/b.yaml +87 -0
  323. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/bat.yaml +57 -0
  324. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/c.yaml +60 -0
  325. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/caddyfile.yaml +23 -0
  326. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/cake.yaml +7 -0
  327. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/clojure.yaml +38 -0
  328. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/cmake.yaml +42 -0
  329. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/coffeescript.yaml +56 -0
  330. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/colortest.yaml +19 -0
  331. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/conky.yaml +17 -0
  332. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/cpp.yaml +91 -0
  333. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/crontab.yaml +36 -0
  334. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/crystal.yaml +72 -0
  335. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/csharp.yaml +52 -0
  336. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/css.yaml +44 -0
  337. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/csx.yaml +8 -0
  338. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/cuda.yaml +68 -0
  339. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/cython.yaml +52 -0
  340. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/d.yaml +121 -0
  341. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/dart.yaml +46 -0
  342. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/default.yaml +10 -0
  343. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/dockerfile.yaml +36 -0
  344. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/dot.yaml +29 -0
  345. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/elixir.yaml +30 -0
  346. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/elm.yaml +38 -0
  347. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/erb.yaml +42 -0
  348. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/erlang.yaml +45 -0
  349. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/fish.yaml +48 -0
  350. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/forth.yaml +34 -0
  351. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/fortran.yaml +64 -0
  352. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/freebsd-kernel.yaml +14 -0
  353. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/fsharp.yaml +48 -0
  354. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/gdscript.yaml +61 -0
  355. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/gemini.yaml +19 -0
  356. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/gentoo-ebuild.yaml +48 -0
  357. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/gentoo-etc-portage.yaml +23 -0
  358. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/git-commit.yaml +35 -0
  359. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/git-config.yaml +14 -0
  360. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/git-rebase-todo.yaml +19 -0
  361. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/gleam.yaml +69 -0
  362. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/glsl.yaml +26 -0
  363. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/gnuplot.yaml +15 -0
  364. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/go.yaml +62 -0
  365. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/godoc.yaml +17 -0
  366. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/golo.yaml +73 -0
  367. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/gomod.yaml +31 -0
  368. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/graphql.yaml +47 -0
  369. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/groff.yaml +30 -0
  370. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/groovy.yaml +111 -0
  371. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/haml.yaml +16 -0
  372. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/hare.yaml +52 -0
  373. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/haskell.yaml +52 -0
  374. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/hc.yaml +52 -0
  375. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/html.yaml +70 -0
  376. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/html4.yaml +25 -0
  377. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/html5.yaml +25 -0
  378. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/ini.yaml +23 -0
  379. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/inputrc.yaml +14 -0
  380. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/java.yaml +37 -0
  381. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/javascript.yaml +124 -0
  382. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/jinja2.yaml +19 -0
  383. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/json.yaml +39 -0
  384. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/jsonnet.yaml +92 -0
  385. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/julia.yaml +57 -0
  386. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/justfile.yaml +40 -0
  387. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/keymap.yaml +27 -0
  388. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/kickstart.yaml +16 -0
  389. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/kotlin.yaml +66 -0
  390. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/kvlang.yaml +67 -0
  391. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/ledger.yaml +14 -0
  392. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/lfe.yaml +17 -0
  393. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/lilypond.yaml +26 -0
  394. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/lisp.yaml +17 -0
  395. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/log.yaml +92 -0
  396. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/lua.yaml +111 -0
  397. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/mail.yaml +25 -0
  398. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/makefile.yaml +38 -0
  399. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/man.yaml +12 -0
  400. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/markdown.yaml +65 -0
  401. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/mc.yaml +23 -0
  402. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/meson.yaml +51 -0
  403. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/micro.yaml +34 -0
  404. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/mpdconf.yaml +13 -0
  405. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/msbuild.yaml +6 -0
  406. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/nanorc.yaml +16 -0
  407. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/nftables.yaml +30 -0
  408. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/nginx.yaml +22 -0
  409. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/nim.yaml +27 -0
  410. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/nix.yaml +32 -0
  411. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/nu.yaml +114 -0
  412. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/objc.yaml +60 -0
  413. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/ocaml.yaml +43 -0
  414. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/octave.yaml +83 -0
  415. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/odin.yaml +64 -0
  416. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/pascal.yaml +45 -0
  417. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/patch.yaml +14 -0
  418. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/peg.yaml +16 -0
  419. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/perl.yaml +58 -0
  420. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/php.yaml +60 -0
  421. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/pkg-config.yaml +12 -0
  422. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/po.yaml +12 -0
  423. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/pony.yaml +37 -0
  424. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/pov.yaml +21 -0
  425. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/privoxy-action.yaml +14 -0
  426. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/privoxy-config.yaml +10 -0
  427. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/privoxy-filter.yaml +12 -0
  428. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/proto.yaml +40 -0
  429. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/prql.yaml +84 -0
  430. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/puppet.yaml +22 -0
  431. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/python2.yaml +60 -0
  432. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/python3.yaml +80 -0
  433. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/r.yaml +32 -0
  434. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/raku.yaml +42 -0
  435. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/reST.yaml +18 -0
  436. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/renpy.yaml +15 -0
  437. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/rpmspec.yaml +43 -0
  438. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/ruby.yaml +73 -0
  439. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/rust.yaml +78 -0
  440. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/sage.yaml +60 -0
  441. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/scad.yaml +53 -0
  442. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/scala.yaml +33 -0
  443. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/sed.yaml +13 -0
  444. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/sh.yaml +69 -0
  445. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/sls.yaml +15 -0
  446. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/smalltalk.yaml +55 -0
  447. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/solidity.yaml +41 -0
  448. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/sql.yaml +35 -0
  449. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/stata.yaml +67 -0
  450. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/svelte.yaml +27 -0
  451. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/swift.yaml +103 -0
  452. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/systemd.yaml +16 -0
  453. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/tcl.yaml +18 -0
  454. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/terraform.yaml +87 -0
  455. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/tex.yaml +32 -0
  456. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/toml.yaml +56 -0
  457. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/twig.yaml +55 -0
  458. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/typescript.yaml +49 -0
  459. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/v.yaml +80 -0
  460. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/vala.yaml +26 -0
  461. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/verilog.yaml +60 -0
  462. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/vhdl.yaml +37 -0
  463. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/vi.yaml +31 -0
  464. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/vue.yaml +64 -0
  465. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/xml.yaml +37 -0
  466. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/xresources.yaml +14 -0
  467. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/yaml.yaml +34 -0
  468. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/yum.yaml +12 -0
  469. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/zig.yaml +52 -0
  470. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/zscript.yaml +72 -0
  471. package/initramfs/buninu/apps/jsmdcui/runtime/syntax/zsh.yaml +52 -0
  472. package/initramfs/buninu/apps/jsmdcui/single-exe/README.md +396 -0
  473. package/initramfs/buninu/apps/jsmdcui/single-exe/assetsHelper.js +371 -0
  474. package/initramfs/buninu/apps/jsmdcui/single-exe/assetsLoader.mjs +85 -0
  475. package/initramfs/buninu/apps/jsmdcui/single-exe/assetsPacker.js +218 -0
  476. package/initramfs/buninu/apps/jsmdcui/single-exe/compiled.js +498 -0
  477. package/initramfs/buninu/apps/jsmdcui/single-exe/entry.mjs +17 -0
  478. package/initramfs/buninu/apps/jsmdcui/single-exe/packAssets.sh +7 -0
  479. package/initramfs/buninu/apps/jsmdcui/src/MDCUI_DEFAULT_EDIT +0 -0
  480. package/initramfs/buninu/apps/jsmdcui/src/buffer/backup.js +165 -0
  481. package/initramfs/buninu/apps/jsmdcui/src/buffer/buffer.js +126 -0
  482. package/initramfs/buninu/apps/jsmdcui/src/buffer/fixed3-codec.js +140 -0
  483. package/initramfs/buninu/apps/jsmdcui/src/buffer/loc.js +38 -0
  484. package/initramfs/buninu/apps/jsmdcui/src/buffer/message.js +29 -0
  485. package/initramfs/buninu/apps/jsmdcui/src/build-args.js +40 -0
  486. package/initramfs/buninu/apps/jsmdcui/src/config/clean.js +172 -0
  487. package/initramfs/buninu/apps/jsmdcui/src/config/colorscheme.js +99 -0
  488. package/initramfs/buninu/apps/jsmdcui/src/config/config.js +125 -0
  489. package/initramfs/buninu/apps/jsmdcui/src/config/defaults.js +109 -0
  490. package/initramfs/buninu/apps/jsmdcui/src/cui/fence-events.mjs +144 -0
  491. package/initramfs/buninu/apps/jsmdcui/src/cui/heading-ids.mjs +1568 -0
  492. package/initramfs/buninu/apps/jsmdcui/src/cui/id-collision.mjs +111 -0
  493. package/initramfs/buninu/apps/jsmdcui/src/cui/identity.mjs +26 -0
  494. package/initramfs/buninu/apps/jsmdcui/src/cui/kitty-debug.mjs +25 -0
  495. package/initramfs/buninu/apps/jsmdcui/src/cui/kitty-images.mjs +280 -0
  496. package/initramfs/buninu/apps/jsmdcui/src/cui/kitty-mode.mjs +6 -0
  497. package/initramfs/buninu/apps/jsmdcui/src/cui/rerender-queue.mjs +66 -0
  498. package/initramfs/buninu/apps/jsmdcui/src/cui/rpc.mjs +1554 -0
  499. package/initramfs/buninu/apps/jsmdcui/src/cui/server.mjs +128 -0
  500. package/initramfs/buninu/apps/jsmdcui/src/cui/table-render.mjs +286 -0
  501. package/initramfs/buninu/apps/jsmdcui/src/cui/table-row-edit.mjs +226 -0
  502. package/initramfs/buninu/apps/jsmdcui/src/cui/task-checkbox.mjs +60 -0
  503. package/initramfs/buninu/apps/jsmdcui/src/cui/template-components.mjs +253 -0
  504. package/initramfs/buninu/apps/jsmdcui/src/cui/text-block-resize.mjs +177 -0
  505. package/initramfs/buninu/apps/jsmdcui/src/cui/tui-links.mjs +560 -0
  506. package/initramfs/buninu/apps/jsmdcui/src/display/ansi-style.js +60 -0
  507. package/initramfs/buninu/apps/jsmdcui/src/highlight/highlighter.js +243 -0
  508. package/initramfs/buninu/apps/jsmdcui/src/highlight/parser.js +225 -0
  509. package/initramfs/buninu/apps/jsmdcui/src/index.js +9586 -0
  510. package/initramfs/buninu/apps/jsmdcui/src/lua/engine.js +68 -0
  511. package/initramfs/buninu/apps/jsmdcui/src/platform/archive.js +50 -0
  512. package/initramfs/buninu/apps/jsmdcui/src/platform/clipboard.js +278 -0
  513. package/initramfs/buninu/apps/jsmdcui/src/platform/commands.js +221 -0
  514. package/initramfs/buninu/apps/jsmdcui/src/platform/terminal.js +5 -0
  515. package/initramfs/buninu/apps/jsmdcui/src/plugins/js-bridge.js +3377 -0
  516. package/initramfs/buninu/apps/jsmdcui/src/plugins/manager.js +674 -0
  517. package/initramfs/buninu/apps/jsmdcui/src/runtime/encodings.js +10 -0
  518. package/initramfs/buninu/apps/jsmdcui/src/runtime/registry.js +134 -0
  519. package/initramfs/buninu/apps/jsmdcui/src/screen/cell-buffer.js +81 -0
  520. package/initramfs/buninu/apps/jsmdcui/src/screen/events.js +263 -0
  521. package/initramfs/buninu/apps/jsmdcui/src/screen/screen.js +249 -0
  522. package/initramfs/buninu/apps/jsmdcui/src/screen/vt100.js +571 -0
  523. package/initramfs/buninu/apps/jsmdcui/src/shell/shell.js +70 -0
  524. package/initramfs/buninu/apps/jsmdcui/testapp.md +78 -0
  525. package/initramfs/buninu/apps/jsmdcui/tests/assets-helper.test.js +150 -0
  526. package/initramfs/buninu/apps/jsmdcui/tests/backup.test.js +158 -0
  527. package/initramfs/buninu/apps/jsmdcui/tests/cat-markdown.test.js +139 -0
  528. package/initramfs/buninu/apps/jsmdcui/tests/cdp-security.test.js +32 -0
  529. package/initramfs/buninu/apps/jsmdcui/tests/cdp-websocket-test.html +46 -0
  530. package/initramfs/buninu/apps/jsmdcui/tests/cmphex3b64.js +95 -0
  531. package/initramfs/buninu/apps/jsmdcui/tests/compiled-runtime.test.js +139 -0
  532. package/initramfs/buninu/apps/jsmdcui/tests/config-settings.test.js +52 -0
  533. package/initramfs/buninu/apps/jsmdcui/tests/demo.test.js +448 -0
  534. package/initramfs/buninu/apps/jsmdcui/tests/docs-sync.test.js +14 -0
  535. package/initramfs/buninu/apps/jsmdcui/tests/fence-events.test.js +1293 -0
  536. package/initramfs/buninu/apps/jsmdcui/tests/heading-ids.test.js +559 -0
  537. package/initramfs/buninu/apps/jsmdcui/tests/heading-list-selector.test.js +2393 -0
  538. package/initramfs/buninu/apps/jsmdcui/tests/id-collision.test.js +514 -0
  539. package/initramfs/buninu/apps/jsmdcui/tests/jmigt.js +16 -0
  540. package/initramfs/buninu/apps/jsmdcui/tests/js-plugin-prompts.test.js +110 -0
  541. package/initramfs/buninu/apps/jsmdcui/tests/key-event.md +10 -0
  542. package/initramfs/buninu/apps/jsmdcui/tests/kitty-demo.md +184 -0
  543. package/initramfs/buninu/apps/jsmdcui/tests/kitty-images.test.js +288 -0
  544. package/initramfs/buninu/apps/jsmdcui/tests/kitty-mode.test.js +14 -0
  545. package/initramfs/buninu/apps/jsmdcui/tests/platform-commands.test.js +18 -0
  546. package/initramfs/buninu/apps/jsmdcui/tests/platform-terminal.test.js +8 -0
  547. package/initramfs/buninu/apps/jsmdcui/tests/pty-demo.js +492 -0
  548. package/initramfs/buninu/apps/jsmdcui/tests/rerender-queue.test.js +130 -0
  549. package/initramfs/buninu/apps/jsmdcui/tests/table-render.test.js +150 -0
  550. package/initramfs/buninu/apps/jsmdcui/tests/table-row-edit.test.js +138 -0
  551. package/initramfs/buninu/apps/jsmdcui/tests/task-checkbox.test.js +33 -0
  552. package/initramfs/buninu/apps/jsmdcui/tests/template-components.test.js +422 -0
  553. package/initramfs/buninu/apps/jsmdcui/tests/text-block-resize.test.js +222 -0
  554. package/initramfs/buninu/apps/jsmdcui/tests/textarea.md +8 -0
  555. package/initramfs/buninu/apps/jsmdcui/tests/tui-links.test.js +298 -0
  556. package/initramfs/buninu/apps/jsmdcui/tests/wui-responsive-images.test.js +60 -0
  557. package/initramfs/buninu/apps/jsmdcui/tests/wui.test.js +108 -0
  558. package/initramfs/buninu/apps/jsmdcui/tests/wv-client.js +96 -0
  559. package/initramfs/buninu/apps/jsmdcui/tui +7 -0
  560. package/initramfs/buninu/apps/jsmdcui/wui +9 -0
  561. package/initramfs/buninu/apps/musl-la/LICENSES/GPL-3.0.txt +674 -0
  562. package/initramfs/buninu/apps/musl-la/LICENSES/gcc_runtime_exception.txt +73 -0
  563. package/initramfs/buninu/apps/musl-la/LICENSE_musl.txt +193 -0
  564. package/initramfs/buninu/apps/musl-la/NOTICE +41 -0
  565. package/initramfs/buninu/apps/musl-la/ld-musl-aarch64.so.1 +0 -0
  566. package/initramfs/buninu/apps/musl-la/libgcc_s.so.1 +0 -0
  567. package/initramfs/buninu/apps/musl-la/libstdc++.so.6 +0 -0
  568. package/initramfs/buninu/apps/musl-la/musl-la.sh +36 -0
  569. package/initramfs/buninu/apps/native-bridge/native-bridge.js +199 -0
  570. package/initramfs/buninu/apps/native-bridge/package.json +8 -0
  571. package/initramfs/buninu/apps/tts/tts.js +214 -0
  572. package/initramfs/buninu/apps/xclip/xclip.js +121 -0
  573. package/initramfs/buninu/apps/xdg-open/xdg-open.js +151 -0
  574. package/initramfs/buninu/bin/bun.bat +37 -0
  575. package/initramfs/buninu/bin/bun.sh +57 -0
  576. package/initramfs/buninu/bin/buninu-help.bat +4 -0
  577. package/initramfs/buninu/bin/buninu-help.sh +7 -0
  578. package/initramfs/buninu/bin/bunmsh.bat +3 -0
  579. package/initramfs/buninu/bin/bunmsh.sh +5 -0
  580. package/initramfs/buninu/bin/bunx.bat +3 -0
  581. package/initramfs/buninu/bin/glow.bat +3 -0
  582. package/initramfs/buninu/bin/glow.sh +5 -0
  583. package/initramfs/buninu/bin/init.js +779 -0
  584. package/initramfs/buninu/bin/install.js +570 -0
  585. package/initramfs/buninu/bin/jmi.bat +3 -0
  586. package/initramfs/buninu/bin/jmi.sh +5 -0
  587. package/initramfs/buninu/bin/jsgotty.bat +3 -0
  588. package/initramfs/buninu/bin/jsgotty.sh +5 -0
  589. package/initramfs/buninu/bin/jsmdcui.bat +11 -0
  590. package/initramfs/buninu/bin/libsh-loader.c +135 -0
  591. package/initramfs/buninu/bin/libsh-loader.so +0 -0
  592. package/initramfs/buninu/bin/multicall.sh +103 -0
  593. package/initramfs/buninu/bin/native-bridge.bat +3 -0
  594. package/initramfs/buninu/bin/rz.bat +3 -0
  595. package/initramfs/buninu/bin/rz.sh +5 -0
  596. package/initramfs/buninu/bin/shc.js +5 -0
  597. package/initramfs/buninu/bin/showimg.bat +3 -0
  598. package/initramfs/buninu/bin/showimg.sh +5 -0
  599. package/initramfs/buninu/bin/switch_to_android.sh +9 -0
  600. package/initramfs/buninu/bin/switch_to_linux.sh +7 -0
  601. package/initramfs/buninu/bin/sz.bat +3 -0
  602. package/initramfs/buninu/bin/sz.sh +5 -0
  603. package/initramfs/buninu/bin/tts.bat +3 -0
  604. package/initramfs/buninu/bin/xclip.bat +3 -0
  605. package/initramfs/buninu/bin/xdg-open.bat +3 -0
  606. package/initramfs/buninu/demo-server.js +64 -0
  607. package/initramfs/buninu/icon.png +0 -0
  608. package/initramfs/buninu/package.json +59 -0
  609. package/initramfs/etc/resolv.conf +1 -0
  610. package/initramfs/init.js +339 -0
  611. package/initramfs/lib/ld-musl-x86_64.so.1 +0 -0
  612. package/initramfs/lib/libc.musl-x86_64.so.1 +0 -0
  613. package/initramfs/lib/libgcc_s.so.1 +0 -0
  614. package/initramfs/lib/libstdc++.so.6 +0 -0
  615. package/initramfs/usr/bin/env +7 -0
  616. package/package.json +42 -0
  617. package/run-qemu.sh +44 -0
  618. package/scripts/fetch.sh +26 -0
  619. package/scripts/pack-initramfs.sh +41 -0
  620. package/test/build-init-bootstrap.sh +23 -0
  621. package/test/init-bootstrap.c +55 -0
@@ -0,0 +1,580 @@
1
+ # Changelog
2
+
3
+ ## 0.4.12 - 2026-09-20
4
+
5
+ ### Fixed
6
+
7
+ - Make Buninu's shell scripts parse and run under bunmsh as well as a POSIX
8
+ shell. The jsmdcui and musl-la launchers now use the `for name; do` form
9
+ accepted by bunmsh, and jsmdcui avoids bracket expressions in parameter
10
+ trimming while preserving case-insensitive Markdown suffix detection
11
+ - Make `make-bunBin.sh` bunmsh-compatible by replacing its `case`, shell-option,
12
+ command-scoped `CDPATH`, `cd --` and `trap` usage with portable conditionals,
13
+ explicit failure handling and temporary-directory cleanup
14
+ - Use explicit `1>&2` stderr redirection in `bun.sh` and `make-bunBin.sh`.
15
+ bunmsh interpreted the abbreviated `>&2` form as an output file named `&2`
16
+
17
+ ## 0.4.11 - 2026-09-20
18
+
19
+ - Emergency fix: multicall.sh on Buninu Linux
20
+ * /proc/$$/cmdline: /bin/bun /bin/sh ...
21
+
22
+ ## 0.4.10 - 2026-09-20
23
+
24
+ ### Fixed
25
+
26
+ - Sync bunmsh to 0.3.7. Its fallback `tr` builtin now decodes NUL, octal and
27
+ common backslash escapes in character sets, so commands such as
28
+ `tr '\0' '\n' < /proc/$$/cmdline` correctly split NUL-delimited process
29
+ arguments. Previously the NUL bytes passed through unchanged; the Buninu
30
+ multicall launcher could then misidentify a command invoked with arguments
31
+ and exit with status 127 before reaching its shell wrapper, for example
32
+ `jmi hlw.js` even though plain `jmi` worked.
33
+
34
+ ## 0.4.9 - 2026-09-16
35
+
36
+ ### Changed
37
+
38
+ - Sync bunmsh to 0.3.6
39
+ * VS Code compatibility: accepts leading &
40
+
41
+ ## 0.4.8 - 2026-09-16
42
+
43
+ ### Documentation
44
+
45
+ - Add an Android-only optional-tools walkthrough for installing `bunproot`,
46
+ cloning `js-udocker`, and starting an Alpine container. Both tools remain
47
+ user-downloaded rather than bundled with Buninu; the README records
48
+ `bunproot` as GPL-2.0-or-later and `js-udocker` as Apache-2.0
49
+
50
+ ## 0.4.7 - 2026-09-14
51
+
52
+ ### Added
53
+
54
+ - `--readme-tui` and `--readme-wui` open README.md through jsmdcui instead of
55
+ printing it, so its headings and its table of contents become links to
56
+ follow -- the first as a terminal UI, the second served at a URL for a
57
+ browser. jsmdcui writes five generated files beside any Markdown it opens,
58
+ so README.md is copied into a directory under `TMPDIR` and run from there:
59
+ an installation stays the user's, and nothing generated reaches an
60
+ `--export` or survives an update
61
+ - `--bunmsh` joins `--jsgotty`, `--jsmdcui` and `--musl-la` as a first
62
+ argument that spawns that app directly, forwarding every remaining argument
63
+ and exiting with its exit code
64
+
65
+ ### Changed
66
+
67
+ - `package.json` now carries `repository`, `homepage`, `bugs`, `keywords` and
68
+ `author`, so the npm page links back to the source and the package can be
69
+ found by search
70
+ - `apps/musl-la/NOTICE` records where the bundled musl loader came from:
71
+ Alpine's `musl` 1.2.5-r10 for aarch64, with the SHA-256 of the binary. That
72
+ pkgrel is no longer on Alpine's CDN, which keeps only the current one, so
73
+ the note points at an archived copy of the same build
74
+ - Seven licence texts in `apps/musl-la/LICENSES/` covered components this
75
+ package does not ship -- ggml, libssh2, curl, zlib, LLVM, a bare Apache-2.0
76
+ and LGPL-3.0 -- and have been removed. The three binaries there are covered
77
+ by `LICENSE_musl.txt`, `GPL-3.0.txt` and `gcc_runtime_exception.txt`, which
78
+ stay
79
+ - README.md reorganised: a shorter opening that reaches `Install Bun` and
80
+ `Start` sooner, the command reference moved ahead of the sections about
81
+ keeping and updating an installation, grouped command listings, and the
82
+ naming convention for platform-specific binaries (`la`, `lx`, `aa`, `wx`,
83
+ `ma`) written down
84
+
85
+ ### Fixed
86
+
87
+ - `--local` was missing from `--help` entirely, and now leads the option list
88
+ - `showimg` in a browser terminal
89
+ * Bind the scroll and render listeners before decoding the image rather than
90
+ after it. The server sends the placement ahead of the synthetic newlines
91
+ that scroll room for the image, so that scroll could land while the decode
92
+ was still running and the very first image of a session had no listener to
93
+ correct it -- it came out blank while every later image was fine
94
+ * Re-run the layout once the image element has actually loaded
95
+ * Lay placements out against xterm's own geometry until the client's first
96
+ resize message arrives, instead of against the 80x24 placeholder
97
+ * Let the terminal size settle for up to 400ms before emitting an image. A
98
+ window that was just opened, restored, resized or rotated reports a couple
99
+ of columns for a few hundred milliseconds, and an image sized against that
100
+ was emitted as a one-cell speck -- indistinguishable from the command
101
+ having printed nothing -- while the next run in the same session was correct
102
+ * Walk the prototype chain for the native `WebSocket.onmessage` descriptor.
103
+ Safari/WebKit defines it on a parent prototype rather than on
104
+ `WebSocket.prototype`, so the single-level lookup found nothing and image
105
+ messages were never processed; fall back to `addEventListener` when no
106
+ native setter is available
107
+ * Thanks @hcyuser for the contribution! (#3)
108
+
109
+ ## 0.4.6 - 2026-09-14
110
+
111
+ ### Fixed
112
+
113
+ - Experimental macOS support
114
+ * Fall back to `$0` when `/proc` is unavailable
115
+ * Rename the shell wrapper's `status` variable to `_buninu_status`; `status`
116
+ is read-only in zsh, so the web terminal died the moment it connected on a
117
+ default macOS shell
118
+ * Thanks @hcyuser for the contribution! (#1, #2)
119
+
120
+ ## 0.4.5 - 2026-09-10
121
+
122
+ 0.4.4 is intentionally skipped 不吉利
123
+
124
+ ### Changed
125
+
126
+ - Sync bunmsh to 0.3.5
127
+ - Sync jsgotty to 1.1.11
128
+ * Security fix CSWSH
129
+ - Sync jsmdcui to 0.19.1
130
+ * Security fix CSWSH for CDP server
131
+
132
+ ## 0.4.3 - 2026-09-05
133
+
134
+ - Don't check exit status for bunx
135
+
136
+ ## 0.4.2 - 2026-09-03
137
+
138
+ ### Changed
139
+
140
+ - Update the bundled bunmsh from 0.2.0 to 0.3.3, which is what a `--local`
141
+ session runs. It gains a `curl` PATH-fallback builtin written on Bun's own
142
+ `fetch`, so a device that ships no `curl` binary can still run the download
143
+ and API scripts that expect one; `pspa` and `pspac`, the process listing this
144
+ tree's `.bashrc` aliases used to be the only way to get; and a `kill` that
145
+ works on Windows. Its JavaScript mode binds `$` to the shell's own variable
146
+ table, so `$.HOME` reads a shell variable and `$.TAG = "v1"` writes one that
147
+ later commands see, and completion learned shell variable names, command
148
+ names inside `$(`, and JavaScript lines. A real `curl`, `pspa` or `pspac` in
149
+ `PATH` still wins over any of the builtins; `builtin curl ...` selects
150
+ bunmsh's. Its own [CHANGELOG](apps/bunmsh/CHANGELOG.md) has the rest.
151
+
152
+ ### Fixed
153
+
154
+ - The process-list helpers section, left behind by the bunmsh update above,
155
+ still described `--local` as a session with neither the bundled `.bashrc` nor
156
+ `$HOME/.bashrc`, and sent you to source the bundled file to get the aliases
157
+ back — where `pspac`, being two commands joined by `;`, would fail to define
158
+ as a bunmsh alias. bunmsh now has `pspa` and `pspac` as PATH-fallback
159
+ builtins, and colour aliases for `ls`, `grep` and `diff` of its own, so a
160
+ `--local` session already answers all five of those names and has no reason
161
+ to source anything. The section says so now, and says where the builtins
162
+ differ from the aliases they stand in for: `pspac` colours the table inline
163
+ rather than writing `$HOME/.pspidargs.sh` and paging it through `glow`, and
164
+ `pspa` answers on Windows as well, by querying `Win32_Process` through
165
+ PowerShell, where `ps -eo pid,args` has no counterpart — so the paragraph
166
+ ruling Windows out is now about the aliases rather than about both. Nothing
167
+ changed for the other routes: Android still loads the bundled file through
168
+ `ENV` for the shell jsgotty starts, and a remote Bash or mksh session on
169
+ Linux or macOS still sources it by hand.
170
+
171
+ ## 0.4.1 - 2026-08-30
172
+
173
+ ### Fixed
174
+
175
+ - A freshly installed tree no longer reports files as locally changed when
176
+ only their file mode differs. Publishing normalises modes, so a file can come
177
+ back from the registry with a different executable bit and byte-identical
178
+ contents, which `bun pm diff` counts as a modification; an update was
179
+ listing those and asking about files nobody had touched. They are now
180
+ recognised by the mode having changed while the contents did not, and left
181
+ out of the list, with a line saying how many were ignored so the count still
182
+ adds up against the command below.
183
+
184
+ ### Changed
185
+
186
+ - An update prints the `bun pm diff` command it is about to run, on a line of
187
+ its own before the result. Run it by hand without `--json` to read the list
188
+ directly, or without `--name-only` to see the changes themselves rather than
189
+ which files hold them. It goes to stdout rather than stderr with the rest of
190
+ the output, so `2>/dev/null` leaves just the command.
191
+
192
+ ## 0.4.0 - 2026-08-30
193
+
194
+ ### Added
195
+
196
+ - `--install [dir]` (`-i`) and `--strip-install [dir]` (`-si`) copy the running
197
+ installation into a directory that outlives the `npx` cache. `--install`
198
+ creates `<dir>/buninu` as the new `BUNINU_HOME`, `--strip-install` makes
199
+ `<dir>` itself that root, and both default to the current directory. The
200
+ implementation is `bin/install.js`, which runs on its own as well as being
201
+ imported by `bin/init.js`; run directly with no arguments it installs.
202
+ Relative symbolic links are recreated exactly as stored rather than followed,
203
+ so `bin/androidNativeLibs -> ../..` stays a link instead of dragging the
204
+ parent tree into the copy. `cp -a` is used when `cp` is on `PATH`, and an
205
+ equivalent `node:fs` walk otherwise; the two were verified to agree on
206
+ content, link targets, permissions and whole-second timestamps across every
207
+ entry of the tree.
208
+ - Installing over an existing Buninu updates it in place. The copy only ever
209
+ adds and overwrites, so `apps/<name>/` commands, `bin/*.sh` overrides and the
210
+ Bun binaries `bin/bun.sh` extracted are left alone, and the three files that
211
+ belong to the package and to the user at once are merged: the local `buninu`
212
+ section of `package.json` is kept, command names added to `apps/cmdlist` are
213
+ kept, and `.bashrc` is kept whenever it only adds lines to the shipped one,
214
+ including lines inserted in the middle. A `.bashrc` that cannot be merged
215
+ that way is left exactly as it is, with the shipped version written beside it
216
+ as `.bashrc.dist`.
217
+ - Before replacing the package's own files, an update runs `bun pm diff`
218
+ against the version the installation reports and lists the files that no
219
+ longer match it, then asks before continuing. Nothing is recorded inside the
220
+ installation to make this work — the published package is the reference — so
221
+ the check needs the network, and when it cannot run, or does not finish
222
+ within 60 seconds, it asks rather than assuming there was nothing to lose.
223
+ `--yes` answers ahead of time, which a run without a terminal needs;
224
+ `--force` replaces everything without merging or checking. An existing
225
+ installation is always named by absolute path before anything is written.
226
+
227
+ - `buninu.xdgDataHome` points `XDG_DATA_HOME` at a directory of your choosing:
228
+ `true` puts it inside the installation at `$BUNINU_HOME/.local/share`, and a
229
+ string names one outright, resolved from the `package.json` directory when it
230
+ is relative. The directory is created at startup. What this moves in practice
231
+ is bunmsh's command history, which lives at `$XDG_DATA_HOME/bunmsh/history`,
232
+ so `true` is what makes a shell's history travel with a copied installation
233
+ instead of staying on the machine it was typed on. `HOME` is deliberately not
234
+ touched by it, so SSH keys and Git configuration in the user's own home keep
235
+ working and bunmsh can still import an existing `~/.bash_history`.
236
+
237
+ - Refusing to install into an occupied directory now says which check the
238
+ directory failed — no readable `package.json`, or one naming a different
239
+ package — instead of reporting every case as "is not a buninu installation".
240
+ Whether a directory is an installation to update is decided by that name
241
+ alone: a Buninu missing `bin/init.js` is a damaged installation rather than
242
+ somebody else's directory, so an update repairs it, merging the local
243
+ configuration back in, where before `--force` was the only way through and
244
+ took that configuration with it. Every refusal names the directory by
245
+ absolute path.
246
+
247
+ ### Fixed
248
+
249
+ - `HOME` no longer falls back to the package directory when the environment
250
+ does not set it. Windows does not set `HOME`, so a Windows session had its
251
+ home pointed at the disposable `npx` cache, taking anything written there —
252
+ bunmsh's command history included — with it when the cache was cleared. It
253
+ now falls back to the operating system's own home directory for the user.
254
+
255
+ ## 0.3.2 - 2026-08-29
256
+
257
+ - Added bunmsh to bin and cmdlist
258
+
259
+ ## 0.3.1 - 2026-08-29
260
+
261
+ - Added bunmsh to buninu
262
+
263
+ ## 0.3.0 - 2026-08-21
264
+
265
+ ### Added
266
+
267
+ - Add `openWebView`, `evalWebView`, `showWebView` and `currWebView` to
268
+ `apps/native-bridge` (short spellings `openwv`, `evalwv`, `showwv`,
269
+ `currwv`, both accepted over the wire and listed in the host's `_discover`,
270
+ the same arrangement `getcb`/`setcb` already had), plus the
271
+ `WEBVIEW_CURRENT`/`WEBVIEW_CONSOLE`/`WEBVIEW_APP` constants. The host app
272
+ has exactly two WebViews, alive from startup and never created or closed at
273
+ runtime: `0` is the console showing the jsgotty terminal, `1` is the app
274
+ WebView, which starts blank and behind. An id of `-1` means whichever is in
275
+ front. `openWebView` loads without bringing its target forward, so loading
276
+ the app WebView while the user keeps looking at the terminal is one call;
277
+ `showWebView` is the only thing that changes what is on screen, and
278
+ `showWebView(-1)` switches to the *next* WebView rather than being a no-op.
279
+ `evalWebView` resolves to the value the expression produced rather than a
280
+ string containing it, with `undefined`, functions and thrown exceptions all
281
+ arriving as `null` because WebView itself does not distinguish them.
282
+ - `xdg-open` gained `MINAPK_WEBVIEW`, which names the WebView to open a URL
283
+ in (and brings it to the front) instead of handing the URL to the
284
+ platform's default handler. Read here rather than by the host app on
285
+ purpose: it is an environment variable of this process tree, so the host
286
+ could not see a value exported in the shell a moment ago, which is the
287
+ whole point of having it. Only URLs are redirected -- a filesystem path
288
+ still goes to the host, whose `content://` provider can actually serve it,
289
+ unlike a `file://` URL in a WebView. A value that is not a plain integer is
290
+ reported and ignored rather than guessed at, and a WebView the host does
291
+ not have falls back to the default handler after saying so.
292
+ - Add `demo-server.js`: serves one fixed page on an OS-assigned port and
293
+ opens it in the app WebView through `MINAPK_WEBVIEW=1 xdg-open`, as the
294
+ smallest end-to-end exercise of the above.
295
+ - Add `buninu.backToConsole` (default `true`), read by the minapk host app,
296
+ not by Buninu itself: it decides whether the Android back key, pressed on
297
+ the app WebView with no page of its own to go back to, switches to the
298
+ console WebView or takes the leave-the-app path. The host treats a missing,
299
+ unreadable or non-boolean value as `true`, so it cannot fail in a way that
300
+ leaves the back key broken. minapk's `--no-back-to-console` sets it for a
301
+ single build.
302
+
303
+ ## 0.2.5 - 2026-08-19
304
+
305
+ - Fixed fish shell startup breaking buninu
306
+ - Start fish after entering the shell please
307
+
308
+ ## 0.2.4 - 2026-08-19
309
+
310
+ ### Added
311
+
312
+ - Add the `xdg-open` command (`apps/xdg-open`), which opens a file or URL
313
+ with whatever the platform considers its default handler: native-bridge's
314
+ `xdgOpen` on Android (the host resolves a path under Buninu's home and
315
+ hands it to another app through a read-only `content://` provider, since
316
+ that directory is otherwise private to the APK), `termux-open` when
317
+ running under plain Termux with no native bridge, `open` on macOS, `start`
318
+ on Windows, and the real system `xdg-open` on Linux. That last one skips
319
+ Buninu's own `bin` while searching `PATH`, since this script is itself
320
+ registered as `xdg-open` and would otherwise find and run itself.
321
+ - Add `showimg`, a `bin/`-only shorthand for `jsgotty --viu` (no `apps/`
322
+ subfolder, since it has no logic of its own beyond forwarding args).
323
+ - Add `rz`/`sz`, `bin/`-only companion scripts wrapping the existing
324
+ `apps/jsgotty/rz.js`/`sz.js` -- `rz` uploads a file over ZMODEM, `sz`
325
+ downloads one -- over the same terminal connection jsgotty renders in a
326
+ browser or WebView.
327
+
328
+ - Add `apps/native-bridge`, a Bun module (`toast`, `clipboardRead`/`getcb`,
329
+ `clipboardWrite`/`setcb`, and the raw `call(func, args, envp)` it and the
330
+ CLI both sit on top of) that reaches minapk's Android native bridge over
331
+ `PKG_BRIDGE_SOCK` -- a Bun unix socket, filesystem-path or Linux
332
+ abstract-namespace depending on how that env var is encoded -- using
333
+ jsmdcui's `rpc.mjs` `switchBackend`. Only meaningful inside an APK built by
334
+ minapk with the native bridge wired in; elsewhere `available()` returns
335
+ `false` and calls throw a clear error instead of doing nothing silently.
336
+ Every call times out after 5s by default, so a stuck or unresponsive host
337
+ can never hang the caller. `bun apps/native-bridge/native-bridge.js [func]
338
+ [args...]` runs it directly; a bare invocation defaults `func` to
339
+ `_discover` and lists what the host implements.
340
+ - Add the `xclip` command (`apps/xclip`), ported from the DroidScript-era
341
+ `../tmpk/bin/xclip.sh` to use native-bridge instead of `dsapi.pipe`.
342
+ `-selection primary` (the default) stays local-file-only, matching real X11
343
+ semantics where the primary selection is never the same thing as the
344
+ clipboard; `-selection clipboard`/`-clip` bridges to the real Android
345
+ clipboard through native-bridge. jsmdcui's own clipboard backend detection
346
+ already shells out to `xclip` on Linux-like platforms (`isLinuxLike()`
347
+ counts `process.platform === "android"`), so jsmdcui's middle-click paste,
348
+ selection auto-sync, and `PastePrimary` command all work inside an APK with
349
+ no further wiring once `xclip` is on `PATH`.
350
+ - Add `speak`/`ttsStatus`/`tts` to native-bridge and the `tts` command
351
+ (`apps/tts`) built on them. Android's TextToSpeech completion signal is an
352
+ asynchronous callback with no way to push it to the far side over this
353
+ protocol, so `speak(text, speed, pitch, flush)` never blocks -- it returns
354
+ a handle immediately, and `ttsStatus(handle)`/`tts(handle)` (`"speaking"`,
355
+ `"done"`, `"error"`, or `"unknown"` once a terminal state has already been
356
+ consumed) is polled to find out when it finishes. `pitch`/`speed` both
357
+ default to `1.0` (normal), the same convention as `termux-tts-speak`'s
358
+ `-p`/`-r`; native-bridge passes them straight to `TextToSpeech.setPitch()`/
359
+ `setSpeechRate()` with no unit conversion. `tts <text>` wraps the polling
360
+ loop for the common case, blocking the calling process until speech
361
+ finishes -- the same as any other CLI tool that waits for the thing it
362
+ started, and, like real TTS tooling (espeak-ng has no timeout concept at
363
+ all; Windows SAPI's `WaitUntilDone` documents `-1`/infinite as the default),
364
+ waits as long as it takes with no wall-clock cap by default. Pass
365
+ `--timeout <ms>` to opt into a bounded wait instead, or `-a`/`--async` to
366
+ not wait at all. `--pitch`/`--speed` override the environment; without
367
+ them, `tts` reads `$TTS_PITCH`/`$TTS_SPEED` itself (falling back to `1` for
368
+ either that is unset), so jsmdcui's own `TTS_PITCH`/`TTS_SPEED` convention
369
+ (which it sets on `Bun.env` before spawning a TTS command, inherited here
370
+ like any other child process env var) is honored automatically -- jsmdcui's
371
+ own `detectTtsCmd()` already falls back to a bare `Bun.which("tts")` after
372
+ termux-tts-speak/espeak-ng/espeak, which this `tts` now satisfies, but that
373
+ particular fallback branch passes no `-p`/`-r`-equivalent flags at all, so
374
+ reading the env vars directly here is the only way `tts`'s pitch/speed
375
+ actually reaches Android's TTS engine through that path.
376
+ - Give `xclip` and `tts` a real fallback on non-Android platforms too, since
377
+ Buninu is cross-OS, not Android-only. `xclip`'s `-selection clipboard`
378
+ register now also tries jsmdcui's own `ClipboardManager`
379
+ (`src/platform/clipboard.js`, imported directly rather than reimplemented)
380
+ on win32/darwin, then `wl-copy`/`wl-paste` on Linux; `tts` gains a
381
+ `detectTtsCmd()` copied verbatim from jsmdcui's `src/index.js` (same
382
+ pitch/speed/lang math and command construction, including the win32
383
+ PowerShell/SAPI SSML branch, copied rather than hand-retyped since that
384
+ quoting is easy to silently break and this had no Windows machine to
385
+ verify it on) covering termux-tts-speak/say/PowerShell/espeak-ng/espeak.
386
+ Both deliberately skip the one path that would reintroduce the exact
387
+ self-reference risk they otherwise avoid: `ClipboardManager`'s Linux-like
388
+ branch searches PATH for a binary named `xclip`, and jsmdcui's own
389
+ `detectTtsCmd()` ends with a `Bun.which("tts")` fallback -- since these two
390
+ commands are themselves registered as Buninu's `xclip`/`tts`, ahead of
391
+ anything else of the same name on PATH, using either the way jsmdcui does
392
+ from inside xclip.js/tts.js would just be each script invoking itself.
393
+ - Add `bin/*.bat` launchers for the new commands (`native-bridge`, `xclip`,
394
+ `tts`, `showimg`, `rz`, `sz`, `xdg-open`). POSIX platforms get their
395
+ `bin/<name>` entries as symlinks rebuilt by `bin/init.js` on startup,
396
+ which Windows cannot use, so each command needs its own `.bat` there.
397
+
398
+ ### Changed
399
+
400
+ - Update the bundled jsmdcui to 0.18.1, which adds `switchBackend()` to
401
+ `src/cui/rpc.mjs` so an RPC caller can point at something other than the
402
+ default `rpc` endpoint -- specifically a unix socket, which is what
403
+ `native-bridge` dials. Also picks up 0.18.1's fix for decoding a
404
+ percent-encoded socket path, needed because `new URL("unix:" + sock)`
405
+ turns a leading NUL (a Linux abstract-namespace socket) into `%00`.
406
+ - `native-bridge`'s CLI now prints `_discover` one function per line instead
407
+ of as a single line of JSON, which makes the list greppable. The value
408
+ itself is untouched -- rpc.mjs dispatches every call against that object,
409
+ so it stays exactly what the host returned; only the CLI's own display of
410
+ it changed.
411
+
412
+ ## 0.2.3 - 2026-08-18
413
+
414
+ ### Added
415
+
416
+ - Add `buninu.exitAfterCmd` package.json setting (default `false`). When
417
+ `true`, the shell/PTY exits with `buninu.command`'s status instead of
418
+ falling back to an interactive shell once the command finishes; `false`
419
+ keeps the existing fall-back-to-shell behavior.
420
+ - Add `--export-config [output.json]`, which writes this entire `package.json`
421
+ to `buninu.json` in the current directory by default (like `--export`, the
422
+ output path can be overridden), instead of exporting the whole installation
423
+ like `--export` does. If the output path already exists, it now asks for
424
+ confirmation (`[y/N]`) before overwriting.
425
+
426
+ ## 0.2.2 - 2026-08-17
427
+
428
+ ### Added
429
+
430
+ - Add a "Commands inside the shell" section to README.md, split out of
431
+ Command-line information (which is only `bin/init.js`'s own flags, resolved
432
+ before Buninu starts). Lists everything in `apps/cmdlist` and moves the
433
+ `buninu-help`/`bunx` write-ups there, including a note that `bunx` can't
434
+ install anything on Android until
435
+ [oven-sh/bun#39084](https://github.com/oven-sh/bun/pull/39084) merges
436
+ upstream (Android's seccomp policy kills `bun i -g` with SIGSYS during bin
437
+ linking until then).
438
+
439
+ ## 0.2.1 - 2026-08-17
440
+
441
+ ### Added
442
+
443
+ - Add `bunx`, a POSIX and Windows multicall command that ensures a package is
444
+ installed via `bun i -g` and then runs its matching binary, forwarding the
445
+ remaining arguments. Reinstall timing is adapted from real bunx's own rules
446
+ (an explicit dist-tag like `@latest` always reinstalls; otherwise a cached
447
+ binary is reused until it's older than 24h, or stat fails, or bun's own
448
+ `install/global/package.json` shows a different pinned version than the one
449
+ requested — this script has one shared install location instead of bunx's
450
+ per-version cache, so this last check substitutes for that). The global bin
451
+ directory is resolved via `bun pm bin -g`, falling back to
452
+ `$BUN_INSTALL`/`$HOME/.bun` on the very first install before that project
453
+ exists (which `bun pm bin -g` requires).
454
+ - Runs the target through `bun <target>` instead of exec'ing it directly:
455
+ on Android the resolved binary typically sits under storage mounted
456
+ noexec, so a direct exec is refused even though the file is readable and
457
+ executable-bit set. Trade-off: a package whose bin is a real native
458
+ executable rather than a JS/bun script won't run this way.
459
+ - On Android (detected the same way as `bin/init.js`, via
460
+ `/system/bin/linker64`), installs with `--backend=copyfile` since
461
+ hardlinks/symlinks frequently fail across Android's storage, and sets
462
+ `$PREFIX=/data/data/com.termux/files/usr` for the target process (not the
463
+ install step) so CLIs that check for a Termux environment still find one,
464
+ unless `$PREFIX` is already set.
465
+
466
+ ## 0.2.0 - 2026-08-17
467
+
468
+ ### Added
469
+
470
+ - Add `--jsgotty`, `--jsmdcui`, and `--musl-la` as the first argument to
471
+ `bin/init.js` to spawn that app directly, forwarding every remaining
472
+ argument to it and exiting with its exit code. This bypasses the shell and
473
+ startup-command flow entirely, and lets `--jsgotty --help` (and the same for
474
+ the other two) show the app's own option reference instead of Buninu's.
475
+ - Add `buninu-help`, a POSIX and Windows multicall command that renders
476
+ README.md with jsmdcui's `--cat` mode and then displays `icon.png` with
477
+ jsgotty's `--viu`. The default startup greeting now points to it instead of
478
+ separately mentioning `glow`/`README.md`.
479
+
480
+ ### Security
481
+
482
+ - Bind jsgotty to `127.0.0.1` by default instead of `0.0.0.0` in
483
+ `scripts.start`. Previously the terminal server accepted connections from
484
+ any device able to reach the host on its network, relying only on the
485
+ random port and `--random-url` path segment for protection. Pass
486
+ `--address <value>` through to `bin/init.js` (forwarded arguments override
487
+ the flags baked into `scripts.start`) to opt back into listening on other
488
+ interfaces.
489
+
490
+ ## 0.1.9 - 2026-08-17
491
+
492
+ ### Fixed
493
+
494
+ - Correct `apps/musl-la/NOTICE`: it listed 11 third-party components
495
+ (llama.cpp, nghttp2/nghttp3, OpenSSL, libssh2, curl, zlib, libidn2,
496
+ libunistring, brotli, c-ares, libpsl) with no corresponding files anywhere
497
+ in the package — leftover from an unrelated bundle. The only files actually
498
+ shipped in that directory are `ld-musl-aarch64.so.1`, `libgcc_s.so.1`, and
499
+ `libstdc++.so.6`; the notice now covers only those, identifying the exact
500
+ build (GCC 14.2.0, packaged as Alpine Linux 3.22's `libgcc`/`libstdc++`
501
+ 14.2.0-r6, aarch64) with matching SHA-256 hashes and a link to Alpine's
502
+ build recipe pinned to the commit for that package revision, satisfying the
503
+ GCC Runtime Library Exception's corresponding-source requirement.
504
+
505
+ ## 0.1.8 - 2026-08-17
506
+
507
+ ### Changed
508
+
509
+ - Run an optional `libmain.so` from Android's native-library PATH at startup,
510
+ falling back to the normal Android welcome message when it is unavailable.
511
+
512
+ ## 0.1.7 - 2026-08-17
513
+
514
+ ### Added
515
+
516
+ - Add `buninu --export [output.tgz]` to create a gzip-compressed tar archive of
517
+ the current Buninu installation. The archive retains exactly one top-level
518
+ directory and defaults to `./buninu.tgz`. An existing output is backed up and
519
+ restored if archive creation or replacement fails.
520
+ - Add `apps/cmdlist` as the validated source of POSIX multicall commands.
521
+ Normal startup now recreates every listed command as a `shloader` symlink,
522
+ including after npm installs that omit package symlinks.
523
+ - Add the Buninu-only `# syntax: markdown` first-line marker for Markdown
524
+ highlighting in extensionless files such as `apps/cmdlist`.
525
+
526
+ ### Changed
527
+
528
+ - Update the default and Android startup greetings to point users to
529
+ `glow apps/cmdlist`.
530
+ - Update `musl-la` to prefer Android's native `libld-musl.so`, fall back to the
531
+ bundled loader, add the target ELF directory and existing `LD_LIBRARY_PATH`
532
+ to its library search path, and support `-e` for the environment-variable
533
+ launch mode.
534
+ - Document how to add POSIX multicall commands and their separate Windows
535
+ batch launchers.
536
+
537
+ ### Fixed
538
+
539
+ - Keep the POSIX startup wrapper and Android greeting command on one line so
540
+ process listings do not expose embedded LF (`Ctrl+J`) characters.
541
+
542
+ ## 0.1.5 - 2026-08-16
543
+
544
+ ### Fixed
545
+
546
+ - Enable jsmdcui's mdcui encoding for `--cdp-maze`, which selects the bundled
547
+ Markdown maze without passing a `.md` filename or a `--demo*` argument.
548
+
549
+ ### Changed
550
+
551
+ - Prefer PowerShell (`pwsh.exe`, then `powershell.exe`) as the default Windows
552
+ shell, falling back to `%COMSPEC%` or `cmd.exe` when PowerShell is unavailable.
553
+
554
+ ## 0.1.4 - 2026-08-16
555
+
556
+ ### Changed
557
+
558
+ - Enable jsmdcui's mdcui encoding when any launcher argument begins with
559
+ `--demo`, in addition to the existing `.md` file detection.
560
+ - Run jsmdcui's `src/index.js` entry point directly from the Unix and Windows
561
+ `jsmdcui`, `jmi`, and `glow` launchers instead of going through its `tui`
562
+ wrapper. This gives demos such as `--demo-img-change` the expected `Bun.main`
563
+ path so their bundled image assets can be resolved correctly.
564
+
565
+ ## 0.1.3 - 2026-08-16
566
+
567
+ ### Fixed
568
+
569
+ - Preserve a single canonical child-process path variable: `Path` on Windows
570
+ and `PATH` on other platforms. This ensures the Buninu `bin` directory is
571
+ available inside the shell started by jsgotty on Windows.
572
+ - Keep the jsgotty reconnect overlay clickable in WebGL mode by placing it
573
+ above the canvas and preventing Kitty image pointer handling from intercepting
574
+ its mouse and touch events.
575
+
576
+ ### Changed
577
+
578
+ - Enable jsmdcui's mdcui encoding from the Unix and Windows launchers only when
579
+ at least one command-line argument is a `.md` file. Launching without a
580
+ Markdown file now retains the editor-first behavior.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Dr. John (醫者小智)
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.