Electron

Вопросы написания собственного программного кода (на любых языках)

Модератор: Olej

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Electron

Непрочитанное сообщение Olej » 27 июн 2019, 13:28

Заинтересовала меня разработка десктоп приложений с помощью Electron.
Заинтересовала только потому (пока!?), что много разговоров ... по разным официальным конторам ... только намеревающихся что-то такое для себя разрабатывать "фирменное".

Вообще то, по самому первому впечатлению, что в связи с переходом многих контор и в разных странах на Linux (в связи с законодательными требованиями, или в надежде на дешевизну и халявность ... по-разному), Electron - это то, что видится жильцам из выньды как самый простой способ создания приложений под Linux.

Но там есть и определённый резон и интерес ... заключающийся, конечно, в кросс-платформенности: например, делать в такой технологии "морду", тонкую оболочку для обстоятельного сетевого приложения, писанного уже в более традиционных и профессиональных технологиях C/C++, Python, Go ...

Нужно посмотреть!

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 13:32

Страница русскоязычная Electron, с очень обстоятельными описаниями, здесь: https://electronjs.org/
Создавайте кросс-платформенные приложения при помощи JavaScript, HTML и CSS
Если Вы можете сделать сайт, то Вы сможете сделать настольное приложение. Electron это фреймворк для создания нативных приложений с веб-технологиями, такими как: JavaScript, HTML и CSS.
Кросс-платформенный
Совместимые с Mac, Windows и Linux приложения Electron создаются и запускаются на трех платформах.
Там же - обстоятельнейшая русскоязычная документация (по крайней мере на описательном уровне: бла-бла-бла ;-) ) и страница относительно установки и настройки перед использованием: Среда разработчика.
В целом, Electron поддерживает Ubuntu 12.04, Fedora 21, Debian 8 и более поздние версии.
Мы предлагаем вам выбрать один из двух популярных редакторов: Atom и Microsoft's Visual Studio Code. Оба идеальны для JavaScript.

Если вы являетесь одним из многих разработчиков с "повышенными требованиями", то знайте, что в наши дни практически все редакторы кода и IDE поддерживают JavaScript.

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 14:32

Olej писал(а): Там же - обстоятельнейшая русскоязычная документация (по крайней мере на описательном уровне: бла-бла-бла ;-) ) и страница относительно установки и настройки перед использованием: Среда разработчика.
В целом, Electron поддерживает Ubuntu 12.04, Fedora 21, Debian 8 и более поздние версии.

Код: Выделить всё

olej@ACER:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 10 (buster)
Release:	10
Codename:	buster

Код: Выделить всё

olej@ACER:~$ node -v
bash: node: команда не найдена

olej@ACER:~$ npm -v
bash: npm: команда не найдена

Код: Выделить всё

olej@ACER:~$ aptitude search node | grep ' node' | wc -l
1474

Код: Выделить всё

olej@ACER:~$ aptitude search npm
p   node-is-npm                                                                   - Checks if your code is running as an npm script                                        
p   node-npm-bundled                                                              - Parses info on bundled dependencies                                                    
p   node-npm-package-arg                                                          - Parse the things that can be arguments to npm install                                  
p   node-npm-run-path                                                             - Get your PATH prepended with locally installed binaries                                
p   node-npmlog                                                                   - Logger with custom levels and colored output for Node.js                               
p   node-npmrc                                                                    - Switch between different .npmrc files                                                  
p   node-validate-npm-package-license                                             - Tells if a string is a valid npm package license string                                
p   node-validate-npm-package-name                                                - Checks if a string is a valid npm package name                                         
p   npm                                                                           - package manager for Node.js                                                            
p   npm2deb                                                                       - tool to help debianize Node.js modules                                                 
Официальное руководство по установке Node.js на Linux:
Installing Node.js via package manager
Android
Arch Linux
Debian and Ubuntu based Linux distributions, Enterprise Linux/Fedora and Snap packages
FreeBSD
Gentoo
IBM i
NetBSD
nvm
OpenBSD
openSUSE and SLE
macOS
SmartOS and illumos
Solus
Void Linux
Windows
И GitHub от разработчика Node.js для Debian-based дистрибутивов:
NodeSource Node.js Binary Distributions
Supported Ubuntu versions:

NodeSource will maintain Ubuntu distributions in active support by Canonical, including LTS and the intermediate releases.

Ubuntu 14.04 LTS (Trusty Tahr) - not available for Node.js 10 and later
Ubuntu 16.04 LTS (Xenial Xerus)
Ubuntu 18.04 LTS (Bionic Beaver)
Ubuntu 18.10 (Cosmic Cuttlefish)
Ubuntu 19.04 (Disco Dingo)
Supported Debian versions:

