You are reading content from Scuttlebutt
@cryptix %YYnto5RlbzXkRq9KfwQtjYwfKXoF6YcbK4S3XdtLe3g=.sha256

Is anyone using patchbay with node12 already? it's a bit of a hassle on a mac at least.

after patching the spellchecker out of it, it now fails over a dependency for dat, namely utp-native. Weirdly enough it's even listed as OPTIONAL.. i guess I still don't get how npm i works...

@Christian Bundy %73ZOsRk5USJo+StGFJnLtMBlgUKFS4ONjS7FWcXPs5Q=.sha256

@cryptix

I'm on Node 12, I'll test for you now.

@Christian Bundy %pO5iFw6puMT6OAl8fIHU2M2MWW4IWFt+TJLBULXQQrY=.sha256

@cryptix

Reproduced the UTP-Native build problem. I think what's happening is that optionalDependency allows the install to fail but since UTP-Native is running the prebuild-install || node-gyp rebuild as a postinstall that isn't allowed to fail.

To be honest the whole "install and rebuild" pattern is a major pain point because it means that the stack has to build for both:

  • your native Node version
  • your chosen Electron version

We can bypass the Node step and just build straight for Electron with:

./node_modules/.bin/electron-builder install-app-deps

(If you don't already have electron-builder installed, try npm install --only=dev.)

@Christian Bundy %nsDsdJTQgEA1TRNtg2zRw6Ps5Pt1IUedG1mRoyNzWag=.sha256

@cryptix

If you want to get fancy, this is the closest to The Right Way I've seen Electron apps built (and it's how I package them for Arch):

# Remove postinstall script that rebuilds for Electron
# Instead we just build correctly the first time
sed -i '/postinstall/d' package.json

# Native Electron's version from your package manager).
export npm_config_target=$(electron4 -v)
# The architecture of Electron, can be ia32 or x64.
export npm_config_arch=x64
export npm_config_target_arch=x64
# Download headers for Electron.
export npm_config_disturl=https://atom.io/download/electron
# Tell node-pre-gyp that we are building for Electron.
export npm_config_runtime=electron
# Install all dependencies, and store cache to ~/.electron-gyp.
HOME=~/.electron-gyp npm install --only=production
@cryptix %ef3R/+t20QUmgOn2L3rViH5I4qQjsn64Or4ZFF69uKw=.sha256

was too tired to try this yesterday (I just wanted to dig up some threads..!!!) but I will try this today.

To be honest the whole “install and rebuild” pattern is a major pain point because it means that the stack has to build for both:

that's a very good insight overall, thanks!

@Christian Bundy %1aQoE0uSfbw8ZDlssZiFgIWQNcglbR8Os3yu1uX1ADU=.sha256

@cryptix

For sure, feel free to ping if you ever have Electron build woes. I've stared into the Electron abyss and can confirm that the abyss stares back.

User has not chosen to be hosted publicly
@Christian Bundy %5yF5cIjLJlj9KQytrO9tRbTJsg+MPvW9bEyaVSXEfwo=.sha256

@SoapDog (SPX)

I know this is a pain, but if they're SSB projects could you name them? Node 12 has been out since April and it's an LTS release, so I think it's important for us to support.

(FWIW, I've been setting up my Travis config so that it tests on the latest release (13) and the latest LTS (12) and haven't had any problems.)

User has not chosen to be hosted publicly
User has not chosen to be hosted publicly
@Christian Bundy %OY7onoHGQwtTW3k+bifWcZhWw4gudmH9f76Eh4306RA=.sha256

@SoapDog (SPX)

I use both of those in Oasis without any problems. My guess is that SSB-Server's shrinkwrap is boning you by forcing you into old versions of everything, but maybe it's something else. Shrinkwraps are the bane of my existence.

Join Scuttlebutt now