Fork of Unvanquished game updater customized to update and download my own projects. Please check the original source here: https://github.com/Unvanquished/updater/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
glitchapp 7dc6b6226b custom text and torrent added 3 months ago
resources custom text and torrent added 3 months ago
.dockerignore first commit 3 months ago
.gitignore first commit 3 months ago
.gitmodules first commit 3 months ago
Dockerfile first commit 3 months ago
Dockerfile.win first commit 3 months ago
DownloadInfo.qml first commit 3 months ago
ExecInExplorer.cpp first commit 3 months ago
News.qml first commit 3 months ago
NewsCard.qml first commit 3 months ago
README.md first commit 3 months ago
Settings.qml first commit 3 months ago
UpdateFailed.qml first commit 3 months ago
ariadownloader.cpp first commit 3 months ago
ariadownloader.h first commit 3 months ago
azure-pipelines.yml first commit 3 months ago
currentversionfetcher.cpp first commit 3 months ago
currentversionfetcher.h first commit 3 months ago
deployment.md first commit 3 months ago
disable-statx.patch first commit 3 months ago
downloadtimecalculator.cpp first commit 3 months ago
downloadtimecalculator.h first commit 3 months ago
downloadworker.cpp first commit 3 months ago
downloadworker.h first commit 3 months ago
mac-build-aria.sh first commit 3 months ago
main.cpp first commit 3 months ago
main.qml first commit 3 months ago
osx.cpp first commit 3 months ago
qml.qrc first commit 3 months ago
qmldownloader.cpp custom text and torrent added 3 months ago
qmldownloader.h first commit 3 months ago
qtquickcontrols2.conf first commit 3 months ago
settings.cpp first commit 3 months ago
settings.h first commit 3 months ago
splash.qml first commit 3 months ago
system.h first commit 3 months ago
unix.cpp first commit 3 months ago
updater.ico first commit 3 months ago
updater2.pro first commit 3 months ago
utils.js first commit 3 months ago
win.cpp first commit 3 months ago

README.md

Customized updater forked from Unvanquished updater, original source can be found here:: https://github.com/Unvanquished/updater/

This fork is used as a game installer for my projects, if you want to compile the updater for unvanquished please click on the link above.

Initializing submodules

git submodule init && git submodule update

Build for Linux (without Docker)

Build aria2

Before building the updater itself you need to build aria2 library

cd aria2
autoreconf -i
./configure --without-libxml2 --without-libexpat --without-sqlite3 --enable-libaria2 --without-zlib --without-libcares --enable-static=yes ARIA2_STATIC=yes --without-libssh2 --disable-websocket --disable-nls --with-openssl
make -j4
cd ..

Build updater

Note: you need Qt 5.8 at least.

QT_SELECT=5 qmake -config release
make -j4

Build Linux version in docker

docker build -t updater2 .
docker run -v `pwd`/build-docker:/build-docker -u `id -u $USER` updater2

Search for updater2 (or updater2-nonstripped) in build-docker directory.

Build Windows version in docker

If the code is checked out on a Windows host, you must ensure that the line endings in the aria2 submodule are LF. The symptom of CRLF newlines is libtoolize: AC_CONFIG_MACRO_DIR([m4]) conflicts with ACLOCAL_AMFLAGS=-I m4. To reset the newlines:

cd aria2
git config core.autocrlf input
git rm -r --cached . && git reset --hard

The first line below runs the Docker build for Windows. The last 3 lines are to copy the result out of the container.

docker build -t updater2-win -f Dockerfile.win .
docker create --name updater2-win updater2-win
docker cp updater2-win:/build/release/updater2.exe ./build-docker
docker rm updater2-win

Search for updater2.exe in build-docker directory.

Build Mac version natively

Build Qt

curl -LO https://download.qt.io/archive/qt/5.14/5.14.2/single/qt-everywhere-src-5.14.2.tar.xz
tar -xzf qt-everywhere-src-5.14.2.tar.xz
cd qt-everywhere-src-5.14.2
MODULES=qtbase,qtquickcontrols,qtquickcontrols2,qtsvg,qtgraphicaleffects
# Default install location (--prefix): /usr/local/Qt-5.14.2
./configure -opensource -confirm-license -release -optimize-size -no-shared -no-framework -static --c++std=14 -nomake tests -nomake tools -nomake examples
cat <(echo '#include <CoreGraphics/CGColorSpace.h>') qtbase/src/plugins/platforms/cocoa/qiosurfacegraphicsbuffer.h > tmp && mv tmp qtbase/src/plugins/platforms/cocoa/qiosurfacegraphicsbuffer.h
eval make -j`sysctl -n hw.logicalcpu` module-{$MODULES}
echo $?  # If nonzero, repeat previous command
eval sudo make module-{$MODULES}-install_subtargets

Build aria2

brew install autoconf automake libtool pkg-config gettext
# If building on M1, target x86 by running in Rosetta: arch -x86_64 ./mac-build-aria.sh
# (the --target option to configure doesn't seem to have any effect)
./mac-build-aria.sh

Build updater

mkdir build; cd build
/usr/local/Qt-5.14.2/bin/qmake -config release ..
make