NodeSource will maintain support for stable, testing and unstable releases of Debian, due to the long release cycle a considerable number of users are running unstable.

Debian 8 / oldstable (Jessie)
Debian 9 / stable (Stretch)
Debian 10 / testing (Buster)
Debian unstable (Sid)
Supported Linux Mint versions:

Linux Mint 17 "Qiana" (via Ubuntu 14.04 LTS) - not available for Node.js 10 and later
Linux Mint 17.1 "Rebecca" (via Ubuntu 14.04 LTS) - not available for Node.js 10 and later
Linux Mint 17.2 "Rafaela" (via Ubuntu 14.04 LTS) - not available for Node.js 10 and later
Linux Mint 18 "Sarah" (via Ubuntu 16.04 LTS)
Linux Mint 18.1 "Serena" (via Ubuntu 16.04 LTS)
Linux Mint 18.2 "Sonya" (via Ubuntu 16.04 LTS)
Linux Mint 18.3 "Sylvia" (via Ubuntu 16.04 LTS)
Linux Mint Debian Edition (LMDE) 2 "Betsy" (via Debian 8)
Linux Mint 19 "Tara" (via Ubuntu 18.04 LTS)
...
Ну и ещё некоторые менее известные Debian-дистрибутивы...
Available architectures:

NodeSource will continue to maintain the following architectures and may add additional ones in the future.

i386 (32-bit)—not available for Node.js 10 and later
amd64 (64-bit)
armhf (ARM 32-bit hard-float, ARMv7 and up: arm-linux-gnueabihf)
arm64 (ARM 64-bit, ARMv8 and up: aarch64-linux-gnu)

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 14:55

Olej писал(а): И GitHub от разработчика Node.js для Debian-based дистрибутивов:
NodeSource Node.js Binary Distributions
Но чтобы очень сильно не мудрить:

Код: Выделить всё

olej@ACER:~$ aptitude search nodejs
p   netdata-plugins-nodejs                                                        - real-time performance monitoring (nodejs plugins)                                      
p   nodejs                                                                        - evented I/O for V8 javascript - runtime executable                                     
p   nodejs-doc                                                                    - API documentation for Node.js, the javascript platform                                 

Код: Выделить всё

olej@ACER:~$ aptitude show nodejs
Пакет: nodejs                                    
Версия: 10.15.2~dfsg-2
Состояние: не установлен
Мультиархитектура: сторонняя
Приоритет: необязательный
Раздел: web
Сопровождающий: Debian Javascript Maintainers <pkg-javascript-devel@lists.alioth.debian.org>
Архитектура: amd64
Размер в распакованном виде: 160 k
Зависит: libc-ares2 (>= 1.7.0), libc6 (>= 2.4), libgcc1 (>= 1:3.0), libicu63 (>= 63.1-1~), libnghttp2-14 (>= 1.3.0), libnode64 (= 10.15.2~dfsg-2), libssl1.1 (>= 1.1.0),
         libstdc++6 (>= 4.1.1), libuv1 (>= 1.20.0~), zlib1g (>= 1:1.1.4)
Рекомендует: ca-certificates, nodejs-doc
Предлагает: npm
Конфликтует: nodejs-legacy
Заменяет: nodejs-legacy
Описание: evented I/O for V8 javascript - runtime executable
 Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model
 that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. 
 
 Node.js is bundled with several useful libraries to handle server tasks: 
 
 System, Events, Standard I/O, Modules, Timers, Child Processes, POSIX, HTTP, Multipart Parsing, TCP, DNS, Assert, Path, URL, Query Strings.
Домашняя страница: http://nodejs.org/
Метки: devel::interpreter, devel::lang:ecmascript, devel::runtime, devel::web, implemented-in::c++, implemented-in::ecmascript, interface::commandline, interface::shell,
       protocol::dns, protocol::http, protocol::tcp, role::program, scope::application, works-with-format::json
Самая-самая свежая версия на GitHub для ручной установки:
Node.js v12.x:
Так что и из стандартного репозитория Debian 10 версия 10.15.2 для "попробовать" мне вполне сгодится...

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 14:58

Olej писал(а):Так что и из стандартного репозитория Debian 10 версия 10.15.2 для "попробовать" мне вполне сгодится...

Код: Выделить всё

olej@ACER:~$ sudo apt install nodejs nodejs-doc
[sudo] пароль для olej: 
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
  libc-ares2 libnode64
