Commit Graph

951 Commits

Author SHA1 Message Date
SomberNight e77b0560bf android: fix notifications by fixing "plyer" dependency
upstreamed patch at https://github.com/kivy/plyer/pull/756
2023-04-06 18:00:45 +00:00
SomberNight 40cfa62c2d android readme: update "access datadir on Android from desktop"
Added a section re pushing wallet to device.
It is surprisingly tricky, but using specifically the "/data/local/tmp"
folder as an intermediary, it works.
2023-04-06 16:56:14 +00:00
Sander van Grieken b40794014d android: exclude more unneeded files in qml resource bundle generation 2023-04-06 11:42:06 +02:00
SomberNight 0e5464ca13 android build: enable asserts, and add sanity-check for it
Note that 0f541be6f1 added a warning log if asserts are disabled.
It is intentional that these two things are in separate files:
We always want to log that warning, even if someone is using electrum as a library.
However, in that latter case, I think it's fine not to sys.exit(), but leave the decision up to the library user.

Similar thinking when running from source: let's log the warning but don't sys.exit().
2023-03-31 16:24:14 +00:00
SomberNight 8a394c3e3f update locale 2023-03-30 16:38:19 +00:00
SomberNight f25e384654 build: fail if not inside git clone
related: https://github.com/spesmilo/electrum/issues/8284
2023-03-28 22:35:19 +00:00
SomberNight fc7ff8198a build: don't assume git repo in make_packages.sh
to be able to run it from an unpacked sdist
2023-03-28 22:35:15 +00:00
SomberNight 965e1ac9a3 android: update readme, list required apt packages for qml on desktop 2023-03-24 14:03:38 +00:00
SomberNight f53522f0c9 release: also build android apk for x86_64 arch
related: f9f57b58b4

(note: this should be enough to put the apk onto download.electrum.org,
but it is not yet linked from the main website)
2023-03-24 10:47:50 +00:00
Sander van Grieken f9f57b58b4 Revert "android build: rm x86_64 target from "all" alias, since it is broken"
This reverts commit b2372f2d53.

x86_64 build should work now
2023-03-23 17:01:09 +01:00
Sander van Grieken aaff7502db android: update P4A to 3c2750795ba93aa1a3e513a13c2ea2ac5bddba17
remove qt5 patch to disable avx/avx2 for x86_64 arch
2023-03-23 17:00:08 +01:00
SomberNight ee380bb747 release.sh: use qml gui for android release apk 2023-03-23 15:08:58 +00:00
SomberNight b2372f2d53 android build: rm x86_64 target from "all" alias, since it is broken
(and release.sh uses the "all" target)

see https://github.com/spesmilo/electrum/issues/8278
2023-03-23 14:38:19 +00:00
SomberNight 2231057d1e android build: allow specifying "x86_64" as target in build.sh 2023-03-23 14:12:39 +00:00
Sander van Grieken 17bb1ad5c5 qml: enable Qt virtual keyboard and add Electrum keyboard style, modified from Qt 'default' style 2023-03-23 10:30:40 +01:00
ghost43 27bc0bb552 Merge pull request #8267 from SomberNight/202303_build_userid1000
build: docker scripts to work even if host user id != 1000
2023-03-21 17:54:29 +00:00
SomberNight 98304662ca android build: default to log_level=2
It is nice to see debug logs for local builds,
and also extremely useful to have them on the CI.

follow-up https://github.com/spesmilo/electrum/commit/6b9d294a86ca61e24834b152cbd319e61e0eda0e
2023-03-21 16:34:39 +00:00
Sander van Grieken bac889c593 android: fix ply depends assert 2023-03-21 17:12:49 +01:00
Sander van Grieken 6b9d294a86 android: log_level 2 when running in CI 2023-03-21 14:13:57 +01:00
Sander van Grieken 1176552132 android: upgrade to Qt 5.15.7, PyQt5 5.15.9 2023-03-21 12:41:20 +01:00
SomberNight c9b6a6c01e build: fix repro builds where host userid != 1000
- repro builds to use fixed uid=1000 inside the container
  - in case the file permissions leak into the binaries, they are still reproducible
  - chown 1000:1000 fresh_clone
- repro builds to create fresh_clone dir outside git clone
  - otherwise the local dev build would still interact with the fresh_clone dir
    - due to e.g. recursive "find -exec touch",
    - and even the "docker build" cmd itself would try to stat/read it
      - see https://github.com/docker/for-linux/issues/380
  - and "rm -rf fresh_clone" needs sudo if the host uid is not 1000
  - this way the local dev build does not need sudo

to recap:
- local dev builds use the host userid inside the container, directly operate on the project dir
  - does not need sudo
- repro builds create a fresh git clone, chown it to 1000, and use userid=1000 inside the container
  - if the host userid is 1000, does not need sudo
  - otherwise, needs sudo

closes https://github.com/spesmilo/electrum/issues/8261
2023-03-20 23:32:59 +00:00
Sander van Grieken c9df290301 android: update P4A to 8589243afb48fdb116d791dc5b3973382e83273f
include Qt Virtual Keyboard libraries and associated QtQuick components
2023-03-20 13:15:03 +01:00
SomberNight 6e472efd5f build: follow-up prev: only use host userid for local dev builds
reproducibility probably needs a hardcoded userid

