Compare commits

..

105 Commits

Author SHA1 Message Date
tobtoht
24b4e0209f Merge pull request #4427
4195735c workflows: fix CI bundle build and name spelling (selsta)
2025-03-30 15:39:49 +00:00
tobtoht
35bc27a3a8 Merge pull request #4426
3ae32613 build: prepare v0.18.4.0 (selsta)
2025-03-30 15:39:14 +00:00
tobtoht
f903e0e447 Merge pull request #4428
b4b2ed39 Dockerfile: update Linux base image to 18.04 (selsta)
2025-03-30 15:37:58 +00:00
selsta
b4b2ed3976 Dockerfile: update Linux base image to 18.04 2025-03-29 18:14:45 +01:00
selsta
4195735cd3 workflows: fix CI bundle build and name spelling 2025-03-29 15:31:48 +01:00
selsta
3ae3261315 build: prepare v0.18.4.0 2025-03-29 15:07:23 +01:00
tobtoht
47f0047c9f Merge pull request #4421
33f08aee README: fix dead link (selsta)
2025-03-14 22:38:32 +00:00
selsta
33f08aee3e README: fix dead link 2025-03-14 21:27:58 +01:00
tobtoht
a064b42917 Merge pull request #4417
62496a2c p2pool: update to v4.4 (SChernykh)
2025-02-27 04:15:49 +00:00
SChernykh
62496a2c99 p2pool: update to v4.4 2025-03-01 20:02:35 +01:00
tobtoht
1669a64025 Merge pull request #4416
413c0db7 ci: fix MSYS2 build (tobtoht)
2025-02-25 15:32:49 +00:00
tobtoht
413c0db7c0 ci: fix MSYS2 build 2025-02-25 13:35:05 +01:00
tobtoht
521fee91cd Merge pull request #4349
7c41202b build(deps): bump actions/download-artifact in /.github/workflows (dependabot[bot])
2025-02-24 18:20:46 +00:00
tobtoht
3021970193 Merge pull request #4381
82714e6d build: set cxx standard to 17 in dev mode (tobtoht)
2025-02-24 18:18:53 +00:00
tobtoht
82714e6d26 build: set cxx standard to 17 in dev mode 2025-02-24 19:11:36 +01:00
tobtoht
351f4aba1c Merge pull request #4415
8cabe04d README: clarify docker build process (selsta)
2025-02-24 18:08:44 +00:00
tobtoht
daf3a1c5b8 Merge pull request #4412
0aaa963b Win deploy: Boost Regex is header-only since 1.77 (malinero)
2025-02-24 18:08:07 +00:00
tobtoht
2d2c7476db Merge pull request #4411
7e7215c7 fix testnet address check (preland)
2025-02-24 18:07:14 +00:00
tobtoht
aec2f94d4b Merge pull request #4402
04637127 Docker android: upgrade dependencies (malinero)
2025-02-24 18:06:05 +00:00
tobtoht
45fe6e6991 Merge pull request #4401
8512de2b Dockerfile linux: fix boost download url (malinero)
2025-02-24 18:04:36 +00:00
tobtoht
e496b03c63 Merge pull request #4390
b0ecc8cf p2pool: update to v4.3 (SChernykh)
2025-02-24 18:03:39 +00:00
tobtoht
39606d2eb1 Merge pull request #4377
ea39b20d docker: update Qt to 5.15.16 (selsta)
2025-02-24 18:03:00 +00:00
tobtoht
970c33332b Merge pull request #4366
cdf8a1a8 build.yml: pyenv vcs for python (plowsof)
2025-02-24 18:02:24 +00:00
tobtoht
fa02fa8ac5 Merge pull request #4362
8af3cd09 Dockerfile.linux: freetype.git mirror (plowsof)
2025-02-24 18:00:55 +00:00
tobtoht
9015dd5367 Merge pull request #4351
8f17b899 wizardRestore: blindly (re)enable create wallet button (plowsof)
2025-02-24 18:00:03 +00:00
tobtoht
e1a3dbd738 Merge pull request #4339
e18c2cfd DEPLOY: altool is deprecated, replace with notarytool (selsta)
2025-02-24 17:58:51 +00:00
selsta
8cabe04d0f README: clarify docker build process 2025-02-24 16:11:04 +01:00
malinero
0aaa963b5a Win deploy: Boost Regex is header-only since 1.77 2025-02-20 00:06:05 +01:00
preland
7e7215c71e fix testnet address check 2025-02-14 17:53:04 -07:00
malinero
04637127ee Docker android: upgrade dependencies 2025-01-23 22:32:24 +01:00
malinero
8512de2bdd Dockerfile linux: fix boost download url 2025-01-20 18:18:39 +01:00
SChernykh
b0ecc8cf33 p2pool: update to v4.3 2024-12-30 17:21:08 +01:00
selsta
ea39b20d64 docker: update Qt to 5.15.16 2024-11-20 20:39:37 +01:00
plowsof
cdf8a1a854 build.yml: pyenv vcs for python 2024-10-05 09:03:14 +01:00
luigi1111
0a9d61986c Merge pull request #4355
b521e83 workflows/build: upload-artifact@v4 (plowsof)
2024-10-01 15:31:17 -04:00
plowsof
8af3cd09ca Dockerfile.linux: freetype.git mirror
https://savannah.gnu.org/ apears to be temp offline
2024-10-01 11:45:45 +01:00
plowsof
b521e83829 workflows/build: upload-artifact@v4 2024-09-17 23:10:08 +01:00
plowsof
8f17b89979 wizardRestore: blindly (re)enable create wallet button 2024-09-10 15:47:15 +01:00
dependabot[bot]
7c41202b98 build(deps): bump actions/download-artifact in /.github/workflows
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4.1.7.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v3...v4.1.7)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-03 22:28:16 +00:00
selsta
e18c2cfdfc DEPLOY: altool is deprecated, replace with notarytool 2024-08-20 21:02:19 +02:00
luigi1111
08e2eafb7c Merge pull request #4335
551ab27 build: prepare v0.18.3.4 (selsta)
2024-08-14 16:13:26 -04:00
luigi1111
c27bb53d7c Merge pull request #4321
f8aa11b docker: bump Qt to v5.15.14 (tobtoht)
2024-08-14 16:12:54 -04:00
luigi1111
6f9769607a Merge pull request #4320
923f77a WizardModeSelection: enable pruning by default (selsta)
2024-08-14 16:12:04 -04:00
selsta
551ab27b09 build: prepare v0.18.3.4 2024-08-14 21:55:32 +02:00
luigi1111
c57bdfaeaf Merge pull request #4334
ff1e507 p2pool: update to v4.1 (SChernykh)
2024-08-13 12:41:49 -04:00
luigi1111
af92ca67d7 Merge pull request #4333
8118355 macOS: remove deprecated screenshot function (tobtoht)
2024-08-13 12:41:22 -04:00
luigi1111
6889ab5ac1 Merge pull request #4332
1d686ad wizard: add new Trezor Safe 5 (selsta)
2024-08-13 12:39:50 -04:00
luigi1111
eddafbbdcc Merge pull request #4319
45a2b1d README.md: sponsors;remove forked networking/globee (plowsof)
2024-08-13 12:38:54 -04:00
luigi1111
8d110ec790 Merge pull request #4310
7a3ea3a Wizard: fix stagenet getApproximateBlockchainHeight (selsta)
2024-08-13 12:38:27 -04:00
luigi1111
a49cd13a83 Merge pull request #4308
1878338 TxUtils: allow @ in OpenAlias domain (selsta)
2024-08-13 12:37:59 -04:00
luigi1111
50d479f7a6 Merge pull request #4300
a64ae97 utils: add quotes to desktop entry path (selsta)
2024-08-13 12:37:20 -04:00
luigi1111
94477c5480 Merge pull request #4285
ca3dafc DEPLOY: add more dependencies, use full path in prefix (selsta)
2024-08-13 12:36:52 -04:00
SChernykh
ff1e50745d p2pool: update to v4.1 2024-08-12 20:47:51 +02:00
tobtoht
8118355f39 macOS: remove deprecated screenshot function 2024-08-09 23:30:30 +02:00
selsta
1d686adcb9 wizard: add new Trezor Safe 5 2024-08-08 21:22:06 +02:00
tobtoht
f8aa11bc41 docker: bump Qt to v5.15.14 2024-05-24 22:29:14 +02:00
selsta
923f77a2db WizardModeSelection: enable pruning by default 2024-05-24 17:07:23 +02:00
plowsof
45a2b1d2a7 README.md: sponsors;remove forked networking/globee
https://github.com/monero-project/monero/pull/9324
2024-05-23 21:36:00 +01:00
selsta
7a3ea3a93c Wizard: fix stagenet getApproximateBlockchainHeight 2024-04-28 21:13:18 +02:00
selsta
1878338a44 TxUtils: allow @ in OpenAlias domain 2024-04-25 16:31:22 +02:00
selsta
a64ae977cc utils: add quotes to desktop entry path 2024-04-02 17:10:04 +02:00
luigi1111
f0b1b8cd08 Merge pull request #4291
5d5ac6a build: prepare v0.18.3.3 (selsta)
2024-03-12 15:44:16 -04:00
luigi1111
674f69f131 Merge pull request #4290
0c3e230 docker: bump Qt to v5.15.13 (tobtoht)
2024-03-12 15:43:03 -04:00
selsta
5d5ac6a371 build: prepare v0.18.3.3 2024-03-12 20:40:33 +01:00
tobtoht
0c3e2301ed docker: bump Qt to v5.15.13 2024-03-12 18:08:53 +01:00
selsta
ca3dafc5f0 DEPLOY: add more dependencies, use full path in prefix 2024-03-09 20:37:08 +01:00
luigi1111
29e831ccec Merge pull request #4284
df29170 Dockerfile: bump zlib version to 1.3.1 (selsta)
2024-03-09 13:28:47 -05:00
selsta
df291702df Dockerfile: bump zlib version to 1.3.1 2024-03-09 16:52:49 +01:00
luigi1111
ef555a3d72 Merge pull request #4283
cb3d693 build: prepare v0.18.3.2 (selsta)
2024-03-08 20:52:46 -05:00
luigi1111
51a43341c5 Merge pull request #4281
e956b4f tails: fix detection (tobtoht)
2024-03-08 20:52:06 -05:00
luigi1111
ecec7bc4b6 Merge pull request #4278
ca6b38d Remove instructions for Void Linux, add NixOS (Siren)
2024-03-08 20:51:41 -05:00
luigi1111
d809370d8a Merge pull request #4267
8851e71 Update year in Cypyright (inson1)
2024-03-08 20:50:25 -05:00
selsta
cb3d693a26 build: prepare v0.18.3.2 2024-03-09 02:46:45 +01:00
tobtoht
e956b4ff15 tails: fix detection 2024-02-28 15:58:06 +01:00
Siren
ca6b38d25a Remove instructions for Void Linux, add NixOS 2024-02-20 00:01:15 +02:00
inson1
8851e71a8b Update year in Cypyright 2024-01-27 20:12:09 +01:00
luigi1111
dc3441f258 Merge pull request #4262
84ea177 Dockerfile: remove no-asm for constant time AES (selsta)
2024-01-18 18:20:00 -05:00
luigi1111
7791cb08a9 Merge pull request #4261
bd6e5b1 docker: update Qt to 5.15.12 (selsta)
2024-01-18 18:19:39 -05:00
luigi1111
6ed6d6a85e Merge pull request #4260
de9c53b p2pool: update to v3.10 (SChernykh)
2024-01-18 18:19:18 -05:00
luigi1111
df4f68fbf2 Merge pull request #4255
c692fd1 wizard: add Trezor Safe 3 to hardware wallets (selsta)
2024-01-18 18:18:53 -05:00
luigi1111
1cc631d265 Merge pull request #4251
981600c DEPLOY: add missing code syntax highlighting (selsta)
819c2f5 DEPLOY: update instructions for Apple Silicon (selsta)
2024-01-18 18:18:28 -05:00
luigi1111
1fe6765efa Merge pull request #4245
06ed059 cmake: fix deploy by updating libicu version (selsta)
2024-01-18 18:17:45 -05:00
luigi1111
f284677c17 Merge pull request #4243
e41f3cf TxUtils: use regex to check for valid domain (selsta)
2024-01-18 18:17:02 -05:00
selsta
84ea1776ae Dockerfile: remove no-asm for constant time AES 2024-01-14 17:08:55 +01:00
selsta
bd6e5b13cc docker: update Qt to 5.15.12 2024-01-04 13:17:09 +01:00
SChernykh
de9c53bd8d p2pool: update to v3.10 2024-01-04 10:33:40 +01:00
selsta
981600c935 DEPLOY: add missing code syntax highlighting 2023-12-27 04:45:17 +01:00
selsta
c692fd1605 wizard: add Trezor Safe 3 to hardware wallets 2023-12-25 15:33:05 +01:00
selsta
819c2f57be DEPLOY: update instructions for Apple Silicon 2023-12-07 03:29:31 +01:00
selsta
06ed059cba cmake: fix deploy by updating libicu version
msys2 package manager doesn't have mingw64 debug DLLs for libicu anymore so I removed them.
2023-11-14 11:35:46 +01:00
selsta
e41f3cfd13 TxUtils: use regex to check for valid domain 2023-11-13 03:02:54 +01:00
luigi1111
e9cd4588ae Merge pull request #4238
4d39449 p2pool: update to v3.8 (SChernykh)
2023-11-06 09:48:28 -05:00
luigi1111
fdd406ac95 Merge pull request #4234
a3e0519 main: fix qml warning (selsta)
2023-11-06 09:48:06 -05:00
luigi1111
4a7e26b812 Merge pull request #4232
5954d6b cmake: update sodium dll from 23 to 26 (selsta)
2023-11-06 09:47:36 -05:00
luigi1111
99d2884802 Merge pull request #4229
420d2ba Revert 'DaemonManager.cpp: disable JIT on macOS ARM' (selsta)
2023-11-06 09:47:11 -05:00
luigi1111
7a754a4dfc Merge pull request #4223
664d578 workflows: free up diskspace for docker builds (tobtoht)
2023-11-06 09:45:39 -05:00
luigi1111
70a8086366 Merge pull request #4222
33e3f59 docker: update Linux & Windows Qt to 5.15.11 (tobtoht)
2023-11-06 09:45:13 -05:00
SChernykh
4d39449979 p2pool: update to v3.8 2023-10-31 17:56:12 +01:00
selsta
a3e05195c0 main: fix qml warning 2023-10-22 16:41:19 +02:00
selsta
5954d6ba9a cmake: update sodium dll from 23 to 26 2023-10-21 17:02:48 +02:00
selsta
420d2baec2 Revert "DaemonManager.cpp: disable JIT on macOS ARM"
This reverts commit 6c4a8fb819.
2023-10-19 16:21:14 +02:00
tobtoht
664d578f30 workflows: free up diskspace for docker builds 2023-10-05 17:16:52 +02:00
tobtoht
33e3f599e9 docker: update Linux & Windows Qt to 5.15.11 2023-10-04 17:48:36 +02:00
luigi1111
bea3032df9 Merge pull request #4221
ab8ac87 build: prepare v0.18.3.1 (selsta)
2023-10-02 16:41:42 -04:00
selsta
ab8ac87023 build: prepare v0.18.3.1 2023-10-02 21:44:28 +02:00
201 changed files with 368 additions and 360 deletions