Предлагаемые пакеты:
  npm
Следующие НОВЫЕ пакеты будут установлены:
  libc-ares2 libnode64 nodejs nodejs-doc
Обновлено 0 пакетов, установлено 4 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 6 643 kB архивов.
После данной операции объём занятого дискового пространства возрастёт на 30,1 MB.
Хотите продолжить? [Д/н] y
Пол:1 http://deb.debian.org/debian buster/main amd64 libc-ares2 amd64 1.14.0-1 [85,8 kB]
Пол:2 http://deb.debian.org/debian buster/main amd64 libnode64 amd64 10.15.2~dfsg-2 [5 521 kB]
Пол:3 http://deb.debian.org/debian buster/main amd64 nodejs amd64 10.15.2~dfsg-2 [86,2 kB]
Пол:4 http://deb.debian.org/debian buster/main amd64 nodejs-doc all 10.15.2~dfsg-2 [950 kB]
Получено 6 643 kB за 3с (2 250 kB/s)
Выбор ранее не выбранного пакета libc-ares2:amd64.
(Чтение базы данных … на данный момент установлено 384395 файлов и каталогов.)
Подготовка к распаковке …/libc-ares2_1.14.0-1_amd64.deb …
Распаковывается libc-ares2:amd64 (1.14.0-1) …
Выбор ранее не выбранного пакета libnode64:amd64.
Подготовка к распаковке …/libnode64_10.15.2~dfsg-2_amd64.deb …
Распаковывается libnode64:amd64 (10.15.2~dfsg-2) …
Выбор ранее не выбранного пакета nodejs.
Подготовка к распаковке …/nodejs_10.15.2~dfsg-2_amd64.deb …
Распаковывается nodejs (10.15.2~dfsg-2) …
Выбор ранее не выбранного пакета nodejs-doc.
Подготовка к распаковке …/nodejs-doc_10.15.2~dfsg-2_all.deb …
Распаковывается nodejs-doc (10.15.2~dfsg-2) …
Настраивается пакет libc-ares2:amd64 (1.14.0-1) …
Настраивается пакет libnode64:amd64 (10.15.2~dfsg-2) …
Настраивается пакет nodejs-doc (10.15.2~dfsg-2) …
Настраивается пакет nodejs (10.15.2~dfsg-2) …
update-alternatives: используется /usr/bin/nodejs для предоставления /usr/bin/js (js) в автоматическом режиме
Обрабатываются триггеры для libc-bin (2.28-10) …
Обрабатываются триггеры для man-db (2.8.5-2) …

Код: Выделить всё

olej@ACER:~$ which nodejs
/usr/bin/nodejs

olej@ACER:~$ nodejs --help
Usage: node [options] [ -e script | script.js | - ] [arguments]
       node inspect script.js [arguments]

Options:
  -                                         script read from stdin (default if no file name is provided, interactive
                                            mode if a tty)
  --                                        indicate the end of node options
  --abort-on-uncaught-exception             aborting instead of exiting causes a core file to be generated for
                                            analysis
  -c, --check                               syntax check script without executing
  --completion-bash                         print source-able bash completion script
  -e, --eval=...                            evaluate script
  --experimental-modules                    experimental ES Module support and caching modules
  --experimental-repl-await                 experimental await keyword support in REPL
  --experimental-vm-modules                 experimental ES Module support in vm module
  --experimental-worker                     experimental threaded Worker support
  -h, --help                                print node command line options (currently set)
  --icu-data-dir=...                        set ICU data load path to dir (overrides NODE_ICU_DATA) (note: linked-in
                                            ICU data is
                                            present)
                                            
  --inspect[=[host:]port]                   activate inspector on host:port (default: 127.0.0.1:9229)
  --inspect-brk[=[host:]port]               activate inspector on host:port and break at start of user script
  --debug-port, --inspect-port=[host:]port  set host:port for inspector
  -i, --interactive                         always enter the REPL even if stdin does not appear to be a terminal
  --loader=...                              (with --experimental-modules) use the specified file as a custom loader
  --max-http-header-size=...                set the maximum size of HTTP headers (default: 8KB)
  --no-deprecation                          silence deprecation warnings
  --no-force-async-hooks-checks             disable checks for async_hooks
  --no-warnings                             silence all process warnings
  --openssl-config=...                      load OpenSSL configuration from the specified file (overrides
                                            OPENSSL_CONF)
  --pending-deprecation                     emit pending deprecation warnings
  --preserve-symlinks                       preserve symbolic links when resolving
  --preserve-symlinks-main                  preserve symbolic links when resolving the main module
  -p, --print [...]                         evaluate script and print result
  --prof-process                            process V8 profiler output generated using --prof
  --redirect-warnings=...                   write warnings to file instead of stderr
  -r, --require=...                         module to preload (option can be repeated)
  --throw-deprecation                       throw an exception on deprecations
  --title=...                               the process title to use on startup
  --tls-cipher-list=...                     use an alternative default TLS cipher list
  --trace-deprecation                       show stack traces on deprecations
  --trace-event-categories=...              comma separated list of trace event categories to record
  --trace-event-file-pattern=...            Template string specifying the filepath for the trace-events data, it
                                            supports ${rotation} and ${pid}.
  --trace-sync-io                           show stack trace when use of sync IO is detected after the first tick
  --trace-warnings                          show stack traces on process warnings
  --track-heap-objects                      track heap object allocations for heap snapshots
  --use-bundled-ca                          use bundled CA store
  --use-openssl-ca                          use OpenSSL's default CA store (default)
  --v8-options                              print V8 command line options
  --v8-pool-size=...                        set V8's thread pool size
  -v, --version                             print Node.js version
  --zero-fill-buffers                       automatically zero-fill all newly allocated Buffer and SlowBuffer
                                            instances
  
