Skip to content

Commit dbbcf5f

Browse files
Anonimity networks integration
1 parent f8ad672 commit dbbcf5f

39 files changed

Lines changed: 2278 additions & 41 deletions

.github/workflows/build.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@ jobs:
129129
path: |
130130
/home/runner/work/monero-gui/monero-gui/build/release/bin/monero-wallet-gui
131131
/home/runner/work/monero-gui/monero-gui/build/release/bin/monerod
132+
/home/runner/work/monero-gui/monero-gui/build/release/bin/i2pd
132133
133134
docker-windows-static:
134135
runs-on: ubuntu-22.04
@@ -157,6 +158,7 @@ jobs:
157158
path: |
158159
/home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/monero-wallet-gui.exe
159160
/home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/monerod.exe
161+
/home/runner/work/monero-gui/monero-gui/build/x86_64-w64-mingw32/release/bin/i2pd.exe
160162
161163
docker-android:
162164
runs-on: ubuntu-22.04

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,6 @@
55
[submodule "external/quirc"]
66
path = external/quirc
77
url = https://github.com/dlbeer/quirc/
8+
[submodule "external/i2pd"]
9+
path = external/i2pd
10+
url = https://github.com/PurpleI2P/i2pd

Dockerfile.linux

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,17 @@ RUN apt update && \
1313
libpng-dev libpthread-stubs0-dev libsodium-dev libtool-bin libudev-dev libusb-1.0-0-dev mesa-common-dev \
1414
pkg-config python wget xutils-dev
1515

16+
RUN apt-get update -y && \
17+
apt-get upgrade -y && \
18+
apt-get dist-upgrade -y && \
19+
apt-get install -y build-essential && \
20+
apt-get install build-essential software-properties-common -y && \
21+
add-apt-repository ppa:ubuntu-toolchain-r/test -y && \
22+
apt-get update -y && \
23+
apt-get install gcc-9 g++-9 -y && \
24+
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9 && \
25+
update-alternatives --config gcc
26+
1627
RUN git clone -b xorgproto-2020.1 --depth 1 https://gitlab.freedesktop.org/xorg/proto/xorgproto && \
1728
cd xorgproto && \
1829
git reset --hard c62e8203402cafafa5ba0357b6d1c019156c9f36 && \

Dockerfile.windows

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ENV SOURCE_DATE_EPOCH=1397818193
66

77
RUN apt update && \
88
DEBIAN_FRONTEND=noninteractive apt install -y build-essential cmake g++-mingw-w64 gettext git libtool pkg-config \
9-
python && \
9+
python binutils-mingw-w64 libz-mingw-w64-dev && \
1010
rm -rf /var/lib/apt/lists/*
1111

1212
RUN update-alternatives --set x86_64-w64-mingw32-g++ $(which x86_64-w64-mingw32-g++-posix) && \

components/NetworkStatusItem.qml

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,22 @@ Rectangle {
3939
property var connected: Wallet.ConnectionStatus_Disconnected
4040

4141
function getConnectionStatusString(status) {
42+
switch(appWindow.i2pStartStopInProgress) {
43+
case 1:
44+
return qsTr("Starting I2P");
45+
case 2:
46+
return qsTr("Stopping I2P");
47+
default:
48+
break;
49+
}
50+
switch(appWindow.torStartStopInProgress) {
51+
case 1:
52+
return qsTr("Starting Tor");
53+
case 2:
54+
return qsTr("Stopping Tor");
55+
default:
56+
break;
57+
}
4258
switch (appWindow.daemonStartStopInProgress)
4359
{
4460
case 1:
@@ -95,8 +111,12 @@ Rectangle {
95111
if(appWindow.isMining) {
96112
return "qrc:///images/miningxmr.png"
97113
} else if(item.connected == Wallet.ConnectionStatus_Connected || !MoneroComponents.Style.blackTheme) {
114+
if (persistentSettings.proxyType === "TOR") return "qrc:///images/tor.png"
115+
else if (persistentSettings.proxyType === "I2P") return "qrc:///images/i2p.png"
98116
return "qrc:///images/lightning.png"
99117
} else {
118+
if (persistentSettings.proxyType === "TOR") return "qrc:///images/tor-white.png"
119+
else if (persistentSettings.proxyType === "I2P") return "qrc:///images/i2p-white.png"
100120
return "qrc:///images/lightning-white.png"
101121
}
102122
}
@@ -198,9 +218,9 @@ Rectangle {
198218
}
199219
};
200220

201-
daemonManager.sendCommandAsync(
202-
["set_bootstrap_daemon", "auto"],
221+
daemonManager.setBootstrapNodeAsync(
203222
appWindow.currentWallet.nettype,
223+
persistentSettings.proxyType,
204224
persistentSettings.blockchainDataDir,
205225
callback);
206226

external/CMakeLists.txt

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,32 @@ add_library(quirc STATIC
66
)
77
set_target_properties(quirc PROPERTIES POSITION_INDEPENDENT_CODE ON)
88
target_include_directories(quirc PUBLIC quirc/lib)
9+
10+
set(CMAKE_CXX_STANDARD 17)
11+
option(WITH_LIBRARY "" OFF)
12+
13+
if (STATIC)
14+
if (MINGW)
15+
set(WITH_STATIC ON)
16+
set(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres)
17+
set(ZLIB_INCLUDE_DIR /usr/x86_64-w64-mingw32/include)
18+
set(ZLIB_LIBRARY /usr/x86_64-w64-mingw32/lib/libz.a)
19+
else()
20+
set(Boost_USE_STATIC_RUNTIME ON)
21+
endif()
22+
endif()
23+
24+
add_subdirectory(i2pd/build)
25+
26+
if(WIN32)
27+
set(I2PD_BINARY ${CMAKE_BINARY_DIR}/external/i2pd/build/i2pd.exe)
28+
set(I2PD_BIN ${CMAKE_BINARY_DIR}/bin/i2pd.exe)
29+
else()
30+
set(I2PD_BINARY ${CMAKE_BINARY_DIR}/external/i2pd/build/i2pd)
31+
set(I2PD_BIN ${CMAKE_BINARY_DIR}/bin/i2pd)
32+
endif()
33+
34+
add_custom_target(copy_i2pd ALL
35+
DEPENDS ${I2PD_BINARY}
36+
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/bin
37+
COMMAND ${CMAKE_COMMAND} -E copy ${I2PD_BINARY} ${I2PD_BIN})

external/i2pd

Submodule i2pd added at 972c685

images/i2p-white.png

534 Bytes
Loading

images/i2p-white@2x.png

2.08 KB
Loading

images/i2p.png

751 Bytes
Loading

0 commit comments

Comments
 (0)