mStream/docs/compile-mstream-express.md
Paul Sori 8053eda3d6 bump
2019-04-30 01:55:39 -04:00

3.4 KiB

These instructions change regularly. Steps marked optional are meant there to make the final app size smaller.

Install Dependencies

# Install electron-packager
npm install -g electron-packager

# Install modclean (optional)
npm install -g modclean

# Install electron globally (optional)
npm install -g electron

Modify package.json (optional)

Remove all dependencies related to the command line (commander, inquirer, colors). These packages will never be used by mStream Express and can be safely removed to reduce the output size

Cleanup node_modules (optional)

Modclean can be used to clean out the node_modules folder of useless files. This deletes over 1000 useless files saving space and shortening install time. To install modlcean, run:

npm install -g modclean

Then run modclean with:

modclean

Compile

Compile with electron-packager

# Windows
electron-packager  mStream\ mstreamExpress --platform=win32 --arch=x64 --icon=mStream\electron\images\mstream-logo-cut.ico --electron-version=5.0.0

# OSX
electron-packager mStream/ mstreamExpressOSX --platform=darwin --arch=x64 --icon=mStream/electron/images/mstream-logo-cut.icns --electron-version=5.0.0

# Ubuntu
electron-packager mStream/ mstreamExpress --platform=linux --arch=x64 --icon=mStream/electron/images/mstream-logo-cut.png --electron-version=5.0.0

Package with INNO

Run this INNO script to package mStream Express as an installable EXE

    ; Script generated by the Inno Setup Script Wizard.
    ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

    [Setup]
    ; NOTE: The value of AppId uniquely identifies this application.
    ; Do not use the same AppId value in installers for other applications.
    ; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
    AppId={{BCD70900-6E68-40FD-87C6-ADC5141BFFA4}}
    AppName=mStream Express
    AppVersion=0.6.0
    ;AppVerName=mStream Express 0.6.0
    AppPublisher=Iros Software LLC
    AppPublisherURL=http://mstream.io
    AppSupportURL=http://mstream.io
    AppUpdatesURL=http://mstream.io
    DefaultDirName={pf}\mStream Express
    DisableProgramGroupPage=yes
    OutputDir=C:\Users\paul\Documents\Code\ME INNO
    OutputBaseFilename=mStreamExpressSetup-v0.6
    SetupIconFile=C:\Users\paul\Documents\Code\mstream-electron\images\mstream-logo-cut.ico
    Compression=lzma
    SolidCompression=yes

    [Languages]
    Name: "english"; MessagesFile: "compiler:Default.isl"

    [Tasks]
    Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"

    [Files]
    Source: "C:\mstreamExpress\mstreamExpress.exe"; DestDir: "{app}"; Flags: ignoreversion
    Source: "C:\mstreamExpress\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
    ; NOTE: Don't use "Flags: ignoreversion" on any shared system files

    [Icons]
    Name: "{commonprograms}\mStream Express"; Filename: "{app}\mstreamExpress.exe"
    Name: "{commondesktop}\mStream Express"; Filename: "{app}\mstreamExpress.exe"; Tasks: desktopicon

    [Run]
    Filename: "{app}\mstreamExpress.exe"; Description: "{cm:LaunchProgram,mStream Express}"; Flags: nowait postinstall skipifsilent

Sign App on Windows

Install WIndows SDK

 cd "c:\Program Files (x86)\Windows Kits\10\bin\x86\"

 signtool.exe sign /tr http://timestamp.digicert.com /td sha256 /fd sha256 /a "c:\mStreamExpressSetup-v0.6.exe"