settings: add config page for i2p #4351
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ci/gh-actions/gui | |
| on: [push, pull_request] | |
| env: | |
| FREE_DISKSPACE: | | |
| sudo rm -rf /usr/local/.ghcup /usr/share/dotnet /usr/share/swift /usr/share/miniconda | |
| QT_TAG: v5.15.17-lts-lgpl | |
| QT_PREFIX: ${{ github.workspace }}/qt-install | |
| jobs: | |
| build-macos: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v1 | |
| with: | |
| submodules: recursive | |
| - name: install dependencies | |
| run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq libsodium miniupnpc unbound libunwind-headers protobuf qt5 pkg-config | |
| - name: build | |
| run: DEV_MODE=ON make release -j3 | |
| - name: test qml | |
| run: build/release/bin/monero-wallet-gui.app/Contents/MacOS/monero-wallet-gui --test-qml | |
| build-ubuntu: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v1 | |
| with: | |
| submodules: recursive | |
| - name: remove bundled boost | |
| run: sudo rm -rf /usr/local/share/boost | |
| - name: set apt conf | |
| run: | | |
| echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom | |
| echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom | |
| echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom | |
| - name: update apt | |
| run: sudo apt update | |
| - name: install monero dependencies | |
| run: sudo apt -y install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev libsodium-dev libhidapi-dev libnorm-dev libusb-1.0-0-dev libpgm-dev libprotobuf-dev protobuf-compiler | |
| - name: install monero gui dependencies | |
| run: sudo apt -y install qtbase5-dev qtdeclarative5-dev qml-module-qtqml-models2 qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-dialogs qml-module-qtquick-xmllistmodel qml-module-qt-labs-settings qml-module-qt-labs-platform qml-module-qt-labs-folderlistmodel qttools5-dev-tools qml-module-qtquick-templates2 libqt5svg5-dev libgcrypt20-dev xvfb | |
| - name: build | |
| run: DEV_MODE=ON make release -j3 | |
| - name: test qml | |
| run: xvfb-run -a build/release/bin/monero-wallet-gui --test-qml | |
| build-windows: | |
| runs-on: windows-latest | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: actions/checkout@v1 | |
| with: | |
| submodules: recursive | |
| - uses: eine/setup-msys2@v2 | |
| with: | |
| msystem: ucrt64 | |
| update: true | |
| install: make | |
| pacboy: toolchain:p pcre:p cmake:p boost:p openssl:p zeromq:p libsodium:p hidapi:p protobuf-c:p libusb:p unbound:p git qt5:p libgcrypt:p angleproject:p | |
| - name: add qmake.exe and windeployqt.exe | |
| run: | | |
| cp -f "$MSYSTEM_PREFIX/bin/qmake-qt5.exe" "$MSYSTEM_PREFIX/bin/qmake.exe" | |
| cp -f "$MSYSTEM_PREFIX/bin/windeployqt-qt5.exe" "$MSYSTEM_PREFIX/bin/windeployqt.exe" | |
| - name: build | |
| run: DEV_MODE=ON make release-win64 -j2 | |
| - name: deploy | |
| run: make deploy | |
| working-directory: build/release | |
| - name: test qml | |
| run: build/release/bin/monero-wallet-gui --test-qml | |
| macos-bundle: | |
| runs-on: macos-15 | |
| steps: | |
| - uses: actions/checkout@v1 | |
| with: | |
| submodules: recursive | |
| - name: install dependencies | |
| run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq miniupnpc unbound libunwind-headers protobuf pkg-config | |
| - name: clone qt repo | |
| run: git clone -b "${QT_TAG}" --recursive --depth 1 --shallow-submodules https://github.com/qt/qt5 | |
| - name: build qt from source | |
| run: | | |
| cd qt5 | |
| mkdir build && cd build | |
| ../configure -prefix "${QT_PREFIX}" -opensource -confirm-license -release -nomake examples -nomake tests -no-rpath -skip qtwebengine -skip qt3d -skip qtandroidextras -skip qtcanvas3d -skip qtcharts -skip qtconnectivity -skip qtdatavis3d -skip qtdoc -skip qtgamepad -skip qtlocation -skip qtnetworkauth -skip qtpurchasing -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qttools -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel -skip qtwebsockets -skip qtwebview -skip qtwinextras -skip qtx11extras -skip gamepad -skip serialbus -skip location -skip webengine | |
| make -j"$(sysctl -n hw.ncpu)" | |
| make install | |
| cd ../qttools/src/linguist/lrelease | |
| ../../../../build/qtbase/bin/qmake | |
| make -j"$(sysctl -n hw.ncpu)" | |
| make install | |
| cd ../../../../qttools/src/macdeployqt/macdeployqt/ | |
| ../../../../build/qtbase/bin/qmake | |
| make -j"$(sysctl -n hw.ncpu)" | |
| make install | |
| - name: build monero-gui | |
| run: | | |
| mkdir build && cd build | |
| cmake -D CMAKE_BUILD_TYPE=Release -D ARCH=default -D CMAKE_PREFIX_PATH="${QT_PREFIX}" .. | |
| make -j"$(sysctl -n hw.ncpu)" | |
| - name: deploy | |
| run: make deploy | |
| working-directory: build | |
| - name: test qml | |
| run: build/bin/monero-wallet-gui.app/Contents/MacOS/monero-wallet-gui --test-qml | |
| - name: create .tar | |
| run: tar -cf monero-wallet-gui.tar monero-wallet-gui.app | |
| working-directory: build/bin | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ github.job }} | |
| path: build/bin/monero-wallet-gui.tar | |
| docker-linux-static: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - uses: actions/checkout@v1 | |
| with: | |
| submodules: recursive | |
| - name: install dependencies | |
| run: sudo apt -y install xvfb libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xkb1 libxcb-shape0 libxkbcommon-x11-0 | |
| - name: free up diskspace | |
| run: ${{env.FREE_DISKSPACE}} | |
| - name: prepare build environment | |
| run: docker build --tag monero:build-env-linux --build-arg THREADS=3 --file Dockerfile.linux . | |
| - name: build | |
| run: docker run --rm -v /home/runner/work/monero-gui/monero-gui:/monero-gui -w /monero-gui monero:build-env-linux sh -c 'make release-static -j3' | |
| - name: sha256sum | |
| run: shasum -a256 /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui | |
| - name: test qml | |
| run: xvfb-run -a /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui --test-qml | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ github.job }} | |
| path: | | |
| /home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui | |
| /home/runner/work/monero-gui/monero-gui/build/release/bin/monerod | |
| docker-windows-static: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - uses: actions/checkout@v1 | |
| with: | |
| submodules: recursive | |
| - name: free up diskspace | |
| run: ${{env.FREE_DISKSPACE}} | |
| - name: prepare build environment | |
| run: docker build --tag monero:build-env-windows --build-arg THREADS=3 --file Dockerfile.windows . | |
| - name: build | |
| run: docker run --rm -v /home/runner/work/monero-gui/monero-gui:/monero-gui -w /monero-gui monero:build-env-windows sh -c 'make depends root=/depends target=x86_64-w64-mingw32 tag=win-x64 -j3' | |
| - name: sha256sum | |
| run: shasum -a256 /home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/monero-wallet-gui.exe | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ github.job }} | |
| path: | | |
| /home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/monero-wallet-gui.exe | |
| /home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/monerod.exe | |
| docker-android: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - uses: actions/checkout@v1 | |
| with: | |
| submodules: recursive | |
| - name: free up diskspace | |
| run: ${{env.FREE_DISKSPACE}} | |
| - name: prepare build environment | |
| run: docker build --tag monero:build-env-android --build-arg THREADS=3 --file Dockerfile.android . | |
| - name: build | |
| run: docker run --rm -v /home/runner/work/monero-gui/monero-gui:/monero-gui -e THREADS=3 monero:build-env-android | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ github.job }} | |
| path: /home/runner/work/monero-gui/monero-gui/build/Android/release/android-build/monero-gui.apk | |
| source-archive: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - uses: actions/checkout@v1 | |
| with: | |
| submodules: recursive | |
| - name: archive | |
| run: | | |
| pip install git-archive-all | |
| export VERSION="monero-gui-$(git describe)" | |
| export OUTPUT="$VERSION.tar" | |
| echo "OUTPUT=$OUTPUT" >> $GITHUB_ENV | |
| /home/runner/.local/bin/git-archive-all --prefix "$VERSION/" --force-submodules "$OUTPUT" | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ env.OUTPUT }} | |
| path: /home/runner/work/monero-gui/monero-gui/${{ env.OUTPUT }} |