JerryI / wolfram-js-frontend

Dynamic Notebook Environment for Wolfram Language written in Javascript
https://jerryi.github.io/wljs-docs/
GNU General Public License v3.0
313 stars 15 forks source link

Issue with Desktop installation Mac (Intel) #284

Closed itsnilskerwer closed 3 weeks ago

itsnilskerwer commented 2 months ago

Hi,

(Disclaimer: I've never used Wolfram Language before so i might be simply missing something. )

After downloading the Wolfram engine, and the wljs notebook desktop app, it seems like everything has started fine. I am now stuck at this screen "Starting server" for quite some time...

Bildschirmfoto 2024-09-17 um 20 03 12

Mac os: Ventura 13.6.6 Wolfram engine version: 14.1 for Mac OS X x86 Wolfram js notebook version: 2.5.6

Expected: Re-direct to authenticate with wolfram cloud (i haven't done the signup with wolfram yet - just freshly downloaded the engine and the notebook).

Logs: Mica-Electron only works on Windows! Mica-Electron: Disabled { new_file: [ 'Cmd+N', 'Ctrl+N' ], new_quick_file: [ 'Cmd+Shift+N', 'Ctrl+Shift+N' ], overlay: [ 'Shift+Alt+Space', 'Shift+Alt+Space' ], open_file: [ 'Cmd+O', 'Ctrl+O' ], save: [ 'Cmd+S', 'Ctrl+S' ], find: [ 'Cmm+F', 'Ctrl+F' ], toggle_cell: [ 'Cmd+2', 'Alt+2' ], delete_cell: [ "Cmd+'", 'Ctrl+d' ], abort: [ 'Cmd+.', 'Alt+.' ], evaluate_init: [ 'Cmd+i', 'Alt+i' ], clear_outputs: [ 'Cmd+u', 'Alt+u' ], evaluate_all: [ 'Cmd+a', 'Alt+a' ] } Electron >> starting powersafe blocker [ 'JerryI/wolfram-js-frontend', 'main' ] [98546:0917/195548.486819:ERROR:trust_store_mac.cc(750)] Error parsing certificate: ERROR: Failed parsing extensions

Response { __original_resp: IncomingMessage { _readableState: ReadableState { objectMode: false, highWaterMark: 16384, buffer: BufferList { head: null, tail: null, length: 0 }, length: 0, pipes: [], flowing: true, ended: false, endEmitted: false, reading: false, constructed: true, sync: true, needReadable: false, emittedReadable: false, readableListening: false, resumeScheduled: true, errorEmitted: false, emitClose: true, autoDestroy: true, destroyed: false, errored: null, closed: false, closeEmitted: false, defaultEncoding: 'utf8', awaitDrainWriters: null, multiAwaitDrain: false, readingMore: false, dataEmitted: false, decoder: null, encoding: null,

},
_events: [Object: null prototype] {
  end: [Function: onend],
  finish: [Function: onfinish],
  error: [Function: onerror],
  close: [Function: onclose],
  data: [Function: onData]
},
_eventsCount: 5,
_maxListeners: undefined,
_shouldPush: false,
_data: [],
_resume: null,
_responseHead: {
  statusCode: 200,
  statusMessage: '',
  httpVersion: [Object],
  headers: [Object],
  rawHeaders: [Array],
  mimeType: 'text/plain'
},
[Symbol(kCapture)]: false

}, [Symbol(realm)]: { settingsObject: {} },

aborted: false,
rangeRequested: false,
timingAllowPassed: false,
requestIncludesCredentials: false,
type: 'default',
status: 200,
timingInfo: null,
cacheState: '',
statusText: '',
headersList: HeadersList {
  cookies: null,
  [Symbol(headers map)]: [Map],
  [Symbol(headers map sorted)]: null
},
urlList: [],
body: { stream: undefined, source: null, length: null }

}, [Symbol(headers)]: HeadersList { cookies: null, [Symbol(headers map)]: Map(23) { 'accept-ranges' => [Object], 'access-control-allow-origin' => [Object], 'cache-control' => [Object], 'content-encoding' => [Object], 'content-length' => [Object], 'content-security-policy' => [Object], 'content-type' => [Object], 'cross-origin-resource-policy' => [Object], 'date' => [Object], 'etag' => [Object], 'expires' => [Object], 'source-age' => [Object], 'vary' => [Object], 'via' => [Object], 'x-cache' => [Object], 'x-cache-hits' => [Object], 'x-content-type-options' => [Object], 'x-fastly-request-id' => [Object], 'x-frame-options' => [Object], 'x-github-request-id' => [Object], 'x-served-by' => [Object], 'x-timer' => [Object], 'x-xss-protection' => [Object] },

} } { "name": "wljs-notebook", "version": "2.5.6", "recommended-client-version": "2.4.9", "description": "Web-based notebook interface for Wolfram Language", "author": { "name": "Coffee liqueur", "email": "krikus.ms@gmail.com" }, "main": "Electron/main.js", "scripts": { "start": "wolframscript -f Scripts/run.wls", "build-terminal": "rollup --config Electron/rollup.config.mjs", "build-terminal-preload": "rollup --config Electron/rollup.config_preload.mjs", "el": "electron .", "dist": "electron-builder", "dist-win": "electron-builder --win --x64", "dist-linux": "electron-builder --linux --x64", "dist86": "electron-builder --x64", "dist-all": "electron-builder -mwl --x64", "build-css": "npx tailwindcss build Assets/Styles/Tailwind.css -o Assets/Styles/Optimized.css" }, "build": { "afterSign": "./Electron/sign.js", "appId": "wljs-notebook", "productName": "WLJS Notebook", "copyright": "WLJS © 2024 ${author}", "artifactName": "wljs-notebook-${version}-${arch}.${ext}", "dmg": { "title": "${productName} ${version}", "icon": "./Electron/build/512x512.icns", "sign": false }, "mac": { "icon": "./Electron/build/512x512.icns", "fileAssociations": [ { "ext": "wln", "name": "WLJS Notebook", "role": "Editor", "icon": "./Electron/build/file/512x512.icns" } ], "hardenedRuntime": true, "gatekeeperAssess": false, "extendInfo": { "NSMicrophoneUsageDescription": "Please give us access to your microphone" }, "entitlements": "./Electron/build/entitlements.mac.plist", "entitlementsInherit": "./Electron/build/entitlements.mac.plist", "protocols": [ { "name": "WLJS URL communication", "schemes": [ "wljs-url-message" ], "role" : "Editor" } ] }, "linux": { "target": [ "AppImage", "deb" ], "fileAssociations": [ { "mimeType": "application/wln", "ext": "wln", "name": "WLJS Notebook", "role": "Editor", "icon": "./Electron/build/file/512x512.png" } ], "icon": "./Electron/build/512x512.png", "protocols": [ { "name": "WLJS URL communication", "schemes": [ "wljs-url-message" ] } ] }, "win": { "target": "NSIS", "icon": "./Electron/build/512x512.ico", "fileAssociations": [ { "ext": "wln", "name": "WLJS Notebook", "role": "Editor", "icon": "./Electron/build/file/512x512.ico" } ], "protocols": [ { "name": "WLJS URL communication", "schemes": [ "wljs-url-message" ] } ] }, "files": [ "./Electron/main.js", "./Electron/preload_main.js", "./Electron/bundle/log.js", "./Electron/electron.css", "./Electron/log.html", "./Electron/log_padded.html", "./Electron/tailwind.css", "./Electron/tailwind.config.js", "./Electron/shortcuts.json", "./Electron/preload_log.js", "./Electron/build/*/", "./Electron/build//", "./shipped/" ], "asar": false }, "repository": { "type": "git", "url": "git+https://github.com/JerryI/wolfram-js-frontend.git" }, "license": "GPL", "bugs": { "url": "https://github.com/JerryI/wolfram-js-frontend/issues" }, "homepage": "https://github.com/JerryI/wolfram-js-frontend#readme", "devDependencies": { "@electron/notarize": "^2.3.0", "@rollup/plugin-commonjs": "^24.0.1", "electron": "^28.0.0", "electron-builder": "^24.6.3", "rollup": "^3.29.3", "rollup-plugin-combine": "^2.1.1", "serve-static": "^1.14.1", "systemjs": "^6.14.1" }, "dependencies": { "@electron/packager": "^18.3.1", "@rollup/plugin-json": "^6.0.0", "@rollup/plugin-node-resolve": "15.0.1", "@tailwindcss/aspect-ratio": "^0.4.2", "@tailwindcss/container-queries": "^0.1.1", "@tailwindcss/forms": "^0.5.7", "@tailwindcss/typography": "^0.5.10", "ansi-colors": "^4.1.3", "autoprefixer": "^10.4.19", "cssnano": "^6.1.2", "custom-electron-titlebar": "^4.2.8", "electron-context-menu": "^3.6.1", "electron-find": "^1.0.7", "electron-notarize": "^1.2.2", "electron-trackpad-utils": "^1.0.1", "fflate": "^0.8.0", "fkill": "^9.0.0", "fs-extra": "^11.1.1", "jsoncrush": "^1.1.8", "mica-electron": "^1.5.5", "native-prompt": "^2.1.4", "node-fetch": "^3.3.2", "node-stream-zip": "^1.15.0", "pako": "^2.1.0", "party-js": "^2.2.0", "postcss-cli": "^11.0.0", "postcss-nested": "^6.0.1", "random-words": "^2.0.0", "tailwindcss": "^3.4.1", "xterm": "^5.3.0", "xterm-addon-fit": "^0.8.0" } }

TRY Started! app

JerryI commented 2 months ago

Hi @itsnilskerwer, It puzzles me a bit, since I am also using OSX.

However, the activation can be done manually: Could you, please, try to run wolframscript directly?

open a terminal

wolframscript

it should print some message about license activation I believe. Then it can be activated on the same page, where you downloaded Wolfram Engine (after clicking download it should redirect to a corresponding page)

After that, you can run wolframscript again with -activate flag

wolframscript -activate

and enter you login/pass. After that you can kill a terminal and start WLJS Notebook normally.

itsnilskerwer commented 2 months ago

This worked. Thank you for your time.

JerryI commented 2 months ago

Great! I will keep it as an issue, until we fix it in the app

HaoxuanGuo commented 1 month ago

image

I got the same problem with Apple Silicon. Manually activate doesn't work for me.

JerryI commented 1 month ago

@HaoxuanGuo I believe it is still different, since it managed to reach "In".

Could you, please, try restart and click DEBUG button? Then after exiting an app it will generate a log file

HaoxuanGuo commented 1 month ago

System.log @JerryI Here's the log.

JerryI commented 1 month ago

System.log @JerryI Here's the log.

Thanks! If you just open your terminal and run wolframscript does it work properly?

PS: I tested on M1 (WEngine 14.1)

HaoxuanGuo commented 1 month ago

@JerryI It works sometimes. Sometimes it works, sometimes it crashes with license error.

HaoxuanGuo commented 1 month ago
image

@JerryI Sometimes, and sometimes...

JerryI commented 1 month ago

Hm. Then this is a problem within wolframscript. Please, check in Activity Monitor if you have other instances of Wolfram Kernel running. There is a license limitation to just 2 processes on the same machine (or account) from WR. If it still does not work:

a. reboot mac (might help)

b. 1. uninstall Wolfram Engine

  1. reinstall in using homebrew
JerryI commented 1 month ago

Today I had the same issue

Screenshot 2024-10-06 at 22 25 45

Wolfram Kernel crashed repeatedly. Then, when I opened a terminal and run wolframscript

Screenshot 2024-10-06 at 22 26 25

it thrown some info about activation and then WLJS App started to work again. I believe this is somewhat related to Wolfram Kernel issue :(

HaoxuanGuo commented 1 month ago

@JerryI I have tried both kill, reboot or reinstall. But none of them worked.

JerryI commented 1 month ago

Might work in October release

JerryI commented 3 weeks ago

Please reopen this as a new issue