Discussion:
[whispersystems] Desktop (Web) Client
Steffen Märcker
2015-12-04 09:30:14 UTC
Permalink
Hi,

is the upcoming web client compatible only with Chrome or other Chromium
based Browsers as well? I do have Opera and Vivaldi in mind here. If the
answer is no, I'd like to know what are the necessary steps to get there?

Best,
Steffen
Jens B.
2015-12-04 09:43:58 UTC
Permalink
Hi,

right now this is the case.
However there are other (attempts) at desktop clients made by the community.

Regarding why it is Chrome only, I believe this is due to some benefit of
chrome that it can run native code. Or at least can perform the required
crypto in a fast manner.

Cheers
Post by Steffen Märcker
Hi,
is the upcoming web client compatible only with Chrome or other Chromium
based Browsers as well? I do have Opera and Vivaldi in mind here. If the
answer is no, I'd like to know what are the necessary steps to get there?
Best,
Steffen
Steffen Märcker
2015-12-04 10:13:30 UTC
Permalink
Does the client actually involve native code? I believed it is build
entirely on top of web technologies such as HTML, JS and CSS. (... and of
course the Chromium extension API)
Post by Jens B.
Hi,
right now this is the case.
However there are other (attempts) at desktop clients made by the community.
Regarding why it is Chrome only, I believe this is due to some benefit of
chrome that it can run native code. Or at least can perform the required
crypto in a fast manner.
Cheers
Post by Steffen Märcker
Hi,
is the upcoming web client compatible only with Chrome or other Chromium
based Browsers as well? I do have Opera and Vivaldi in mind here. If the
answer is no, I'd like to know what are the necessary steps to get there?
Best,
Steffen
Jani Monoses
2015-12-04 13:03:09 UTC
Permalink
I expect with Mozilla's WebExtensions maturing next year the code will run
on Firefox with minor modifications.

I am no web developer and I am not sure how much work it would be to make
this work as an extension (Signal is a Chrome app not a Chrome extension)
but with a patch like below I could at least load the code in a recent
Firefox.

Since extensions to not have the 'Launch' action as apps do, the trigger
may have to be a browser action or similar, but the code is made with
standard web technologies so it should not be too hard.

diff --git manifest.json manifest.json
index a891eac..cd6c3a5 100644
--- manifest.json
+++ manifest.json
@@ -22,9 +22,13 @@
"128": "images/icon_128.png"
},

- "app": {
"background": {
"page": "background.html"
- }
+ },
+
+ "applications": {
+ "gecko": {
+ "id" : "***@ows.org"
+ }
}
}
It used to rely on native code via NaCl, but this was removed many months
ago. Essentially, at this point, it uses chromium for its build target
because they had to pick something and there was already momentum towards
chromium.
On December 4, 2015 6:13:30 PM GMT+08:00, "Steffen MÀrcker" <
Post by Steffen Märcker
Does the client actually involve native code? I believed it is build
entirely on top of web technologies such as HTML, JS and CSS. (... and of
course the Chromium extension API)
Post by Jens B.
Hi,
right now this is the case.
However there are other (attempts) at desktop clients made by the community.
Regarding why it is Chrome only, I believe this is due to some
benefit of
Post by Jens B.
chrome that it can run native code. Or at least can perform the
required
Post by Jens B.
crypto in a fast manner.
Cheers
Post by Steffen Märcker
Hi,
is the upcoming web client compatible only with Chrome or other
Chromium
Post by Jens B.
Post by Steffen Märcker
based Browsers as well? I do have Opera and Vivaldi in mind here. If
the
Post by Jens B.
Post by Steffen Märcker
answer is no, I'd like to know what are the necessary steps to get there?
Best,
Steffen
Henner Wöhler
2015-12-04 13:14:48 UTC
Permalink
I would suggest separating the idea of Desktop- and Web-Client.
The Desktop-Client can stay a Chromium App interally (i would suggest using Electron as a framework in the future though).
The Web-Client should just run in any browser so that people can run Signal from anywhere where they don’t have the right to install apps.