Environment variables:
NODE_DEBUG                    ','-separated list of core modules that should print debug information
NODE_DEBUG_NATIVE             ','-separated list of C++ core debug categories that should print debug
                              output
NODE_DISABLE_COLORS           set to 1 to disable colors in the REPL
NODE_EXTRA_CA_CERTS           path to additional CA certificates file
NODE_NO_WARNINGS              set to 1 to silence process warnings
NODE_OPTIONS                  set CLI options in the environment via a space-separated list
NODE_PATH                     ':'-separated list of directories prefixed to the module search path
NODE_PENDING_DEPRECATION      set to 1 to emit pending deprecation warnings
NODE_PRESERVE_SYMLINKS        set to 1 to preserve symbolic links when resolving and caching modules
NODE_REDIRECT_WARNINGS        write warnings to path instead of stderr
NODE_REPL_HISTORY             path to the persistent REPL history file
NODE_TLS_REJECT_UNAUTHORIZED  set to 0 to disable TLS certificate validation
NODE_V8_COVERAGE              directory to output v8 coverage JSON to
OPENSSL_CONF                  load OpenSSL configuration from file
SSL_CERT_DIR                  sets OpenSSL's directory of trusted certificates when used in conjunction
                              with --use-openssl-ca
SSL_CERT_FILE                 sets OpenSSL's trusted certificate file when used in conjunction with
                              --use-openssl-ca
UV_THREADPOOL_SIZE            sets the number of threads used in libuv's threadpool

Documentation can be found at https://nodejs.org/

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 15:04

Olej писал(а):

Код: Выделить всё

olej@ACER:~$ node -v
bash: node: команда не найдена

olej@ACER:~$ npm -v
bash: npm: команда не найдена

Код: Выделить всё

