[Pkg-javascript-devel] feasibility of packaging signal-desktop

Paolo Greppi paolo.greppi at libpf.com
Fri Mar 1 18:04:04 GMT 2019


I have given signal-desktop a first look.

In terms of dependencies, apart from electron (ehm...) this is what I found:

- to be updated:
   1. node-chalk: 2.3.0 -> 2.4.1
   2. node-espree: 3.5.1 -> 3.5.4
   3. node-filesize: 3.5.11 -> 3.6.1
   4. node-got: 7.1.0 -> 8.2.0
   5. node-he: 1.1.1 -> 1.2.0
   6. node-jquery: 3.3.1 from experimental
   7. node-os-locale: 2.0.0 -> 2.1.0
   8. node-tar: 4.4.6 -> 4.4.8
   9. node-tmp: 0.0.31 -> 0.0.33

- should be possible to build from sources we already have:
   1. @scottnonnenberg-signal/node-sqlcipher: - we can use node-sqlite3, see: https://bugs.debian.org/923512
   2. react-dom: same upstream source as node-react, see: https://bugs.debian.org/923537

- can be probably patched away:
   1. electron-updater: we want to disable "auto-update"
   2. testcheck: clojure script ...
   
- can be bundled:
   1. electron-editor-context-menu: 104 LOC and 7 dependents
   2. electron-is-dev: 6 LOC and 88 dependents
   3. emoji-datasource: contains JSON data and static assets only, 21 dependents
   4. emoji-datasource-apple: same upstream as emoji-datasource
   5. firstline: 28 LOC and 26 dependents
   6. read-last-lines: 81 LOC and 30 dependents

- ITP existing but could be bundled:
   1. blueimp-canvas-to-blob: https://bugs.debian.org/802243 (102 LOC and builds with uglifyjs)

- to bundle or not to bundle:
   1. linkify-it: 123 LOC and 148 dependents
   2. proxy-agent: 168 LOC and 147 dependents

- ITP existing:
   1. blueimp-load-image: https://bugs.debian.org/802244
   2. bunyan: https://bugs.debian.org/902062
   3. node-sass: https://bugs.debian.org/885555
   4. node-jsdoc: https://bugs.debian.org/774565

- need ITP:
   1. @sindresorhus/is: https://github.com/sindresorhus/is BTW, could this replace all node-is* modules we have ?
   2. blob-util: https://github.com/nolanlawson/blob-util this is built using run-s and run-p commands from https://github.com/mysticatea/npm-run-all and rollup
   3. classnames: 143 LOC but 14000+ dependents
   4. config: 1471 LOC and 2756 dependents
   5. emoji-js: 2630 LOC and 23 dependents
   6. emoji-panel: 1 dependent but built with webpack
   7. google-libphonenumber: uses ant for building (?), 286 dependents
   8. intl-tel-input: built with grunt, 27 dependents
   9. protobufjs: built wih gulp and 967 dependents
   10. react-contextmenu: built with webpack and 67 dependents
   11. spellchecker: nodejs native addon

There is a WIP repo here:
https://salsa.debian.org/js-team/signal-desktop
of course it does not build yet !

Paolo



More information about the Pkg-javascript-devel mailing list