Cheers,
Henner
PS: Sorry, if this idea was discussed before and dismissed. I’m new here. Hi everyone.
I expect with Mozilla's WebExtensions maturing next year the code will run on Firefox with minor modifications.
I am no web developer and I am not sure how much work it would be to make this work as an extension (Signal is a Chrome app not a Chrome extension) but with a patch like below I could at least load the code in a recent Firefox.
Since extensions to not have the 'Launch' action as apps do, the trigger may have to be a browser action or similar, but the code is made with standard web technologies so it should not be too hard.
diff --git manifest.json manifest.json
index a891eac..cd6c3a5 100644
--- manifest.json
+++ manifest.json
@@ -22,9 +22,13 @@
"128": "images/icon_128.png"
},
- "app": {
"background": {
"page": "background.html"
- }
+ },
+
+ "applications": {
+ "gecko": {
+ }
}
}
It used to rely on native code via NaCl, but this was removed many months ago. Essentially, at this point, it uses chromium for its build target because they had to pick something and there was already momentum towards chromium.
Post by Steffen Märcker
Does the client actually involve native code? I believed it is build
entirely on top of web technologies such as HTML, JS and CSS. (... and of
course the Chromium extension API)
Post by Jens B.
Hi,
right now this is the case.
However there are other (attempts) at desktop clients made by the community.
Regarding why it is Chrome only, I believe this is due to some
benefit of
Post by Jens B.
chrome that it can run native code. Or at least can perform the
required
Post by Jens B.
crypto in a fast manner.
Cheers
Post by Steffen Märcker
Hi,
is the upcoming web client compatible only with Chrome or other
Chromium
Post by Jens B.
Post by Steffen Märcker
based Browsers as well? I do have Opera and Vivaldi in mind here. If
the
Post by Jens B.
Post by Steffen Märcker
answer is no, I'd like to know what are the necessary steps to get there?
Best,
Steffen
Jani Monoses
2015-12-04 13:24:53 UTC
Permalink
Post by Henner Wöhler
PS: Sorry, if this idea was discussed before and dismissed. I’m new here. Hi everyone.
I don't think it was discussed or dismissed. It's not ideas and
suggestions that are lacking but manpower to execute them. OWS are a small
team. Anyone can go ahead and improve the existing Signal clients or write
new ones.
Greg
2015-12-08 08:29:00 UTC
Permalink
I second the suggestion/request for Electron.

Electron does not require any sort of “wait list” or interaction with Google services, and it acts as a stand-alone instant cross-platform app.

I believe Slack is also using Electron for its Desktop client.

- Greg
Post by Henner Wöhler
I would suggest separating the idea of Desktop- and Web-Client.
The Desktop-Client can stay a Chromium App interally (i would suggest using Electron as a framework in the future though).
The Web-Client should just run in any browser so that people can run Signal from anywhere where they don’t have the right to install apps.
Cheers,
Henner
PS: Sorry, if this idea was discussed before and dismissed. I’m new here. Hi everyone.
I expect with Mozilla's WebExtensions maturing next year the code will run on Firefox with minor modifications.
I am no web developer and I am not sure how much work it would be to make this work as an extension (Signal is a Chrome app not a Chrome extension) but with a patch like below I could at least load the code in a recent Firefox.
Since extensions to not have the 'Launch' action as apps do, the trigger may have to be a browser action or similar, but the code is made with standard web technologies so it should not be too hard.
diff --git manifest.json manifest.json
index a891eac..cd6c3a5 100644
--- manifest.json
+++ manifest.json
@@ -22,9 +22,13 @@
"128": "images/icon_128.png"
},
- "app": {
"background": {
"page": "background.html"
- }
+ },
+
+ "applications": {
+ "gecko": {
+ }
}
}
It used to rely on native code via NaCl, but this was removed many months ago. Essentially, at this point, it uses chromium for its build target because they had to pick something and there was already momentum towards chromium.
Post by Steffen Märcker
Does the client actually involve native code? I believed it is build
entirely on top of web technologies such as HTML, JS and CSS. (... and of
course the Chromium extension API)
Post by Jens B.
Hi,
right now this is the case.
However there are other (attempts) at desktop clients made by the community.
Regarding why it is Chrome only, I believe this is due to some
benefit of
Post by Jens B.
chrome that it can run native code. Or at least can perform the
required
Post by Jens B.
crypto in a fast manner.
Cheers
Post by Steffen Märcker
Hi,
is the upcoming web client compatible only with Chrome or other
Chromium
Post by Jens B.
Post by Steffen Märcker
based Browsers as well? I do have Opera and Vivaldi in mind here. If
the
Post by Jens B.
Post by Steffen Märcker
answer is no, I'd like to know what are the necessary steps to get there?
Best,
Steffen
Jon Spriggs
2015-12-08 08:46:07 UTC
Permalink
Or, perhaps nw.js which is an alternative to electron.

This article from August shows some differences:
http://tangiblejs.com/posts/nw-js-electron-compared

The main plus to me is that nw.js builds for Linux (which I use), whereas
Electron doesn't (at August) have the capability. It also seems to suggest
that you can run a chrome extension in nw.js? Would this not make
converting the signal extension into a cross-platform binary a lot easier?

All the best,

Jon

