Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 0 additions & 61 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -92,47 +92,6 @@ jobs:
- name: Create offline and online app installers from freezed app bundle
run: poetry run python ${{ env.SCRIPTS_PATH }}/MakeInstaller.py

- name: Set up screen recording dependencies (macOS)
if: runner.os == 'macOS'
run: |
"/Library/Application Support/VMware Tools/vmware-resolutionSet" 1920 1080
system_profiler SPDisplaysDataType | grep Resolution

- name: Set up screen recording dependencies (Linux)
if: runner.os == 'Linux'
run: |
sudo apt-get install libxkbcommon-x11-0
Xvfb :0 -screen 0 1920x1080x24 -ac &
echo "DISPLAY=:0" >> $GITHUB_ENV

- name: Set up screen recording dependencies (Windows)
if: runner.os == 'Windows'
run: |
Set-DisplayResolution -Width 1920 -Height 1080 -Force
Get-DisplayResolution

- name: Make dir for .desktop file (Linux)
if: runner.os == 'Linux'
run: mkdir -p ~/.local/share/applications/

- name: Install app
run: poetry run python ${{ env.SCRIPTS_PATH }}/InstallApp.py

- name: Run app in testmode, record screen and quit
run: poetry run python ${{ env.SCRIPTS_PATH }}/RunApp.py --testmode

- name: Rename test videos
run: >
poetry run python ${{ env.SCRIPTS_PATH }}/RenameTestVideos.py
${{ env.BRANCH_NAME }}

- name: Sign app installer
if: github.event_name == 'push' && env.BRANCH_NAME == 'master'
run: >
poetry run python ${{ env.SCRIPTS_PATH }}/SignAppInstaller.py
${{ env.BRANCH_NAME }}
${{ secrets.MACOS_CERTIFICATE_ENCODED }} ${{ secrets.MACOS_CERTIFICATE_PASSWORD }}
${{ secrets.APPSTORE_NOTARIZATION_USERNAME }} ${{ secrets.APPSTORE_NOTARIZATION_PASSWORD }}

- name: Create zip archive of offline app installer for distribution
run: >
Expand All @@ -153,23 +112,3 @@ jobs:
name: ${{ env.BRANCH_NAME }}
bodyFile: "RELEASE.md"

- name: Upload zipped offline app installer to GitHub releases (master branch)
if: github.event_name == 'push' && env.BRANCH_NAME == 'master'
uses: ncipollo/release-action@v1
with:
draft: true
prerelease: true
allowUpdates: true
replacesArtifacts: true
token: ${{ secrets.GITHUB_TOKEN }}
artifacts: "${{ env.DISTRIBUTION_PATH }}/*.zip"
tag: ${{ env.RELEASE_TAG }}
name: ${{ env.RELEASE_TITLE }}
bodyFile: "RELEASE.md"

- name: Upload online app installer to repository via FTP
if: github.event_name == 'push'
run: >
poetry run python ${{ env.SCRIPTS_PATH }}/UploadToFtp.py
${{ env.BRANCH_NAME }}
${{ secrets.APP_REPO_FTP_PASSWORD }}
18 changes: 0 additions & 18 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,18 +0,0 @@
### New Features

- Simulating and fitting polarised data using the [CrysPy](https://github.com/ikibalin/cryspy) calculation engine.
- Reading CIF files with experimental data and instrumental parameters.

### Changes

- Default example with experimental phase has been modified.
- Added example projects with polarised data.
- Windows installer is now 64-bit.

### Bug Fixes

- CrysFML simulation now shows Bragg peaks.
- Inclusion of the space group setting in calculations.
- The `Project save` button is now disabled for read-only example projects.
- The `Reset state` functionality now resets calculator choice.
- Overall performance has been improved.
Binary file added libs/VC_redist.x64.exe
Binary file not shown.
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ libs = { macos = 'libsDarwin', ubuntu = 'libsLinux', windows = 'libsWin32' }
missing_calculator_libs = { macos = [], ubuntu = [], windows = ['GSASII.libs', 'CFML.libs'] }
missing_pyside2_files = { macos = ['libshiboken2.abi3.*.dylib'], ubuntu = [], windows = ['shiboken2.abi3.dll', 'MSVCP140.dll'] }
missing_pyside2_plugins = { macos = [], ubuntu = ['Qt/plugins/xcbglintegrations'], windows = [] } # EGL and GLX plugins
missing_other_libraries = {macos = [], ubuntu = [], windows = ['libs/libiomp5md.dll', 'libs/opengl32.dll'] }
missing_other_libraries = {macos = [], ubuntu = [], windows = ['libs/libiomp5md.dll', 'libs/opengl32.dll', 'libs/VC_redist.x64.exe'] }
auto_exclude = { macos = ['_tkinter'], ubuntu = ['_tkinter'], windows = [''], all = [ 'lib2to3', '_bisect',
'_codecs_cn', '_codecs_hk', '_codecs_iso2022', '_codecs_jp', '_codecs_kr', '_codecs_tw',
'_curses', '_elementtree', '_hashlib', '_heapq', '_multibytecodec', '_multiprocessing',
Expand Down
28 changes: 28 additions & 0 deletions tools/Scripts/InstallerInstallScript.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ function Component()
//{
installer.setDefaultPageVisible(QInstaller.ComponentSelection, false)
installer.installationStarted.connect(this, Component.prototype.onInstallationStarted)
if (systemInfo.productType === "windows") { installer.installationFinished.connect(this, Component.prototype.installVCRedist); }
//}
//installer.setDefaultPageVisible(QInstaller.LicenseCheck, false)
}
Expand All @@ -27,6 +28,33 @@ Component.prototype.onInstallationStarted = function()
}
}

Component.prototype.installVCRedist = function()
{
var registryVC2017x64 = installer.execute("reg", new Array("QUERY", "HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\14.0\\VC\\Runtimes\\x64", "/v", "Installed"))[0];
var install_str = "No";
var doInstall = false;
if (!registryVC2017x64) {
doInstall = true;
install_str = "Yes";
}
else
{
var bld = installer.execute("reg", new Array("QUERY", "HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\14.0\\VC\\Runtimes\\x64", "/v", "Bld"))[0];
var elements = bld.split(" ");
bld = parseInt(elements[elements.length-1]);
if (bld < 26706)
{
doInstall = true;
}
}
if (doInstall)
{
QMessageBox.information("vcRedist.install", "Install VS Redistributables", "The application requires Visual Studio 2017 Redistributables. Please follow the steps to install it now.", QMessageBox.OK);
var dir = installer.value("TargetDir") + "/" + installer.value("ProductName");
installer.execute(dir + "/VC_redist.x64.exe", "/norestart", "/passive");
}
}

// here we are creating the operation chain which will be processed at the real installation part later
Component.prototype.createOperations = function()
{
Expand Down