View File

@@ -2,9 +2,13 @@ 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
jobs:
build-macos:
runs-on: macOS-latest
runs-on: macos-latest
steps:
- uses: actions/checkout@v1
with:
@@ -52,7 +56,7 @@ jobs:
- uses: eine/setup-msys2@v2
with:
update: true
install: mingw-w64-x86_64-toolchain make mingw-w64-x86_64-pcre mingw-w64-x86_64-cmake mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-unbound git mingw-w64-x86_64-qt5 mingw-w64-x86_64-libgcrypt
install: mingw-w64-x86_64-toolchain make mingw-w64-x86_64-pcre mingw-w64-x86_64-cmake mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-unbound git mingw-w64-x86_64-qt5 mingw-w64-x86_64-libgcrypt mingw-w64-x86_64-angleproject
- name: build
run: DEV_MODE=ON make release-win64 -j2
- name: deploy
@@ -62,17 +66,19 @@ jobs:
run: build/release/bin/monero-wallet-gui --test-qml
macos-bundle:
runs-on: macOS-latest
runs-on: macos-13
steps:
- uses: actions/checkout@v1
with:
submodules: recursive
- name: install dependencies
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq libpgm miniupnpc expat libunwind-headers protobuf pkg-config python3 p7zip aria2
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq libpgm miniupnpc expat libunwind-headers protobuf pkg-config pyenv p7zip aria2
- name: install dependencies
run: pip3 install defusedxml
run: |
pyenv install 3.12.0
pip install defusedxml
- name: download qt
run: python3 monero-gui/.github/qt_helper.py mac_x64 desktop 5.15.2 clang_64 c384008156fe63cc183bade0316828c598ff3e5074397c0c9ccc588d6cdc5aca
run: python monero-gui/.github/qt_helper.py mac_x64 desktop 5.15.2 clang_64 c384008156fe63cc183bade0316828c598ff3e5074397c0c9ccc588d6cdc5aca
working-directory: ../
- name: build
run: |
@@ -87,7 +93,7 @@ jobs:
- name: create .tar
run: tar -cf monero-wallet-gui.tar monero-wallet-gui.app
working-directory: build/bin
- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}
path: build/bin/monero-wallet-gui.tar
@@ -107,6 +113,8 @@ jobs:
docker-linux-static-
- 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
@@ -115,7 +123,7 @@ jobs:
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@v2
- uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}
path: |
@@ -135,13 +143,15 @@ jobs:
key: docker-windows-static-{hash}
restore-keys: |
docker-windows-static-
- 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@v2
- uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}
path: |
@@ -161,13 +171,15 @@ jobs:
key: docker-android-static-{hash}
restore-keys: |
docker-android-static-
- 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
- name: Remove obsolete docker layers
run: docker images -a | grep none | awk '{ print $3; }' | xargs docker rmi || true
- uses: actions/upload-artifact@v2
- 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
@@ -185,7 +197,7 @@ jobs:
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@v2
- uses: actions/upload-artifact@v4
with:
name: ${{ env.OUTPUT }}
path: /home/runner/work/monero-gui/monero-gui/${{ env.OUTPUT }}

