pinokiod 3.40.0 → 3.42.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.
- package/kernel/api/browser/index.js +3 -1
- package/kernel/api/cloudflare/index.js +3 -3
- package/kernel/api/index.js +187 -51
- package/kernel/api/loading/index.js +15 -0
- package/kernel/api/process/index.js +7 -0
- package/kernel/api/shell/index.js +0 -2
- package/kernel/bin/browserless.js +22 -0
- package/kernel/bin/caddy.js +36 -4
- package/kernel/bin/index.js +4 -1
- package/kernel/bin/setup.js +38 -5
- package/kernel/connect/backend.js +110 -0
- package/kernel/connect/config.js +171 -0
- package/kernel/connect/index.js +18 -7
- package/kernel/connect/providers/huggingface/index.js +98 -0
- package/kernel/connect/providers/x/index.js +0 -1
- package/kernel/environment.js +91 -19
- package/kernel/git.js +46 -3
- package/kernel/index.js +119 -39
- package/kernel/peer.js +40 -5
- package/kernel/plugin.js +3 -2
- package/kernel/procs.js +27 -20
- package/kernel/prototype.js +30 -16
- package/kernel/router/common.js +1 -1
- package/kernel/router/connector.js +1 -3
- package/kernel/router/index.js +38 -4
- package/kernel/router/localhost_home_router.js +5 -1
- package/kernel/router/localhost_port_router.js +27 -1
- package/kernel/router/localhost_static_router.js +93 -0
- package/kernel/router/localhost_variable_router.js +14 -9
- package/kernel/router/peer_peer_router.js +3 -0
- package/kernel/router/peer_static_router.js +43 -0
- package/kernel/router/peer_variable_router.js +15 -14
- package/kernel/router/processor.js +26 -1
- package/kernel/router/rewriter.js +59 -0
- package/kernel/scripts/git/commit +11 -1
- package/kernel/shell.js +8 -3
- package/kernel/util.js +65 -6
- package/package.json +2 -1
- package/server/index.js +1048 -970
- package/server/public/common.js +382 -1
- package/server/public/fscreator.js +0 -1
- package/server/public/loading.js +17 -0
- package/server/public/notifyinput.js +0 -1
- package/server/public/opener.js +4 -2
- package/server/public/style.css +310 -11
- package/server/socket.js +7 -1
- package/server/views/app.ejs +1747 -351
- package/server/views/columns.ejs +338 -0
- package/server/views/connect/huggingface.ejs +353 -0
- package/server/views/connect/index.ejs +410 -0
- package/server/views/connect/x.ejs +43 -9
- package/server/views/connect.ejs +709 -49
- package/server/views/container.ejs +357 -0
- package/server/views/d.ejs +251 -62
- package/server/views/download.ejs +54 -10
- package/server/views/editor.ejs +11 -0
- package/server/views/explore.ejs +40 -15
- package/server/views/file_explorer.ejs +25 -246
- package/server/views/form.ejs +44 -1
- package/server/views/frame.ejs +39 -1
- package/server/views/github.ejs +48 -11
- package/server/views/help.ejs +48 -7
- package/server/views/index.ejs +119 -58
- package/server/views/index2.ejs +3 -4
- package/server/views/init/index.ejs +651 -197
- package/server/views/install.ejs +1 -1
- package/server/views/mini.ejs +47 -18
- package/server/views/net.ejs +199 -67
- package/server/views/network.ejs +229 -93
- package/server/views/network2.ejs +3 -4
- package/server/views/old_network.ejs +3 -3
- package/server/views/prototype/index.ejs +48 -11
- package/server/views/review.ejs +1005 -0
- package/server/views/rows.ejs +341 -0
- package/server/views/screenshots.ejs +1020 -0
- package/server/views/settings.ejs +160 -23
- package/server/views/setup.ejs +49 -7
- package/server/views/setup_home.ejs +43 -10
- package/server/views/shell.ejs +7 -1
- package/server/views/start.ejs +14 -9
- package/server/views/terminal.ejs +13 -2
- package/server/views/tools.ejs +1015 -0
package/kernel/util.js
CHANGED
|
@@ -7,6 +7,8 @@ const os = require('os')
|
|
|
7
7
|
const net = require('node:net')
|
|
8
8
|
const path = require('path')
|
|
9
9
|
const dotenv = require('dotenv')
|
|
10
|
+
const symlinkDir = require('symlink-dir')
|
|
11
|
+
const retry = require('async-retry');
|
|
10
12
|
const child_process = require('node:child_process');
|
|
11
13
|
const {auto: normalizeEOL} = require("eol");
|
|
12
14
|
const {EOL} = require("os");
|
|
@@ -33,12 +35,20 @@ if( __dirname.includes(".asar") ) {
|
|
|
33
35
|
}
|
|
34
36
|
const { getFolderSize, getFolderSizeBin, getFolderSizeWasm, } = g
|
|
35
37
|
const du = async (folderpath) => {
|
|
36
|
-
// console.time("disk size calc")
|
|
37
38
|
let totalSize = await getFolderSizeBin(folderpath)
|
|
38
|
-
// console.timeEnd("disk size calc")
|
|
39
39
|
return totalSize;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
+
const symlink = async(req, ondata, kernel) => {
|
|
43
|
+
/*
|
|
44
|
+
req := {
|
|
45
|
+
from: <the link path to create>,
|
|
46
|
+
to: <the path the link points to>
|
|
47
|
+
}
|
|
48
|
+
*/
|
|
49
|
+
const result = await symlinkDir(req.to, req.from)
|
|
50
|
+
|
|
51
|
+
}
|
|
42
52
|
const clipboard = async (req, ondata, kernel) => {
|
|
43
53
|
/*
|
|
44
54
|
req := {
|
|
@@ -106,6 +116,39 @@ const filepicker = async(req, ondata, kernel) => {
|
|
|
106
116
|
return { paths: response }
|
|
107
117
|
}
|
|
108
118
|
|
|
119
|
+
let file_type = async (cwd, file) => {
|
|
120
|
+
if (file.isDirectory()) {
|
|
121
|
+
return {
|
|
122
|
+
directory: true,
|
|
123
|
+
}
|
|
124
|
+
} else if (file.isFile()) {
|
|
125
|
+
return {
|
|
126
|
+
file: true
|
|
127
|
+
}
|
|
128
|
+
} else if (file.isSymbolicLink()) {
|
|
129
|
+
try {
|
|
130
|
+
const fullPath = path.join(cwd, file.name);
|
|
131
|
+
const targetStats = await fs.promises.stat(fullPath);
|
|
132
|
+
if (targetStats.isDirectory()) {
|
|
133
|
+
return {
|
|
134
|
+
directory: true,
|
|
135
|
+
link: true,
|
|
136
|
+
}
|
|
137
|
+
} else if (targetStats.isFile()) {
|
|
138
|
+
return {
|
|
139
|
+
file: true,
|
|
140
|
+
link: true,
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
} catch (err) {
|
|
144
|
+
console.error(`${file.name} → broken symlink (${err.message})`);
|
|
145
|
+
return {
|
|
146
|
+
link: true
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
109
152
|
const is_port_available = async (port) => {
|
|
110
153
|
return new Promise((resolve) => {
|
|
111
154
|
const server = http.createServer();
|
|
@@ -364,6 +407,12 @@ const log_path = (fullpath, kernel) => {
|
|
|
364
407
|
let current_log_path = path.resolve(log_root, "shell/cleaned/api", rel_path)
|
|
365
408
|
return current_log_path
|
|
366
409
|
}
|
|
410
|
+
const api_name = (fullpath, kernel) => {
|
|
411
|
+
let api_path = `${kernel.homedir}${path.sep}api`
|
|
412
|
+
let rel_path = path.relative(api_path, fullpath)
|
|
413
|
+
let api_name = rel_path.split(path.sep)[0]
|
|
414
|
+
return api_name
|
|
415
|
+
}
|
|
367
416
|
const api_path = (fullpath, kernel) => {
|
|
368
417
|
let api_path = `${kernel.homedir}${path.sep}api`
|
|
369
418
|
let rel_path = path.relative(api_path, fullpath)
|
|
@@ -669,11 +718,11 @@ const mergeLines = async (existingFilepath, filepath2) => {
|
|
|
669
718
|
|
|
670
719
|
let current = await fs.promises.readFile(existingFilepath, "utf8")
|
|
671
720
|
if (current.trim() !== merged.trim()) {
|
|
672
|
-
console.log("merged has changed")
|
|
721
|
+
//console.log("merged has changed")
|
|
673
722
|
// changed
|
|
674
723
|
await fs.promises.writeFile(existingFilepath, merged)
|
|
675
724
|
} else {
|
|
676
|
-
console.log(" no changes needed")
|
|
725
|
+
//console.log(" no changes needed")
|
|
677
726
|
}
|
|
678
727
|
} else {
|
|
679
728
|
// does not exist, just copy
|
|
@@ -758,6 +807,8 @@ const rewrite_localhost= (kernel, obj, source) => {
|
|
|
758
807
|
let protocol = source.protocol
|
|
759
808
|
let sourceHost = source.host
|
|
760
809
|
|
|
810
|
+
console.log("rewrite_localhost", { protocol, sourceHost, })
|
|
811
|
+
|
|
761
812
|
let sourceIp
|
|
762
813
|
let sourcePort
|
|
763
814
|
if (protocol === "http") {
|
|
@@ -769,6 +820,7 @@ const rewrite_localhost= (kernel, obj, source) => {
|
|
|
769
820
|
// find the
|
|
770
821
|
|
|
771
822
|
const fix = (url) => {
|
|
823
|
+
console.log("Fix url", url)
|
|
772
824
|
/*
|
|
773
825
|
url:
|
|
774
826
|
http://localhost:8188
|
|
@@ -783,9 +835,13 @@ const rewrite_localhost= (kernel, obj, source) => {
|
|
|
783
835
|
let port = u.port
|
|
784
836
|
let hostname = u.hostname
|
|
785
837
|
let host = u.host
|
|
838
|
+
console.log({ port, hostname, host })
|
|
786
839
|
if (protocol === "https") {
|
|
787
840
|
let proxyDomain
|
|
841
|
+
console.log("current_host", kernel.peer.host)
|
|
842
|
+
console.log("router_info", kernel.peer.info[kernel.peer.host].router_info)
|
|
788
843
|
for(let item of kernel.peer.info[kernel.peer.host].router_info) {
|
|
844
|
+
console.log({ internal_port: item.internal_port, port })
|
|
789
845
|
if (String(item.internal_port) === String(port)) {
|
|
790
846
|
if (item.external_router && item.external_router.length > 0) {
|
|
791
847
|
console.log("Found", { item, port })
|
|
@@ -809,7 +865,10 @@ const rewrite_localhost= (kernel, obj, source) => {
|
|
|
809
865
|
console.log("Fixed", u.toString())
|
|
810
866
|
return u.toString();
|
|
811
867
|
}
|
|
812
|
-
} catch {
|
|
868
|
+
} catch (e) {
|
|
869
|
+
console.log("ERROR", e)
|
|
870
|
+
|
|
871
|
+
}
|
|
813
872
|
return url;
|
|
814
873
|
};
|
|
815
874
|
|
|
@@ -835,5 +894,5 @@ const rewrite_localhost= (kernel, obj, source) => {
|
|
|
835
894
|
|
|
836
895
|
|
|
837
896
|
module.exports = {
|
|
838
|
-
parse_env, log_path, api_path, update_env, parse_env_detail, openfs, port_running, du, is_port_available, find_python, find_venv, fill_object, run, openURL, u2p, p2u, log, diffLinesWithContext, classifyChange, push, filepicker, exists, clipboard, mergeLines, ignore_subrepos, rewrite_localhost
|
|
897
|
+
parse_env, log_path, api_path, api_name, update_env, parse_env_detail, openfs, port_running, du, is_port_available, find_python, find_venv, fill_object, run, openURL, u2p, p2u, log, diffLinesWithContext, classifyChange, push, filepicker, exists, clipboard, mergeLines, ignore_subrepos, rewrite_localhost, symlink, file_type
|
|
839
898
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pinokiod",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.42.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -67,6 +67,7 @@
|
|
|
67
67
|
"rimraf": "^5.0.0",
|
|
68
68
|
"sanitize-filename": "^1.6.3",
|
|
69
69
|
"semver": "^7.5.4",
|
|
70
|
+
"serve-index": "^1.9.1",
|
|
70
71
|
"shell-path": "^2.0.0",
|
|
71
72
|
"sudo-prompt-programfiles-x86": "^9.2.10",
|
|
72
73
|
"symlink-dir": "^5.2.1",
|