olej@ACER:~$ sudo apt install npm
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
  gyp libjs-inherits libjs-is-typedarray libnode-dev libuv1-dev node-abbrev node-ajv node-ansi node-ansi-align node-ansi-regex node-ansi-styles node-ansistyles
  node-aproba node-archy node-are-we-there-yet node-asn1 node-assert-plus node-asynckit node-aws-sign2 node-aws4 node-balanced-match node-bcrypt-pbkdf node-bluebird
  node-boxen node-brace-expansion node-builtin-modules node-builtins node-cacache node-call-limit node-camelcase node-caseless node-chalk node-chownr node-cli-boxes
  node-cliui node-clone node-co node-color-convert node-color-name node-combined-stream node-concat-map node-concat-stream node-config-chain node-console-control-strings
  node-copy-concurrently node-core-util-is node-cross-spawn node-cyclist node-dashdash node-decamelize node-decompress-response node-deep-extend node-defaults
  node-delayed-stream node-delegates node-detect-indent node-detect-newline node-duplexer3 node-duplexify node-ecc-jsbn node-editor node-encoding node-end-of-stream
  node-errno node-escape-string-regexp node-execa node-extend node-extsprintf node-find-up node-flush-write-stream node-forever-agent node-form-data node-from2
  node-fs-vacuum node-fs-write-stream-atomic node-fs.realpath node-gauge node-get-caller-file node-get-stream node-getpass node-glob node-got node-graceful-fs node-gyp
  node-har-schema node-har-validator node-has-flag node-has-symbol-support-x node-has-to-string-tag-x node-has-unicode node-hosted-git-info node-http-signature
  node-iconv-lite node-iferr node-import-lazy node-imurmurhash node-inflight node-inherits node-ini node-invert-kv node-is-builtin-module node-is-npm node-is-object
  node-is-plain-obj node-is-retry-allowed node-is-stream node-is-typedarray node-isarray node-isexe node-isstream node-isurl node-jsbn node-json-parse-better-errors
  node-json-schema node-json-stable-stringify node-json-stringify-safe node-jsonify node-jsonparse node-jsonstream node-jsprim node-latest-version node-lazy-property
  node-lcid node-libnpx node-locate-path node-lockfile node-lowercase-keys node-lru-cache node-mem node-mime-types node-mimic-fn node-mimic-response node-minimatch
  node-minimist node-mississippi node-mkdirp node-move-concurrently node-mute-stream node-node-uuid node-nopt node-normalize-package-data node-npm-package-arg
  node-npm-run-path node-npmlog node-oauth-sign node-object-assign node-once node-opener node-os-locale node-osenv node-p-cancelable node-p-finally node-p-limit
  node-p-locate node-p-timeout node-package-json node-parallel-transform node-path-exists node-path-is-absolute node-path-is-inside node-performance-now
  node-prepend-http node-process-nextick-args node-promise-inflight node-promzard node-proto-list node-prr node-pump node-pumpify node-punycode node-qs node-qw node-rc
  node-read node-read-package-json node-readable-stream node-registry-auth-token node-registry-url node-request node-require-directory node-require-main-filename
  node-resolve-from node-retry node-rimraf node-run-queue node-safe-buffer node-semver node-semver-diff node-set-blocking node-sha node-shebang-command
  node-shebang-regex node-signal-exit node-slash node-slide node-sorted-object node-spdx-correct node-spdx-expression-parse node-spdx-license-ids node-sshpk node-ssri
  node-stream-each node-stream-iterate node-stream-shift node-string-decoder node-string-width node-strip-ansi node-strip-eof node-strip-json-comments
  node-supports-color node-tar node-term-size node-text-table node-through node-through2 node-timed-out node-tough-cookie node-tunnel-agent node-tweetnacl
  node-typedarray node-uid-number node-unique-filename node-unpipe node-url-parse-lax node-url-to-options node-util-deprecate node-uuid node-validate-npm-package-license
  node-validate-npm-package-name node-verror node-wcwidth.js node-which node-which-module node-wide-align node-widest-line node-wrap-ansi node-wrappy
  node-write-file-atomic node-xdg-basedir node-xtend node-y18n node-yallist node-yargs node-yargs-parser
