Commit Graph

25 Commits

Author SHA1 Message Date
SomberNight fc574b4c2f mac build: readme: add more sanity checks for repro 2025-06-11 16:54:15 +00:00
SomberNight 276488e3d0 binaries: document min requirements for target systems 2024-10-04 14:02:51 +00:00
SomberNight 47d094fda0 mac build: bump declared min supported macos version (10.13->11)
due to the qt 5.15 -> qt 6.7 bump

related https://github.com/spesmilo/electrum/issues/3685
2024-09-18 15:48:43 +00:00
ThomasV de5ca461d4 contrib/osx:
- rename make_osx2.sh -> sign_osx.sh
- add command to unlock keychain
- chmod +x
2024-03-15 11:02:45 +01:00
SomberNight 409bd0199c build: split make_osx.sh script into two: "build" and "sign" parts 2024-03-15 11:02:45 +01:00
SomberNight c98830d091 mac build: follow-up prev (altool -> notarytool migration)
related https://github.com/metabrainz/picard/commit/7ee078852a6c35b1cb62b4424b530b5b4817c5f8
2023-12-12 00:57:01 +00:00
SomberNight 86f6e3dbcb mac build: update README for new macOS 11 build VM
- For the notarisation, we were using "altool" (part of xcode), but Apple now fully deprecated that.
    - need to migrate from altool to notarytool
        https://developer.apple.com/news/?id=y5mjxqmn
    - currently using macOS 10.14.6
                  and xcode 11.3.1
    - notarytool requires xcode 13+
    - xcode 13 requires macOS 11.3
        https://en.wikipedia.org/wiki/Xcode#Version_comparison_table
    ==> created new build VM with macOS 11.7.10 and xcode 13.2
2023-12-12 00:56:55 +00:00
SomberNight 1cecd2c6e8 contrib: rename some shell scripts to have ".sh" extension
The extension gives formatting hints to some editors. (especially if they support .editorconfig)
2022-09-27 13:34:03 +00:00
SomberNight 77c2d4ec06 mac build: note in README: pyinstaller picks up extraneous brew pkgs
ThomasV had libffi installed via brew, and this side-effected the built electrum dmg.
`('libffi.8.dylib', '/usr/local/opt/libffi/lib/libffi.8.dylib', 'BINARY')`

this was the cause of https://github.com/spesmilo/electrum/commit/019d213325312badc55d95a6cabc6278dda47a8a
2022-09-26 17:58:58 +00:00
SomberNight a143d05fb9 mac build: bump pyinstaller (4.2 -> 5.3) 2022-08-29 15:22:47 +00:00
SomberNight 83cc2d4bc0 build: osx readme: note cli xcode needs to be deleted before install
upgrading an existing directory does not seem to work well
2022-08-19 14:32:39 +00:00
SomberNight 8e9274bde4 mac build: README: add more details about installing Xcode 2022-05-27 17:51:53 +02:00
SomberNight f9b07d15af macos build: brew now requires xcode cli tools (not full xcode)
Which means we need *both* xcode cli tools and full xcode.
Document this weirdness, including the exact paths they should be at.

excerpt from terminal when running make_osx:
```
Warning: You are using macOS 10.14.
We (and Apple) do not provide support for this old version.
You will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Twitter or any other official channels. You are responsible for resolving
any issues you experience while you are running this
old version.

==> Downloading https://ftp.gnu.org/gnu/coreutils/coreutils-9.0.tar.xz
Already downloaded: /Users/vagrant/Library/Caches/Homebrew/downloads/5744bb33344b6180adca9d909a87e830d55982a1b3229c61e9dc0e35cfacbf25--coreutils-9.0.tar.xz
Error: Xcode alone is not sufficient on Mojave.
Install the Command Line Tools for Xcode 11.3.1 from:
  https://developer.apple.com/download/all/
```
2022-03-15 19:59:56 +01:00
SomberNight 8e71361d29 mac build: README: mention Xcode path intricacies 2021-07-19 21:46:17 +02:00
SomberNight 9c2807cbb1 mac build: README: clarify note about reproducibility of unsigned dmg 2021-07-19 16:13:27 +02:00
SomberNight f50882d8df mac build: attempt at "reproducible" codesigned builds
- added notes about reproducibility requirements
- adapted build scripts from Bitcoin Core that can
    - extract signatures from a signed .app
    - apply previously extracted signatures to an unsigned .app