--
Jon "The Nice Guy" Spriggs
Post by Greg
I second the suggestion/request for Electron.
Electron does not require any sort of “wait list” or interaction with
Google services, and it acts as a stand-alone instant cross-platform app.
I believe Slack is also using Electron for its Desktop client.
- Greg
I would suggest separating the idea of Desktop- and Web-Client.
The Desktop-Client can stay a Chromium App interally (i would suggest
using Electron as a framework in the future though).
The Web-Client should just run in any browser so that people can run
Signal from anywhere where they don’t have the right to install apps.
Cheers,
Henner
PS: Sorry, if this idea was discussed before and dismissed. I’m new here. Hi everyone.
I expect with Mozilla's WebExtensions maturing next year the code will run
on Firefox with minor modifications.
I am no web developer and I am not sure how much work it would be to make
this work as an extension (Signal is a Chrome app not a Chrome extension)
but with a patch like below I could at least load the code in a recent
Firefox.
Since extensions to not have the 'Launch' action as apps do, the trigger
may have to be a browser action or similar, but the code is made with
standard web technologies so it should not be too hard.
diff --git manifest.json manifest.json
index a891eac..cd6c3a5 100644
--- manifest.json
+++ manifest.json
@@ -22,9 +22,13 @@
"128": "images/icon_128.png"
},
- "app": {
"background": {
"page": "background.html"
- }
+ },
+
+ "applications": {
+ "gecko": {
+ }
}
}
On Fri, Dec 4, 2015 at 2:40 PM, Matt Corallo <
It used to rely on native code via NaCl, but this was removed many months
ago. Essentially, at this point, it uses chromium for its build target
because they had to pick something and there was already momentum towards
chromium.
On December 4, 2015 6:13:30 PM GMT+08:00, "Steffen MÀrcker" <
Post by Steffen Märcker
Does the client actually involve native code? I believed it is build
entirely on top of web technologies such as HTML, JS and CSS. (... and of
course the Chromium extension API)
Post by Jens B.
Hi,
right now this is the case.
However there are other (attempts) at desktop clients made by the community.
Regarding why it is Chrome only, I believe this is due to some
benefit of
Post by Jens B.
chrome that it can run native code. Or at least can perform the
required
Post by Jens B.
crypto in a fast manner.
Cheers
Post by Steffen Märcker
Hi,
is the upcoming web client compatible only with Chrome or other
Chromium
Post by Jens B.
Post by Steffen Märcker
based Browsers as well? I do have Opera and Vivaldi in mind here. If
the
Post by Jens B.
Post by Steffen Märcker
answer is no, I'd like to know what are the necessary steps to get there?
Best,
Steffen
Steffen Märcker
2015-12-14 09:25:16 UTC
Permalink
Did anyone else tested Vivaldi yet? It seems to support Chrome Apps. But=
=

at least on my system Signal won't start up.
I expect with Mozilla's WebExtensions maturing next year the code will=
=
run
on Firefox with minor modifications.
I am no web developer and I am not sure how much work it would be to m=
ake
this work as an extension (Signal is a Chrome app not a Chrome extensi=
on)
but with a patch like below I could at least load the code in a recent=
Firefox.
Since extensions to not have the 'Launch' action as apps do, the trigg=
er
may have to be a browser action or similar, but the code is made with
standard web technologies so it should not be too hard.
diff --git manifest.json manifest.json
index a891eac..cd6c3a5 100644
--- manifest.json
+++ manifest.json
@@ -22,9 +22,13 @@
"128": "images/icon_128.png"
},
- "app": {
"background": {
"page": "background.html"
- }
+ },
+
+ "applications": {
+ "gecko": {
+ }
}
}
On Fri, Dec 4, 2015 at 2:40 PM, Matt Corallo =
It used to rely on native code via NaCl, but this was removed many =
months
ago. Essentially, at this point, it uses chromium for its build targe=
t
because they had to pick something and there was already momentum =
towards
chromium.
On December 4, 2015 6:13:30 PM GMT+08:00, "Steffen M=E4rcker" <
Does the client actually involve native code? I believed it is build=
entirely on top of web technologies such as HTML, JS and CSS. (... a=
nd
of
course the Chromium extension API)
Post by Jens B.
Hi,
right now this is the case.
However there are other (attempts) at desktop clients made by the community.
Regarding why it is Chrome only, I believe this is due to some
benefit of
Post by Jens B.
chrome that it can run native code. Or at least can perform the
required
Post by Jens B.
crypto in a fast manner.
Cheers
Post by Steffen Märcker
Hi,
is the upcoming web client compatible only with Chrome or other
Chromium
Post by Jens B.
Post by Steffen Märcker
based Browsers as well? I do have Opera and Vivaldi in mind here.=
If
the
Post by Jens B.
Post by Steffen Märcker
answer is no, I'd like to know what are the necessary steps to ge=
t
Post by Jens B.
Post by Steffen Märcker
there?
Best,
Steffen
Loading...