* Update docker file build to use new deb linux installers; move Dockefile to .github/workflows since its really only useable from the buildDocker.yml workflow * Fix typo in dockerfile location * remove extraneous " in >>GITHUB_ENV statements * Fix handling of TARGETPLATFORM in Dockerfile * Trying with just one platform * Fix issues with missing man-db in docker build workflow; added man-db to depends in deb builds for linux * Sicthed docker from tightvnc to tigervnc to match oio. This getting the apt package name right. * Going back to single platform to debug this thing * Trying with just arm64 * Removing arm/v7 from docker images. Takes too long to build and just wastes our github actions minutes. This is assuming its a never used feature since docker is not big on raspberry pis and their ilk. * Fix typo in control-linux; update build_deb so that files in /usr/local installed by deb are owned by root; add ubuntu user and nano in docker file for dbebugging; when in draft only create for x86_64 platform * Fix typo in buildDocker.yml * Add sudo to docker image; in docker image ensure that all /usr/local/interlisp files are owned by root * Add securityTypes none to docker entrypoint * Updated docker base to Ubuntu 22.10 to get fixed xrdp; add xrdp to the docker image; updated user permission in docker image; * In Dockerfile make xrdp install noninteractive * Update medley.sh scripts to handle docker case * Fix a couple of typos * BuildDcoker: added pulling latest draft release (if any) when this is a draft docker build; removed checkout of medley code cause its not used * BuildDocker: added medley checkout backin - turns pout its needed by a bunch of actions even though I dont really think they use it * BuildDocker: moved download assets to use gh instaed of a marketplace action becauase that action could not handle draft releases. * Tweaking medley.sh and associated tweaks to work Windows via wsl medley and docker * adding first pass at powershell script for windows docker and wsl * Tuning how Xvnc, medley, and vncviewer handle the various ways of exiting - eg logout vs closing viewer window. * Tuning vncviewer launch to make sure that tty works as expected when medley.sh runs in background * Minor typo fixes and added extra check to use of /run/shm in medley_vnc.sh * Added SSH_KEY secret to buildReleaseIncDocker workflow * Gertting the add SSH_KEY secret into orkflows right this time, hopefully * Adding TERM env variable and setting USER to medley in docker image * Debugging medley.ps1 and adding a couple of arguments * Typo in Dockerfile medley * Synchronizing flag processing and usage for medley.ps1 and medley.sh; refactored medley_args.sh and medley_usage.sh code. * Adding first pass at windows installer * Adding first pass an inno setup script for Windows installation * Update buildLoadup workflow and downloads page for windows installer * Fix typo in buildLoadup * BuildLoadup make sure windows runner uses powershell * Another typo in buildLoadup * Another typo in buildLoadup; damn those double quotes * Updating handling of windows installer in buildLoadup, added vncviewer to medley.iss install * Unknown syntax error in buildLoadup * Another damn typo from double quotes * buildLoadup: fixed loadup job outputs * buidLoadup: fixed bug with COMBINED_RELEASE_TAG; fixed Upload script in windows job to be compatible with actions.script v6. * buidLoadup: upload win installer adapted to find draft releases as well as full releases * BuildLoadup: fixing up javascript in actions in windows job to use / instead of \ in pathname * BuildLoadup: changing win installer update to same action used for other release assets * Fix windows installer file name; in BuildLoadup move update downl;oad page to the Windows runner because uploading the window-installer changes the release download url, so updating the downloads page must be done after the windows installer upload.; General buildLoadup cleanup * Run md2html to update downloads page * Fix typo in build_deb.sh * Removing some leftover crud in medley_usage.sh * Fixing up windows installer a bit, mostly cosmetic * Adding support for WSL1; mostly forcing --vnc and changing how to find open ports and displays since WSL1 networking is different tha WSL2 * Update manual page for new Windows Medley script * First pass done for man page that incorporates new Windows medley script. Add Xvnc wait before calling run-medley in case of docker to prevent occasonal missing X windows server error. * Change buildLoadup to update man page to a draft if this is a draft run.
129 lines
5.0 KiB
Plaintext
129 lines
5.0 KiB
Plaintext
; -- makeflix.iss --
|
|
; fgh 2016-08-19
|
|
|
|
#define x86_or_x64 "x86"
|
|
#define version "1.0.1"
|
|
|
|
#if x86_or_x64 == "x86"
|
|
#define exe_dir "Win32"
|
|
#else
|
|
#define exe_dir "x64"
|
|
#endif
|
|
|
|
[Setup]
|
|
ArchitecturesAllowed={#x86_or_x64}
|
|
AppName=Makeflix
|
|
AppVersion={#version}
|
|
AppPublisher=Lellan, Inc.
|
|
AppPublisherURL=http://www.lellan.com/
|
|
AppCopyright=Copyright (C) 2012-2017 Lellan, Inc.
|
|
DefaultDirName={pf}\Lellan\Makeflix
|
|
DefaultGroupName=Lellan
|
|
UninstallDisplayIcon={app}\makeflix.exe
|
|
Compression=lzma2
|
|
SolidCompression=yes
|
|
; "ArchitecturesInstallIn64BitMode=x64" requests that the install be
|
|
; done in "64-bit mode" on x64, meaning it should use the native
|
|
; 64-bit Program Files directory and the 64-bit view of the registry.
|
|
ArchitecturesInstallIn64BitMode=x64
|
|
; Source Dir is lellan/toolchain/makeflix/windows
|
|
SourceDir="..\"
|
|
OutputDir="deploy"
|
|
OutputBaseFilename="makeflix_v{#version}_{#x86_or_x64}"
|
|
SetupIconFile="..\images\Lellan_Logo_20130221.ico"
|
|
LicenseFile="..\deploy\EULA.rtf"
|
|
DisableWelcomePage=no
|
|
|
|
[Files]
|
|
Source: "makeflix\{#exe_dir}\Release\makeflix.exe"; DestDir: "{app}"; DestName: "makeflix.exe"; Flags: ignoreversion
|
|
Source: "deploy\DLLs\{#x86_or_x64}\Qt5Core.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
Source: "deploy\DLLs\{#x86_or_x64}\Qt5Gui.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
Source: "deploy\DLLs\{#x86_or_x64}\Qt5Widgets.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
Source: "deploy\DLLs\{#x86_or_x64}\Qt5Network.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|
Source: "deploy\DLLs\{#x86_or_x64}\platforms\qwindows.dll"; DestDir: "{app}\platforms"; Flags: ignoreversion
|
|
Source: "deploy\gstreamer\{#x86_or_x64}\*"; DestDir: "{app}\gstreamer"; Flags: recursesubdirs ignoreversion
|
|
Source: "deploy\vc_redist\vc_redist.{#x86_or_x64}.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall
|
|
Source: "deploy\bonjour\Bonjour.{#x86_or_x64}.msi"; DestDir: "{tmp}" ; Flags: deleteafterinstall
|
|
|
|
Source: "..\deploy\Makeflix_Open_Source_Libraries.pdf"; DestDir: "{app}"
|
|
|
|
[Icons]
|
|
Name: "{group}\Makeflix"; Filename: "{app}\makeflix.exe"
|
|
Name: "{group}\Uninstall Makeflix"; Filename: "{uninstallexe}"
|
|
|
|
|
|
[Run]
|
|
#define VCmsg "Installing Microsoft Visual C++ Redistributable ..."
|
|
Filename: "{tmp}\vc_redist{#x86_or_x64}.exe"; StatusMsg: "{#VCmsg}"; Check: not VCinstalled
|
|
#define BonjourMsg "Installing Apple Bonjour support ..."
|
|
Filename: "msiexec"; Parameters: "/i {tmp}\Bonjour.{#x86_or_x64}.msi"; StatusMsg: "{#BonjourMsg}"; Check: not BonjourInstalled
|
|
|
|
[Registry]
|
|
Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\makeflix.exe"; ValueType: string; ValueName: "(Default)"; ValueData: "{app}\makeflix.exe"; Flags: uninsdeletekey
|
|
Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\makeflix.exe"; ValueType: string; ValueName: "Path"; ValueData: "{app}\gstreamer\bin"; Flags: uninsdeletekey
|
|
|
|
[Code]
|
|
function VCinstalled: Boolean;
|
|
// By Michael Weiner <mailto:spam@cogit.net>
|
|
// Function for Inno Setup Compiler
|
|
// 13 November 2015
|
|
// Modified by Frank G Halasz to handle WOW case
|
|
// 23 August 2016
|
|
// Returns True if Microsoft Visual C++ Redistributable is installed, otherwise False.
|
|
// The programmer may set the year of redistributable to find; see below.
|
|
var
|
|
names: TArrayOfString;
|
|
i: Integer;
|
|
dName, key, year, platfm: String;
|
|
begin
|
|
// Year of redistributable to find; leave null to find installation for any year.
|
|
year := '2015';
|
|
Result := False;
|
|
if Is64BitInstallMode then
|
|
begin
|
|
platfm := 'x64';
|
|
key := 'Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall';
|
|
end
|
|
else if not IsWin64 then
|
|
begin
|
|
platfm := 'x86';
|
|
key := 'Software\Microsoft\Windows\CurrentVersion\Uninstall';
|
|
end
|
|
else
|
|
begin
|
|
platfm := 'x86';
|
|
key := 'Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall';
|
|
end;
|
|
// Get an array of all of the uninstall subkey names.
|
|
if RegGetSubkeyNames(HKEY_LOCAL_MACHINE, key, names) then
|
|
// Uninstall subkey names were found.
|
|
begin
|
|
i := 0
|
|
while ((i < GetArrayLength(names)) and (Result = False)) do
|
|
// The loop will end as soon as one instance of a Visual C++ redistributable is found.
|
|
begin
|
|
// For each uninstall subkey, look for a DisplayName value.
|
|
// If not found, then the subkey name will be used instead.
|
|
if not RegQueryStringValue(HKEY_LOCAL_MACHINE, key + '\' + names[i], 'DisplayName', dName) then
|
|
dName := names[i];
|
|
// See if the value contains both of the strings below.
|
|
Result := (Pos(Trim('Visual C++ ' + year),dName) * Pos('Redistributable',dName) * Pos(platfm, dName) <> 0)
|
|
i := i + 1;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
function BonjourInstalled: Boolean;
|
|
// Returns True if Apple Bonjour is installed, otherwise False.
|
|
// Ignores date/version of Bonjour.
|
|
begin
|
|
Result := False;
|
|
// If this key exists, then
|
|
// bonjour services must already be installed
|
|
if RegKeyExists(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Services\Bonjour Service') then
|
|
// Uninstall subkey names were found.
|
|
begin
|
|
Result := True;
|
|
end;
|
|
end;
|