Главная » Хабрахабр » Собственный VPN клиент на JavaScript. 11 часть — Сборка приложения под Windows

Собственный VPN клиент на JavaScript. 11 часть — Сборка приложения под Windows

P.S. Каждая часть — это часть, сама по себе смысла не имеет, чтобы обзавестись необходимым контекстом и не испытывать когнитивный диссонанс от отсутствия так необходимых блоков текста начните читать с 1 части

В этот раз собирать приложение я буду npm модулем electron-builder, отдельное спасибо разработчикам за удобную документацию к модулю и множество примеров настройки конфига (нет).

В прошлый раз я собирал приложение npm модулем electron-packager, насколько мне известно, он не может собирать в exe, во всяком случае на тот момент мне не удалось это сделать.
Cодержимое файла package.json.

1 {
2 "name": "JS.VPN-Client",
3 "version": "0.3.77",
4 "description": "VPN Client",
5 "main": "index.js",
6 "homepage": "https://github.com/JsusDev/JS.VPN-Client",
7 "build": {
8 "appId": "JS.VPN-Client",
9 "productName": "JS.VPN-Client",
10 "copyright": "JSus & Developments 2018",
11 "win": {
12 "target": "nsis",
13 "icon": "icon.ico",
14 "legalTrademarks": "JSus & Developments 2018",
15 "asar": false
16 }
17 },
18 "author": {
19 "name": "JSus & Developments",
20 "email": "jsusdev@yandex.ru"
21 },
22 "license": "ISC",
23 "dependencies": {
24 "child_process": "^1.0.2",
25 "fs": "^0.0.1-security",
26 "ipify": "^2.0.0",
27 "js-base64": "^2.4.9",
28 "request": "^2.88.0"
29 }
30 }

Разбор package.json

Строка

Описание

2

Имя пакета (обязательно)

3

Версия пакета/приложения (обязательно)

4

Описание пакета/приложения

5

Точка входа в пакет

6

Домашняя страница пакета/приложения

7

Объект конфига для electron-builder

8

ApplicationUserModelId (AUMID) является комбинацией PackageFamilyName и PackageRelativeApplicationID (PRAID) — я не знаю что это

9

Название приложения (если не указать значение будет взято из name)

10

Авторские права

11

Платформа сборки (win, mac, linux) (обязательно)

12

Способ запаковки приложения (7z, zip, tar.xz, tar.lz, tar.gz, tar.bz2, dir, etc) (обязательно)

13

Иконка приложения (если не указать будет стандартная)

14

Товарные знаки

15

Способ внутреннего архивирования приложения нужно отключить потому что убирает файлы с расширением exe

18

Издатель, можно указать строкой

23

Зависимости, среди них не должно быть electron иначе будет ошибка

Для сборки самого приложения используется команда

electron-builder build

image

Спустя N минут…

image

В процессе сборки в корне проекта будет создана папка dist

image

После того как завершится сборка в папке можно будет найти файл для установки

image

image

Приложение готово к публикации!

Страница проекта на Github и Персональная страница приложения

Ну что, как тебе такое Илон Маск ?

Поки чмоки лавки лавки.

Навигация

Собственный VPN клиент на JavaScript by JSus


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

День Радио: патенты Маркони и Попова

Не имея большого желания присоединяться к более чем столетнему холивару Попов vs. Маркони, все же воспользуюсь грядущим очередным Днем Радио (который традиционно отмечается в нашей стране 7 мая), чтобы на примерах А.С. Попова и Г. Маркони напомнить почтеннейшей публике о ...

Обзор цифровой ручки MT6081 — ваши заметки сразу на компьютере

Вот чего, конечно, у «Даджета» не отнять, так это умения называть свои гаджеты странными символами: куда ни глянь, то MT1104, MT4017, MT… и так далее. Мы добрались до модели MT6081 — это довольно любопытная смарт-ручка, и мы вам расскажем, чем ...