View File

@@ -72,7 +72,7 @@ jobs:
platforms: arm64
- name: Restore flatpak-builder
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4.1.7
with:
name: flatpak-builder-${{ matrix.arch }}
@@ -129,7 +129,7 @@ jobs:
platforms: arm64
- name: Restore flatpak-builder
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4.1.7
with:
name: flatpak-builder-${{ matrix.arch }}

View File

@@ -4,7 +4,7 @@ project(monero-gui)
message(STATUS "Initiating compile using CMake ${CMAKE_VERSION}")
set(VERSION_MAJOR "18")
set(VERSION_MINOR "3")
set(VERSION_MINOR "4")
set(VERSION_REVISION "0")
set(VERSION "0.${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_REVISION}")
@@ -16,6 +16,14 @@ option(WITH_DESKTOP_ENTRY "Ask to install desktop entry on first startup" ON)
option(WITH_UPDATER "Regularly check for new updates" ON)
option(DEV_MODE "Checkout latest monero master on build" OFF)
if(DEV_MODE)
# DEV_MODE checks out the monero submodule to master, which requires C++17.
set(CMAKE_CXX_STANDARD 17)
else()
set(CMAKE_CXX_STANDARD 11)
endif()
set(CMAKE_CXX_STANDARD_REQUIRED ON)
list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_SOURCE_DIR}/cmake")
include(CheckCCompilerFlag)
include(CheckCXXCompilerFlag)
@@ -60,6 +68,7 @@ set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
get_directory_property(ARCH_WIDTH DIRECTORY "monero" DEFINITION ARCH_WIDTH)
get_directory_property(Boost_VERSION_STRING DIRECTORY "monero" DEFINITION Boost_VERSION_STRING)
if (NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
add_definitions(-DQT_NO_DEBUG)
@@ -356,7 +365,7 @@ if(APPLE)
endif()
if (APPLE AND NOT IOS)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=default -std=c++11")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=default")
endif()
if(APPLE)
@@ -442,7 +451,7 @@ message(STATUS "Using C++ security hardening flags: ${CXX_SECURITY_FLAGS}")
message(STATUS "Using linker security hardening flags: ${LD_SECURITY_FLAGS}")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 ${C_SECURITY_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ${CXX_SECURITY_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_SECURITY_FLAGS}")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${LD_SECURITY_FLAGS} ${STATIC_FLAGS}")
add_subdirectory(translations)