Следующие НОВЫЕ пакеты будут установлены:
  gyp libjs-inherits libjs-is-typedarray libnode-dev libuv1-dev node-abbrev node-ajv node-ansi node-ansi-align node-ansi-regex node-ansi-styles node-ansistyles
  node-aproba node-archy node-are-we-there-yet node-asn1 node-assert-plus node-asynckit node-aws-sign2 node-aws4 node-balanced-match node-bcrypt-pbkdf node-bluebird
  node-boxen node-brace-expansion node-builtin-modules node-builtins node-cacache node-call-limit node-camelcase node-caseless node-chalk node-chownr node-cli-boxes
  node-cliui node-clone node-co node-color-convert node-color-name node-combined-stream node-concat-map node-concat-stream node-config-chain node-console-control-strings
  node-copy-concurrently node-core-util-is node-cross-spawn node-cyclist node-dashdash node-decamelize node-decompress-response node-deep-extend node-defaults
  node-delayed-stream node-delegates node-detect-indent node-detect-newline node-duplexer3 node-duplexify node-ecc-jsbn node-editor node-encoding node-end-of-stream
  node-errno node-escape-string-regexp node-execa node-extend node-extsprintf node-find-up node-flush-write-stream node-forever-agent node-form-data node-from2
  node-fs-vacuum node-fs-write-stream-atomic node-fs.realpath node-gauge node-get-caller-file node-get-stream node-getpass node-glob node-got node-graceful-fs node-gyp
  node-har-schema node-har-validator node-has-flag node-has-symbol-support-x node-has-to-string-tag-x node-has-unicode node-hosted-git-info node-http-signature
  node-iconv-lite node-iferr node-import-lazy node-imurmurhash node-inflight node-inherits node-ini node-invert-kv node-is-builtin-module node-is-npm node-is-object
  node-is-plain-obj node-is-retry-allowed node-is-stream node-is-typedarray node-isarray node-isexe node-isstream node-isurl node-jsbn node-json-parse-better-errors
  node-json-schema node-json-stable-stringify node-json-stringify-safe node-jsonify node-jsonparse node-jsonstream node-jsprim node-latest-version node-lazy-property
  node-lcid node-libnpx node-locate-path node-lockfile node-lowercase-keys node-lru-cache node-mem node-mime-types node-mimic-fn node-mimic-response node-minimatch
  node-minimist node-mississippi node-mkdirp node-move-concurrently node-mute-stream node-node-uuid node-nopt node-normalize-package-data node-npm-package-arg
  node-npm-run-path node-npmlog node-oauth-sign node-object-assign node-once node-opener node-os-locale node-osenv node-p-cancelable node-p-finally node-p-limit
  node-p-locate node-p-timeout node-package-json node-parallel-transform node-path-exists node-path-is-absolute node-path-is-inside node-performance-now
  node-prepend-http node-process-nextick-args node-promise-inflight node-promzard node-proto-list node-prr node-pump node-pumpify node-punycode node-qs node-qw node-rc
  node-read node-read-package-json node-readable-stream node-registry-auth-token node-registry-url node-request node-require-directory node-require-main-filename
  node-resolve-from node-retry node-rimraf node-run-queue node-safe-buffer node-semver node-semver-diff node-set-blocking node-sha node-shebang-command
  node-shebang-regex node-signal-exit node-slash node-slide node-sorted-object node-spdx-correct node-spdx-expression-parse node-spdx-license-ids node-sshpk node-ssri
  node-stream-each node-stream-iterate node-stream-shift node-string-decoder node-string-width node-strip-ansi node-strip-eof node-strip-json-comments
  node-supports-color node-tar node-term-size node-text-table node-through node-through2 node-timed-out node-tough-cookie node-tunnel-agent node-tweetnacl
  node-typedarray node-uid-number node-unique-filename node-unpipe node-url-parse-lax node-url-to-options node-util-deprecate node-uuid node-validate-npm-package-license
  node-validate-npm-package-name node-verror node-wcwidth.js node-which node-which-module node-wide-align node-widest-line node-wrap-ansi node-wrappy
  node-write-file-atomic node-xdg-basedir node-xtend node-y18n node-yallist node-yargs node-yargs-parser npm
Обновлено 0 пакетов, установлено 245 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 3 690 kB архивов.
После данной операции объём занятого дискового пространства возрастёт на 19,8 MB.
Хотите продолжить? [Д/н] y
...

Код: Выделить всё

olej@ACER:~$ node -v
v10.15.2

olej@ACER:~$ npm -v
5.8.0

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 15:18

Olej писал(а):
Мы предлагаем вам выбрать один из двух популярных редакторов: Atom и Microsoft's Visual Studio Code. Оба идеальны для JavaScript.

Если вы являетесь одним из многих разработчиков с "повышенными требованиями", то знайте, что в наши дни практически все редакторы кода и IDE поддерживают JavaScript.
Про Atom уже писалось здесь в форуме - утилиты для работы с исходным кодом - по состоянию на ноябрь 2016 года:
Модный (почему-то?) у молодёжных программистов текстовый редактор с языковой цветовой разметкой Atom:

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 15:53

Olej писал(а): Про Atom уже писалось здесь в форуме - утилиты для работы с исходным кодом - по состоянию на ноябрь 2016 года:
Модный (почему-то?) у молодёжных программистов текстовый редактор с языковой цветовой разметкой Atom:
Atom как не было в стандартных репозиториях дистрибутивов Linux (почему?), так нет и сейчас.
Но вот страница проекта - A hackable text editor for the 21st Century.
Где пакеты DEB и RPM.

Код: Выделить всё

olej@ACER:~/Загрузки$ ls -l atom-amd64.deb 
-rw-r--r-- 1 olej olej 100395464 июн 27 15:54 atom-amd64.deb

Код: Выделить всё

olej@ACER:~/Загрузки$ sudo dpkg -i atom-amd64.deb 
Выбор ранее не выбранного пакета atom.
(Чтение базы данных … на данный момент установлено 389473 файла и каталога.)
Подготовка к распаковке atom-amd64.deb …
Распаковывается atom (1.38.2) …
dpkg: зависимости пакетов не позволяют настроить пакет atom:
 atom зависит от gconf2, однако:
  Пакет gconf2 не установлен.
 atom зависит от gconf-service, однако:
  Пакет gconf-service не установлен.

