ICJ asked about this a while ago, so I'm writing this here for future reference.
To create Linux and Windows builds, you need a Docker installation that can run Linux docker images. Whether you run Docker on Linux, Windows or macOS doesn't matter. All that's needed is that it can run Linux docker images.
To create macOS builds, you can't use Docker, and you need macOS with XCode installed, and it might not work if your system is too different from mine, because Apple are a bunch of elitist hipsters who despise humans since their parents didn't love them enough and now they hate everyone and want to take revenge on innocent people who are not to blame for any of this.
The directory where you downloaded and extracted the Hugor source code will be referred to as HUGOR_SRC_DIR.
Create 64-bit Linux AppImage
Code: Select all
docker run --rm -it -v "HUGOR_SRC_DIR":/hugor/src -w /hugor/build realnc/hugor-build:linux-x64 bash -c 'qmake ../src && make appimage && mv *.AppImage ../src'
This will create Hugor-x86_64.AppImage in HUGOR_SRC_DIR.
Create 32-bit Linux AppImage
Code: Select all
docker run --rm -it -v "HUGOR_SRC_DIR":/hugor/src -w /hugor/build realnc/hugor-build:linux-x86 bash -c 'qmake ../src && make appimage && mv *.AppImage ../src'
This will create Hugor-i386.AppImage in HUGOR_SRC_DIR.
Create Windows Build
Code: Select all
docker run --rm -it -v "HUGOR_SRC_DIR":/hugor/src -w /hugor/build realnc/hugor-build:mxe-x86 bash -c 'i686-w64-mingw32.static-qmake-qt5 ../src && make windist && mv Hugor-*.zip ../src'
This will create Hugor-VERSION.zip in HUGOR_SRC_DIR.
Create macOS Build
Because hipsters are stuck in the 90s, none of this can really be automated and isolated like the other builds can. So instead of just running one single command to build, you instead get to enjoy the hipster experience of entering a long series of computer gibberish that will probably end up not working anyway, which is normal when dealing with things hipsters made.
You need to install XCode. 12.4 is known to work. Because XCode is the most hipster thing the hipsters ever made, a version that's too old or too new might not work.
If you have Homebrew installed, it can break the build. Move your homebrew installation out of the way first. This is how hipsters design software. You can do something like:
Code: Select all
mkdir ~/homebrew-backup
sudo mv /usr/local/* ~/homebrew-backup/
To restore it later on after you're done (or more likely after all this has failed and you're ready to kill yourself):
Code: Select all
sudo rm -rf /usr/local/*
sudo mv ~/homebrew-backup/* /usr/local/
Because zstd was not invented in the 90s and thus hipsters don't use it, macOS doesn't ship it. Download it and put it somewhere in your PATH:
Code: Select all
sudo mkdir /usr/local/bin
curl -L 'https://github.com/realnc/stuff/releases/download/stuff/zstd-macos.tar.xz' | sudo tar x -C /usr/local/bin/
Now install a specially crafted version of Homebrew that I modified to be less hipster than normal Homebrew. (It will produce a build of Hugor that is portable and can run on other macOS versions and not just the one you're using.) It needs to be installed in /Users/Shared:
Code: Select all
curl -L 'https://github.com/realnc/stuff/releases/download/stuff/homebrew-qtads-hugor.tar.zst' | zstd -d | tar x -C /Users/Shared/
Now you
must disable the hipster tendency of homebrew to "update" your installation even if you didn't ask it to and thus break everything:
Now it's safe to set the needed environment variables with:
Code: Select all
eval $(/Users/Shared/homebrew-qtads-hugor/bin/brew shellenv)
export PKG_CONFIG_PATH="$HOMEBREW_PREFIX/opt/readline/lib/pkgconfig"
Next, download the Qt SDK. You can download it anywhere you want to. Here, we'll just put it in the home directory:
Code: Select all
curl -L 'https://github.com/realnc/stuff/releases/download/stuff/qt-5.15-macos-static.tar.zst' | zstd -d | tar x -C ~
If you haven't killed yourself yet, then you need to download LibVLC next. It needs to go to /usr/local:
Code: Select all
curl -L 'https://github.com/realnc/stuff/releases/download/stuff/vlc-3.0.16-macos.tar.zst' | zstd -d | sudo tar x -C /usr/local/
Now Hugor can be built. Or attempted to be built, more likely. Create a "hugor-build" directory first that's on the same root directory as HUGOR_SRC_DIR:
Code: Select all
cd "HUGOR_SRC_DIR"/..
mkdir hugor-build
cd hugor-build
Now build with:
Code: Select all
~/qt-5.15/bin/qmake "HUGOR_SRC_DIR"
make macdist
This will create Hugor.zip in the current directory. Or it might not. Because hipsters.
ICJ asked about this a while ago, so I'm writing this here for future reference.
To create Linux and Windows builds, you need a Docker installation that can run Linux docker images. Whether you run Docker on Linux, Windows or macOS doesn't matter. All that's needed is that it can run Linux docker images.
To create macOS builds, you can't use Docker, and you need macOS with XCode installed, and it might not work if your system is too different from mine, because Apple are a bunch of elitist hipsters who despise humans since their parents didn't love them enough and now they hate everyone and want to take revenge on innocent people who are not to blame for any of this.
The directory where you downloaded and extracted the Hugor source code will be referred to as HUGOR_SRC_DIR.
[size=150][b]Create 64-bit Linux AppImage[/b][/size]
[code]
docker run --rm -it -v "HUGOR_SRC_DIR":/hugor/src -w /hugor/build realnc/hugor-build:linux-x64 bash -c 'qmake ../src && make appimage && mv *.AppImage ../src'
[/code]
This will create Hugor-x86_64.AppImage in HUGOR_SRC_DIR.
[size=150][b]Create 32-bit Linux AppImage[/b][/size]
[code]
docker run --rm -it -v "HUGOR_SRC_DIR":/hugor/src -w /hugor/build realnc/hugor-build:linux-x86 bash -c 'qmake ../src && make appimage && mv *.AppImage ../src'
[/code]
This will create Hugor-i386.AppImage in HUGOR_SRC_DIR.
[size=150][b]Create Windows Build[/b][/size]
[code]
docker run --rm -it -v "HUGOR_SRC_DIR":/hugor/src -w /hugor/build realnc/hugor-build:mxe-x86 bash -c 'i686-w64-mingw32.static-qmake-qt5 ../src && make windist && mv Hugor-*.zip ../src'
[/code]
This will create Hugor-VERSION.zip in HUGOR_SRC_DIR.
[size=150][b]Create macOS Build[/b][/size]
Because hipsters are stuck in the 90s, none of this can really be automated and isolated like the other builds can. So instead of just running one single command to build, you instead get to enjoy the hipster experience of entering a long series of computer gibberish that will probably end up not working anyway, which is normal when dealing with things hipsters made.
You need to install XCode. 12.4 is known to work. Because XCode is the most hipster thing the hipsters ever made, a version that's too old or too new might not work.
If you have Homebrew installed, it can break the build. Move your homebrew installation out of the way first. This is how hipsters design software. You can do something like:
[code]
mkdir ~/homebrew-backup
sudo mv /usr/local/* ~/homebrew-backup/
[/code]
To restore it later on after you're done (or more likely after all this has failed and you're ready to kill yourself):
[code]
sudo rm -rf /usr/local/*
sudo mv ~/homebrew-backup/* /usr/local/
[/code]
Because zstd was not invented in the 90s and thus hipsters don't use it, macOS doesn't ship it. Download it and put it somewhere in your PATH:
[code]
sudo mkdir /usr/local/bin
curl -L 'https://github.com/realnc/stuff/releases/download/stuff/zstd-macos.tar.xz' | sudo tar x -C /usr/local/bin/
[/code]
Now install a specially crafted version of Homebrew that I modified to be less hipster than normal Homebrew. (It will produce a build of Hugor that is portable and can run on other macOS versions and not just the one you're using.) It needs to be installed in /Users/Shared:
[code]
curl -L 'https://github.com/realnc/stuff/releases/download/stuff/homebrew-qtads-hugor.tar.zst' | zstd -d | tar x -C /Users/Shared/
[/code]
Now you [b]must[/b] disable the hipster tendency of homebrew to "update" your installation even if you didn't ask it to and thus break everything:
[code]
export HOMEBREW_NO_AUTO_UPDATE=1
[/code]
Now it's safe to set the needed environment variables with:
[code]
eval $(/Users/Shared/homebrew-qtads-hugor/bin/brew shellenv)
export PKG_CONFIG_PATH="$HOMEBREW_PREFIX/opt/readline/lib/pkgconfig"
[/code]
Next, download the Qt SDK. You can download it anywhere you want to. Here, we'll just put it in the home directory:
[code]
curl -L 'https://github.com/realnc/stuff/releases/download/stuff/qt-5.15-macos-static.tar.zst' | zstd -d | tar x -C ~
[/code]
If you haven't killed yourself yet, then you need to download LibVLC next. It needs to go to /usr/local:
[code]
curl -L 'https://github.com/realnc/stuff/releases/download/stuff/vlc-3.0.16-macos.tar.zst' | zstd -d | sudo tar x -C /usr/local/
[/code]
Now Hugor can be built. Or attempted to be built, more likely. Create a "hugor-build" directory first that's on the same root directory as HUGOR_SRC_DIR:
[code]
cd "HUGOR_SRC_DIR"/..
mkdir hugor-build
cd hugor-build
[/code]
Now build with:
[code]
~/qt-5.15/bin/qmake "HUGOR_SRC_DIR"
make macdist
[/code]
This will create Hugor.zip in the current directory. Or it might not. Because hipsters.