View File

@@ -2,7 +2,7 @@
Use macOS 10.12 - 10.13 for better backwards compability.
1. `HOMEBREW_OPTFLAGS="-march=core2" HOMEBREW_OPTIMIZATION_LEVEL="O0" brew install boost zmq libpgm miniupnpc libsodium expat libunwind-headers protobuf libgcrypt hidapi`
1. `HOMEBREW_OPTFLAGS="-march=core2" HOMEBREW_OPTIMIZATION_LEVEL="O0" brew install boost zmq libpgm miniupnpc libsodium expat libunwind-headers protobuf@21 libgcrypt hidapi libusb cmake pkg-config && brew link protobuf@21`
2. Get the latest LTS from here: https://www.qt.io/offline-installers and install
@@ -10,9 +10,9 @@ Use macOS 10.12 - 10.13 for better backwards compability.
4. Compile `monero-wallet-gui.app`
```
```bash
mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=Release -D ARCH=default -D CMAKE_PREFIX_PATH=~/Qt5.12.8/5.12.8/clang_64 ..
cmake -D CMAKE_BUILD_TYPE=Release -D ARCH=default -D CMAKE_PREFIX_PATH=/path/to/Qt5.12.8/5.12.8/clang_64 ..
make
make deploy
```
@@ -40,8 +40,36 @@ You can check if this step worked by using `codesign -dvvv monero-wallet-gui.app
3. `hdiutil create -fs HFS+ -srcfolder monero-gui-v0.X.Y.Z -volname monero-wallet-gui monero-gui-mac-x64-v0.X.Y.Z.dmg`
4. `xcrun altool -t osx --file monero-gui-mac-x64-v0.X.Y.Z.dmg --primary-bundle-id org.monero-project.monero-wallet-gui.dmg --notarize-app --username email@address.org`
4. `xcrun notarytool submit monero-gui-mac-x64-v0.X.Y.Z.dmg --apple-id email@address.org --team-id XXXXXXXXXX`
5. `xcrun altool --notarization-info aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeee -u email@address.org`
5. `xcrun notarytool info aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeee --apple-id email@address.org --team-id XXXXXXXXXX`
6. `xcrun stapler staple -v monero-gui-mac-x64-v0.X.Y.Z.dmg`
## Compile Qt for Apple Silicon
Qt does not offer pre-built binaries for Apple Silicon, they have to be manually compiled.
```bash
git clone https://github.com/qt/qt5.git
cd qt5
git checkout v5.15.9-lts-lgpl
./init-repository
mkdir build
cd build
../configure -prefix /path/to/qt-build-dir/ -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
make install
cd ../qttools/src/linguist/lrelease
../../../../build/qtbase/bin/qmake
make
make install
cd ../../../../qttools/src/macdeployqt/macdeployqt/
../../../../build/qtbase/bin/qmake
make
make install
```
For compilation with Xcode 15 the following patch has to be applied: https://raw.githubusercontent.com/Homebrew/formula-patches/086e8cf/qt5/qt5-qmake-xcode15.patch
The `CMAKE_PREFIX_PATH` has to be set to `/path/to/qt-build-dir/` during monero-gui compilation.

View File