dpkg: ошибка при обработке пакета atom (--install):
 проблемы зависимостей — оставляем не настроенным
Обрабатываются триггеры для mime-support (3.62) …
Обрабатываются триггеры для desktop-file-utils (0.23-4) …
При обработке следующих пакетов произошли ошибки:
 atom
Почалось :evil:

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 16:27

Olej писал(а):Почалось :evil:

Код: Выделить всё

olej@ACER:~/Загрузки$ aptitude search gconf
p   gconf-defaults-service                                                        - GNOME configuration database system (system defaults service)                          
p   gconf-editor                                                                  - editor for the GConf configuration system                                              
p   gconf-gsettings-backend                                                       - GNOME configuration database system - GSettings back-end                               
p   gconf-service                                                                 - GNOME configuration database system (D-Bus service)                                    
p   gconf2                                                                        - GNOME configuration database system (support tools)                                    
c   gconf2-common                                                                 - GNOME configuration database system (common files)                                     
p   gir1.2-gconf-2.0                                                              - GNOME configuration database system (GObject-Introspection)                            
p   golang-github-hlandau-dexlogconfig-dev                                        - logging configuration package for Go                                                   
i A gpgconf                                                                       - GNU privacy guard - core configuration utilities                                       
p   libextutils-pkgconfig-perl                                                    - Perl interface to the pkg-config utility                                               
p   libgconf-2-4                                                                  - GNOME configuration database system (shared libraries)                                 
p   libgconf2-dev                                                                 - GNOME configuration database system (development)                                      
p   libgconf2-doc                                                                 - GNOME configuration database system (API reference)                                    
p   libpkgconfig-perl                                                             - Pure-Perl Core-Only replacement for pkg-config                                         
p   pkgconf                                                                       - manage compile and link flags for libraries                                            
p   python-pkgconfig                                                              - Python interface to the pkg-config command line tool                                   
p   python3-pkgconfig                                                             - Python 3 interface to the pkg-config command line tool                                 
p   r-cran-pkgconfig                                                              - Private Configuration for 'R' Packages                                                 

Код: Выделить всё

olej@ACER:~/Загрузки$ sudo apt install gconf2 gconf-service
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Вы можете запустить «apt --fix-broken install» для исправления этих ошибок.
Следующие пакеты имеют неудовлетворённые зависимости:
 gconf-service : Зависит: libgconf-2-4 (= 3.2.6-5) но он не будет установлен
                 Зависит: gconf2-common (= 3.2.6-5) но он не будет установлен
 gconf2 : Зависит: libgconf-2-4 (>= 3.2.5) но он не будет установлен
E: Неудовлетворённые зависимости. Попытайтесь выполнить «apt --fix-broken install», не указывая имени пакета (или указав решение).

Код: Выделить всё

olej@ACER:~/Загрузки$ sudo apt --fix-broken install
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Исправление зависимостей… Готово
Будут установлены следующие дополнительные пакеты:
  gconf-service gconf2 gconf2-common libgconf-2-4
Предлагаемые пакеты:
  gconf-defaults-service
Следующие НОВЫЕ пакеты будут установлены:
  gconf-service gconf2 gconf2-common libgconf-2-4
Обновлено 0 пакетов, установлено 4 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Установлено или удалено не до конца 1 пакетов.
Необходимо скачать 2 305 kB архивов.
После данной операции объём занятого дискового пространства возрастёт на 8 314 kB.
Хотите продолжить? [Д/н] y
Пол:1 http://deb.debian.org/debian buster/main amd64 gconf2-common all 3.2.6-5 [1 039 kB]
Пол:2 http://deb.debian.org/debian buster/main amd64 libgconf-2-4 amd64 3.2.6-5 [426 kB]
Пол:3 http://deb.debian.org/debian buster/main amd64 gconf-service amd64 3.2.6-5 [414 kB]
Пол:4 http://deb.debian.org/debian buster/main amd64 gconf2 amd64 3.2.6-5 [426 kB]
Получено 2 305 kB за 1с (1 928 kB/s)
Выбор ранее не выбранного пакета gconf2-common.
(Чтение базы данных … на данный момент установлено 398972 файла и каталога.)
Подготовка к распаковке …/gconf2-common_3.2.6-5_all.deb …
Распаковывается gconf2-common (3.2.6-5) …
Выбор ранее не выбранного пакета libgconf-2-4:amd64.
Подготовка к распаковке …/libgconf-2-4_3.2.6-5_amd64.deb …
Распаковывается libgconf-2-4:amd64 (3.2.6-5) …
Выбор ранее не выбранного пакета gconf-service.
Подготовка к распаковке …/gconf-service_3.2.6-5_amd64.deb …
Распаковывается gconf-service (3.2.6-5) …
Выбор ранее не выбранного пакета gconf2.
Подготовка к распаковке …/gconf2_3.2.6-5_amd64.deb …
Распаковывается gconf2 (3.2.6-5) …
Настраивается пакет gconf2-common (3.2.6-5) …
Обрабатываются триггеры для sgml-base (1.29) …
Настраивается пакет libgconf-2-4:amd64 (3.2.6-5) …
Обрабатываются триггеры для libc-bin (2.28-10) …
Обрабатываются триггеры для man-db (2.8.5-2) …
Настраивается пакет gconf-service (3.2.6-5) …
Настраивается пакет gconf2 (3.2.6-5) …
Настраивается пакет atom (1.38.2) …

