mStream/docs/compile-mstream-express.md
2018-01-18 15:31:40 -05:00

3.1 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

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

Additional files can be deleted recursively on windows with the command

del /s *.gitignore

Compile

Compile with electron-packager

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

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

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"