@@ -1,16 +1,16 @@
FROM debian:buster
ARG THREADS=1
ARG ANDROID_NDK_REVISION=21e
ARG ANDROID_NDK_HASH=c3ebc83c96a4d7f539bd72c241b2be9dcd29bda9
ARG ANDROID_NDK_REVISION=23c
ARG ANDROID_NDK_HASH=e5053c126a47e84726d9f7173a04686a71f9a67a
ARG ANDROID_SDK_REVISION=7302050_latest
ARG ANDROID_SDK_HASH=7a00faadc0864f78edd8f4908a629a46d622375cbe2e5814e82934aebecdb622
ARG QT_VERSION=v5.15.7-lts-lgpl
ARG QT_VERSION=v5.15.16-lts-lgpl
WORKDIR /opt/android
ENV WORKDIR=/opt/android
ENV ANDROID_NATIVE_API_LEVEL=30
ENV ANDROID_NATIVE_API_LEVEL=31
ENV ANDROID_API=android-${ANDROID_NATIVE_API_LEVEL}
ENV ANDROID_CLANG=aarch64-linux-android${ANDROID_NATIVE_API_LEVEL}-clang
ENV ANDROID_CLANGPP=aarch64-linux-android${ANDROID_NATIVE_API_LEVEL}-clang++
@@ -32,7 +32,7 @@ RUN PACKAGE_NAME=commandlinetools-linux-${ANDROID_SDK_REVISION}.zip \
&& unzip -q ${PACKAGE_NAME} \
&& rm -f ${PACKAGE_NAME}
RUN PACKAGE_NAME=android-ndk-r${ANDROID_NDK_REVISION}-linux-x86_64.zip \
RUN PACKAGE_NAME=android-ndk-r${ANDROID_NDK_REVISION}-linux.zip \
&& wget -q https://dl.google.com/android/repository/${PACKAGE_NAME} \
&& echo "${ANDROID_NDK_HASH} ${PACKAGE_NAME}" | sha1sum -c \
&& unzip -q ${PACKAGE_NAME} \
@@ -43,9 +43,9 @@ RUN echo y | ${ANDROID_SDK_ROOT}/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} "
ENV HOST_PATH=${PATH}
ENV PATH=${TOOLCHAIN_DIR}/aarch64-linux-android/bin:${TOOLCHAIN_DIR}/bin:${PATH}
ARG ZLIB_VERSION=1.3
ARG ZLIB_HASH=ff0ba4c292013dbc27530b3a81e1f9a813cd39de01ca5e0f8bf355702efa593e
RUN wget -q https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz \
ARG ZLIB_VERSION=1.3.1
ARG ZLIB_HASH=9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23
RUN wget -q https://github.com/madler/zlib/releases/download/v${ZLIB_VERSION}/zlib-${ZLIB_VERSION}.tar.gz \
&& echo "${ZLIB_HASH} zlib-${ZLIB_VERSION}.tar.gz" | sha256sum -c \
&& tar -xzf zlib-${ZLIB_VERSION}.tar.gz \
&& rm zlib-${ZLIB_VERSION}.tar.gz \
@@ -98,34 +98,32 @@ RUN wget -q http://ftp.gnu.org/pub/gnu/libiconv/libiconv-${ICONV_VERSION}.tar.gz
&& make -j${THREADS} \
&& make -j${THREADS} install
ARG BOOST_VERSION=1_74_0
ARG BOOST_VERSION_DOT=1.74.0
ARG BOOST_HASH=83bfc1507731a0906e387fc28b7ef5417d591429e51e788417fe9ff025e116b1
RUN wget -q https://boostorg.jfrog.io/artifactory/main/release/${BOOST_VERSION_DOT}/source/boost_${BOOST_VERSION}.tar.bz2 \
ARG BOOST_VERSION=1_85_0
ARG BOOST_VERSION_DOT=1.85.0
ARG BOOST_HASH=7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617
RUN wget -q https://archives.boost.io/release/${BOOST_VERSION_DOT}/source/boost_${BOOST_VERSION}.tar.bz2 \
&& echo "${BOOST_HASH} boost_${BOOST_VERSION}.tar.bz2" | sha256sum -c \
&& tar -xf boost_${BOOST_VERSION}.tar.bz2 \
&& rm -f boost_${BOOST_VERSION}.tar.bz2 \
&& cd boost_${BOOST_VERSION} \
&& PATH=${HOST_PATH} ./bootstrap.sh --prefix=${PREFIX} \
&& printf "using clang : arm : ${ANDROID_CLANGPP} :\n<cxxflags>\"-fPIC\"\n<cflags>\"-fPIC\" ;" > user.jam \
&& PATH=${TOOLCHAIN_DIR}/bin:${HOST_PATH} ./b2 --build-type=minimal link=static runtime-link=static \
--with-chrono --with-date_time --with-filesystem --with-program_options --with-regex --with-serialization \
--with-system --with-thread --with-locale --build-dir=android --stagedir=android toolset=clang threading=multi \
threadapi=pthread target-os=android -sICONV_PATH=${PREFIX} \
cflags='--target=aarch64-linux-android' \
cxxflags='--target=aarch64-linux-android' \
linkflags='--target=aarch64-linux-android --sysroot=${ANDROID_NDK_ROOT}/platforms/${ANDROID_API}/arch-arm64 ${ANDROID_NDK_ROOT}/sources/cxx-stl/llvm-libc++/libs/arm64-v8a/libc++_shared.so -nostdlib++' \
--with-system --with-thread --with-locale --build-dir=android --stagedir=android toolset=clang-arm threading=multi \
threadapi=pthread target-os=android -sICONV_PATH=${PREFIX} --user-config=user.jam architecture=arm address-model=64 \
install -j${THREADS} \
&& rm -rf $(pwd)
ARG OPENSSL_VERSION=1.1.1u
ARG OPENSSL_HASH=e2f8d84b523eecd06c7be7626830370300fbcc15386bf5142d72758f6963ebc6
ARG OPENSSL_VERSION=1.1.1w
ARG OPENSSL_HASH=cf3098950cb4d853ad95c0841f1f9c6d3dc102dccfcacd521d93925208b76ac8
RUN wget -q https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz \
&& echo "${OPENSSL_HASH} openssl-${OPENSSL_VERSION}.tar.gz" | sha256sum -c \
&& tar -xzf openssl-${OPENSSL_VERSION}.tar.gz \
&& rm openssl-${OPENSSL_VERSION}.tar.gz \
&& cd openssl-${OPENSSL_VERSION} \
&& ANDROID_NDK_HOME=${ANDROID_NDK_ROOT} ./Configure CC=${ANDROID_CLANG} CXX=${ANDROID_CLANGPP} \
android-arm64 no-asm no-shared --static \
android-arm64 no-shared --static \
--with-zlib-include=${PREFIX}/include --with-zlib-lib=${PREFIX}/lib \
--prefix=${PREFIX} --openssldir=${PREFIX} \
&& sed -i 's/CNF_EX_LIBS=-ldl -pthread//g;s/BIN_CFLAGS=-pie $(CNF_CFLAGS) $(CFLAGS)//g' Makefile \
@@ -133,9 +131,9 @@ RUN wget -q https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz \
&& make -j${THREADS} install \
&& rm -rf $(pwd)
ARG EXPAT_VERSION=2.4.1
ARG EXPAT_HASH=2f9b6a580b94577b150a7d5617ad4643a4301a6616ff459307df3e225bcfbf40
RUN wget https://github.com/libexpat/libexpat/releases/download/R_2_4_1/expat-${EXPAT_VERSION}.tar.bz2 && \
ARG EXPAT_VERSION=2.6.4
ARG EXPAT_HASH=8dc480b796163d4436e6f1352e71800a774f73dbae213f1860b60607d2a83ada
RUN wget https://github.com/libexpat/libexpat/releases/download/R_2_6_4/expat-${EXPAT_VERSION}.tar.bz2 && \
echo "${EXPAT_HASH} expat-${EXPAT_VERSION}.tar.bz2" | sha256sum -c && \
tar -xf expat-${EXPAT_VERSION}.tar.bz2 && \
rm expat-${EXPAT_VERSION}.tar.bz2 && \
@@ -145,8 +143,8 @@ RUN wget https://github.com/libexpat/libexpat/releases/download/R_2_4_1/expat-${
make -j$THREADS install && \
rm -rf $(pwd)
ARG UNBOUND_VERSION=1.16.2
ARG UNBOUND_HASH=2e32f283820c24c51ca1dd8afecfdb747c7385a137abe865c99db4b257403581
ARG UNBOUND_VERSION=1.22.0
ARG UNBOUND_HASH=c5dd1bdef5d5685b2cedb749158dd152c52d44f65529a34ac15cd88d4b1b3d43
RUN wget https://www.nlnetlabs.nl/downloads/unbound/unbound-${UNBOUND_VERSION}.tar.gz && \
echo "${UNBOUND_HASH} unbound-${UNBOUND_VERSION}.tar.gz" | sha256sum -c && \
tar -xzf unbound-${UNBOUND_VERSION}.tar.gz && \
@@ -157,8 +155,8 @@ RUN wget https://www.nlnetlabs.nl/downloads/unbound/unbound-${UNBOUND_VERSION}.t
make -j$THREADS install && \
rm -rf $(pwd)
ARG ZMQ_VERSION=v4.3.4
ARG ZMQ_HASH=4097855ddaaa65ed7b5e8cb86d143842a594eebd
ARG ZMQ_VERSION=v4.3.5
ARG ZMQ_HASH=622fc6dde99ee172ebaa9c8628d85a7a1995a21d
RUN git clone https://github.com/zeromq/libzmq.git -b ${ZMQ_VERSION} --depth 1 \
&& cd libzmq \
&& git checkout ${ZMQ_HASH} \
@@ -169,8 +167,8 @@ RUN git clone https://github.com/zeromq/libzmq.git -b ${ZMQ_VERSION} --depth 1 \
&& make -j${THREADS} install \
&& rm -rf $(pwd)
ARG SODIUM_VERSION=1.0.18
ARG SODIUM_HASH=4f5e89fa84ce1d178a6765b8b46f2b6f91216677
ARG SODIUM_VERSION=1.0.20-RELEASE
ARG SODIUM_HASH=9511c982fb1d046470a8b42aa36556cdb7da15de
RUN set -ex \
&& git clone https://github.com/jedisct1/libsodium.git -b ${SODIUM_VERSION} --depth 1 \
&& cd libsodium \
@@ -198,23 +196,20 @@ RUN git clone -b libgcrypt-1.10.1 --depth 1 git://git.gnupg.org/libgcrypt.git \
&& make -j${THREADS} install \
&& rm -rf $(pwd)
RUN git clone -b v3.24.2 --depth 1 https://github.com/Kitware/CMake \
RUN git clone -b v3.31.4 --depth 1 https://github.com/Kitware/CMake \
&& cd CMake \
&& git reset --hard 31f835410efeea50acd43512eb9e5646a26ea177 \
&& git reset --hard 569b821a138a4d3f7f4cc42c0cf5ae5e68d56f96 \
&& PATH=${HOST_PATH} ./bootstrap \
&& PATH=${HOST_PATH} make -j${THREADS} \
&& PATH=${HOST_PATH} make -j${THREADS} install \
&& rm -rf $(pwd)
RUN GRADLE_VERSION=5.6.4 \
&& GRADLE_HASH=1f3067073041bc44554d0efe5d402a33bc3d3c93cc39ab684f308586d732a80d \
&& wget -q https\://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip \
&& echo "${GRADLE_HASH} gradle-${GRADLE_VERSION}-bin.zip" | sha256sum -c \
&& GRADLE_LOCAL_PATH=gradle/wrapper/dists/gradle-${GRADLE_VERSION}-bin/bxirm19lnfz6nurbatndyydux \
&& mkdir -p ${GRADLE_LOCAL_PATH} \
&& mv gradle-${GRADLE_VERSION}-bin.zip ${GRADLE_LOCAL_PATH}
ENV GRADLE_USER_HOME=${WORKDIR}/gradle
# Workaround
ENV NEW_SDK_ROOT=${WORKDIR}/sdk
RUN mkdir ${NEW_SDK_ROOT} \
&& cp -r ${ANDROID_SDK_ROOT}/licenses ${NEW_SDK_ROOT} \
&& cp -r ${ANDROID_SDK_ROOT}/platforms ${NEW_SDK_ROOT} \
&& cp -r ${ANDROID_SDK_ROOT}/build-tools ${NEW_SDK_ROOT}
CMD set -ex \
&& cd /monero-gui \
@@ -232,10 +227,12 @@ CMD set -ex \
-DBoost_USE_STATIC_RUNTIME=ON \
-DLRELEASE_PATH="${PREFIX}/bin" \
-DQT_ANDROID_APPLICATION_BINARY="monero-wallet-gui" \
-DANDROID_SDK="${ANDROID_SDK_ROOT}" \
-DANDROID_SDK="${NEW_SDK_ROOT}" \
-DWITH_SCANNER=ON \
-DWITH_DESKTOP_ENTRY=OFF \
../../.. \
&& PATH=${HOST_PATH} make generate_translations_header \
&& sed -i -e "s#../monero/external/randomx/librandomx.a##" src/CMakeFiles/monero-wallet-gui.dir/link.txt \
&& sed -i -e "s#-lm#-lm ../monero/external/randomx/librandomx.a#" src/CMakeFiles/monero-wallet-gui.dir/link.txt \
&& make -j${THREADS} -C src \
&& make -j${THREADS} apk

