Merge pull request #58 from MyHush/dev
change gpg key,add signing for macos,version bump to v1.1.3
This commit is contained in:
@@ -1,39 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Copyright 2019 The Hush Developers
|
||||
|
||||
UNAME=$(uname)
|
||||
|
||||
if [ "$UNAME" == "Linux" ] ; then
|
||||
JOBS=$(nproc)
|
||||
elif [ "$UNAME" == "FreeBSD" ] ; then
|
||||
JOBS=$(nproc)
|
||||
elif [ "$UNAME" == "Darwin" ] ; then
|
||||
JOBS=$(sysctl -n hw.ncpu)
|
||||
else
|
||||
JOBS=1
|
||||
fi
|
||||
|
||||
|
||||
VERSION=$(cat src/version.h |cut -d\" -f2)
|
||||
echo "Compiling SilentDragonLite $VERSION with $JOBS threads..."
|
||||
CONF=silentdragon-lite.pro
|
||||
|
||||
set -e
|
||||
qbuild () {
|
||||
/home/$USER/Qt/5.11.2/static/bin/qmake $CONF CONFIG+=debug
|
||||
#lupdate $CONF
|
||||
#lrelease $CONF
|
||||
make -j$JOBS
|
||||
}
|
||||
|
||||
if [ "$1" == "clean" ]; then
|
||||
make clean
|
||||
elif [ "$1" == "linguist" ]; then
|
||||
lupdate $CONF
|
||||
lrelease $CONF
|
||||
elif [ "$1" == "cleanbuild" ]; then
|
||||
make clean
|
||||
qbuild
|
||||
else
|
||||
qbuild
|
||||
fi
|
||||
@@ -1,52 +1,51 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
8/k3fH5u794KFQQ3WbeHVoJ4mXI4RsQ=
|
||||
=lY99
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
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
|
||||
=dwdO
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
@@ -22,7 +22,7 @@
|
||||
<item row="0" column="0">
|
||||
<widget class="QTabWidget" name="tabWidget">
|
||||
<property name="currentIndex">
|
||||
<number>4</number>
|
||||
<number>2</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="tab">
|
||||
<attribute name="title">
|
||||
@@ -400,7 +400,7 @@
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1226</width>
|
||||
<height>504</height>
|
||||
<height>493</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="sendToLayout">
|
||||
@@ -713,7 +713,7 @@
|
||||
<attribute name="title">
|
||||
<string>Receive</string>
|
||||
</attribute>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_5">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_15">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_8">
|
||||
<item>
|
||||
@@ -1315,6 +1315,17 @@
|
||||
<addaction name="menuHelp"/>
|
||||
</widget>
|
||||
<widget class="QStatusBar" name="statusBar"/>
|
||||
<widget class="QToolBar" name="toolBar">
|
||||
<property name="windowTitle">
|
||||
<string>toolBar</string>
|
||||
</property>
|
||||
<attribute name="toolBarArea">
|
||||
<enum>TopToolBarArea</enum>
|
||||
</attribute>
|
||||
<attribute name="toolBarBreak">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
</widget>
|
||||
<action name="actionExit">
|
||||
<property name="text">
|
||||
<string>E&xit</string>
|
||||
@@ -1450,7 +1461,6 @@
|
||||
<tabstop>rdioZSAddr</tabstop>
|
||||
<tabstop>rdioTAddr</tabstop>
|
||||
<tabstop>listReceiveAddresses</tabstop>
|
||||
<tabstop>btnReceiveNewAddr</tabstop>
|
||||
<tabstop>txtReceive</tabstop>
|
||||
<tabstop>rcvLabel</tabstop>
|
||||
<tabstop>rcvUpdateLabel</tabstop>
|
||||
|
||||
@@ -17,6 +17,16 @@ case $key in
|
||||
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
|
||||
@@ -35,11 +45,21 @@ if [ -z $QT_PATH ]; then
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if [ -z $CERTIFICATE ]; then
|
||||
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;
|
||||
@@ -76,7 +96,7 @@ mkdir artifacts >/dev/null 2>&1
|
||||
rm -f artifcats/SilentDragonLite.dmg >/dev/null 2>&1
|
||||
rm -f artifacts/rw* >/dev/null 2>&1
|
||||
$QT_PATH/bin/macdeployqt SilentDragonLite.app
|
||||
codesign --deep --force --verify --verbose -s "$CERTIFICATE" --options runtime --timestamp SilentDragonLite.app/
|
||||
codesign --deep --force --verify --verbose -s "$CERTIFICATE" --options runtime --timestamp SilentDragonLite.app
|
||||
echo "[OK]"
|
||||
|
||||
|
||||
@@ -89,3 +109,8 @@ if [ ! -f artifacts/macOS-SilentDragonLite-v$APP_VERSION.dmg ]; then
|
||||
exit 1
|
||||
fi
|
||||
echo "[OK]"
|
||||
|
||||
# Submit to Apple for notarization
|
||||
echo -n "Apple notarization....."
|
||||
xcrun altool --notarize-app -t osx -f artifacts/macOS-SilentDragonLite-v$APP_VERSION.dmg --primary-bundle-id="com.yourcompany.SilentDragonLite" -u "$APPLE_USERNAME" -p "$APPLE_PASSWORD"
|
||||
echo "[OK]"
|
||||
|
||||
@@ -26,6 +26,9 @@ if [ -z $APP_VERSION ]; then echo "APP_VERSION is not set"; exit 1; fi
|
||||
rm -rf release/signatures
|
||||
mkdir -p release/signatures
|
||||
|
||||
# Staple the notarization
|
||||
xcrun stapler staple artifacts/macOS-SilentDragonLite-v$APP_VERSION.dmg
|
||||
|
||||
cd artifacts
|
||||
|
||||
# Remove previous signatures/hashes
|
||||
|
||||
@@ -1 +1 @@
|
||||
#define APP_VERSION "1.1.2"
|
||||
#define APP_VERSION "1.1.3"
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Copyright 2019 The Hush Developers
|
||||
|
||||
|
||||
|
||||
VERSION=$(cat src/version.h |cut -d\" -f2)
|
||||
echo "Compiling SilentDragonLite $VERSION .exe with $JOBS threads..."
|
||||
CONF=silentdragon-lite.pro
|
||||
|
||||
set -e
|
||||
echo 'source $HOME/.cargo/env' >> $HOME/.bashrc
|
||||
CC_x86_64_pc_windows_gnu="x86_64-w64-mingw32.static-gcc"
|
||||
PATH="/home/$USER/github/mxe/usr/bin:${PATH}"
|
||||
mkdir release
|
||||
cp src/precompiled.h release/
|
||||
qbuild () {
|
||||
/home/$USER/github/mxe/usr/bin/x86_64-w64-mingw32.static-qmake-qt5 $CONF CONFIG+=release
|
||||
|
||||
#lupdate $CONF
|
||||
#lrelease $CONF
|
||||
make -j$JOBS
|
||||
}
|
||||
|
||||
if [ "$1" == "clean" ]; then
|
||||
make clean
|
||||
elif [ "$1" == "linguist" ]; then
|
||||
lupdate $CONF
|
||||
lrelease $CONF
|
||||
elif [ "$1" == "cleanbuild" ]; then
|
||||
make clean
|
||||
qbuild
|
||||
else
|
||||
qbuild
|
||||
fi
|
||||
Reference in New Issue
Block a user