electrum

Electrum Bitcoin wallet
git clone https://git.parazyd.org/electrum
Log | Files | Refs | Submodules

commit e3ea0f6241088c3c7fd3b2b72ae6643a0f4c9de7
parent d40bedb2ac77ed9e91c67bfd69451f7af69fece7
Author: ghost43 <somber.night@protonmail.com>
Date:   Wed,  9 Dec 2020 16:35:22 +0000

Merge pull request #6736 from SomberNight/202011_appimage_build

appimage build: build most of our python dependencies from source
Diffstat:
Mcontrib/build-linux/appimage/build.sh | 20+++++++++++++++-----
Mcontrib/deterministic-build/requirements-hw.txt | 16++++++++--------
2 files changed, 23 insertions(+), 13 deletions(-)

diff --git a/contrib/build-linux/appimage/build.sh b/contrib/build-linux/appimage/build.sh @@ -115,13 +115,23 @@ info "preparing electrum-locale." info "Installing build dependencies." mkdir -p "$CACHEDIR/pip_cache" -"$python" -m pip install --no-dependencies --no-warn-script-location --cache-dir "$CACHEDIR/pip_cache" -r "$CONTRIB/deterministic-build/requirements-build-appimage.txt" +"$python" -m pip install --no-dependencies --no-binary :all: --no-warn-script-location \ + --cache-dir "$CACHEDIR/pip_cache" -r "$CONTRIB/deterministic-build/requirements-build-appimage.txt" info "installing electrum and its dependencies." -"$python" -m pip install --no-dependencies --no-warn-script-location --cache-dir "$CACHEDIR/pip_cache" -r "$CONTRIB/deterministic-build/requirements.txt" -"$python" -m pip install --no-dependencies --no-warn-script-location --cache-dir "$CACHEDIR/pip_cache" -r "$CONTRIB/deterministic-build/requirements-binaries.txt" -"$python" -m pip install --no-dependencies --no-warn-script-location --cache-dir "$CACHEDIR/pip_cache" -r "$CONTRIB/deterministic-build/requirements-hw.txt" -"$python" -m pip install --no-dependencies --no-warn-script-location --cache-dir "$CACHEDIR/pip_cache" "$PROJECT_ROOT" +# note: we prefer compiling C extensions ourselves, instead of using binary wheels, +# hence "--no-binary :all:" flags. However, we specifically allow +# - PyQt5, as it's harder to build from source +# - cryptography, as building it would need openssl 1.1, not available on ubuntu 16.04 +"$python" -m pip install --no-dependencies --no-binary :all: --no-warn-script-location \ + --cache-dir "$CACHEDIR/pip_cache" -r "$CONTRIB/deterministic-build/requirements.txt" +"$python" -m pip install --no-dependencies --no-binary :all: --only-binary pyqt5,cryptography --no-warn-script-location \ + --cache-dir "$CACHEDIR/pip_cache" -r "$CONTRIB/deterministic-build/requirements-binaries.txt" +"$python" -m pip install --no-dependencies --no-binary :all: --no-warn-script-location \ + --cache-dir "$CACHEDIR/pip_cache" -r "$CONTRIB/deterministic-build/requirements-hw.txt" + +"$python" -m pip install --no-dependencies --no-warn-script-location \ + --cache-dir "$CACHEDIR/pip_cache" "$PROJECT_ROOT" # was only needed during build time, not runtime "$python" -m pip uninstall -y Cython diff --git a/contrib/deterministic-build/requirements-hw.txt b/contrib/deterministic-build/requirements-hw.txt @@ -100,14 +100,14 @@ keepkey==6.3.1 \ --hash=sha256:88e2b5291c85c8e8567732f675697b88241082884aa1aba32257f35ee722fc09 \ --hash=sha256:cef1e862e195ece3e42640a0f57d15a63086fd1dedc8b5ddfcbc9c2657f0bb1e \ --hash=sha256:f369d640c65fec7fd8e72546304cdc768c04224a6b9b00a19dc2cd06fa9d2a6b -libusb1==1.9 \ - --hash=sha256:00ba4f7b17080cc8ce81c0b8de08c7a063b916259654b61a21412cfc1d6b81b4 \ - --hash=sha256:04b471079d38327a5b78fc0ed7471f8c63054fa25aeac9d2474cbe5ea7f74cd2 \ - --hash=sha256:1ff007f7e9ed4b4716c5ba4afd24acf3783430165c559130eab2eb2c593b105f \ - --hash=sha256:2029c64ee30b5478c2e18124dc537e439b966ee70e0470df0616fae20f7c7f8a \ - --hash=sha256:60da2adc4efdd96e6a94295f82a658c32b86681e01e11177be31315aac661a16 \ - --hash=sha256:64d27830138755c6cadc3f7dfccdde12f31474923d96414b57bd9bd37f4ceef3 \ - --hash=sha256:c57c0fb74b5bfacda68bd881eb2080551d9c462a39e326fb8c2582da0990fb50 +libusb1==1.9.1 \ + --hash=sha256:16203d77a1f623b6f8f4e6c9d6bac79c1293b8d3e11de5f2f3c30d91380ae478 \ + --hash=sha256:3905e907156f0a3fade75ddf82a777a6a901b245aa14500429275d221a1606c2 \ + --hash=sha256:3a53d94add2799eaa1b412e7a5e384486c9109745217b9ac7f94101ad0f41b96 \ + --hash=sha256:46708965226154681f8e0b14c48325c6d02e253c218e5d3aeff846ec274ceda8 \ + --hash=sha256:4a024fffe195c49f3e7eadd2266087b4be065982f0cb41ef4b7e2c5053e7e65c \ + --hash=sha256:b12666e8ad4df78e8f1bae36298c7d6f8f45d70ceea058b88631ef8478fd1eb0 \ + --hash=sha256:d03ef15248c8b8ce440f6be4248eaadc074fc2dc5edd36c48e6e78eef3999292 mnemonic==0.19 \ --hash=sha256:4e37eb02b2cbd56a0079cabe58a6da93e60e3e4d6e757a586d9f23d96abea931 \ --hash=sha256:a8d78c5100acfa7df9bab6b9db7390831b0e54490934b718ff9efd68f0d731a6