mirror of
https://git.wownero.com/wowlet/wowlet.git
synced 2024-08-15 01:03:14 +00:00
Feather, a free Monero desktop wallet
Co-Authored-By: tobtoht <thotbot@protonmail.com>
This commit is contained in:
commit
133700160a
728 changed files with 55961 additions and 0 deletions
2015
contrib/Qt5.15_LinuxPatch.json
Normal file
2015
contrib/Qt5.15_LinuxPatch.json
Normal file
File diff suppressed because it is too large
Load diff
40
contrib/build-appimage.sh
Normal file
40
contrib/build-appimage.sh
Normal file
|
@ -0,0 +1,40 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
function verify_hash() {
|
||||
local file=$1 expected_hash=$2
|
||||
actual_hash=$(sha256sum $file | awk '{print $1}')
|
||||
if [ "$actual_hash" == "$expected_hash" ]; then
|
||||
return 0
|
||||
else
|
||||
echo "$file $actual_hash (unexpected hash)" >&2
|
||||
rm "$file"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
function download_if_not_exist() {
|
||||
local file_name=$1 url=$2
|
||||
if [ ! -e $file_name ] ; then
|
||||
wget -q -O $file_name "$url"
|
||||
fi
|
||||
}
|
||||
|
||||
APPDIR="$PWD/feather.AppDir"
|
||||
mkdir -p "$APPDIR"
|
||||
mkdir -p "$APPDIR/usr/share/applications/"
|
||||
mkdir -p "$APPDIR/usr/bin"
|
||||
|
||||
echo "Downloading dependencies"
|
||||
|
||||
download_if_not_exist "feather.zip" "https://build.featherwallet.org/files/linux-release/$BRANCH/$FN"
|
||||
unzip -q feather.zip
|
||||
|
||||
cp "$PWD/src/assets/feather.desktop" "$APPDIR/usr/share/applications/feather.desktop"
|
||||
cp "$PWD/src/assets/images/appicons/64x64.png" "$APPDIR/feather.png"
|
||||
cp "$PWD/feather" "$APPDIR/usr/bin/feather"
|
||||
|
||||
/appimagetool deploy "$APPDIR/usr/share/applications/feather.desktop"
|
||||
VERSION=1.0 /appimagetool ./feather.AppDir
|
||||
|
126
contrib/build_tor.sh
Executable file
126
contrib/build_tor.sh
Executable file
|
@ -0,0 +1,126 @@
|
|||
#!/usr/bin/env bash
|
||||
# this file is used by feather's CMake
|
||||
# arguments: ./build.tor $TAG $ROOT_FEATHER_DIR
|
||||
|
||||
set -ex
|
||||
|
||||
ERR_WIN="This script does not work on Windows"
|
||||
if [[ "$OSTYPE" == "msys" ]]; then
|
||||
echo "$ERR_WIN"
|
||||
exit 1
|
||||
elif [[ "$OSTYPE" == "win32" ]]; then
|
||||
echo "$ERR_WIN"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
TOR_TAG="$1"
|
||||
ROOT_DIR="$2"
|
||||
STATIC="$3"
|
||||
TOR_DIR="$ROOT_DIR/contrib/tor"
|
||||
TORSOCKS_DIR="$ROOT_DIR/contrib/torsocks"
|
||||
TARGET_DIR="$ROOT_DIR/src/tor"
|
||||
|
||||
CPU_CORE_COUNT="$(nproc)"
|
||||
|
||||
#
|
||||
### tor
|
||||
#
|
||||
|
||||
pushd "$TOR_DIR"
|
||||
|
||||
rm -rf "$TOR_DIR/build"
|
||||
mkdir -p "$TOR_DIR/build"
|
||||
|
||||
# configure
|
||||
git -C "$TOR_DIR" fetch
|
||||
git -C "$TOR_DIR" checkout tor-0.4.3.5
|
||||
bash "$TOR_DIR/autogen.sh"
|
||||
|
||||
if [[ "$STATIC" = "ON" ]]; then
|
||||
# static assumes that openssl has been compiled with:
|
||||
# CFLAGS='-fPIC' CXXFLAGS='-fPIC' ./config no-asm no-shared no-zlib-dynamic --prefix=/usr/local/openssl --openssldir=/usr/local/openssl
|
||||
# and libevent with:
|
||||
# cmake -DEVENT_LIBRARY_STATIC=ON -DOPENSSL_ROOT_DIR=/usr/local/openssl -DCMAKE_INSTALL_PREFIX=/usr/local/libevent
|
||||
# and zlib with:
|
||||
# CFLAGS='-fPIC' CXXFLAGS='-fPIC' ./configure --static --prefix=/usr/local/zlib
|
||||
|
||||
LDFLAGS="-L/usr/local/openssl/lib/" LIBS="-lssl -lcrypto -lpthread -ldl" CPPFLAGS="-I/usr/local/openssl/include/" ./configure \
|
||||
--enable-static-zlib \
|
||||
--enable-static-openssl \
|
||||
--enable-static-libevent \
|
||||
--disable-system-torrc \
|
||||
--with-libevent-dir=/usr/local/libevent \
|
||||
--with-openssl-dir=/usr/local/openssl/ \
|
||||
--with-zlib-dir=/usr/local/zlib \
|
||||
--disable-system-torrc \
|
||||
--disable-tool-name-check \
|
||||
--disable-systemd \
|
||||
--disable-lzma \
|
||||
--disable-unittests \
|
||||
--disable-zstd \
|
||||
--disable-seccomp \
|
||||
--disable-asciidoc \
|
||||
--disable-manpage \
|
||||
--disable-html-manual \
|
||||
--disable-system-torrc \
|
||||
--prefix="$TOR_DIR/build"
|
||||
else
|
||||
bash "$TOR_DIR/configure" \
|
||||
--disable-tool-name-check \
|
||||
--disable-systemd \
|
||||
--disable-lzma \
|
||||
--disable-unittests \
|
||||
--disable-zstd \
|
||||
--disable-asciidoc \
|
||||
--disable-manpage \
|
||||
--disable-html-manual \
|
||||
--prefix="$TOR_DIR/build"
|
||||
fi
|
||||
|
||||
# build
|
||||
make -j "$CPU_CORE_COUNT"
|
||||
make install -j "$CPU_CORE_COUNT"
|
||||
|
||||
# copy to lib/tor
|
||||
cp "$TOR_DIR/build/bin/tor" "$TARGET_DIR"
|
||||
cp "$TOR_DIR/build/etc/tor/torrc.sample"* "$TARGET_DIR"
|
||||
|
||||
#
|
||||
### torsocks
|
||||
#
|
||||
|
||||
pushd "$TORSOCKS_DIR"
|
||||
mkdir -p "$TORSOCKS_DIR/build"
|
||||
|
||||
# configure
|
||||
bash "$TORSOCKS_DIR/autogen.sh"
|
||||
bash "$TORSOCKS_DIR/configure" --prefix="$TORSOCKS_DIR/build"
|
||||
|
||||
# build
|
||||
make -j "$CPU_CORE_COUNT"
|
||||
make install -j "$CPU_CORE_COUNT"
|
||||
|
||||
# copy to lib/torsocks
|
||||
cp "$TORSOCKS_DIR/build/lib/torsocks/"* "$TARGET_DIR"
|
||||
cp "$TORSOCKS_DIR/build/bin/"* "$TARGET_DIR"
|
||||
cp "$TORSOCKS_DIR/build/etc/tor/"* "$TARGET_DIR"
|
||||
|
||||
#
|
||||
### verify installation
|
||||
#
|
||||
|
||||
if [[ "$OSTYPE" == "linux-gnu"* ]]; then
|
||||
for fn in "$TARGET_DIR/libtorsocks.so" "$TARGET_DIR/tor"; do
|
||||
if [[ ! -f "$fn" ]]; then
|
||||
echo "[*] Failed to install tor or torsocks: no such file $fn"
|
||||
exit 1
|
||||
fi; done
|
||||
elif [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
for fn in "$TARGET_DIR/libtorsocks.dylib" "$TARGET_DIR/tor"; do
|
||||
if [[ ! -f "$fn" ]]; then
|
||||
echo "[*] Failed to install tor or torsocks: no such file $fn"
|
||||
exit 1
|
||||
fi; done
|
||||
fi
|
||||
|
||||
echo "[*] Compiled tor/torsocks into $TARGET_DIR"
|
1
contrib/tor
Submodule
1
contrib/tor
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit e68770719ef4d3d3b83398715b1e10391ab6a1b4
|
1
contrib/torsocks
Submodule
1
contrib/torsocks
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit 4c00ec8773fd63fa48ef49e1ccf2adac598427be
|
53
contrib/torsocks_macos.patch
Normal file
53
contrib/torsocks_macos.patch
Normal file
|
@ -0,0 +1,53 @@
|
|||
From fc5eafeb2886605d4de1546846f06a12a18c87ef Mon Sep 17 00:00:00 2001
|
||||
From: "J.W" <jakwings@gmail.com>
|
||||
Date: Mon, 22 Apr 2019 05:19:32 +0100
|
||||
Subject: [PATCH 1/2] Fix macros for accept4(2)
|
||||
|
||||
Both accept(2) and accept4(2) exist on linux but accept4(2) does not
|
||||
exist on macos 10.11.6 (and maybe other distros).
|
||||
---
|
||||
src/lib/torsocks.c | 9 ++++++++-
|
||||
src/lib/torsocks.h | 4 +++-
|
||||
2 files changed, 11 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/lib/torsocks.c b/src/lib/torsocks.c
|
||||
index 16f2da0..9527513 100644
|
||||
--- a/src/lib/torsocks.c
|
||||
+++ b/src/lib/torsocks.c
|
||||
@@ -234,9 +234,16 @@ static void init_libc_symbols(void)
|
||||
tsocks_libc_socket = dlsym(libc_ptr, LIBC_SOCKET_NAME_STR);
|
||||
tsocks_libc_syscall = dlsym(libc_ptr, LIBC_SYSCALL_NAME_STR);
|
||||
tsocks_libc_execve = dlsym(libc_ptr, LIBC_EXECVE_NAME_STR);
|
||||
+ tsocks_libc_accept = dlsym(libc_ptr, LIBC_ACCEPT_NAME_STR);
|
||||
+#if (defined(__linux__))
|
||||
tsocks_libc_accept4 = dlsym(libc_ptr, LIBC_ACCEPT4_NAME_STR);
|
||||
+#endif
|
||||
+
|
||||
if (!tsocks_libc_connect || !tsocks_libc_close || !tsocks_libc_socket ||
|
||||
- !tsocks_libc_syscall || !tsocks_libc_execve || ! tsocks_libc_accept4) {
|
||||
+#if (defined(__linux__))
|
||||
+ !tsocks_libc_accept4 ||
|
||||
+#endif
|
||||
+ !tsocks_libc_syscall || !tsocks_libc_execve || ! tsocks_libc_accept) {
|
||||
ERR("Unable to lookup symbols in " LIBC_NAME "(%s)", dlerror());
|
||||
goto error;
|
||||
}
|
||||
diff --git a/src/lib/torsocks.h b/src/lib/torsocks.h
|
||||
index 33da526..bf9109d 100644
|
||||
--- a/src/lib/torsocks.h
|
||||
+++ b/src/lib/torsocks.h
|
||||
@@ -30,8 +30,10 @@
|
||||
* libc call outside of torsocks can be used. These are declared for each
|
||||
* symbol torsocks hijacked.
|
||||
*/
|
||||
+#define TSOCKS_LIBC_FUNC(name) \
|
||||
+ tsocks_libc_##name
|
||||
#define TSOCKS_LIBC_DECL(name, type, sig) \
|
||||
- type (*tsocks_libc_##name)(sig);
|
||||
+ type (*TSOCKS_LIBC_FUNC(name))(sig);
|
||||
#define TSOCKS_DECL(name, type, sig) \
|
||||
extern type tsocks_##name(sig);
|
||||
|
||||
--
|
||||
2.21.0
|
||||
|
18
contrib/unbound_static.patch
Normal file
18
contrib/unbound_static.patch
Normal file
|
@ -0,0 +1,18 @@
|
|||
diff --git a/configure_checks.cmake b/configure_checks.cmake
|
||||
index c31b3f33..50b3305d 100644
|
||||
--- a/configure_checks.cmake
|
||||
+++ b/configure_checks.cmake
|
||||
@@ -202,10 +202,10 @@ check_symbol_exists(NID_X9_62_prime256v1 "openssl/evp.h" HAVE_DECL_NID_X9_62_PRI
|
||||
check_symbol_exists(sk_SSL_COMP_pop_free "openssl/ssl.h" HAVE_DECL_SK_SSL_COMP_POP_FREE)
|
||||
check_symbol_exists(SSL_COMP_get_compression_methods "openssl/ssl.h" HAVE_DECL_SSL_COMP_GET_COMPRESSION_METHODS)
|
||||
|
||||
-check_function_exists(EVP_MD_CTX_new HAVE_EVP_MD_CTX_NEW)
|
||||
+set(HAVE_EVP_MD_CTX_NEW 1)
|
||||
check_function_exists(EVP_sha1 HAVE_EVP_SHA1)
|
||||
-check_function_exists(EVP_sha256 HAVE_EVP_SHA256)
|
||||
-check_function_exists(EVP_sha512 HAVE_EVP_SHA512)
|
||||
+set(HAVE_EVP_SHA256 1)
|
||||
+set(HAVE_EVP_SHA512 1)
|
||||
check_function_exists(FIPS_mode HAVE_FIPS_MODE)
|
||||
check_function_exists(HMAC_Update HAVE_HMAC_UPDATE)
|
||||
check_function_exists(OPENSSL_config HAVE_OPENSSL_CONFIG)
|
Loading…
Add table
Add a link
Reference in a new issue