Also, move the UID arg later in the dockerfiles, for better caching.
(if local dev build and repro build set different UIDs, the build caches
will diverge at that step)
2023-03-20 02:06:54 +00:00
Sander van Grieken ab073827cf build: use uid of user building the build containers 2023-03-20 02:06:50 +00:00
SomberNight 08ae0a73b2 build: add separate .dockerignore files
The .dockerignore symlink in the project root dir is only picked up by the android build.
The android build has the project root as its build context for "docker build" --
the other builds have their own subdirectories as build context, e.g. contrib/build-linux/appimage.
2023-03-20 02:05:40 +00:00
SomberNight d8abab34d8 build: rm "non-free" from debian apt sources lists
was not needed, and better to avoid :)
2023-03-18 06:22:38 +00:00
SomberNight adca13a86c android readme: update "access datadir on Android from desktop"
was getting `cp: /sdcard/some_path/my_wallet: Operation not permitted`
adb no longer has permissions to write to the sdcard

New command allows dumping the file directly to local pc via usb.

related:
https://stackoverflow.com/q/72714568
https://stackoverflow.com/q/18471780
2023-03-17 19:21:01 +00:00
Sander van Grieken a5485e5f68 android: use material dark style for splashscreen action bar 2023-03-06 12:03:25 +01:00
Sander van Grieken d2883e19ac android: qt5 activity inhibit screenshots 2023-03-06 11:11:08 +01:00
Sander van Grieken 8faf8f4a31 wine: add --allow-downgrades to second apt-get command 2023-02-27 12:45:44 +01:00
Sander van Grieken 65abb90049 build: update build container base image versions, update apt sources to current 2023-02-27 11:16:04 +01:00
Sander van Grieken 5426411f99 android: include p4a cherry-pick 70fa6ddd040dc14f3cb28ebc2cfc5779c5cc5342,
avoid sh>=2
2023-02-27 10:57:12 +01:00
ghost43 0eea47c78d libsecp256k1: update hardcoded .so lib name in binaries (#8186)
follow-up 7d83335e34
2023-02-04 01:36:19 +00:00
SomberNight c66411f47e contrib/make_libsecp256k1.sh: rm Makefile patch
unneeded since https://github.com/bitcoin-core/secp256k1/commit/c0cd7de6d4e497c0e678f7098079727188e81de8
and in fact buggy since https://github.com/bitcoin-core/secp256k1/commit/0bd3e4243caa3c000e6afe3ea5533b97565557c4

related https://github.com/spesmilo/electrum/pull/8185#issuecomment-1416171287
2023-02-03 17:36:46 +00:00
SomberNight 7d83335e34 bump libsecp256k1 version
now there are tags :O
2023-02-03 17:11:16 +00:00
SomberNight b230203245 contrib/push_locale: mv temp files from project_root to locale/ 2023-01-30 17:36:01 +00:00
SomberNight 4f66afb8a8 refactor locale scripts
follow-up 000a3de571
2023-01-30 17:35:58 +00:00
Sander van Grieken 000a3de571 extract QML translation strings, convert to gettext and combine with
rest of template
2023-01-27 16:29:51 +01:00
SomberNight 4f9469b789 re-generate protobuf _pb2.py files and bump min required protobuf
upper bound "<4" still needed due to keepkey...

related https://github.com/spesmilo/electrum/issues/7922
2023-01-28 00:39:36 +00:00
SomberNight 49061f5420 release process: fix typo in trigger_deploy.sh 2023-01-27 11:05:32 +00:00
SomberNight 497267bd34 release process: don't create "uploaded" marker file in release.sh
No longer needed with the "chmod 444 *" trick in 697c700a1f.
(it is now cheap to re-run upload.sh, it no longer redundantly re-uploads hundreds of MBs)
2023-01-27 11:03:31 +00:00
SomberNight ee2e255699 contrib/build-wine/unsign.sh: small improvements/fixes
- follow-up prev: CONTRIB was not defined
- rm folder signed/stripped if already exists (otherwise script early-exited silently)
- quote paths to guard against whitespace shenanigans
2023-01-26 18:30:11 +00:00
SomberNight 563180c94c build: scripts to not require electrum to be installed 2023-01-26 18:15:04 +00:00
SomberNight 697c700a1f release process: split release.sh into two
This allows the add_cosigner workflow to be done before the website links to new binaries.
(so Emzy or other builders can try to reproduce builds and add signatures before new binaries are fully live)
2023-01-26 13:49:51 +00:00
SomberNight 8b5aa5c433 manually rerun freeze_packages, restricted to fix known CVEs only 2023-01-25 15:56:50 +00:00
SomberNight ccc0b5daa2 build: don't force-push git branches needed for historical builds
closes https://github.com/spesmilo/electrum/issues/8162
2023-01-24 15:06:31 +00:00
Sander van Grieken 3129fdb358 also build android x86_64 arch. update python-for-android to include x86_64 qt5 patch. 2023-01-06 10:44:48 +01:00
Sander van Grieken a4a2134db5 better handle p4a parent qt5 recipe 2023-01-05 21:38:51 +01:00
Sander van Grieken 9704dab68b qml: remove qml splash, update python-for-android with splash support.
main.qml now shows black cover that fades out when app is ready.
2023-01-05 20:09:14 +01:00
Sander van Grieken 6a1f19fd86 update python-for-android to electrum_20210421d fb8f6fc44ef7465500c534186b0aba2a5e4ddc15
includes fixes for nativeSetenv
2023-01-05 14:06:42 +01:00