ssbc / scuttle-shell

A system tray app for running Secure Scuttlebutt and providing sbot features to your local system
54 stars 10 forks source link

[ERROR] Registry key: ... doesn't exist #15

Closed cryptix closed 5 years ago

cryptix commented 5 years ago

Just got this trying to install on a fresh installed system.

> scuttle-shell@0.1.0 install C:\Users\ssb\Desktop\patchbay\node_modules\scuttle-shell
> node scripts/install.js

{"HKCU\\Software\\Mozilla\\NativeMessagingHosts\\scuttleshell":
[ERROR] Registry key: HKCU\Software\Mozilla\NativeMessagingHosts\scuttleshell doesn't exist

Try: npm run setup-win%

Not really versed in windows registration stuff but a first thought: do the parent keys have to exist?

cryptix commented 5 years ago

site-note on electron packaging: https://github.com/ironSource/node-regedit#a-note-about-electron

cryptix commented 5 years ago

https://ci.appveyor.com/project/cryptix/scuttle-shell/builds/19661711#L64

mixmix commented 5 years ago

Can confirm I saw this as well

cryptix commented 5 years ago

All this registry stuff is only needed for the host_app.js, which is used by WebExtensions to create sbot instances.

I’m torn on having it in this module as well. Having it’s own repo would be cleaner and allow us to focus on the needed features and tests. A dedicated module would then import the shell and use it, like any other app would.

Edit: I wrote a little more about the host_app here: http://viewer.scuttlebot.io/%25ej5uaph%2BvBGQmX%2B9lFywOLzyZMbpBvZ5khm26ERdZbo%3D.sha256

mixmix commented 5 years ago

Yah i feel the same way. Seperating this logic in some way feels right. It could be done now (or isolated in a function which can option alt be called) or done later if its not causing trouble (seems to be ok atm)

On Fri, 9 Nov 2018, 02:42 Henry, notifications@github.com wrote:

All this registry stuff is only needed for the host_app.js, which is used by WebExtensions to create sbot instances.

I’m torn on having it in this module as well. Having it’s own repo would be cleaner and allow us to focus on the needed features and tests. A dedicated module would then import the shell and use it, like any other app would.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/ssbc/scuttle-shell/issues/15#issuecomment-436997628, or mute the thread https://github.com/notifications/unsubscribe-auth/ACitnsT-HqEICT1hb37zIXzokxbix8lDks5utDTTgaJpZM4XwlQy .

soapdog commented 5 years ago

@cryptix and @mixmix there is a pragmatic reason why I haven't separated them. Conceptually, it makes sense to separate them but if we stop to think about the installation workflow for a user, a Web Extension can't touch the registry. So they would need to install Scuttle Shell, then run a second native installer to do the registry stuff. Which would make installing Web Extensions a three step process:

Which is deeply undesirable in my opinion, it would be clean up that doesn't really benefit the user. Also, the Native Messaging stuff, provides a known location to find information if scuttle shell is installed or not. Any app, build with any language, can find the registry entry or the JSON file and thus be able to start/stop and talk to scuttle shell. If we remove that, then only NodeJS will be able to do it unless we install a secondary app to install and setup the host app.

I know it seems it doesn't belong there but in fact, life becomes easier if it is there.

soapdog commented 5 years ago

@cryptix I've posted two lenghty responses on scuttlebutt at:

https://viewer.scuttlebot.io/%25A5lgECQwby6SKM0MgoVUJV9ebUHxhglEMwESAuo09HM%3D.sha256

https://viewer.scuttlebot.io/%25tF0rmO%2BId%2Bt99vTqwH%2BMpUp%2F94Q7wXoUHf6U8LUydLs%3D.sha256

I don't agree with this path forward but I don't think I should be a blocker here. I will work on this entanglement today and in couple hours I will clean up that code.

stale[bot] commented 5 years ago

Is this still relevant? If so, what is blocking it? Is there anything you can do to help move it forward?

soapdog commented 5 years ago

I am closing this issue because the registry and native messaging code is moving out of this module.