View File

@@ -1,7 +1,7 @@
FROM ubuntu:16.04
FROM ubuntu:18.04
ARG THREADS=1
ARG QT_VERSION=v5.15.10-lts-lgpl
ARG QT_VERSION=v5.15.16-lts-lgpl
ENV CFLAGS="-fPIC"
ENV CPPFLAGS="-fPIC"
@@ -10,7 +10,7 @@ ENV SOURCE_DATE_EPOCH=1397818193
RUN apt update && \
apt install -y automake autopoint bison gettext git gperf libgl1-mesa-dev libglib2.0-dev \
libpng12-dev libpthread-stubs0-dev libsodium-dev libtool-bin libudev-dev libusb-1.0-0-dev mesa-common-dev \
libpng-dev libpthread-stubs0-dev libsodium-dev libtool-bin libudev-dev libusb-1.0-0-dev mesa-common-dev \
pkg-config python wget xutils-dev
RUN git clone -b xorgproto-2020.1 --depth 1 https://gitlab.freedesktop.org/xorg/proto/xorgproto && \
@@ -121,8 +121,8 @@ RUN git clone -b v1.3 --depth 1 https://github.com/madler/zlib && \
make -j$THREADS install && \
rm -rf $(pwd)
RUN git clone -b VER-2-10-2 --depth 1 https://git.savannah.gnu.org/git/freetype/freetype2.git && \
cd freetype2 && \
RUN git clone -b VER-2-10-2 --depth 1 https://gitlab.freedesktop.org/freetype/freetype.git && \
cd freetype && \
git reset --hard 132f19b779828b194b3fede187cee719785db4d8 && \
./autogen.sh && \
./configure --disable-shared --enable-static --with-zlib=no && \
@@ -156,7 +156,7 @@ RUN git clone -b release-64-2 --depth 1 https://github.com/unicode-org/icu && \
make -j$THREADS install && \
rm -rf $(pwd)
RUN wget https://boostorg.jfrog.io/artifactory/main/release/1.80.0/source/boost_1_80_0.tar.gz && \
RUN wget https://archives.boost.io/release/1.80.0/source/boost_1_80_0.tar.gz && \
echo "4b2136f98bdd1f5857f1c3dea9ac2018effe65286cf251534b6ae20cc45e1847 boost_1_80_0.tar.gz" | sha256sum -c && \
tar -xzf boost_1_80_0.tar.gz && \
rm boost_1_80_0.tar.gz && \
@@ -170,7 +170,7 @@ RUN wget https://www.openssl.org/source/openssl-1.1.1u.tar.gz && \
tar -xzf openssl-1.1.1u.tar.gz && \
rm openssl-1.1.1u.tar.gz && \
cd openssl-1.1.1u && \
./config no-asm no-shared no-zlib-dynamic --prefix=/usr --openssldir=/usr && \
./config no-shared no-zlib-dynamic --prefix=/usr --openssldir=/usr && \
make -j$THREADS && \
make -j$THREADS install && \
rm -rf $(pwd)

View File

