Add new requirements file for binaries in contrib

This commit is contained in:
Johann Bauer 2018-02-11 16:27:01 +01:00
parent f9a3edc2a2
commit afa0168e14
No known key found for this signature in database
GPG Key ID: 84F1BF925B1F484D
10 changed files with 25 additions and 45 deletions

View File

@ -4,7 +4,7 @@ python:
- 3.5
- 3.6
install:
- pip install -r requirements_travis.txt
- pip install -r contrib/requirements/requirements-travis.txt
cache:
- pip
script:

View File

@ -58,7 +58,7 @@ cp /tmp/electrum-build/electrum-icons/icons_rc.py ./gui/qt/
info "Installing requirements..."
python3 -m pip install -Ir ./contrib/deterministic-build/requirements.txt --user && \
python3 -m pip install pyqt5 --user || \
python3 -m pip install -Ir ./contrib/deterministic-build/requirements-binaries.txt --user || \
fail "Could not install requirements"
info "Installing hardware wallet requirements..."

View File

@ -73,27 +73,17 @@ done
$PYTHON -m pip install pip --upgrade
# Install pywin32-ctypes (needed by pyinstaller)
$PYTHON -m pip install pywin32-ctypes
$PYTHON -m pip install pywin32-ctypes==0.1.2
# Install PyQt
$PYTHON -m pip install PyQt5
## Install pyinstaller
#$PYTHON -m pip install pyinstaller==3.3
# install PySocks
$PYTHON -m pip install win_inet_pton==1.0.1
$PYTHON -m pip install -r ../../deterministic-build/requirements-binaries.txt
# Install ZBar
#wget -q -O zbar.exe "https://sourceforge.net/projects/zbar/files/zbar/0.10/zbar-0.10-setup.exe/download"
#wine zbar.exe
# install Cryptodome
$PYTHON -m pip install pycryptodomex
# install PySocks
$PYTHON -m pip install win_inet_pton
# install websocket (python2)
$PYTHON -m pip install websocket-client
# Upgrade setuptools (so Electrum can be installed later)
$PYTHON -m pip install setuptools --upgrade
@ -111,5 +101,4 @@ wine nsis.exe /S
# add dlls needed for pyinstaller:
cp $WINEPREFIX/drive_c/python$PYTHON_VERSION/Lib/site-packages/PyQt5/Qt/bin/* $WINEPREFIX/drive_c/python$PYTHON_VERSION/
echo "Wine is configured. Please run prepare-pyinstaller.sh"

View File

@ -0,0 +1,5 @@
pycryptodomex==3.4.12
PyQt5==5.9
sip==4.19.7
six==1.11.0
websocket-client==0.46.0

View File

@ -6,34 +6,17 @@ contrib=$(dirname "$0")
which virtualenv > /dev/null 2>&1 || { echo "Please install virtualenv" && exit 1; }
# standard Electrum dependencies
for i in '' '-hw' '-binaries'; do
rm "$venv_dir" -rf
virtualenv -p $(which python3) $venv_dir
rm "$venv_dir" -rf
virtualenv -p $(which python3) $venv_dir
source $venv_dir/bin/activate
source $venv_dir/bin/activate
echo "Installing $i dependencies"
echo "Installing main dependencies"
pushd $contrib/..
python setup.py install
popd
pip freeze | sed '/^Electrum/ d' > $contrib/deterministic-build/requirements.txt
# hw wallet library dependencies
rm "$venv_dir" -rf
virtualenv -p $(which python3) $venv_dir
source $venv_dir/bin/activate
echo "Installing hw wallet dependencies"
python -m pip install -r $contrib/../requirements-hw.txt --upgrade
pip freeze | sed '/^Electrum/ d' > $contrib/deterministic-build/requirements-hw.txt
python -m pip install -r $contrib/requirements/requirements${i}.txt --upgrade
pip freeze | sed '/^Electrum/ d' > $contrib/deterministic-build/requirements${i}.txt
done
echo "Done. Updated requirements"

View File

@ -0,0 +1,3 @@
PyQt5
pycryptodomex
websocket-client

View File

@ -9,10 +9,10 @@ import platform
import imp
import argparse
with open('requirements.txt') as f:
with open('contrib/requirements/requirements.txt') as f:
requirements = f.read().splitlines()
with open('requirements-hw.txt') as f:
with open('contrib/requirements/requirements-hw.txt') as f:
requirements_hw = f.read().splitlines()
version = imp.load_source('version', 'lib/version.py')
@ -20,7 +20,7 @@ version = imp.load_source('version', 'lib/version.py')
if sys.version_info[:3] < (3, 4, 0):
sys.exit("Error: Electrum requires Python version >= 3.4.0...")
data_files = ['requirements.txt', 'requirements-hw.txt']
data_files = ['contrib/requirements/' + r for r in ['requirements.txt', 'requirements-hw.txt']]
if platform.system() in ['Linux', 'FreeBSD', 'DragonFly']:
parser = argparse.ArgumentParser()