Removing some unused and old stuff
@@ -51,10 +51,8 @@
|
||||
</qresource>
|
||||
<qresource prefix="/img">
|
||||
<file>res/hushdlogo.png</file>
|
||||
<file>res/hushdlogo.gif</file>
|
||||
<file>res/silentdragonxlite-animated.gif</file>
|
||||
<file>res/silentdragonxlite-animated-dark.gif</file>
|
||||
<file>res/silentdragonxlite-animated-startup.gif</file>
|
||||
<file>res/silentdragonxlite-animated-startup-dark.gif</file>
|
||||
<file>res/loaderblack.gif</file>
|
||||
<file>res/loaderwhite.gif</file>
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
{
|
||||
"title": "silentdragon-vRELEASE_VERSION",
|
||||
"icon": "logo.icns",
|
||||
"background": "dmgbg.png",
|
||||
"window" : {
|
||||
"size" : { "width" : 600, "height" : 100},
|
||||
"position" : { "x" : 200, "y" : 200}
|
||||
},
|
||||
"contents": [
|
||||
{ "x": 448, "y": 80, "type": "link", "path": "/Applications" },
|
||||
{ "x": 152, "y": 80, "type": "file", "path": "silentdragon.app" }
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 14 KiB |
BIN
res/dmgbg.png
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 56 KiB |
@@ -1,38 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
###
|
||||
# Adapted from: https://stackoverflow.com/a/20703594
|
||||
###
|
||||
|
||||
if [ -z "${1+set}" ]; then
|
||||
echo "Pass path to the inkscape command as first argument"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "${2+set}" ]; then
|
||||
echo "Pass svg file as second argument"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "${3+set}" ]; then
|
||||
echo "Pass output name (w/o .icns) as third argument"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
inkscape=$1
|
||||
svg_file=$2
|
||||
output_name=$3
|
||||
|
||||
set -e
|
||||
mkdir $output_name.iconset
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_16x16.png" -w 16 -h 16 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_16x16@2x.png" -w 32 -h 32 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_32x32.png" -w 32 -h 32 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_32x32@2x.png" -w 64 -h 64 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_128x128.png" -w 128 -h 128 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_128x128@2x.png" -w 256 -h 256 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_256x256.png" -w 256 -h 256 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_256x256@2x.png" -w 512 -h 512 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_512x512.png" -w 512 -h 512 -y 0 "$PWD/$svg_file"
|
||||
$inkscape -z -e "$PWD/$output_name.iconset/icon_512x512@2x.png" -w 1024 -h 1024 -y 0 "$PWD/$svg_file"
|
||||
iconutil -c icns "$output_name.iconset"
|
||||
rm -R "$output_name.iconset"
|
||||
|
||||
|
Before Width: | Height: | Size: 75 KiB |
@@ -1,6 +0,0 @@
|
||||
#!/bin/bash
|
||||
for size in 16 32 48 128 256; do
|
||||
inkscape -z -e $size.png -w $size -h $size logo.svg >/dev/null 2>/dev/null
|
||||
done
|
||||
convert 16.png 32.png 48.png 128.png 256.png -colors 256 icon.ico
|
||||
rm 16.png 32.png 48.png 128.png 256.png
|
||||
BIN
res/sdl-logo.gif
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 1015 KiB |
|
Before Width: | Height: | Size: 79 KiB |
|
Before Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 451 KiB |
@@ -1,78 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<Product Id="*" Name="SilentDragonXLite vRELEASE_VERSION" Language="1033" Version="RELEASE_VERSION" Manufacturer="silentdragonxlite-org" UpgradeCode="fb9bf166-b55f-46b5-a990-9189bdf64533">
|
||||
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
|
||||
|
||||
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
|
||||
<MediaTemplate EmbedCab="yes"/>
|
||||
|
||||
<Icon Id="SilentDragonXLite.exe" SourceFile="res/icon.ico"/>
|
||||
<Property Id="ARPPRODUCTICON" Value="SilentDragonXLite.exe" />
|
||||
|
||||
<Feature Id="ProductFeature" Title="silentdragonxlite" Level="1">
|
||||
<ComponentGroupRef Id="ProductComponents" />
|
||||
<ComponentRef Id="ProgramMenuDir"/>
|
||||
</Feature>
|
||||
|
||||
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER" />
|
||||
|
||||
<WixVariable Id="WixUIBannerBmp" Value="res/wxsbanner.bmp" />
|
||||
<WixVariable Id="WixUIDialogBmp" Value="res/wxsdialog.bmp" />
|
||||
|
||||
<UI>
|
||||
<UIRef Id="WixUI_InstallDir" />
|
||||
<Publish Dialog="WelcomeDlg"
|
||||
Control="Next"
|
||||
Event="NewDialog"
|
||||
Value="InstallDirDlg"
|
||||
Order="2">1</Publish>
|
||||
<Publish Dialog="InstallDirDlg"
|
||||
Control="Back"
|
||||
Event="NewDialog"
|
||||
Value="WelcomeDlg"
|
||||
Order="2">1</Publish>
|
||||
</UI>
|
||||
</Product>
|
||||
|
||||
<Fragment>
|
||||
<Directory Id="TARGETDIR" Name="SourceDir">
|
||||
<Directory Id="ProgramFilesFolder">
|
||||
<Directory Id="INSTALLFOLDER" Name="silentdragonxlite" />
|
||||
</Directory>
|
||||
<Directory Id="ProgramMenuFolder" Name="Programs">
|
||||
<Directory Id="ApplicationProgramsFolder" Name="silentdragonxlite">
|
||||
<Component Id="ProgramMenuDir" Guid="0D560F5A-53E0-4E7E-ADDA-15A26995505E">
|
||||
<RemoveFolder Id="ProgramMenuDir" On="uninstall"/>
|
||||
<RegistryValue Root="HKCU" Key="Software\[Manufacturer]\silentdragonxlite\WixSetup"
|
||||
Type="integer" Value="1" Name="installed" KeyPath="yes" />
|
||||
</Component>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Fragment>
|
||||
|
||||
|
||||
<Fragment>
|
||||
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
|
||||
<Component Id="ProductComponent" Guid="0D210F5A-53E0-4E7E-CAAD-15A26995505E">
|
||||
<File Source="SilentDragonXLite.exe" KeyPath="yes">
|
||||
<Shortcut Id="startMenuShotcut" Advertise="yes" Directory="ApplicationProgramsFolder"
|
||||
Name="SilentDragonXLite" WorkingDirectory="INSTALLFOLDER" Icon="SilentDragonXLite.exe" >
|
||||
</Shortcut>
|
||||
</File>
|
||||
<File Source="LICENSE" />
|
||||
|
||||
<RegistryKey Root="HKCR" Key="hush">
|
||||
<RegistryValue Type="string" Name="URL Protocol" Value=""/>
|
||||
<RegistryValue Type="string" Value="URL:hush URI protocol"/>
|
||||
<RegistryKey Key="DefaultIcon">
|
||||
<RegistryValue Type="string" Value="SilentDragonXLite.exe" />
|
||||
</RegistryKey>
|
||||
<RegistryKey Key="shell\open\command">
|
||||
<RegistryValue Type="string" Value=""[INSTALLFOLDER]SilentDragonXLite.exe" "%1"" />
|
||||
</RegistryKey>
|
||||
</RegistryKey>
|
||||
</Component>
|
||||
</ComponentGroup>
|
||||
</Fragment>
|
||||
</Wix>
|
||||
@@ -1,7 +0,0 @@
|
||||
Package: SilentDragonXLite
|
||||
Version: RELEASE_VERSION
|
||||
Section: base
|
||||
Priority: optional
|
||||
Architecture: amd64
|
||||
Maintainer: DenioD <admin@hush-lightwallet.de>
|
||||
Description: SilentDragonXLite is a Lightwallet for Dragonx.
|
||||
@@ -1,13 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Name=SilentDragonXLite
|
||||
Comment=Lightclient UI wallet for DragonX
|
||||
GenericName=Wallet
|
||||
Exec=/usr/local/bin/SilentDragonXLite %u
|
||||
Icon=SilentDragonXLite.xpm
|
||||
Type=Application
|
||||
StartupNotify=true
|
||||
StartupWMClass=SilentDragonXLite
|
||||
Categories=Utility;
|
||||
MimeType=x-scheme-handler/dragonx;
|
||||
Keywords=SilentDragonXLite;
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
# Unified build script for Windows, Linux and Mac builder. Run on a Windows machine inside powershell.
|
||||
param (
|
||||
[Parameter(Mandatory=$true)][string]$version,
|
||||
[Parameter(Mandatory=$true)][string]$prev,
|
||||
[Parameter(Mandatory=$true)][string]$server
|
||||
)
|
||||
|
||||
Write-Host "[Initializing]"
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/linux-binaries-silentdragonxlite-v$version.tar.gz
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/linux-deb-silentdragonxlite-v$version.deb
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/Windows-binaries-silentdragonxlite-v$version.zip
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/Windows-installer-silentdragonxlite-v$version.msi
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/macOS-silentdragonxlite-v$version.dmg
|
||||
|
||||
Remove-Item -Recurse -Force -ErrorAction Ignore ./bin
|
||||
Remove-Item -Recurse -Force -ErrorAction Ignore ./debug
|
||||
Remove-Item -Recurse -Force -ErrorAction Ignore ./release
|
||||
|
||||
# Create the version.h file and update README version number
|
||||
Write-Output "#define APP_VERSION `"$version`"" > src/version.h
|
||||
Get-Content README.md | Foreach-Object { $_ -replace "$prev", "$version" } | Out-File README-new.md
|
||||
Move-Item -Force README-new.md README.md
|
||||
Write-Host ""
|
||||
|
||||
Write-Host "[Building Linux + Windows]"
|
||||
Write-Host -NoNewline "Copying files.........."
|
||||
ssh $server "rm -rf /tmp/zqwbuild"
|
||||
ssh $server "mkdir /tmp/zqwbuild"
|
||||
scp -r src/ res/ ./silentdragonxlite.pro ./application.qrc ./LICENSE ./README.md ${server}:/tmp/zqwbuild/ | Out-Null
|
||||
ssh $server "dos2unix -q /tmp/zqwbuild/src/scripts/mkrelease.sh" | Out-Null
|
||||
ssh $server "dos2unix -q /tmp/zqwbuild/src/version.h"
|
||||
Write-Host "[OK]"
|
||||
|
||||
ssh $server "cd /tmp/zqwbuild && APP_VERSION=$version PREV_VERSION=$prev bash src/scripts/mkrelease.sh"
|
||||
if (!$?) {
|
||||
Write-Output "[Error]"
|
||||
exit 1;
|
||||
}
|
||||
|
||||
New-Item artifacts -itemtype directory -Force | Out-Null
|
||||
scp ${server}:/tmp/zqwbuild/artifacts/* artifacts/ | Out-Null
|
||||
scp -r ${server}:/tmp/zqwbuild/release . | Out-Null
|
||||
|
||||
Write-Host -NoNewline "Building Installer....."
|
||||
src/scripts/mkwininstaller.ps1 -version $version 2>&1 | Out-Null
|
||||
if (!$?) {
|
||||
Write-Output "[Error]"
|
||||
exit 1;
|
||||
}
|
||||
Write-Host "[OK]"
|
||||
|
||||
# Finally, test to make sure all files exist
|
||||
Write-Host -NoNewline "Checking Build........."
|
||||
if (! (Test-Path ./artifacts/linux-binaries-silentdragonxlite-v$version.tar.gz) -or
|
||||
! (Test-Path ./artifacts/linux-deb-silentdragonxlite-v$version.deb) -or
|
||||
! (Test-Path ./artifacts/Windows-binaries-silentdragonxlite-v$version.zip) -or
|
||||
! (Test-Path ./artifacts/Windows-installer-silentdragonxlite-v$version.msi) ) {
|
||||
Write-Host "[Error]"
|
||||
exit 1;
|
||||
}
|
||||
Write-Host "[OK]"
|
||||
@@ -1,62 +0,0 @@
|
||||
FROM ubuntu:16.04
|
||||
LABEL Description="Ubuntu 16.04 for static Qt 5.11.2"
|
||||
|
||||
# Dependencies of the Qt offline installer
|
||||
RUN apt-get -y update && apt-get install -y \
|
||||
curl libdbus-1-3 libexpat1 \
|
||||
libgl1-mesa-dev libglu1-mesa-dev libfontconfig1-dev libssl-dev \
|
||||
libfreetype6 libgl1-mesa-glx libglib2.0-0 \
|
||||
libx11-6 libx11-xcb1 \
|
||||
g++ build-essential cmake wget git clang++-6.0 \
|
||||
software-properties-common \
|
||||
autoconf automake autopoint bison flex gperf libtool libtool-bin intltool lzip python ruby unzip p7zip-full libgdk-pixbuf2.0-dev libltdl-dev
|
||||
|
||||
# Hack to make clang work with Qt
|
||||
RUN ln -s /usr/bin/clang++-6.0 /usr/bin/clang++ && \
|
||||
ln -s /usr/bin/clang-6.0 /usr/bin/clang
|
||||
|
||||
# Get OpenSSL
|
||||
RUN cd /opt && wget https://www.openssl.org/source/openssl-1.0.2r.tar.gz && \
|
||||
tar xvf openssl-1.0.2r.tar.gz && \
|
||||
cd openssl-1.0.2r && ./Configure linux-x86_64 && make -j$(nproc) && \
|
||||
cd /opt && rm openssl-1.0.2r.tar.gz
|
||||
|
||||
# Get Qt5.11.2
|
||||
RUN cd /opt && \
|
||||
wget https://download.qt.io/archive/qt/5.11/5.11.2/single/qt-everywhere-src-5.11.2.tar.xz && \
|
||||
tar xvf qt-everywhere-src-5.11.2.tar.xz && \
|
||||
cd qt-everywhere-src-5.11.2 && \
|
||||
OPENSSL_LIBS='-L/opt/openssl-1.0.2r -lssl -lcrypto' ./configure -static -prefix /opt/Qt/5.11.2/static -skip qtlocation -skip qtmacextras -skip qtpurchasing -skip qtscript -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qtdatavis3d -skip qtdoc -skip qtcharts -skip qtdeclarative -skip qt3d -skip qtwebengine -skip qtandroidextras -skip qtwebview -skip qtgamepad -skip qtquickcontrols -skip qtquickcontrols2 -skip qtremoteobjects -skip qtwebview -skip qtwebchannel -skip qtwebglplugin -nomake examples -nomake tests -qt-zlib -qt-libpng -qt-xcb -qt-xkbcommon -feature-fontconfig -no-feature-getentropy -release -openssl-linked -platform linux-clang -opensource -confirm-license
|
||||
|
||||
# Run the make multiple times, because for some reason (multithreading, probably) it fails
|
||||
# the first time.
|
||||
RUN cd /opt/qt-everywhere-src-5.11.2 && ( make -j$(nproc) || make -j4 || make )
|
||||
|
||||
RUN mkdir -p /opt/Qt/5.11.2 && cd /opt/qt-everywhere-src-5.11.2 && make -j4 install
|
||||
|
||||
RUN cd /opt && rm qt-everywhere-src-5.11.2.tar.xz && rm -rf qt-everywhere-src-5.11.2
|
||||
|
||||
# Get and build MXE
|
||||
RUN cd /opt && \
|
||||
git clone https://github.com/mxe/mxe.git && \
|
||||
cd /opt/mxe && \
|
||||
make -j$(nproc) MXE_TARGETS=x86_64-w64-mingw32.static qtbase
|
||||
|
||||
# Add rust
|
||||
RUN apt install -y gcc-aarch64-linux-gnu
|
||||
|
||||
RUN curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.38.0 -y
|
||||
RUN echo 'source $HOME/.cargo/env' >> $HOME/.bashrc
|
||||
RUN ~/.cargo/bin/rustup target add x86_64-pc-windows-gnu
|
||||
RUN ~/.cargo/bin/rustup target add aarch64-unknown-linux-gnu
|
||||
|
||||
# Append the linker to the cargo config for Windows cross compile
|
||||
RUN echo "[target.x86_64-pc-windows-gnu]" >> ~/.cargo/config && \
|
||||
echo "linker = 'x86_64-w64-mingw32.static-gcc'" >> ~/.cargo/config
|
||||
|
||||
RUN echo "[target.aarch64-unknown-linux-gnu]" >> ~/.cargo/config && \
|
||||
echo "linker = '/usr/bin/aarch64-linux-gnu-gcc'" >> ~/.cargo/config
|
||||
|
||||
ENV CC_x86_64_pc_windows_gnu="x86_64-w64-mingw32.static-gcc"
|
||||
ENV CC_aarch64_unknown_linux_gnu="aarch64-linux-gnu-gcc"
|
||||
ENV PATH="/opt/mxe/usr/bin:${PATH}"
|
||||
@@ -1,17 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ -z $QT_STATIC ]; then
|
||||
echo "QT_STATIC is not set. Please set it to the base directory of a statically compiled Qt";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
rm -f res/*.qm
|
||||
$QT_STATIC/bin/lrelease silentdragon-lite.pro
|
||||
|
||||
# Then update the qt base translations. First, get all languages
|
||||
ls res/*.qm | awk -F '[_.]' '{print $4}' | while read -r language ; do
|
||||
if [ -f $QT_STATIC/translations/qtbase_$language.qm ]; then
|
||||
$QT_STATIC/bin/lconvert -o res/zec_$language.qm $QT_STATIC/translations/qtbase_$language.qm res/silentdragonxlite_$language.qm
|
||||
mv res/zec_$language.qm res/silentdragonxlite_$language.qm
|
||||
fi
|
||||
done
|
||||
@@ -1,104 +0,0 @@
|
||||
# Unified build script for Windows, Linux and Mac builder. Run on a Windows machine inside powershell.
|
||||
param (
|
||||
[Parameter(Mandatory=$true)][string]$version,
|
||||
[Parameter(Mandatory=$true)][string]$prev,
|
||||
[Parameter(Mandatory=$true)][string]$certificate,
|
||||
[Parameter(Mandatory=$true)][string]$server,
|
||||
[Parameter(Mandatory=$true)][string]$winserver
|
||||
)
|
||||
|
||||
Write-Host "[Initializing]"
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/linux-binaries-SilentDragonXLite-v$version.tar.gz
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/linux-deb-SilentDragonXLite-v$version.deb
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/Windows-binaries-SilentDragonXLite-v$version.zip
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/Windows-installer-SilentDragonXLite-v$version.msi
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/macOS-SilentDragonXLite-v$version.dmg
|
||||
Remove-Item -Force -ErrorAction Ignore ./artifacts/signatures-v$version.tar.gz
|
||||
|
||||
|
||||
Remove-Item -Recurse -Force -ErrorAction Ignore ./bin
|
||||
Remove-Item -Recurse -Force -ErrorAction Ignore ./debug
|
||||
Remove-Item -Recurse -Force -ErrorAction Ignore ./release
|
||||
|
||||
# Create the version.h file and update README version number
|
||||
Write-Output "#define APP_VERSION `"$version`"" > src/version.h
|
||||
Get-Content README.md | Foreach-Object { $_ -replace "$prev", "$version" } | Out-File README-new.md
|
||||
Move-Item -Force README-new.md README.md
|
||||
Write-Host ""
|
||||
|
||||
|
||||
Write-Host "[Building on Mac]"
|
||||
bash src/scripts/mkmacdmg.sh --qt_path ~/Qt/5.11.1/clang_64/ --version $version --certificate "$certificate"
|
||||
if (! $?) {
|
||||
Write-Output "[Error]"
|
||||
exit 1;
|
||||
}
|
||||
Write-Host ""
|
||||
|
||||
|
||||
Write-Host "[Building Linux + Windows]"
|
||||
Write-Host -NoNewline "Copying files.........."
|
||||
# Cleanup some local files to aid copying
|
||||
rm -rf lib/target/
|
||||
ssh $server "rm -rf /tmp/zqwbuild"
|
||||
ssh $server "mkdir /tmp/zqwbuild"
|
||||
scp -r src/ singleapplication/ res/ ./silentdragon-lite.pro ./application.qrc ./LICENSE ./README.md ${server}:/tmp/zqwbuild/ | Out-Null
|
||||
ssh $server "dos2unix -q /tmp/zqwbuild/src/scripts/mkrelease.sh" | Out-Null
|
||||
ssh $server "dos2unix -q /tmp/zqwbuild/src/version.h"
|
||||
Write-Host "[OK]"
|
||||
|
||||
ssh $server "cd /tmp/zqwbuild && APP_VERSION=$version PREV_VERSION=$prev bash src/scripts/mkrelease.sh"
|
||||
if (!$?) {
|
||||
Write-Output "[Error]"
|
||||
exit 1;
|
||||
}
|
||||
|
||||
New-Item artifacts -itemtype directory -Force | Out-Null
|
||||
scp ${server}:/tmp/zqwbuild/artifacts/* artifacts/ | Out-Null
|
||||
scp -r ${server}:/tmp/zqwbuild/release . | Out-Null
|
||||
|
||||
Write-Host -NoNewline "Building Installer....."
|
||||
ssh $winserver "Remove-Item -Path zqwbuild -Recurse" | Out-Null
|
||||
ssh $winserver "New-Item zqwbuild -itemtype directory" | Out-Null
|
||||
|
||||
# Note: For some mysterious reason, we can't seem to do a scp from here to windows machine.
|
||||
# So, we'll ssh to windows, and execute an scp command to pull files from here to there.
|
||||
# Same while copying the built msi. A straight scp pull from windows to here doesn't work,
|
||||
# so we ssh to windows, and then scp push the file to here.
|
||||
$myhostname = (ipconfig getifaddr en0) | Out-String -NoNewline
|
||||
# Powershell seems not to be able to remove this directory for some reason!
|
||||
# Remove-Item -Path /tmp/zqwbuild -Recurse -ErrorAction Ignore | Out-Null
|
||||
bash "rm -rf /tmp/zqwbuild" 2>&1 | Out-Null
|
||||
New-Item -Path /tmp/zqwbuild -itemtype directory -Force | Out-Null
|
||||
Copy-Item src /tmp/zqwbuild/ -Recurse -Force
|
||||
Copy-Item res /tmp/zqwbuild/ -Recurse -Force
|
||||
Copy-Item release /tmp/zqwbuild/ -Recurse -Force
|
||||
|
||||
# Remove some unnecessary stuff from the tmp directory to speed up copying
|
||||
Remove-Item -Recurse -ErrorAction Ignore /tmp/zqwbuild/res/libsodium
|
||||
|
||||
ssh $winserver "scp -r ${myhostname}:/tmp/zqwbuild/* zqwbuild/"
|
||||
ssh $winserver "cd zqwbuild ; src/scripts/mkwininstaller.ps1 -version $version" >/dev/null
|
||||
if (!$?) {
|
||||
Write-Output "[Error]"
|
||||
exit 1;
|
||||
}
|
||||
ssh $winserver "scp zqwbuild/artifacts/* ${myhostname}:/tmp/zqwbuild/"
|
||||
Copy-Item /tmp/zqwbuild/*.msi artifacts/
|
||||
Write-Host "[OK]"
|
||||
|
||||
# Finally, test to make sure all files exist
|
||||
Write-Host -NoNewline "Checking Build........."
|
||||
if (! (Test-Path ./artifacts/linux-binaries-SilentDragonXLite-v$version.tar.gz) -or
|
||||
! (Test-Path ./artifacts/linux-deb-SilentDragonXLite-v$version.deb) -or
|
||||
! (Test-Path ./artifacts/Windows-binaries-SilentDragonXLite-v$version.zip) -or
|
||||
! (Test-Path ./artifacts/macOS-SilentDragonXLite-v$version.dmg) -or
|
||||
! (Test-Path ./artifacts/Windows-installer-SilentDragonXLite-v$version.msi) ) {
|
||||
Write-Host "[Error]"
|
||||
exit 1;
|
||||
}
|
||||
Write-Host "[OK]"
|
||||
|
||||
Write-Host -NoNewline "Signing Binaries......."
|
||||
bash src/scripts/signbinaries.sh --version $version
|
||||
Write-Host "[OK]"
|
||||
@@ -1,116 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Accept the variables as command line arguments as well
|
||||
POSITIONAL=()
|
||||
while [[ $# -gt 0 ]]
|
||||
do
|
||||
key="$1"
|
||||
|
||||
case $key in
|
||||
-q|--qt_path)
|
||||
QT_PATH="$2"
|
||||
shift # past argument
|
||||
shift # past value
|
||||
;;
|
||||
-c|--certificate)
|
||||
CERTIFICATE="$2"
|
||||
shift # past argument
|
||||
shift # past value
|
||||
;;
|
||||
-u|--username)
|
||||
APPLE_USERNAME="$2"
|
||||
shift # past argument
|
||||
shift # past value
|
||||
;;
|
||||
-p|--password)
|
||||
APPLE_PASSWORD="$2"
|
||||
shift # past argument
|
||||
shift # past value
|
||||
;;
|
||||
-v|--version)
|
||||
APP_VERSION="$2"
|
||||
shift # past argument
|
||||
shift # past value
|
||||
;;
|
||||
*) # unknown option
|
||||
POSITIONAL+=("$1") # save it in an array for later
|
||||
shift # past argument
|
||||
;;
|
||||
esac
|
||||
done
|
||||
set -- "${POSITIONAL[@]}" # restore positional parameters
|
||||
|
||||
if [ -z $QT_PATH ]; then
|
||||
echo "QT_PATH is not set. Please set it to the base directory of Qt";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if [ -z "$CERTIFICATE" ]; then
|
||||
echo "CERTIFICATE is not set. Please set it the name of the MacOS developer certificate to sign the binary with";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if [ -z "$APPLE_USERNAME" ]; then
|
||||
echo "APPLE_USERNAME is not set. Please set it the name of the MacOS developer login email to submit the binary for Apple for notarization";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if [ -z "$APPLE_PASSWORD" ]; then
|
||||
echo "APPLE_PASSWORD is not set. Please set it the name of the MacOS developer Application password to submit the binary for Apple for notarization";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if [ -z $APP_VERSION ]; then
|
||||
echo "APP_VERSION is not set. Please set it to the current release version of the app";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if ! cat src/version.h | grep -q "$APP_VERSION"; then
|
||||
echo "Version mismatch in src/version.h"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
export PATH=$PATH:/usr/local/bin
|
||||
|
||||
#Clean
|
||||
echo -n "Cleaning..............."
|
||||
make distclean >/dev/null 2>&1
|
||||
rm -f artifacts/macOS-SilentDragonXLite-v$APP_VERSION.dmg
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
echo -n "Configuring............"
|
||||
# Build
|
||||
QT_STATIC=$QT_PATH src/scripts/dotranslations.sh >/dev/null
|
||||
$QT_PATH/bin/qmake silentdragon-lite.pro CONFIG+=release >/dev/null
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
echo -n "Building..............."
|
||||
make -j4 >/dev/null
|
||||
echo "[OK]"
|
||||
|
||||
#Qt deploy
|
||||
echo -n "Deploying.............."
|
||||
mkdir artifacts >/dev/null 2>&1
|
||||
rm -f artifcats/SilentDragonXLite.dmg >/dev/null 2>&1
|
||||
rm -f artifacts/rw* >/dev/null 2>&1
|
||||
$QT_PATH/bin/macdeployqt SilentDragonXLite.app
|
||||
codesign --deep --force --verify --verbose -s "$CERTIFICATE" --options runtime --timestamp SilentDragonXLite.app
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
echo -n "Building dmg..........."
|
||||
mv SilentDragonXLite.app SilentDragonXLite.app
|
||||
create-dmg --volname "SilentDragonXLite-v$APP_VERSION" --volicon "res/logo.icns" --window-pos 200 120 --icon "SilentDragonXLite.app" 200 190 --icon-size 100 --app-drop-link 600 185 --hide-extension "SilentDragonXLite.app" --window-size 800 400 --hdiutil-quiet --background res/dmgbg.png artifacts/macOS-SilentDragonXLite-v$APP_VERSION.dmg SilentDragonXLite.app >/dev/null 2>&1
|
||||
|
||||
if [ ! -f artifacts/macOS-SilentDragonXLite-v$APP_VERSION.dmg ]; then
|
||||
echo "[ERROR]"
|
||||
exit 1
|
||||
fi
|
||||
echo "[OK]"
|
||||
|
||||
# Submit to Apple for notarization
|
||||
echo -n "Apple notarization....."
|
||||
xcrun altool --notarize-app -t osx -f artifacts/macOS-SilentDragonXLite-v$APP_VERSION.dmg --primary-bundle-id="com.MyHush.SilentDragonXLite" -u "$APPLE_USERNAME" -p "$APPLE_PASSWORD"
|
||||
echo "[OK]"
|
||||
@@ -1,166 +0,0 @@
|
||||
#!/bin/bash
|
||||
if [ -z $QT_STATIC ]; then
|
||||
echo "QT_STATIC is not set. Please set it to the base directory of a statically compiled Qt";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if [ -z $APP_VERSION ]; then echo "APP_VERSION is not set"; exit 1; fi
|
||||
if [ -z $PREV_VERSION ]; then echo "PREV_VERSION is not set"; exit 1; fi
|
||||
|
||||
echo -n "Version files.........."
|
||||
# Replace the version number in the .pro file so it gets picked up everywhere
|
||||
sed -i "s/${PREV_VERSION}/${APP_VERSION}/g" silentdragon-lite.pro > /dev/null
|
||||
|
||||
# Also update it in the README.md
|
||||
sed -i "s/${PREV_VERSION}/${APP_VERSION}/g" README.md > /dev/null
|
||||
echo "[OK]"
|
||||
|
||||
echo -n "Cleaning..............."
|
||||
rm -rf bin/*
|
||||
rm -rf artifacts/*
|
||||
make distclean >/dev/null 2>&1
|
||||
echo "[OK]"
|
||||
|
||||
echo ""
|
||||
echo "[Building on" `lsb_release -r`"]"
|
||||
|
||||
echo -n "Configuring............"
|
||||
QT_STATIC=$QT_STATIC bash src/scripts/dotranslations.sh >/dev/null
|
||||
$QT_STATIC/bin/qmake silentdragon-lite.pro -spec linux-clang CONFIG+=release > /dev/null
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
echo -n "Building..............."
|
||||
rm -rf bin/SilentDragonXLite* > /dev/null
|
||||
# Build the lib first
|
||||
cd lib && make release && cd ..
|
||||
make -j$(nproc) > /dev/null
|
||||
make install INSTALL_ROOT=AppDir
|
||||
|
||||
# now, build AppImage using linuxdeploy and linuxdeploy-plugin-qt
|
||||
# download linuxdeploy and its Qt plugin
|
||||
wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
|
||||
wget https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage
|
||||
|
||||
# make them executable
|
||||
chmod +x linuxdeploy*.AppImage
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
# Test for Qt
|
||||
echo -n "Static link............"
|
||||
if [[ $(ldd SilentDragonXLite | grep -i "Qt") ]]; then
|
||||
echo "FOUND QT; ABORT";
|
||||
exit 1
|
||||
fi
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
echo -n "Packaging.............."
|
||||
mkdir bin/SilentDragonXLite-v$APP_VERSION > /dev/null
|
||||
strip SilentDragonXLite
|
||||
|
||||
cp SilentDragonXLite bin/SilentDragonXLite-v$APP_VERSION > /dev/null
|
||||
cp README.md bin/SilentDragonXLite-v$APP_VERSION > /dev/null
|
||||
cp LICENSE bin/SilentDragonXLite-v$APP_VERSION > /dev/null
|
||||
|
||||
cd bin && tar czf linux-SilentDragonXLite-v$APP_VERSION.tar.gz SilentDragonXLite-v$APP_VERSION/ > /dev/null
|
||||
cd ..
|
||||
|
||||
mkdir artifacts >/dev/null 2>&1
|
||||
cp bin/linux-SilentDragonXLite-v$APP_VERSION.tar.gz ./artifacts/linux-binaries-SilentDragonXLite-v$APP_VERSION.tar.gz
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
if [ -f artifacts/linux-binaries-SilentDragonXLite-v$APP_VERSION.tar.gz ] ; then
|
||||
echo -n "Package contents......."
|
||||
# Test if the package is built OK
|
||||
if tar tf "artifacts/linux-binaries-SilentDragonXLite-v$APP_VERSION.tar.gz" | wc -l | grep -q "4"; then
|
||||
echo "[OK]"
|
||||
else
|
||||
echo "[ERROR]"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "[ERROR]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo -n "Building deb..........."
|
||||
debdir=bin/deb/SilentDragonXLite-v$APP_VERSION
|
||||
mkdir -p $debdir > /dev/null
|
||||
mkdir $debdir/DEBIAN
|
||||
mkdir -p $debdir/usr/local/bin
|
||||
|
||||
cat src/scripts/control | sed "s/RELEASE_VERSION/$APP_VERSION/g" > $debdir/DEBIAN/control
|
||||
|
||||
cp SilentDragonXLite $debdir/usr/local/bin/
|
||||
|
||||
mkdir -p $debdir/usr/share/pixmaps/
|
||||
cp res/SilentDragonXLite.xpm $debdir/usr/share/pixmaps/
|
||||
|
||||
mkdir -p $debdir/usr/share/applications
|
||||
cp src/scripts/desktopentry $debdir/usr/share/applications/SilentDragonXLite.desktop
|
||||
|
||||
dpkg-deb --build $debdir >/dev/null
|
||||
cp $debdir.deb artifacts/linux-deb-SilentDragonXLite-v$APP_VERSION.deb
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
|
||||
echo ""
|
||||
echo "[Windows]"
|
||||
|
||||
if [ -z $MXE_PATH ]; then
|
||||
echo "MXE_PATH is not set. Set it to ~/github/mxe/usr/bin if you want to build Windows"
|
||||
echo "Not building Windows"
|
||||
exit 0;
|
||||
fi
|
||||
|
||||
export PATH=$MXE_PATH:$PATH
|
||||
|
||||
echo -n "Configuring............"
|
||||
make clean > /dev/null
|
||||
#rm -f SilentDragonXLite-mingw.pro
|
||||
rm -rf release/
|
||||
cp src/precompiled.h release/
|
||||
#Mingw seems to have trouble with precompiled headers, so strip that option from the .pro file
|
||||
#cat silentdragon-lite.pro | sed "s/precompile_header/release/g" | sed "s/PRECOMPILED_HEADER.*//g" > SilentDragonXLite-mingw.pro
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
echo -n "Building..............."
|
||||
cp src/precompiled.h release/
|
||||
# Build the lib first
|
||||
cd lib && make winrelease && cd ..
|
||||
cp src/precompiled.h release/
|
||||
x86_64-w64-mingw32.static-qmake-qt5 silentdragon-lite.pro CONFIG+=release > /dev/null
|
||||
cp src/precompiled.h release/
|
||||
make -j32 > /dev/null
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
echo -n "Packaging.............."
|
||||
mkdir release/SilentDragonXLite-v$APP_VERSION
|
||||
cp release/SilentDragonXLite.exe release/SilentDragonXLite-v$APP_VERSION
|
||||
cp README.md release/SilentDragonXLite-v$APP_VERSION
|
||||
cp LICENSE release/SilentDragonXLite-v$APP_VERSION
|
||||
cd release && zip -r Windows-binaries-SilentDragonXLite-v$APP_VERSION.zip SilentDragonXLite-v$APP_VERSION/ > /dev/null
|
||||
cd ..
|
||||
|
||||
mkdir artifacts >/dev/null 2>&1
|
||||
cp release/Windows-binaries-SilentDragonXLite-v$APP_VERSION.zip ./artifacts/
|
||||
echo "[OK]"
|
||||
|
||||
if [ -f artifacts/Windows-binaries-SilentDragonXLite-v$APP_VERSION.zip ] ; then
|
||||
echo -n "Package contents......."
|
||||
if unzip -l "artifacts/Windows-binaries-SilentDragonXLite-v$APP_VERSION.zip" | wc -l | grep -q "9"; then
|
||||
echo "[OK]"
|
||||
else
|
||||
echo "[ERROR]"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "[ERROR]"
|
||||
exit 1
|
||||
fi
|
||||
@@ -1,26 +0,0 @@
|
||||
param (
|
||||
[Parameter(Mandatory=$true)][string]$version
|
||||
)
|
||||
|
||||
$target="SilentDragonXLite-v$version"
|
||||
|
||||
Remove-Item -Path release/wininstaller -Recurse -ErrorAction Ignore | Out-Null
|
||||
New-Item release/wininstaller -itemtype directory | Out-Null
|
||||
|
||||
Copy-Item release/$target/SilentDragonXLite.exe release/wininstaller/
|
||||
Copy-Item release/$target/LICENSE release/wininstaller/
|
||||
|
||||
Get-Content src/scripts/silentdragonxlite.wxs | ForEach-Object { $_ -replace "RELEASE_VERSION", "$version" } | Out-File -Encoding utf8 release/wininstaller/silentdragonxlite.wxs
|
||||
|
||||
candle.exe release/wininstaller/silentdragonxlite.wxs -o release/wininstaller/silentdragonxlite.wixobj
|
||||
if (!$?) {
|
||||
exit 1;
|
||||
}
|
||||
|
||||
light.exe -ext WixUIExtension -cultures:en-us release/wininstaller/SilentDragonXLite.wixobj -out release/wininstaller/SilentDragonXLite.msi
|
||||
if (!$?) {
|
||||
exit 1;
|
||||
}
|
||||
|
||||
New-Item artifacts -itemtype directory -Force | Out-Null
|
||||
Copy-Item release/wininstaller/SilentDragonXLite.msi ./artifacts/Windows-installer-$target.msi
|
||||
@@ -1,53 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Accept the variables as command line arguments as well
|
||||
POSITIONAL=()
|
||||
while [[ $# -gt 0 ]]
|
||||
do
|
||||
key="$1"
|
||||
|
||||
case $key in
|
||||
-v|--version)
|
||||
APP_VERSION="$2"
|
||||
shift # past argument
|
||||
shift # past value
|
||||
;;
|
||||
*) # unknown option
|
||||
POSITIONAL+=("$1") # save it in an array for later
|
||||
shift # past argument
|
||||
;;
|
||||
esac
|
||||
done
|
||||
set -- "${POSITIONAL[@]}" # restore positional parameters
|
||||
|
||||
if [ -z $APP_VERSION ]; then echo "APP_VERSION is not set"; exit 1; fi
|
||||
|
||||
# Store the hash and signatures here
|
||||
rm -rf release/signatures
|
||||
mkdir -p release/signatures
|
||||
|
||||
# Staple the notarization
|
||||
xcrun stapler staple artifacts/macOS-SilentDragonXLite-v$APP_VERSION.dmg
|
||||
|
||||
cd artifacts
|
||||
|
||||
# Remove previous signatures/hashes
|
||||
rm -f sha256sum-v$APP_VERSION.txt
|
||||
rm -f signatures-v$APP_VERSION.tar.gz
|
||||
|
||||
# sha256sum the binaries
|
||||
sha256sum *$APP_VERSION* > sha256sum-v$APP_VERSION.txt
|
||||
|
||||
for i in $( ls *SilentDragonXLite-v$APP_VERSION* sha256sum-v$APP_VERSION* ); do
|
||||
echo "Signing" $i
|
||||
gpg --batch --output ../release/signatures/$i.sig --detach-sig $i
|
||||
done
|
||||
|
||||
mv sha256sum-v$APP_VERSION.txt ../release/signatures/
|
||||
cp ../res/SIGNATURES_README ../release/signatures/README
|
||||
|
||||
cd ../release/signatures
|
||||
#tar -czf signatures-v$APP_VERSION.tar.gz *
|
||||
zip signatures-v$APP_VERSION.zip *
|
||||
mv signatures-v$APP_VERSION.zip ../../artifacts
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo -n AR: ;grep unfinished silentdragonxlite_ar.ts | wc -l
|
||||
echo -n BE: ;grep unfinished silentdragonxlite_be.ts | wc -l
|
||||
echo -n DE: ;grep unfinished silentdragonxlite_de.ts | wc -l
|
||||
echo -n ES: ;grep unfinished silentdragonxlite_es.ts | wc -l
|
||||
echo -n FA: ;grep unfinished silentdragonxlite_fa.ts | wc -l
|
||||
echo -n FR: ;grep unfinished silentdragonxlite_fr.ts | wc -l
|
||||
echo -n HR: ;grep unfinished silentdragonxlite_hr.ts | wc -l
|
||||
echo -n ID: ;grep unfinished silentdragonxlite_id.ts | wc -l
|
||||
echo -n IT: ;grep unfinished silentdragonxlite_it.ts | wc -l
|
||||
echo -n NL: ;grep unfinished silentdragonxlite_nl.ts | wc -l
|
||||
echo -n PT: ;grep unfinished silentdragonxlite_pt.ts | wc -l
|
||||
echo -n RO: ;grep unfinished silentdragonxlite_ro.ts | wc -l
|
||||
echo -n RU: ;grep unfinished silentdragonxlite_ru.ts | wc -l
|
||||
echo -n SR: ;grep unfinished silentdragonxlite_sr.ts | wc -l
|
||||
echo -n TR: ;grep unfinished silentdragonxlite_tr.ts | wc -l
|
||||
echo -n UD: ;grep unfinished silentdragonxlite_ud.ts | wc -l
|
||||
echo -n ZH: ;grep unfinished silentdragonxlite_zh.ts | wc -l
|
||||