Commit graph

331 commits

Author SHA1 Message Date
Tom Dewey
5a2815fefc acceleratedcryptographichash: pimpl for macos, windows 2024-09-11 17:12:48 +01:00
Tom Dewey
103924eff0 imagewriter: Windows: Remove taskbar progress indicator
This is no longer supported in Qt6, with no replacement available.
2024-09-11 17:12:48 +01:00
Tom Dewey
bb30d38b77 cmake: Remove OpenSSL dependency 2024-09-11 17:12:48 +01:00
Tom Dewey
ff1ac4f08b cmake: Windows: Drop openSSL linkage, add Bcrypt. 2024-09-11 17:12:48 +01:00
Tom Dewey
e7dd0630a0 cmake: Windows: Remove OpenSSL dependency. 2024-09-11 17:12:48 +01:00
Tom Dewey
baae3c7641 linux drivelist: Trim lsblk output
Rather than using all possible output from lsblk -
which in testing produces ~45k of output on
Raspberry Pi 5 running Bookworm, instead constrain
to just the fields we actually use - just over 8k on the same system.
2024-09-11 17:12:48 +01:00
Tom Dewey
762ed2b940 deps: cURL: Set default SSL backends 2024-09-11 17:12:48 +01:00
Tom Dewey
d9082f8abd AcceleratedCryptographicHash: Use platform capabilities
Introduce a CNG version for Windows, a CommonCrypto
version for macOS and a GnuTLS version for Linux, as
we're using gnutls _anyway_.
2024-09-11 17:12:48 +01:00
Tom Dewey
7074a5e389 cmake: Use target names instead of paths 2024-09-11 17:12:48 +01:00
Tom Dewey
7edd44fac4 qml: OptionsPopup: Always display vertical scrollbar 2024-09-11 17:12:48 +01:00
Tom Dewey
3fed45ef43 qml: OptionsPopup: Resize, rework scene graph 2024-09-11 17:12:48 +01:00
Tom Dewey
c693b5e3f7 deps: curl: Fixup selecting GNUTLS as SSL backend 2024-09-11 17:12:48 +01:00
Tom Dewey
331381ba2e cmake: Fixup libcurl linking on Linux 2024-09-11 17:12:48 +01:00
Tom Dewey
b77a275b8f xz: include build infra 2024-09-11 17:12:48 +01:00
Tom Dewey
7cfe7eabfe libarchive: include build infra 2024-09-11 17:12:48 +01:00
Tom Dewey
d300c9dceb curl: include build infra 2024-09-11 17:12:48 +01:00
Tom Dewey
37ec20f0f5 zstd: Include build infra 2024-09-11 17:12:48 +01:00
Tom Dewey
2e42e914c9 meta: v1.9.0 2024-09-11 17:12:48 +01:00
Tom Dewey
8c05f04593 qml: ImButton: Make MD3 look more like MD2 2024-09-11 17:12:48 +01:00
Tom Dewey
844c44597e cmake: bump minimum to 3.15 2024-09-11 17:12:48 +01:00
Tom Dewey
7c3a958758 cmake: Use LIST_DIR rather than SOURCE_DIR, fix Curl filename 2024-09-11 17:12:48 +01:00
Tom Dewey
3d56ecf88c qml: main: Qt6 fixes, formatting 2024-09-11 17:12:48 +01:00
Tom Dewey
094142ae8e qml: main: Don't duplicate (Recommends) 2024-09-11 17:12:48 +01:00
Tom Dewey
cf8c4bc66d qml: UseSavedSettingsPopup: Qt6 fixes
Use anchors preferentially, and nest the title bar elements
2024-09-11 17:12:48 +01:00
Tom Dewey
f4f43c7124 qml: msgpopup: Qt6 changes
Use anchors preferentially, and nest the title bar elements.
2024-09-11 17:12:48 +01:00
Tom Dewey
9b14f88ba6 OptionsPopup: Qt6 rework
Relayout the OptionsPopup - introduce wider use of anchors
rather than calculated values, nest controls as is appropriate for
their rendering.

Additionally, right-align all the textfields, and make the uniform size,
offset the labels to indicate shared context, and numerous layout
simplifications.

