Skip to content

Troubleshooting SolidOS

Michiel de Jong edited this page Nov 27, 2024 · 2 revisions

Troubleshooting SolidOS

Cannot read property of undefined (reading 'includes') upon login on NSS

  • if you see the following alert error message

Error message

  • upon upgrade to the 1.11.5 authentication library (solid-auth-client-browser) there was a breaking change that did not work on NSS.
  • to fix you need to add MANUALLY a config to your NSS setup.
  • go to your NSS installation folder and navigate to the following file '.db/oidp/op/provider.json'
  • add to the file the following line '"scopes_supported": ["openid", "offline_access"],'
  • restart the server and it should work now.

How to run SolidOs on Apple M1 chip 16.09.21

  • currently SolidOS needs node 12.19.1 and node 13.14.0 and node 12.7.0 but M1 chip cannot install node < v14

Solution:

  • on MacOs terminal one can switch the architecture used to build code, you need to switch to -x86_64 with the command: $env /usr/bin/arch -x86_64 /bin/zsh —-login
  • to check if it worked check with arch command in the terminal, the result should show i386
  • afterward you can proceed to install other node versions: nvm install 12.19.1 and nvm install 13.14.0 and nvm install 12.7.0
  • it can be that mashlib does not build because of errors like ERROR in ./src/styles/index.scss (./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/styles/index.scss) Module Error (from ./node_modules/sass-loader/dist/cjs.js): Node Sass does not yet support your current environment: OS X Unsupported architecture (arm64) with Node.js 12.x For more information on which environments are supported please see: https://github.com/sass/node-sass/releases/tag/v6.0.1 In this case, you need to run node itself in the right architecture with the command node -p process.arch -> has to display x64. Then you can go ahead and build mashlib again npm run build

IN a NUTSHELL:

$env /usr/bin/arch -x86_64 /bin/zsh —-login

to check if it worked:

» arch

MUST show:

i386

and then maybe you also need:

» node

Welcome to Node.js v15.14.0.

Type .help for more information.

> process.arch

MUST show:

'x64'

References:

Unauthorised error when you click LogIn

If you get this error perhaps you have previously had a solidos running locally and in that case, you need to delete your cache from localhost.

When you go to localhost:8443 in your browser you see .acl errors

In this case, it could be that something didn't build properly. If you are running npm run watch look closely at your errors. Otherwise, you can also go through all the repos solid-ui, solid-panes, mashlib installing and building verifying that it is successful.

Problems with running the modules

If you for some reason aren't able to get your setup working, you should double-check that Lerna actually manages to bootstrap the repositories. One way of doing this is to check node_modules in one of them and verify that the dependency that should be bootstrapped is actually a symlink to the corresponding repository (e.g. check that workspaces/mashlib/node_modules/solid-ui links to workspaces/solid-ui ). If it doesn't, it is usually because of different version (e.g. mashlib expects a newer version of solid-ui than the one you have locally). Make sure that these are aligned, then bootstrap again by running npm start or do it manually with npx lerna bootstrap (must be run in the root of this repo).

ValueError: invalid mode: 'rU' while trying to load binding.gyp

If you get this error on MacOS with Python v3.11 during npm run setup, install Python 3.10 (for instance using pyenv) and try again.

Troubleshooting SolidOS dependencies

When building mashlib you receive a node sass binding type error.

There were breaking changes to sass on node 13+. Currently you need to be on node version 12 in order to build mashlib, otherwise you are very likely to see these errors. Check also the above mentioned How to run SolidOs on Apple M1 chip 16.09.21.