2021-07-19 07:34:05 +02:00
SomberNight 71b02df832 mac build: re-add note about needing full Xcode...
Turns out the Xcode CLI tools are still not enough, and we need full Xcode :(
This is only for notarization; as `altool` (which we need there) is only part
of full Xcode. So we need to download 8 gigs just for that single script...

related https://github.com/spesmilo/electrum/commit/c1dbcab9bbd3413cf5e79ab3cc7e8a28be715187
2021-07-19 07:33:08 +02:00
SomberNight c1dbcab9bb qt: new qrreader using QtMultimedia; drop CalinsQRReader(mac)
This commit ports the work of EchterAgo and cculianu from Electron-Cash,
to implement a new toolchain to scan qr codes.

Previously, on Linux and Win, we have been using zbar to access the camera
and read qrcodes; and on macOS we used CalinsQRReader (an objective-C
project by cculianu).

The new toolchain added here can use QtMultimedia to access the camera,
and then feed that image into zbar. When used this way, zbar needs
fewer dependencies and is easier to compile, in particular it can be
compiled for macOS.

The new toolchain works on all three platforms, with some caveats
(see code comments in related commits) -- so we also keep the end-to-end
zbar toolchain; but at least we can drop CalinsQRReader.

The related changes in Electron-Cash are spread over 50+ commits (several PRs and direct
pushes to master), but see in particular:
https://github.com/Electron-Cash/Electron-Cash/pull/1376

some other interesting links:
https://github.com/Electron-Cash/Electron-Cash/commit/b2b737001c8cc41a38fa580ea252a6d24e08f5d5
https://github.com/Electron-Cash/Electron-Cash/commit/163224cf1fad3af63f2d3cbe68a34fb8ff279af6
https://github.com/Electron-Cash/Electron-Cash/commit/3b31e0fcb13f67646228ff42c0dd39d2a0912291
https://github.com/Electron-Cash/Electron-Cash/commit/eda015908e9d6ea9a0adfbda9db55b929c0926ba
https://github.com/Electron-Cash/Electron-Cash/pull/1545
https://github.com/Electron-Cash/Electron-Cash/commit/052aa06c23b939adcea07c701f70ae28ebcf9e0a
2021-06-25 16:51:58 +02:00
SomberNight 5dcafaf082 mac build: link to issue in README 2021-05-01 06:40:28 +02:00
SomberNight 095464b620 mac build: conform to macOS 10.15 Gatekeeper requirements
fixes #6128

some of this is based on:
https://github.com/metabrainz/picard/blob/e1354632d2db305b7a7624282701d34d73afa225/scripts/package/macos-notarize-app.sh
https://github.com/Electron-Cash/Electron-Cash/commit/1eb8b71e7d11141432f1c46629683a5a703795e2
https://github.com/Electron-Cash/Electron-Cash/commit/24e44e9784fa23fa9f408ce3f9489fac8568093b
https://github.com/Electron-Cash/Electron-Cash/commit/5abec73eee0cdeb725e3c5a989621ec4ccfb92a0
2020-05-14 17:09:08 +02:00
SomberNight 1518c7d133 build macOS README: mention how Qt affects min supported macOS version 2019-07-04 20:53:24 +02:00
SomberNight 7bf6786bf5 build: note whether binary is reproducible in each case 2019-06-26 04:18:24 +02:00
SomberNight bec1860197 mac build: build qr scanner on separate machine 2018-12-18 22:05:44 +01:00
SomberNight f160f4bf67 mac build: use old xcode to build qr scanner on El Capitan 2018-12-18 22:05:02 +01:00
ThomasV d7bf8826fc rename contrib/build-osx as contrib/osx. Move QRReader submodule there. 2018-11-29 11:39:57 +01:00