Код: Выделить всё

olej@ACER:~/Загрузки$ atom --help
Atom Editor v1.38.2

Usage:
  atom
  atom [options] [path ...]
  atom file[:line[:column]]

One or more paths to files or folders may be specified. If there is an
existing Atom window that contains all of the given folders, the paths
will be opened in that window. Otherwise, they will be opened in a new
window.

A file may be opened at the desired line (and optionally column) by
appending the numbers right after the file name, e.g. `atom file:5:8`.

Paths that start with `atom://` will be interpreted as URLs.

Environment Variables:

  ATOM_DEV_RESOURCE_PATH  The path from which Atom loads source code in dev mode.
                          Defaults to `~/github/atom`.

  ATOM_HOME               The root path for all configuration files and folders.
                          Defaults to `~/.atom`.

Options:
  -1, --one                  This option is no longer supported.  [boolean]
  --include-deprecated-apis  This option is not currently supported.  [boolean]
  -d, --dev                  Run in development mode.  [boolean]
  -f, --foreground           Keep the main process in the foreground.  [boolean]
  -h, --help                 Print this usage message.  [boolean]
  -l, --log-file             Log all output to file.  [string]
  -n, --new-window           Open a new window.  [boolean]
  --profile-startup          Create a profile of the startup execution time.  [boolean]
  -r, --resource-path        Set the path to the Atom source directory and enable dev-mode.  [string]
  --safe                     Do not load packages from ~/.atom/packages or ~/.atom/dev/packages.  [boolean]
  --benchmark                Open a new window that runs the specified benchmarks.  [boolean]
  --benchmark-test           Run a faster version of the benchmarks in headless mode.  [boolean]
  -t, --test                 Run the specified specs and exit with error code on failures.  [boolean]
  -m, --main-process         Run the specified specs in the main process.  [boolean]
  --timeout                  When in test mode, waits until the specified time (in minutes) and kills the process (exit code: 130).  [string]
  -v, --version              Print the version information.  [boolean]
  -w, --wait                 Wait for window to be closed before returning.  [boolean]
  --clear-window-state       Delete all Atom environment state.  [boolean]
  --enable-electron-logging  Enable low-level logging messages from Electron.  [boolean]
  -a, --add                  Open path as a new project in last used window.  [boolean]
Теперь и в системном меню системы появилась (в подменю Программирование) позиция Atom.

Аватара пользователя
Olej
Писатель
Сообщения: 12802
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Electron

Непрочитанное сообщение Olej » 27 июн 2019, 16:34

Установка
Чтобы установить скомпилированный Electron, используй npm. Предпочитаемый метод установки как зависимости в приложении:

Код: Выделить всё

npm install electron --save-dev

Код: Выделить всё

olej@ACER:~/Загрузки$ npm install electron --save-dev
npm WARN npm npm does not support Node.js v10.15.2
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 4, 6, 7, 8, 9.
npm WARN npm You can find the latest version at https://nodejs.org/

> electron@5.0.6 postinstall /home/olej/Загрузки/node_modules/electron
> node install.js

Downloading tmp-14029-1-SHASUMS256.txt-5.0.6
[============================================>] 100.0% of 4.74 kB (4.74 kB/s)
npm WARN saveError ENOENT: no such file or directory, open '/home/olej/Загрузки/package.json'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN enoent ENOENT: no such file or directory, open '/home/olej/Загрузки/package.json'
npm WARN Загрузки No description
npm WARN Загрузки No repository field.
npm WARN Загрузки No README data
npm WARN Загрузки No license field.

+ electron@5.0.6
added 145 packages from 141 contributors in 52.084s

Ответить

Вернуться в «Программирование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость