1
0
Commit Graph

673 Commits

Author SHA1 Message Date
SomberNight
e54e6e4e09 build: extend release.sh so that all builders can use it 2021-06-21 19:29:56 +02:00
SomberNight
0e2d147afd windows build: fix build.sh "cp" cmd
was exiting with non-zero error code due to trying to copy directory

```
9cf9cdda331b565dd95b105d3fe987beefa113ac2c594d83783998017ad52d70  dist/electrum-4.1.4-16-g648fac709-portable.exe
020ceacb3a6fc5986d3ec271985c22c8646d2bb534536b8e2ab774924b21d58f  dist/electrum-4.1.4-16-g648fac709-setup.exe
e65dbbe24fe01e8635d4def088667e65d4e9763e2ab74cbc1aec616b3f2834bc  dist/electrum-4.1.4-16-g648fac709.exe
💬 INFO:  Done.
cp: -r not specified; omitting directory '/home/user/wspace/electrum/contrib/build-wine/../../contrib/build-wine/fresh_clone/electrum/contrib/build-wine/dist/electrum'
```
2021-06-21 19:29:52 +02:00
SomberNight
9d46fe775a build: try to consolidate instructions and decr codedupe in release.sh 2021-06-18 17:10:15 +02:00
SomberNight
91c913dc0b build/release.sh: add some comments 2021-06-18 16:29:13 +02:00
SomberNight
47ebc49c4c (trivial) build/release.sh: convert indents to spaces
was mixed tabs/spaces
2021-06-18 16:29:08 +02:00
SomberNight
3df1c3bbf7 build: rename some scripts
also, merge sdist/build.sh and sdist/make_tgz into sdist/make_sdist.sh
2021-06-18 16:29:03 +02:00
SomberNight
0842f4977b build: fresh_clone: turns out we can just clone from a local dir :P
this saves us some network requests, and reduces trust in github
2021-06-18 16:28:58 +02:00
SomberNight
5ae167d67d android build: place binaries in ./dist/ instead of ./bin/
Let's try to consolidate and have all build scripts put binaries into ./dist/
2021-06-18 16:28:52 +02:00
ThomasV
9625798a63 release script: follow-up prev commit 2021-06-17 15:02:07 +02:00
ThomasV
66628c0bad contrib/upload: use abbrev=0 2021-06-17 12:18:47 +02:00
ThomasV
9c1a8d7f65 release.sh: fix path for android builds 2021-06-17 12:15:09 +02:00
SomberNight
d3276ee950 build-wine/unsign.sh: allow using before files are uploaded publicly 2021-06-17 12:12:11 +02:00
SomberNight
52fc2f5adb release.sh: make sure correct commit is checked out 2021-06-17 12:05:40 +02:00
SomberNight
81a71ec09b update locale; again :P
c2c845a82d accidentally undid the previous update
2021-06-16 20:28:00 +02:00
ThomasV
c2c845a82d follow-up 8ff49fa9bb 2021-06-16 17:14:06 +02:00
SomberNight
60debf9116 update locale 2021-06-16 16:59:44 +02:00
ThomasV
8ff49fa9bb Remove signature verification from make_download. Signatures are verified by the website, before deployment. 2021-06-16 16:54:02 +02:00
SomberNight
dab25e3b24 android build: add exec permission to apkdiff.py, and print hashes 2021-06-10 16:41:37 +02:00
ThomasV
4dc7f4d331 release script: call build_docker_image.sh 2021-06-10 14:40:46 +00:00
ThomasV
8788b64504 Update release script with APK fresh clone instruction. Add android/fresh_clone to gitignore 2021-06-10 14:30:17 +00:00
ghost43
c43896fe6a Merge pull request #7263 from SomberNight/202104_android
reproducible build for Android apk
2021-06-10 13:19:41 +00:00
SomberNight
45cb8b5b02 android reproducibility: add Signal's "apkdiff.py" tool, and instructions 2021-06-09 18:34:15 +02:00
SomberNight
3c9346cce2 android build: attempt at reproducible builds 2021-06-09 18:34:09 +02:00
Thorsten Hempel
b990ff78a5 appimage: update libc6-dev package (#7299) 2021-06-04 08:36:23 +00:00
SomberNight
c3ccfd7d19 android build: pin hashes of p4a recipes 2021-05-01 08:07:19 +02:00
SomberNight
5dcafaf082 mac build: link to issue in README 2021-05-01 06:40:28 +02:00
SomberNight
ef3293ab6a kivy: relocate atlas so it can be made a submodule later 2021-04-30 16:44:32 +02:00
ThomasV
7789497140 release script: add username to signature file, upload files into airlock. 2021-04-30 10:27:33 +00:00
ThomasV
2b05615995 Do not perform webserver update from release script.
(see publish.sh and deploy.sh in the electrum-web repo)
2021-04-28 12:37:15 +00:00
SomberNight
1dfa81e7b6 contrib: fix find_restricted_dependencies for deps with version range
New release of pyinstaller (4.3) broke the script (which is used by freeze_packages.sh).

-----

Compare:

$ wget https://pypi.org/pypi/pyinstaller/4.3/json
$ cat json | jq ".info.requires_dist"
[
  "setuptools",
  "altgraph",
  "pyinstaller-hooks-contrib (>=2020.6)",
  "importlib-metadata ; python_version < \"3.8\"",
  "macholib (>=1.8) ; sys_platform == \"darwin\"",
  "pefile (>=2017.8.1) ; sys_platform == \"win32\"",
  "pywin32-ctypes (>=0.2.0) ; sys_platform == \"win32\"",
  "tinyaes (>=1.0.0) ; extra == 'encryption'",
  "pytest (>=2.7.3) ; extra == 'hook_testing'",
  "execnet (>=1.5.0) ; extra == 'hook_testing'",
  "psutil ; extra == 'hook_testing'"
]

$ wget https://pypi.org/pypi/pyinstaller/4.2/json | jq .
$ cat json | jq ".info.requires_dist"
null

$ wget https://pypi.org/pypi/qrcode/6.1/json
$ cat json | jq ".info.requires_dist"
[
  "six",
  "colorama ; platform_system == \"Windows\"",
  "tox ; extra == 'dev'",
  "pytest ; extra == 'dev'",
  "mock ; (python_version < \"3\") and extra == 'dev'",
  "zest.releaser[recommended] ; extra == 'maintainer'",
  "pillow ; extra == 'pil'",
  "pytest ; extra == 'test'",
  "pytest-cov ; extra == 'test'",
  "mock ; (python_version < \"3\") and extra == 'test'"
]
2021-04-26 20:45:40 +02:00
SomberNight
bb381a263a android build: update p4a/buildozer to latest upstream
Rebased our branches on latest p4a develop HEAD and buildozer master HEAD.

Re `android.allow_backup = False` in buildozer.spec, now that this setting
has been exposed to buildozer.spec (see https://github.com/kivy/buildozer/pull/1206),
we could finally drop a commit from our branch that did the same:
7a7d415d90

Re commenting out `android.arch` in buildozer.spec, we are setting this
via the ENV VAR in make_apk.
2021-04-21 20:04:37 +02:00
ThomasV
7c3f1d9e65 appimage: update libudev-dev package 2021-04-17 12:16:54 +02:00
SomberNight
4e91555d56 appimage build: bundle dependencies of Qt xcb plugin
fixes #7198

We recently bumped the bundled version of PyQt (5.14.2->5.15.4).
It seems the new version has a lot more dynamic dependencies.

From https://doc.qt.io/qt-5/linux-requirements.html :
> From Qt 5.15 onwards, Qt does require libxcb 1.11. Also, the -qt-xcb
> configure option got removed that was bundling some of the libs below.

We are using the prebuilt wheels for PyQt5 from PyPI. Presumably those
had previously been built using the -qt-xcb option.
2021-04-12 18:21:57 +02:00
Alex Recuenco
bc72e0fc15 Prevent spaces from causing issues in make_osx (#7191)
In some places in the script if some directory name had spaces it could cause issues. 

I also added quotes around a few other directory names that currently are hardcoded with names without spaces as a way to prevent any future mishap
2021-04-08 15:12:14 +00:00
ThomasV
842ecd2da6 android Makefile: do not try to deploy and run 2021-04-08 14:55:31 +02:00
SomberNight
3d9798757d android: update app icon; use "adaptive icons" on API 26+
see https://developer.android.com/guide/practices/ui_guidelines/icon_design_adaptive

p4a and buildozer had to be patched for this; I will try to upstream the patches, see:
https://github.com/kivy/python-for-android/pull/2446
https://github.com/kivy/buildozer/pull/1312
2021-04-08 13:33:41 +02:00
SomberNight
c68d73715a android build: only build one apk for debug builds 2021-04-07 17:15:52 +02:00
ThomasV
f7a8166b9c new icons for android 2021-04-06 18:57:30 +02:00
ThomasV
debe5cf03a release script: add hash comparison step before uploading 2021-04-02 18:24:12 +02:00
ThomasV
30d9e6a964 add contrib/release.sh script 2021-04-02 17:19:56 +02:00
SomberNight
f87727c195 android build: update kivy
fixes #7155

using older kivy master due to #7156
2021-03-31 21:51:57 +02:00
SomberNight
3811158169 windows build: (trivial) convert whitespaces in unsign.sh 2021-03-31 19:20:12 +02:00
SomberNight
c23fca37d4 build: clarify which locale files are included
related: 2cb4e56be3
2021-03-31 17:00:39 +02:00
SomberNight
ce4e556e20 update locale 2021-03-30 18:01:43 +02:00
Axel Gembe
6e1caf7e88 AppImage build: Include libxcb into the image
Ubuntu 20.04 needs `libxcb-xinerama.so.0`
and Debian 10 needs `libxcb-util.so.1` for the Qt `xcb` plugin.

-----

ported from 380f04a805

see https://github.com/Electron-Cash/Electron-Cash/issues/2196

-----

In particular, see this comment:

>> I confirmed that both Ubuntu 20.04 and Debian 10.8 clean install have an issue with the 4.2.4 AppImage.
>
> Any idea what broke it? I assume it used to work.

Yes, it did work in 4.2.3 which used PyQt5 5.13.2. I just had a look at the xcb plugin and it definitely has less dependencies:
```
ago@ubuntu2004vm:~/src/Electron-Cash/dist$ ldd squashfs-root/usr/lib/python3.6/site-packages/PyQt5/Qt/plugins/platforms/libqxcb.so|grep xcb
        libX11-xcb.so.1 => /lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f0ec9d07000)
        libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f0ec9cdd000)
        libxcb-xkb.so.1 => /lib/x86_64-linux-gnu/libxcb-xkb.so.1 (0x00007f0ec6ead000)
```

compared to PyQt5 5.15.2 in 4.2.4:
```
ago@ubuntu2004vm:~/src/Electron-Cash/dist$ ldd squashfs-root/usr/lib/python3.8/site-packages/PyQt5/Qt/plugins/platforms/libqxcb.so|grep xcb
        libX11-xcb.so.1 => /lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007fcb5715f000)
        libxcb-icccm.so.4 => /lib/x86_64-linux-gnu/libxcb-icccm.so.4 (0x00007fcb57158000)
        libxcb-image.so.0 => /lib/x86_64-linux-gnu/libxcb-image.so.0 (0x00007fcb56f51000)
        libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007fcb56f4c000)
        libxcb-util.so.1 => /lib/x86_64-linux-gnu/libxcb-util.so.1 (0x00007fcb56d46000)
        libxcb-keysyms.so.1 => /lib/x86_64-linux-gnu/libxcb-keysyms.so.1 (0x00007fcb56d41000)
        libxcb-randr.so.0 => /lib/x86_64-linux-gnu/libxcb-randr.so.0 (0x00007fcb56d2e000)
        libxcb-render-util.so.0 => /lib/x86_64-linux-gnu/libxcb-render-util.so.0 (0x00007fcb56d27000)
        libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007fcb56d16000)
        libxcb-shape.so.0 => /lib/x86_64-linux-gnu/libxcb-shape.so.0 (0x00007fcb56d11000)
        libxcb-sync.so.1 => /lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007fcb56d07000)
        libxcb-xfixes.so.0 => /lib/x86_64-linux-gnu/libxcb-xfixes.so.0 (0x00007fcb56cfd000)
        libxcb-xinerama.so.0 => /lib/x86_64-linux-gnu/libxcb-xinerama.so.0 (0x00007fcb56cf8000)
        libxcb-xkb.so.1 => /lib/x86_64-linux-gnu/libxcb-xkb.so.1 (0x00007fcb56cda000)
        libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fcb56cae000)
```
2021-03-27 21:41:09 +01:00
SomberNight
472d112433 sdist build: (minor) exclude more stuff from tar.gz, rm git clean log
The `git clean --dry-run` became redundant with "fresh clone" builds.
The new exclude in MANIFEST.in should not affect production builds (also due to fresh clone),
but they are nice when building from dirty local dir.
2021-03-27 03:39:10 +01:00
Benoit Verret
f731c38293 Minor style changes 2021-03-21 00:36:23 -04:00
SomberNight
d86c45edac dependencies: bump min aiorpcx, and enforce at runtime
Note that newer aiorpcx started requiring python 3.8, so we cannot use
the latest versions, until we too bump the min python version to 3.8.
We should not do that until debian stable ships python 3.8.
Also, new aiorpcx introduced some API changes which we will need to
adopt, so even if the user locally has recent enough python, we need
old aiorpcx atm.

related: https://github.com/spesmilo/electrum/issues/7118
2021-03-20 17:17:32 +01:00
Marko Bencun
a16fdd54a8 bitbox02: bump dependency to 5.2.0 2021-03-18 09:45:15 +01:00
SomberNight
eaffced6dd binaries: bump python version 2021-03-13 16:52:19 +01:00