@@ -1,7 +1,7 @@
FROM ubuntu:20.04
ARG THREADS=1
ARG QT_VERSION=v5.15.10-lts-lgpl
ARG QT_VERSION=v5.15.16-lts-lgpl
ENV SOURCE_DATE_EPOCH=1397818193
RUN apt update && \
@@ -12,9 +12,9 @@ RUN apt update && \
RUN update-alternatives --set x86_64-w64-mingw32-g++ $(which x86_64-w64-mingw32-g++-posix) && \
update-alternatives --set x86_64-w64-mingw32-gcc $(which x86_64-w64-mingw32-gcc-posix)
RUN git clone -b v0.18.2.0 --depth 1 https://github.com/monero-project/monero && \
RUN git clone -b v0.18.4.0 --depth 1 https://github.com/monero-project/monero && \
cd monero && \
git reset --hard 99be9a044f3854f339548e2d99c539c18d7b1b01 && \
git reset --hard f1311d4237404ab7da76241dbf10e92a65132cc4 && \
cp -a contrib/depends / && \
cd .. && \
rm -rf monero

View File

@@ -1,4 +1,4 @@
Copyright (c) 2014-2018, The Monero Project
Copyright (c) 2014-2024, The Monero Project
All rights reserved.

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,6 +1,6 @@
# Monero GUI
Copyright (c) 2014-2022, The Monero Project
Copyright (c) 2014-2024, The Monero Project
## Table of Contents
* [Development resources](#development-resources)
@@ -60,9 +60,7 @@ The Bitcoin donation address is: `1KTexdemPdxSBcG55heUuTjDRYqbC5ZL8H`
GUI development funding and/or some supporting services are also graciously provided by [sponsors](https://www.getmonero.org/community/sponsorships/):
[<img width="150" src="https://www.getmonero.org/img/sponsors/tarilabs.png"/>](https://tarilabs.com/)
[<img width="150" src="https://www.getmonero.org/img/sponsors/globee.png"/>](https://globee.com/)
[<img width="150" src="https://www.getmonero.org/img/sponsors/symas.png"/>](https://symas.com/)
[<img width="150" src="https://www.getmonero.org/img/sponsors/forked_logo.png"/>](http://www.forked.net/)
[<img width="150" src="https://www.getmonero.org/img/sponsors/macstadium.png"/>](https://www.macstadium.com/)
There are also several mining pools that kindly donate a portion of their fees, [a list of them can be found on our Bitcointalk post](https://bitcointalk.org/index.php?topic=583449.0).
@@ -87,7 +85,7 @@ Status of the translations:
Packages are available for
* Arch Linux: [monero-gui](https://archlinux.org/packages/extra/x86_64/monero-gui/)
* Void Linux: `xbps-install -S monero-gui`
* NixOS: `nix-shell -p monero-gui`
* Flatpak: [Monero GUI](https://flathub.org/apps/details/org.getmonero.Monero)
* GuixSD: `guix package -i monero-gui`
* macOS (homebrew): `brew install --cask monero-wallet`
@@ -98,7 +96,7 @@ Packaging for your favorite distribution would be a welcome contribution!
*Note*: Qt 5.9.7 is the minimum version required to build the GUI.
*Note*: Official GUI releases use monero-wallet-gui from this process alongside the supporting binaries (monerod, etc) from the [CLI deterministic builds](https://github.com/monero-project/monero/blob/master/contrib/gitian/README.md).
*Note*: Official GUI releases use monero-wallet-gui from this process alongside the supporting binaries (monerod, etc) from the [CLI deterministic builds](https://github.com/monero-project/monero/blob/release-v0.18/contrib/gitian/README.md).
### Building Reproducible Windows static binaries with Docker (any OS)
@@ -107,7 +105,7 @@ Packaging for your favorite distribution would be a welcome contribution!
```
git clone --branch master --recursive https://github.com/monero-project/monero-gui.git
```
\* `master` - replace with the desired version tag (e.g. `v0.18.3.0`) to build the release binaries.
\* `master` - replace with the desired version tag (e.g. `v0.18.4.0`) to build the release binaries.
3. Prepare build environment
```
cd monero-gui
@@ -130,7 +128,7 @@ Packaging for your favorite distribution would be a welcome contribution!
```
git clone --branch master --recursive https://github.com/monero-project/monero-gui.git
```
\* `master` - replace with the desired version tag (e.g. `v0.18.3.0`) to build the release binaries.
\* `master` - replace with the desired version tag (e.g. `v0.18.4.0`) to build the release binaries.
3. Prepare build environment
```
cd monero-gui
@@ -144,8 +142,9 @@ Packaging for your favorite distribution would be a welcome contribution!
```
\* `<MONERO_GUI_DIR_FULL_PATH>` - absolute path to `monero-gui` directory
\* `4` - number of CPU threads to use
5. Monero GUI Linux static binaries will be placed in `monero-gui/build/release/bin` directory
6. (*Optional*) Compare `monero-wallet-gui` SHA-256 hash to the one obtained from a trusted source
5. Monero GUI Linux static binary will be placed in `monero-gui/build/release/bin` directory
6. (*Note*) This process is only for building `monero-wallet-gui`, `monerod` has to be built separately according to the instructions in the `monero` repository.
7. (*Optional*) Compare `monero-wallet-gui` SHA-256 hash to the one obtained from a trusted source
```
docker run --rm -it -v <MONERO_GUI_DIR_FULL_PATH>:/monero-gui -w /monero-gui monero:build-env-linux sh -c 'shasum -a 256 /monero-gui/build/release/bin/monero-wallet-gui'
```
@@ -310,7 +309,7 @@ The Monero GUI on Windows is 64 bits only; 32-bit Windows GUI builds are not off
3. Install MSYS2 packages for Monero dependencies; the needed 64-bit packages have `x86_64` in their names
```
pacman -S mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-libgcrypt mingw-w64-x86_64-unbound mingw-w64-x86_64-pcre
pacman -S mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-libgcrypt mingw-w64-x86_64-unbound mingw-w64-x86_64-pcre mingw-w64-x86_64-angleproject
```
You find more details about those dependencies in the [Monero documentation](https://github.com/monero-project/monero). Note that that there is no more need to compile Boost from source; like everything else, you can install it now with a MSYS2 package.

View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2019, The Monero Project
# Copyright (c) 2014-2024, The Monero Project
#
# All rights reserved.
#

View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2019, The Monero Project
# Copyright (c) 2014-2024, The Monero Project
#
# All rights reserved.
#

View File

@@ -58,7 +58,6 @@ if(APPLE OR (WIN32 AND NOT STATIC))
libboost_filesystem-mt.dll
libboost_locale-mt.dll
libboost_program_options-mt.dll
libboost_regex-mt.dll
libboost_serialization-mt.dll
libboost_thread-mt.dll
libprotobuf.dll
@@ -89,31 +88,26 @@ if(APPLE OR (WIN32 AND NOT STATIC))
libdouble-conversion.dll
libgcrypt-20.dll
libgpg-error-0.dll
libsodium-23.dll
libsodium-26.dll
libzmq.dll
#platform files
libgcc_s_seh-1.dll
#openssl files
libssl-3-x64.dll
libcrypto-3-x64.dll
#icu
libicudt76.dll
libicuin76.dll
libicuio76.dll
libicutu76.dll
libicuuc76.dll
)
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
list(APPEND WIN_DEPLOY_DLLS
libicudtd73.dll
libicuind73.dll
libicuiod73.dll
libicutud73.dll
libicuucd73.dll
)
else() # assume release
list(APPEND WIN_DEPLOY_DLLS
libicudt73.dll
libicuin73.dll
libicuio73.dll
libicutu73.dll
libicuuc73.dll
)
# Boost Regex is header-only since 1.77
if (Boost_VERSION_STRING VERSION_LESS 1.77.0)
list(APPEND WIN_DEPLOY_DLLS libboost_regex-mt.dll)
endif()
list(TRANSFORM WIN_DEPLOY_DLLS PREPEND "$ENV{MSYSTEM_PREFIX}/bin/")
add_custom_command(TARGET deploy
POST_BUILD

View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2019, The Monero Project
# Copyright (c) 2014-2024, The Monero Project
#
# All rights reserved.
#

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2015, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2020, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2021, The Monero Project
// Copyright (c) 2021-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2015, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2015, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2015, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2020, The Monero Project
// Copyright (c) 2020-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2020, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2021, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2021, The Monero Project
// Copyright (c) 2021-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2020, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2021, The Monero Project
// Copyright (c) 2021-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2021, The Monero Project
// Copyright (c) 2021-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2020, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2021, The Monero Project
// Copyright (c) 2021-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2020, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2020, The Monero Project
// Copyright (c) 2020-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

BIN
images/trezor3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

BIN
images/trezor5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 KiB

View File

Before

Width:  |  Height:  |  Size: 72 KiB

After

Width:  |  Height:  |  Size: 72 KiB

View File

Before

Width:  |  Height:  |  Size: 301 KiB

After

Width:  |  Height:  |  Size: 301 KiB

View File

@@ -1,4 +1,4 @@
Copyright (c) 2014-2020, The Monero Project
Copyright (c) 2014-2024, The Monero Project
All rights reserved.

View File

@@ -1,5 +1,5 @@
; Monero Fluorine Fermi GUI Wallet Installer for Windows
; Copyright (c) 2017-2020, The Monero Project
; Copyright (c) 2017-2024, The Monero Project
; See LICENSE
#define GuiVersion GetFileVersion("bin\monero-wallet-gui.exe")

View File

@@ -1,6 +1,6 @@
# Monero GUI Wallet Windows Installer #
Copyright (c) 2017-2020, The Monero Project
Copyright (c) 2017-2024, The Monero Project
## Introduction ##

View File

@@ -6,7 +6,7 @@
<body style="font-family: Arial, Helvetica, sans-serif">
<h1>Monero Fluorine Fermi GUI Wallet</h1>
<p>Copyright (c) 2014-2020, The Monero Project</p>
<p>Copyright (c) 2014-2024, The Monero Project</p>
<h2>Preface</h2>

View File

@@ -70,11 +70,14 @@ function checkSignature(signature) {
}
function isValidOpenAliasAddress(address) {
address = address.trim()
// we can get an awful lot of valid domains, including non ASCII chars... accept anything
// there should be something after the .
// make sure it is not some kind of floating number
return address.length > 2 && isNaN(parseFloat(address)) && address.indexOf('.') >= 0
var regex = /^[A-Za-z0-9-@]+(\.[A-Za-z0-9-]+)+$/; // Basic domain structure, allow email-like address
if (!regex.test(address)) {
return false;
}
const lastPart = address.substring(address.lastIndexOf('.') + 1);
return isNaN(parseInt(lastPart)) || lastPart !== parseInt(lastPart).toString();
}
function handleOpenAliasResolution(address, descriptionText) {

View File

@@ -166,7 +166,7 @@ function getApproximateBlockchainHeight(_date, _nettype){
if(_nettype == "Testnet" || _nettype == "Stagenet"){
// testnet got some huge rollbacks, so the estimation is way off
var approximateTestnetRolledBackBlocks = _nettype == "Testnet" ? 342100 : 30000;
var approximateTestnetRolledBackBlocks = _nettype == "Testnet" ? 342100 : _nettype == "Stagenet" ? 60000 : 30000;
if(approxBlockchainHeight > approximateTestnetRolledBackBlocks)
approxBlockchainHeight -= approximateTestnetRolledBackBlocks
}

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//
@@ -586,6 +586,9 @@ ApplicationWindow {
}
function onWalletUpdate() {
if (!currentWallet)
return;
console.log(">>> wallet updated")
updateBalance();
// Update history if new block found since last update

2
monero

Submodule monero updated: f9b81a589e...f1311d4237

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2021, The Monero Project
// Copyright (c) 2021-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2018, The Monero Project
// Copyright (c) 2018-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2018, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -282,8 +282,10 @@
<file>images/ledgerNanoSPlus.png</file>
<file>images/ledgerNanoX.png</file>
<file>images/ledgerStax.png</file>
<file>images/trezor.png</file>
<file>images/trezor@2x.png</file>
<file>images/trezor3.png</file>
<file>images/trezor5.png</file>
<file>images/trezorT.png</file>
<file>images/trezorT@2x.png</file>
<file>qtquickcontrols2.conf</file>
<file>images/write-down.png</file>
<file>images/write-down-white.png</file>

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2020, The Monero Project
// Copyright (c) 2020-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2020, The Monero Project
// Copyright (c) 2020-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//
@@ -117,17 +117,8 @@ bool DaemonManager::start(const QString &flags, NetworkType::Type nettype, const
connect(m_daemon.get(), SIGNAL(readyReadStandardOutput()), this, SLOT(printOutput()));
connect(m_daemon.get(), SIGNAL(readyReadStandardError()), this, SLOT(printError()));
#if defined(Q_OS_MAC) && defined(__aarch64__)
// RandomX crashes with JIT enabled when started as a detached process, disable it for now
QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
env.insert("MONERO_RANDOMX_UMASK", "8");
m_daemon->setProcessEnvironment(env);
#endif
m_daemon->setProgram(m_monerod);
m_daemon->setArguments(arguments);
bool started = m_daemon->startDetached();
// Start monerod
bool started = m_daemon->startDetached(m_monerod, arguments);
// add state changed listener
connect(m_daemon.get(), SIGNAL(stateChanged(QProcess::ProcessState)), this, SLOT(stateChanged(QProcess::ProcessState)));

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2019, The Monero Project
// Copyright (c) 2014-2024, The Monero Project
//
// All rights reserved.
//

Some files were not shown because too many files have changed in this diff Show More