Finally - make behaviours dependent on the value of a checkbox actually
depend on that checkbox - rather than some sort of 'enabled' flag on a
layout.
2024-09-11 17:12:48 +01:00
Tom Dewey
0743797996 QtQuick: Use 'Dense' variant of Material Design 3 theme 2024-09-11 17:12:48 +01:00
Tom Dewey
4b256fef3a qt6: Only apply explicit HiDpi scaling on older Qt
This flag is deprecated in Qt6
2024-09-11 17:12:48 +01:00
Tom Dewey
df33637d32 qt6: Replace qAsConst() usage 2024-09-11 17:12:48 +01:00
Tom Dewey
da720afc7e imager: Target Windows 10, as required by Qt6 2024-09-11 17:12:48 +01:00
Tom Dewey
1dabdde5f0 imager: CMake: Use vendored dependencies rather than system 2024-09-11 17:12:48 +01:00
Tom Dewey
82083e84bc deps: libarchive: Modify CMake for vendoring 2024-09-11 17:12:48 +01:00
Tom Dewey
593abb7981 deps: Add modified curl-8.8.0
Add a modified version of curl-8.8.0, where the modifications are
primarily centred around the CMake infrastructure to make the
library more consumable as a vendored dependency.
2024-09-11 17:12:48 +01:00
Tom Dewey
b1043a3601 deps: Add modified xz-5.6.2
Deviations from upstream xz-5.6.2 release are in the CMake
infrastructure, to try and make the library more consumable as a
vendored dependency.
2024-09-11 17:12:48 +01:00
Tom Dewey
64381d2dd3 deps: Remove unlabelled curl, xz
With very little version data, these area hard to reason about.
2024-09-11 17:12:48 +01:00
Tom Dewey
6b77ed7edc deps: zstd upgrade 1.5.4 -> 1.5.6 2024-09-11 17:12:48 +01:00
Tom Dewey
fc9423e65b deps: zlib upgrade 1.2.13 -> 1.3.1 2024-09-11 17:12:48 +01:00
Tom Dewey
61171a0db6 deps: Upgrade libarchive 3.6.2->3.7.4 2024-09-11 17:12:48 +01:00
Alistair Buxton
7725ce7a40 Linux/OSX: Fix reversed fsync check
This if() condition checks the result of seek, write, flush
and fsync. The first three are methods on QFile, so return
a truthy value on success. write() returns number of bytes
written while seek() and flush() return bool true on success.
Therefore they have to be inverted to detect errors. However,
fsync() is a posix system call, so it returns zero (false) on
success. Therefore it should not be inverted.

Note that currently this entire code block can never run.
knownsize is always zero because QFile.size() currently
cannot determine the size of a block device. However, when I
asked to confirm this behavior, a Qt maintainer decided to
implement it, so there is now a PR. If that is released then
this code block will become live and the reversed fsync check
will cause a problem.

PR: https://codereview.qt-project.org/c/qt/qtbase/+/581443
2024-08-07 11:45:20 +01:00
Jason Kridner
c1c8c5a7dd Fix GPT signature test
gpt.Signature is not a null-terminated string, but an 8-byte character array. Using `strcmp` will not provide a valid result. Use `strncmp` over the first 8 bytes instead.

Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
2024-07-17 10:44:13 +01:00
Tom Dewey
eee59445d2 embedded: Favour CoreAppliation over Application 2024-06-25 10:10:55 +01:00
ykla
78b7f7418e Add Simplified Chinese translations to the desktop files 2024-06-13 11:44:47 +01:00
ykla
fd9e44f11f The terms related to public keys were replaced with translations more in line with the localization habits of Simplified Chinese. 2024-06-13 11:44:47 +01:00
ykla
6a09f27bea Translate the Simplified Chinese translation of Raspberry Pi Imager to better match the original text. 2024-06-13 11:44:47 +01:00
ykla
ef49eb3dd4 To make Simplified Chinese translations more accurate 2024-06-13 11:44:47 +01:00
ykla
b66496e324 Update zh-CN (Simplified Chinese) translation 2024-06-13 11:44:47 +01:00
ykla
41f504c7a0 Update zh-CN translation 2024-06-13 11:44:47 +01:00
Dave Jones
4b6ee9bb4b localectl doesn't work on modern Debian/Ubuntu [1] [2]
The keyboard: section should be used instead, which should do the right
thing on whatever platform cloud-init is being used on (writes
/etc/default/keyboard on Debian/Ubuntu, uses localectl on RHEL/Fedora,
runs setup-keymap on Alpine).

[1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1038762

[2]: 2030788
2024-06-03 09:57:08 +01:00
Dave Jones
b00815058f Fix timeout on systems with large numbers of loops
On systems with a very large number of snap packages installed, there
are a considerable number of loop devices. In this case, the `lsblk`
command in linuxdrivelist fills the stdout pipe, blocks, and the
rpi-imager process assumes it has timed out [1].

This is a trivial work-around that simply excludes loop devices
(major=7) from the `lsblk` output. Given subsequent code excludes
everything starting with `/dev/loop` anyway, there should be no change
in user experience with this exclusion.

[1]: https://github.com/waveform80/imager-snap/issues/6
2024-05-23 10:25:59 +01:00
Dima
f79a6874d8 Corrected the spelling for Kyiv 2024-05-22 17:30:35 +01:00